You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2012/05/07 18:15:31 UTC

[Bug 53199] New: Refactor ConnectionPool to use ScheduledExecutorService instead of TimerTask

https://issues.apache.org/bugzilla/show_bug.cgi?id=53199

          Priority: P2
            Bug ID: 53199
          Assignee: dev@tomcat.apache.org
           Summary: Refactor ConnectionPool to use
                    ScheduledExecutorService instead of TimerTask
          Severity: enhancement
    Classification: Unclassified
          Reporter: patric@rufflar.com
          Hardware: PC
            Status: NEW
           Version: unspecified
         Component: jdbc-pool
           Product: Tomcat Modules

ConnectionPool should be refactored to use a ScheduledExecutorService instead
of a TimerTask.

This would enable providing a custom ScheduledExecutorService to jdbc pool to
reduce expensive thread creation in certain environments
(in my case: junit tests, where each test case will get a new environment,
including a ConnectionPool)

-- 
You are receiving this mail because:
You are the assignee for the bug.

[Bug 53199] Refactor ConnectionPool to use ScheduledExecutorService instead of TimerTask

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=53199

--- Comment #2 from Patric Rufflar <pa...@rufflar.com> ---
I just want to add that the current (TimerTask) implementation seems to have a
bug which causes that the PoolCleaner Thread will not be terminated/canceled in
some cases.
I am currently unable to reproduce this but I saw this issue several times.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[Bug 53199] Refactor ConnectionPool to use ScheduledExecutorService instead of TimerTask

Posted by bu...@apache.org.
https://issues.apache.org/bugzilla/show_bug.cgi?id=53199

Filip Hanik <fh...@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |NEEDINFO
                 OS|                            |All

--- Comment #1 from Filip Hanik <fh...@apache.org> ---
hi Patric, I'm all for this. If you have a patch for this to get us started
that would be great.

The requirements for the default implementation are

1. No more than 1 thread should ever be started for this task

2. The thread has to be created with the class loader of the library, not of
the thread (context classloader)

3. When the last pool is closed that is using the cleaner is closed, the thread
should also go away

-- 
You are receiving this mail because:
You are the assignee for the bug.