ColoradoRLA
ColoradoRLA copied to clipboard
Investigate ClassNotFoundException in C3P0
Occasionally, when I leave the server running and idle for a while, I see one of these pop up in my terminal:
Exception in thread "C3P0PooledConnectionPoolManager[identityToken->1hge8tw9q3j483e1ooj1bn|40ef3420]-AdminTaskTimer" java.lang.NoClassDefFoundError: com/mchange/v2/resourcepool/BasicResourcePool$1DestroyResourceTask
at com.mchange.v2.resourcepool.BasicResourcePool.destroyResource(BasicResourcePool.java:1092)
at com.mchange.v2.resourcepool.BasicResourcePool.removeResource(BasicResourcePool.java:1558)
at com.mchange.v2.resourcepool.BasicResourcePool.removeResource(BasicResourcePool.java:1528)
at com.mchange.v2.resourcepool.BasicResourcePool.cullExpired(BasicResourcePool.java:1616)
at com.mchange.v2.resourcepool.BasicResourcePool.access$1900(BasicResourcePool.java:44)
at com.mchange.v2.resourcepool.BasicResourcePool$CullTask.run(BasicResourcePool.java:2149)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Caused by: java.lang.ClassNotFoundException: com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 8 more
I attempted to address it in a previous PR, but it is unclear whether it is still occurring; it needs investigation.
I can't say I have ever witnessed this, @dmzimmerman. I'll move the milestone for it, given its priority and rarity.
Despite my best efforts, this still occurs. It only happens when you leave the server sitting idle for whatever C3P0's thread reaping timeout is (in the default configuration, 50 minutes). And then the server becomes unresponsive. So I'm still investigating it.