@scala_ru

Страница 716 из 1499
Vladimir
02.06.2017
07:51:32
Мне важно было, чтобы шаблоны из БД мог рендерить, многие решения на resources завязаны

Kirill
02.06.2017
07:51:49
В идеале я бы хотел что-то, что легко интегрируется с мониксовым таском, давно хочу его попробовать, вжух и ты асинхронно делаешь инсерты...

Dmitriy
02.06.2017
07:52:17
во, у меня то же самое, для zalando написал свой лоадер, но то такое. Проблема в том что он сыпет эксепшны в рантайме если не нашел например в контексте переменную из темплейта.

Google
Kirill
02.06.2017
07:52:58
Асинхронно но блокируемо!
Да, чтобы инсерты выполнялись в другом потоке, отличном от потока вызова

Alexey
02.06.2017
07:53:32
Учитывая что jdbc не thread safe это может привести к странным вещам

Vladimir
02.06.2017
07:54:26
в scalate можно кейс-классы как контекст совать, но если у шаблона поля несоответствуют кейс классу, то тоже в рантайме фейлится, но это кмк решается тестом в котором рендерится простой шаблон с перечеслением всех полей, используемых в продакшен шаблоне

Kirill
02.06.2017
07:54:47
Учитывая что jdbc не thread safe это может привести к странным вещам
Ну, я думал, может взять коннекшн пул, когда вставляем, берем оттуда коннекшн, и асинхронная задача оперирует уже с этим коннекшном и потом его в пул возвращает

ультра-перфоманс не требуется, просто хочется сделать неблокирующе

Nick
02.06.2017
08:01:44
Kirill все рано будет поверх jdbc, бери doobie с hikari

У Postgres есть реализация async драйверов

Alexey
02.06.2017
08:02:01
если постгресс то есть неблакирующий драйвер

ms sql еще вроде есть, но это не точно

Nick
02.06.2017
08:02:41
На мои взгляд лучше сделать отдельный пул для блокирующих операции

Google
Daniel
02.06.2017
08:02:44
у mysql есть

Kirill
02.06.2017
08:03:45
Kirill все рано будет поверх jdbc, бери doobie с hikari
Не хочу дуби, попробовать сделать с пол-пинка, у меня идея всё красным начала светить, понял, что ради 2 запросов мне такое счастье не надо

Oleksandr
02.06.2017
08:04:56
Kirill
02.06.2017
08:05:14
Эт как?)
Чтобы на уровне приложения при получении события из внешней системы оно записывалось в базу в отдельном потоке, а тем временем, основной поток выполнения программы продолжал бежать

Nick
02.06.2017
08:06:20
а чем это лучше? non-blocking vs dedicated tp
Тем что можно сконфигурировать )

И тем что юзает стандартный драивер, а не понятно чей

Alexey
02.06.2017
08:13:26
надо контролить что сессию не использует несколько потоков

Nick
02.06.2017
08:13:47
О какой сессии идёт речь

Alexey
02.06.2017
08:14:01
jdbc

Nick
02.06.2017
08:14:16
У тебя пул конекшинов не отдаст конекшин

Если их нет

Ты должен взять из пула, а в конце вернуть

Alexey
02.06.2017
08:25:51
взять из пула, и контролировать, что сессию никто не будет запускать из разных тредов

хотелось жи асинхронненько

Nick
02.06.2017
08:26:33
Какую сессию

У тебя один поток одно соединение

Там нет шаринга

Alexey
02.06.2017
08:27:13
где там то? :)

Google
Nick
02.06.2017
08:27:35
Я согласен, что асинхронно лучше выглядит, но нет стандартного решения. И хз как это все работает сейчас

где там то? :)
В моем решении, у тебя пул даст эксклюзивно конекшин потоку, пока тот его не вернёт

Evgeniy
02.06.2017
08:53:16
сорри за спам, Bartosz Milewski последнее время на кворе много хороших ответов пишет, очень уж хорошо у него получается объяснять https://www.quora.com/Why-are-functors-applicative-functors-and-monads-important-advantageous-in-functional-programming-not-looking-for-a-definition

?Ivan
02.06.2017
09:14:51
я quil использую с асинхронным драйвером postgres, всё ?

Alexey
02.06.2017
09:19:40
+ к предыдущему оратору

Alex
02.06.2017
10:08:26
https://heathermiller.typeform.com/to/tnyvgw

Denis
02.06.2017
10:10:55
4/8

Alex
02.06.2017
10:11:03
у меня 7/8

Denis
02.06.2017
10:11:12
снимаю шляпу :)

Alex
02.06.2017
10:11:22
просто я знаю много умных слов :)

Aleksei
02.06.2017
10:13:08
я не мог не нажать на зигоид

Daniel
02.06.2017
10:14:35
просто я знаю много умных слов :)
что есть mutumorphism? пдфка не грузится, видно все ринулись качать

