https://bz.apache.org/bugzilla/show_bug.cgi?id=63612

--- Comment #9 from Mark Thomas <ma...@apache.org> ---
That is likely because of the fix to this memory leak:
https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8172726

The Fork/Join framework in the JRE does not play nicely with the per web
application classloader environment. In Java 7/8 you get memory leaks and
security issues (Tomcat protects against these by default) and in Java 9 you
get a null TCCL.

There really isn't a simple solution to this issue for code that depends on
ForkJoinPool.commonPool().

I'll note that JNDI (which depends on the TCCL to identify the correct
InitialContext) is also going to fail for similar reasons.

If you only have a single web application then you can work-around it by using
a custom thread factory for the common fork/join pool that essentially restores
the Java 7/8 behaviour but even then you won't be able to reload the web
application (as that triggers a change in class loader).

You may also be able to work-around it be explicitly passing the correct class
loader to the task and setting the TCCL for the duration of the task.

I'm leaning towards closing this as INVALID as it is not an issue with
jdbc-pool.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to