#scala #jdbc #slick
Вопрос:
Исключение в потоке «главная» org.postgresql.util.Исключение PSQLException: Индекс столбца выходит за пределы диапазона: 1, количество столбцов: 0.
def getSingleLegTransactionBySelection(selectionId: Long)(implicit db: backend.Database, ectx: ExecutionContext) =
db.run {
logger.info("Ask for settled single leg transactions that contain the un-resulted selection.")
sql"""select t.id
FROM transactions t
LEFT JOIN wallets w ON t.wallet_id = w.id
LEFT JOIN transaction_statuses ts on t.status_id = ts.id
where (t.details @> '{"legs":[{"selection":{"id":${selectionId}}}]}')
and ((t.details @> '{"type":"SGL"}'))
and (w.universe = 'spin')
and (ts.code = 'settled')
""".as[String]
}.map(_.map { it =>
convertResult(it)
})
.map { it =>
logger.info(s"Received settled single leg transactions containing this selection ${it.mkString(",")}.")
it
}
Комментарии:
1. Что делает ваша функция convertResult? если он пытается получить доступ к первому элементу результирующей последовательности, лучше использовать метод .headOption вместо seq(1) или seq.head