Я использую протекающий код для upsert
списка items
Slick 3 - upsert работает слишком медленно
case class Item(id: String, text: String)
class Items(tag: Tag) extends Table[Item](tag, "items"){
...
}
val tbl = TableQuery[Items]
def insertItems(items: List[Item]):Future[Int] = {
val q = DBIO.sequence(items.map(tbl.insertOrUpdate).toSeq).map(_.sum)
db.run(q)
}
Для items
списка с длиной 2000 upsert
занимает ~ 10 секунд. Это слишком долго ...
Думаю, в большинстве случаев требуется компиляция запросов.
Как переписать insertItems
для ускорения?
насчет upsert? – sheh