-
1. Re: MDB pool-current-size stuck at 20 despite max-pool-size=50
jaikiran Jun 20, 2013 11:16 PM (in response to will.tatam)Can you give this a quick try against WildFly release http://wildfly.org/download/ or a nightly build https://community.jboss.org/thread/224262. By the way, are you really sure it's not just a metric problem and instead the pool really isn't going beyond 20?
-
2. Re: MDB pool-current-size stuck at 20 despite max-pool-size=50
will.tatam Jun 21, 2013 7:46 AM (in response to jaikiran)Before we changed max-pool-size we were verifying the number of mdbs by checking the unique number of hashcode() that is part of our beans logger
I can get someone to check production logs again, but the metric matched the logging up to when we hit the limit.
As for wildfly, I don't have a branch of our application ported to wildfly so I'd have to write a whole new test app. Is there not a unit test for AS7 for pool size?
-
3. Re: MDB pool-current-size stuck at 20 despite max-pool-size=50
will.tatam Jul 2, 2013 6:23 AM (in response to will.tatam)Any further thoughts anyone ?
Jaikiran - Is there a WildFly compatible MDB quickstart that I could use as the basics of a test ?
-
4. Re: MDB pool-current-size stuck at 20 despite max-pool-size=50
jaikiran Jul 2, 2013 6:47 AM (in response to will.tatam)1 of 1 people found this helpfulSorry I forgot about this thread. Here's a MDB quickstart you can try against WildFly https://github.com/wildfly/quickstart/tree/master/helloworld-mdb. Please try against 8.0.0.Alpha2
-
5. Re: MDB pool-current-size stuck at 20 despite max-pool-size=50
jaikiran Jul 2, 2013 6:58 AM (in response to will.tatam)1 of 1 people found this helpfulAlternatively, you can enable TRACE level logs of org.jboss.as.ejb3 package and attach the server.log file when your application containing the MDB is deployed.
-
6. Re: MDB pool-current-size stuck at 20 despite max-pool-size=50
will.tatam Jul 2, 2013 9:16 AM (in response to jaikiran)Interestingly this works on both AS 7.1.3 and WildFly 8.0.0.Alpha2 if I change the quickstart to have @ActivationConfigProperty(propertyName = "maxSession", propertyValue = "50")
Clearly further investigation is required to find out why our own application is not managing the pool size in production. I will do some more tests on our MDB and Queue in dev and see if when I create a load of test messgaes if that causes the container to spin up more MDBs
-
7. Re: MDB pool-current-size stuck at 20 despite max-pool-size=50
will.tatam Jul 4, 2013 8:15 AM (in response to will.tatam)I've found the issue, the container is trying to increase the pool size, but the pool-create-count only inlcudes the number of times an MDB was created without there being an exception from the @PostConstruct method
Our MDB tries to create a session so that it can send the results of it's onMessage back to a topic. The @PostConstruct method is throwing "Caused by: javax.jms.JMSException: Could not create a session: IJ000453: Unable to get managed connection for java:/JmsXA" after the first 20 MDBs are created, which is why we never grow past 20
I think there might also be a lag while the MDB waits for a connection, which delays the errors so while testing you see 500 test messages hit the queue and the pool expand to 20 instantly, but not further. It's only if you leave the test app deployed for a while that you then see the errors, but this can be mistaken for you shutting down to run your next test