java.util.Timer in EvictionTimer does not recover from OutOfMemoryError in 
Evictor
----------------------------------------------------------------------------------

                 Key: POOL-122
                 URL: https://issues.apache.org/jira/browse/POOL-122
             Project: Commons Pool
          Issue Type: Bug
    Affects Versions: 1.3
         Environment: any
            Reporter: Marcus Schulte


GenericKeyedObjectPool.Evictor.run() catches and ignores Exceptions, but not 
Errors, like OOME. Consequently, when, due to load-peeks an OOME is thrown in 
the evictor's timer-thread it dies miserably and no eviction will happen again 
in any of the pools loaded within the same class-loader (because the eviction 
timer is a static member). Also, the creation of evicting pools will fail with 
IllegalStateException.

Possible fixes:
   1. catch Throwable in GenericKeyedObjectPool.Evictor.run()
   2. check and eventually re-instantiate the Eviction-Timer.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to