2013-08-31 10 views
0

Я использую Mule Mongo Connector для выполнения некоторых операций в Mongo DB. Я использую его на некоторое время, не имея этот вопрос, но теперь у меня есть это исключение после запуска на некоторое время мой поток в Mule:Исключение, определяющее maxBSONObjectSize/connection, было отказано, поскольку слишком много открытых соединений с использованием Mule Mongo Connector

31-ago-2013 23:33:13 com.mongodb.DBTCPConnector fetchMaxBsonObjectSize 
ADVERTENCIA: Exception determining maxBSONObjectSize 
java.io.EOFException 
at org.bson.io.Bits.readFully(Bits.java:48) 
at org.bson.io.Bits.readFully(Bits.java:33) 
at org.bson.io.Bits.readFully(Bits.java:28) 
at com.mongodb.Response.<init>(Response.java:40) 
at com.mongodb.DBPort.go(DBPort.java:127) 
at com.mongodb.DBPort.go(DBPort.java:92) 
at com.mongodb.DBPort.findOne(DBPort.java:145) 
at com.mongodb.DBPort.runCommand(DBPort.java:156) 
at com.mongodb.DBTCPConnector.fetchMaxBsonObjectSize(DBTCPConnector.java:467) 
at com.mongodb.DBTCPConnector.checkMaster(DBTCPConnector.java:446) 
at com.mongodb.DBTCPConnector.say(DBTCPConnector.java:145) 
at com.mongodb.DBTCPConnector.say(DBTCPConnector.java:137) 
at com.mongodb.DBApiLayer$MyCollection.update(DBApiLayer.java:353) 
at com.mongodb.DBCollection.update(DBCollection.java:165) 
at org.mule.module.mongo.api.MongoClientImpl.updateObjects(MongoClientImpl.java:185) 
at org.mule.module.mongo.MongoCloudConnector.updateObjects(MongoCloudConnector.java:327) 
at org.mule.module.mongo.processors.UpdateObjectsMessageProcessor$1.process(UpdateObjectsMessageProcessor.java:178) 
at org.mule.module.mongo.process.ProcessCallbackProcessInterceptor.execute(ProcessCallbackProcessInterceptor.java:18) 
at org.mule.module.mongo.process.ManagedConnectionProcessInterceptor.execute(ManagedConnectionProcessInterceptor.java:69) 
at org.mule.module.mongo.process.ManagedConnectionProcessInterceptor.execute(ManagedConnectionProcessInterceptor.java:21) 
at org.mule.module.mongo.process.RetryProcessInterceptor.execute(RetryProcessInterceptor.java:69) 
at org.mule.module.mongo.connectivity.ManagedConnectionProcessTemplate.execute(ManagedConnectionProcessTemplate.java:35) 
at org.mule.module.mongo.processors.UpdateObjectsMessageProcessor.process(UpdateObjectsMessageProcessor.java:164) 
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27) 
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:61) 
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47) 
at org.mule.processor.chain.DefaultMessageProcessorChain.doProcess(DefaultMessageProcessorChain.java:95) 
at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:70) 
at org.mule.processor.chain.InterceptingChainLifecycleWrapper.doProcess(InterceptingChainLifecycleWrapper.java:54) 
at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:70) 
at org.mule.processor.chain.InterceptingChainLifecycleWrapper.access$001(InterceptingChainLifecycleWrapper.java:26) 
at org.mule.processor.chain.InterceptingChainLifecycleWrapper$1.process(InterceptingChainLifecycleWrapper.java:70) 
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27) 
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:61) 
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47) 
at org.mule.processor.chain.InterceptingChainLifecycleWrapper.process(InterceptingChainLifecycleWrapper.java:65) 
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27) 
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:61) 
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47) 
at org.mule.processor.chain.DefaultMessageProcessorChain.doProcess(DefaultMessageProcessorChain.java:95) 
at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:70) 
at org.mule.processor.chain.InterceptingChainLifecycleWrapper.doProcess(InterceptingChainLifecycleWrapper.java:54) 
at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:70) 
at org.mule.processor.chain.InterceptingChainLifecycleWrapper.access$001(InterceptingChainLifecycleWrapper.java:26) 
at org.mule.processor.chain.InterceptingChainLifecycleWrapper$1.process(InterceptingChainLifecycleWrapper.java:70) 
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27) 
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:61) 
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47) 
at org.mule.processor.chain.InterceptingChainLifecycleWrapper.process(InterceptingChainLifecycleWrapper.java:65) 
at org.mule.routing.AbstractSelectiveRouter.processEventWithProcessor(AbstractSelectiveRouter.java:312) 
at org.mule.routing.AbstractSelectiveRouter.routeWithProcessors(AbstractSelectiveRouter.java:302) 
at org.mule.routing.AbstractSelectiveRouter.process(AbstractSelectiveRouter.java:202) 
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27) 
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:61) 
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47) 
at org.mule.processor.chain.DefaultMessageProcessorChain.doProcess(DefaultMessageProcessorChain.java:95) 
at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:70) 
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27) 
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:47) 
at org.mule.processor.AbstractInterceptingMessageProcessorBase.processNext(AbstractInterceptingMessageProcessorBase.java:106) 
at org.mule.interceptor.AbstractEnvelopeInterceptor.process(AbstractEnvelopeInterceptor.java:55) 
at org.mule.processor.AsyncInterceptingMessageProcessor.processNextTimed(AsyncInterceptingMessageProcessor.java:122) 
at org.mule.processor.AsyncInterceptingMessageProcessor$AsyncMessageProcessorWorker$1.process(AsyncInterceptingMessageProcessor.java:192) 
at org.mule.processor.AsyncInterceptingMessageProcessor$AsyncMessageProcessorWorker$1.process(AsyncInterceptingMessageProcessor.java:185) 
at org.mule.execution.ExecuteCallbackInterceptor.execute(ExecuteCallbackInterceptor.java:20) 
at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:34) 
at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:18) 
at org.mule.execution.BeginAndResolveTransactionInterceptor.execute(BeginAndResolveTransactionInterceptor.java:58) 
at org.mule.execution.ResolvePreviousTransactionInterceptor.execute(ResolvePreviousTransactionInterceptor.java:48) 
at org.mule.execution.SuspendXaTransactionInterceptor.execute(SuspendXaTransactionInterceptor.java:54) 
at org.mule.execution.ValidateTransactionalStateInterceptor.execute(ValidateTransactionalStateInterceptor.java:44) 
at org.mule.execution.IsolateCurrentTransactionInterceptor.execute(IsolateCurrentTransactionInterceptor.java:44) 
at org.mule.execution.ExternalTransactionInterceptor.execute(ExternalTransactionInterceptor.java:52) 
at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:32) 
at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:17) 
at org.mule.execution.TransactionalErrorHandlingExecutionTemplate.execute(TransactionalErrorHandlingExecutionTemplate.java:113) 
at org.mule.execution.TransactionalErrorHandlingExecutionTemplate.execute(TransactionalErrorHandlingExecutionTemplate.java:34) 
at org.mule.processor.AsyncInterceptingMessageProcessor$AsyncMessageProcessorWorker.doRun(AsyncInterceptingMessageProcessor.java:184) 
at org.mule.work.AbstractMuleEventWork.run(AbstractMuleEventWork.java:43) 
at org.mule.work.WorkerContext.run(WorkerContext.java:311) 
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) 
at java.lang.Thread.run(Thread.java:680) 

Я имел взглянуть на оболочку ./mongod и I ВСЕГДА есть эта ошибка, когда у меня открыто более 200 подключений:

Sat Aug 31 23:33:13.417 [initandlisten] connection refused because too many open connections: 204 
Sat Aug 31 23:33:13.420 [initandlisten] connection accepted from 127.0.0.1:52761 #868 (205 connections now open) 

Я понятия не имею, что происходит. Если какая-либо другая информация необходима, я могу добавить ее без каких-либо проблем.

спасибо.

ответ

0

Был обнаружен connection leaking issue, влияющий на разъем mongo. В последнее время он рассматривается, и он будет частью следующего выпуска.