Alex
02.06.2017
10:16:40
типа зигоморфизм но для взаимно рекурсивных функций

Nikita
02.06.2017
10:19:18
Я "зигоморфизм" даже нагуглить не смог

Евгений
02.06.2017
10:19:38
о/

Alex
02.06.2017
10:19:47
From Ancient Greek ζυγόν (zugón, “yoke”).

Nikita
02.06.2017
10:20:33
Вот теперь стало намного понятней

Alex
02.06.2017
10:20:56
http://comonad.com/reader/2009/recursion-schemes/

типа разновидность фолда со вспомогательной функцией

вот тут с примерчиками даже на 2й странице https://pdfs.semanticscholar.org/cc6f/ee736a6bae838e136304f80e59daff29bd50.pdf

Google
Nikita
02.06.2017
10:23:11
Сенкью за объяснение, гуглить было тяжело

?Ivan
02.06.2017
10:23:24
https://heathermiller.typeform.com/to/tnyvgw
какая-то академичность у них там пошла

Alex
02.06.2017
10:24:00
хеза ж защитилась пару лет назад

докторский юморок

Daniel
02.06.2017
10:29:41
про vampire methods только отсылки к Бурмако попались



Alex
02.06.2017
10:30:31
да пребудет с вами матрёшка

или как я её называю ватрушка

Daniel
02.06.2017
10:31:37
матрёшка это в плане поиска определений? чтобы понять одно, начинаешь искать другое и т.д.

Alex
02.06.2017
10:31:46
https://github.com/slamdata/matryoshka

Vladimir
02.06.2017
10:32:45
holymorphism - builds up of tears and pain

у меня как-то так прочлось сперва

Alex
02.06.2017
10:34:19
трансфигурация святым духом

Храм Холиморфизма Господня

Andry
02.06.2017
11:13:40
Коллеги а как правильно готовить слик? Вот беру тупо их пример из доки, // Definition of the SUPPLIERS table class Suppliers(tag: Tag) extends Table[(Int, String, String, String, String, String)](tag, "SUPPLIERS") { def id = column[Int]("SUP_ID", O.PrimaryKey) // This is the primary key column def name = column[String]("SUP_NAME") def street = column[String]("STREET") def city = column[String]("CITY") def state = column[String]("STATE") def zip = column[String]("ZIP") // Every table needs a * projection with the same type as the table's type parameter def * = (id, name, street, city, state, zip) } val suppliers = TableQuery[Suppliers] // Definition of the COFFEES table class Coffees(tag: Tag) extends Table[(String, Int, Double, Int, Int)](tag, "COFFEES") { def name = column[String]("COF_NAME", O.PrimaryKey) def supID = column[Int]("SUP_ID") def price = column[Double]("PRICE") def sales = column[Int]("SALES") def total = column[Int]("TOTAL") def * = (name, supID, price, sales, total) // A reified foreign key relation that can be navigated to create a join def supplier = foreignKey("SUP_FK", supID, suppliers)(_.id) } val coffees = TableQuery[Coffees]так не компилируется ни фига...

Slick 2.11:3.2

Nikolay
02.06.2017
11:16:31
а импорты?

Andry
02.06.2017
11:17:24
import slick.basic.DatabaseConfig import slick.jdbc.OracleProfile import slick.lifted.Tag import slick.model.Table

Nikolay
02.06.2017
11:17:44
OracleProfile.profile.api._

попробуй добавить такой импорт

Google
Nikolay
02.06.2017
11:18:40
def * = (name, supID, price, sales, total) - выглядит не правильно

там же маппинг описывается с твоими кейс классами например

а не

пардон

Andry
02.06.2017
11:19:57
Ага такой сработал OracleProfile.api._

Nikolay
02.06.2017
11:20:07
компилится?

Andry
02.06.2017
11:20:25
Спасибки, блин ну какого хрена в доке этого нету?!

Nikolay
02.06.2017
11:20:34
вот вот

я тоже не в восторге от их доки

Grigory
02.06.2017
11:20:49
это риторический вопрос надеюсь (про то, почему нету)

Andry
02.06.2017
11:20:51
Ну по кранейней мере подсвечиваться перестало...

Aleksei
02.06.2017
11:21:05
так, а что никто дуби не советует?

Aleksei
02.06.2017
11:21:20
ок

Grigory
02.06.2017
11:21:25
так, а что никто дуби не советует?
сча прилетят советовать дуби и квилл будут

Nikolay
02.06.2017
11:21:29
сейчас еще один вопрос про слик и кого-то прорвет

Andry
02.06.2017
11:22:05
А что слик, это стремно, или только для мазохистов?

Oleksandr
02.06.2017
11:22:46
и то, и другое

Nikolay
02.06.2017
11:23:07
существуют разные мнения

Страница 716 из 1499