Hi, We are migrating from MySQL to MongoDB, using the exact same jobs, changing only connections/inputs/outputs components. When running in our production cluster we randomly get this exception from the tMongoDBConnection component:
java.lang.IllegalStateException:The pool is closed
Hi, Could you please post your current job design screeshots into forum(migrating from MySQL to MongoDB)? Have you tried to check out "Die on error" option on tMongoDBOutPut component to see if there is any more error message printed on console? Best regards Sabrina
-- Don't forget to give kudos when a reply is helpful and click Accept the solution when you think you're good with it.
Hi Sabrina, thanks for the answer, Actually the problem is not occuring within talend, if I run any job within talend it runs fine. It looks like more a scalability issue: If I run various jobs in parallel in our cluster then the connection problems appear, never in the Talend console. They always appear during the connection (tMongoDBConnection ), which is the first component of each job. This is what our log tables looks like:
Yes of course, please find attached one example. All our jobs are designed the same way, regarding the connections. When we were working with MySQL the jobs were identicals and we didn't have this problem.
Hi Sabrina, I just got an answer from MongoDB support regarding this exception: The exception you are seeing is from the Java driver and usually occurs if the application has disposed or otherwise closed the connections in the pool, and then the application attempts to use said pool. You do not get this exception from having a connection pool that is too small. This is really weird because as you can see in this screenshot the exception occurs during the connection, at the very first step of each job: It happends randomly and under some load, but never more than 30 concurrent connections so it should be handled correctly. Thanks for any help, Maxime.