首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >:db.Error/ connection -已释放的连接已在Datomic中释放

:db.Error/ connection -已释放的连接已在Datomic中释放
EN

Stack Overflow用户
提问于 2017-09-15 08:06:06
回答 2查看 492关注 0票数 3

我正在Transactor(EC2)和Datomic(DynamoDB)上运行AWS,过了一段时间,我开始得到以下错误,但我什么都不明白:

代码语言:javascript
复制
:db.error/connection-released The connection has been released.
....

此外,我运行我的应用程序一个月前,但没有得到这个错误在当时。

有什么想法吗?,如果这种情况经常发生,我应该在应用程序代码中重新建立数据库连接吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-09-15 22:26:03

结果是,当transactor实例重新启动时,我得到了这个错误,因此我找到了一个解决这个问题的方法--下面是代码:

代码语言:javascript
复制
(defn establish-conn
  []
  (try
      (d/create-database (conf/get :db-uri))
      (reset! conn (d/connect (conf/get :db-uri)))
    (catch Throwable t
      (println "Could not establish db conn." t))))

(defn fix-if-conn-ex
  ;;getting exception's error message
  [err-msg]
  (when (str/includes? err-msg ":db.error/connection-released")
    (db/establish-conn)))
票数 3
EN

Stack Overflow用户

发布于 2017-09-15 19:15:11

您是否曾在DB上调用过发布?这是我认为可能导致这一情况的原因之一,一旦你调用发布,你就不能在应用程序的生命周期中再次使用任何数据连接。连接是非常轻量级的,所以很少有理由调用这个函数。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46234708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档