tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jess Holle <je...@ptc.com>
Subject Re: PersistentManagerBase (etc) Patches
Date Thu, 16 Dec 2004 17:50:44 GMT
And finally, here are the patches against 5.5.6 (same as HEAD at this 
moment in this case).

--
Jess Holle

Jess Holle wrote:

> Here's the patches against 5.5.4....
>
> Jess Holle wrote:
>
>> For those who tried finding through the patches only to find that 
>> they did not properly map against CVS (as I just used 'diff -u' in a 
>> directory not in a proper CVS tool...), please see the attached patch 
>> files against 5.0.30 (which were donoe with a proper CVS tool).
>>
>> I have reworked this for 5.5.4 as well, but there are a number of 
>> changes between 5.5.4 and 5.5.6 in these same files.  I thus plan to 
>> merge up to 5.5.6 before passing these patches along.  If anyone is 
>> desparately interested in the 5.5.4 stuff now, let me know.
>>
>> Overall, I do believe these are a substantial improvement over the 
>> current code, so I'd appreciate it if someone reviewed them a bit -- 
>> especially the 5.5.6 versions as it would be good to see this merged 
>> in to 5.5.x at least.
>>
>> -- 
>> Jess Holle
>>
>> Jess Holle wrote:
>>
>>> A week or two ago I found I had need of the persistent session 
>>> manager, PersistentManagerBase -- and also noticed its experimental 
>>> status.
>>>
>>> Looking at the sources I found "FIXME" comments regarding: (1) a 
>>> race condition between session passivation and session usage and (2) 
>>> a lack of LRU sorting to passivate oldest sessions first.  I also 
>>> discovered that all passivated sessions are regularly (every minuted 
>>> by default) read back into memory in their entirety to check if they 
>>> should be expired.
>>>
>>> The attached set of patches is intended to address all of these 
>>> issues -- and seems to do so to the best of my (admittedly limited) 
>>> testing.
>>>
>>> There are additional fixes that should be made to JDBCStore (i.e. in 
>>> general it seems to a trip to the database for every row in many 
>>> cases where 1 per 'n' would suffice), but this was of less interest 
>>> to me for the time being than FileStore, so I have not pursued 
>>> these.  Also, I introduced a new attribute to PersistentManagerBase, 
>>> but have not yet exposed it via JMX.  This is intentional at this 
>>> point as I am uncertain as to the merits of the non-default value of 
>>> this operation as of yet.
>>>
>>> Comments and questions are welcome.  All of the patches are against 
>>> 5.0.30, but I could update them for 5.5.x if there was sufficient 
>>> interest (e.g. if a committer was interested in committing them).
>>>
>>> -- 
>>> Jess Holle
>>> jessh@ptc.com 
>>


Mime
View raw message