[英]Connect to SQLite database in Slick doesn't work but doesn't throw an error
[英]Slick silently fails to save and doesn't' throw an exception
我剛好碰到一個非常可怕的情況。 我的表定義引用了錯誤的列,我注意到在未插入的地方插入,但沒有關於該問題的錯誤/異常。 它只是“無聲地”失敗了。
這是正常的光滑行為嗎?
所以我的表定義就像:
def expiredAt = column[Timestamp]["created_at"]
def createdAt = column[Timestamp]["created_at"]
如您所見,兩者引用的列都是同一列“ created_at”。 當我將expiredAt列更改為“ expired_at”時,一切正常。
但是對我來說真正的問題是根本沒有拋出異常。
這是正常的光滑行為嗎? 幕后到底是怎么回事? 它對updatedRows是否不返回0?
我的保存方法如下:
(users returning users.map(_.id)) += user
我正在使用slick3。
遇到相同的問題,並通過恢復解決了它:
val query = (users returning earningsForms.map(_.id) += user
db.run(query).recover{ ex: Throwable => Logger.error("Error occured when inserting user", ex)}
不了解Slick,但是我看到在某些情況下bonecp(默認播放<2.4)會吞下異常。
我遇到了同樣的問題,浪費了很多時間去尋找問題。 當我切換到HikariCP時停止發生。 如果可以,請升級至播放2.4(默認情況下使用hikaricp)。 如果您堅持使用2.3,則必須使用hikaricp play插件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.