gpt4 book ai didi

mongodb - 中断获取从 MongoDB 池中检索项目的许可

转载 作者:可可西里 更新时间:2023-11-01 09:12:56 27 4
gpt4 key购买 nike

我们看到在 Prod 环境中突然粘贴了一个奇怪的错误:

com.mongodb.MongoInterruptedException: Interrupted acquiring a permit to retrieve an item from the pool 
at com.mongodb.internal.connection.ConcurrentPool.acquirePermit(ConcurrentPool.java:186)

我们有一个普通的java mongo驱动版本3.0.2,应用代码也是java的,部署在tomcat服务器上。

导致原因的流程顺序是:

1.Future 任务跨 6 个集合运行,并尝试根据特定日期拉取数据2.只有一个集合被分片,它被分成三个集合。集合有一个主要的、次要的和仲裁者。

mongo server 环境下的connection pool or infra 有什么需要特别注意的吗?mongo 上的数据接近150GB

感谢任何回复。

最佳答案

我在调用 Thread.currentThread().interrupt() 时遇到了同样的问题

Jira 中甚至还有一个已关闭的工单 https://jira.mongodb.org/browse/JAVA-2091上面写着

the thread has already been interrupted when the mongo call is made

it Works as Designed.

另一个问题是这是否是正确的设计,因为在 Thread 上调用 interrupt() 被认为是正确的做法。

不过,我不确定你的情况是否如此。

关于mongodb - 中断获取从 MongoDB 池中检索项目的许可,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40962094/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com