mongo 自动创建索引导致应用连接超时

    报错信息如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
[2016-10-15 18:30:58] 113578459   INFO - ————— PermissionsInterceptor ————— - 登录人pin————————WUJIE
十月 15, 2016 6:30:58 下午 com.mongodb.DBApiLayer$Result killCursor
警告: can't clean 1 cursor
com.mongodb.DBPortPool$SemaphoresOut: Out of semaphores to get db connection
        at com.mongodb.DBPortPool.get(DBPortPool.java:193)
        at com.mongodb.DBTCPConnector$MyPort.get(DBTCPConnector.java:408)
        at com.mongodb.DBTCPConnector.say(DBTCPConnector.java:177)
        at com.mongodb.DBApiLayer.killCursors(DBApiLayer.java:181)
        at com.mongodb.DBApiLayer$Result.killCursor(DBApiLayer.java:490)
        at com.mongodb.DBApiLayer$Result.init(DBApiLayer.java:378)
        at com.mongodb.DBApiLayer$Result.<init>(DBApiLayer.java:359)
        at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:298)
        at com.mongodb.DBApiLayer$MyCollection.__find(DBApiLayer.java:274)
        at com.mongodb.DBCursor._check(DBCursor.java:368)
        at com.mongodb.DBCursor._hasNext(DBCursor.java:459)
        at com.mongodb.DBCursor.hasNext(DBCursor.java:484)
        at com.jlj.erp.dao.follow.impl.FollowDaoImpl.queryOrderByTime(FollowDaoImpl.java:100)
        at com.jlj.erp.manager.follow.impl.FollowManagerImpl.queryOrderByTime(FollowManagerImpl.java:19)
        at com.jlj.erp.service.follow.impl.FollowServiceImpl.queryFollowByCode(FollowServiceImpl.java:252)
        at com.jlj.erp.web.follow.FollowAction.queryFollowByCode(FollowAction.java:160)
        at sun.reflect.GeneratedMethodAccessor292.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:450)
        at com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:289)
        at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:252)
        at com.jlj.erp.web.interceptor.AttackInterceptor.intercept(AttackInterceptor.java:17)
        at com.opensymphony.xwork2.De

问题原因大概是这样的:

    mongo 自动创建索引导致应用连接超时

mongo 自动创建索引导致应用连接超时

上面这个False的意思就是要阻塞所有后面的请求;


mongo 自动创建索引导致应用连接超时

改成True就是异步的了,不需要等待了,这样纠结了上述问题!










本文转自 xinsir999 51CTO博客,原文链接:http://blog.51cto.com/xinsir/1862705,如需转载请自行联系原作者