DGC leaks threads
-----------------
Key: RIVER-403
URL: https://issues.apache.org/jira/browse/RIVER-403
Project: River
Issue Type: Bug
Affects Versions: River_2.2.0
Reporter: bryan thompson
This is from a posting on river-users. The issue is being filed in response to
that thread.
I am seeing what would appear to be one DGC thread allocated per exported
object. This is using River 2.2 and Sun JDK 1.6.0_17. Relevant configuration
parameters are below.
I am observing problems with the DGC threads not being retired on a timely
basis. The exported objects are proxies for Futures which are being executed
on the service. The code pattern is such that the proxied Future goes out of
lexical scope quite quickly. E.g., rmiCallReturningProxyForFuture().get().
Under a modest load, a large number of such Futures are exported which results
in a large number of long lived DGC threads. This turns into a problem for the
JVM due to the stack allocation per thread. Presumably this is not good for
other reasons as well (e.g., scheduling).
I have tried to override the leaseValue and checkInterval defaults per the
configuration options below. I suspect that the lease interval is somehow not
being obeyed, which is presumably a problem on my end. However, I can verify
that the configuration values are in fact showing up in System.getProperties()
for at least some of the JVMs involved (the one which drives the workload and
the one that I am monitoring with the large number of DGC lease threads).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira