cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Vadim Gritsenko <va...@reverycodes.com>
Subject Re: Migration report from Excalibur Event to RunnableManager
Date Wed, 10 Nov 2004 03:23:14 GMT
Carsten Ziegeler wrote:
> Giacomo Pati wrote: 
> 
>>Backporting is finished.
>>
>>I've deeply looked at the
>>org.apache.excalibur.store.impl.StoreJanitorImpl. The only 
>>way to have it use the RunnableManger is by copying the 
>>source :-( because that class isn't made for subclassing. I 
>>have one ready just to have me see how it could be 
>>implemented. To make the class subclassable we have to open 
>>up a bunch of getters/setter and overwrite the start and run 
>>method. But this is more or less having it copied.
>>
>>An other approach would be to refactor the memory management 
>>logic into its own method and have the run method call it in 
>>its loop body (current impl.). That way subclassing would 
>>still overwrite the start and run method but the hole memory 
>>management logic will be hidden in its own protected method.
>>
>>Please, give me some oppinions on how to proceed. Take into 
>>account that if we refactor the excalibur-store package we 
>>need to release that right together (or one day before) the 
>>cocoon 2.1.6 release if we want to have a StoreJanitor impl. 
>>that uses the RunnableManager (I've never released any of the 
>>Avalon/Excalibur packages, thus don't know how long it will 
>>take). Also remember that the Store is core to Cocoon and IMO 
>>the core should use the abilities of core components like the 
>>RunnableManager.
>>
>>I know many of you don't see why this has any importance nor 
>>why that should happen. Most of us run Cocoon in Jetty or 
>>Tomcat. But there are also users with BWL and WAS which run 
>>Cocoon there in. Recently a commercial app servers vendor has 
>>begun to "sandbox" (via RACF!) the deployed servlets and has 
>>inhibited thread creation (IIRC the J2EE spec says "your app 
>>components may not spawn their own threads". By the 
>>single-class-for thread-creation approache used by the 
>>RunnableManager we can point them to where to relax the 
>>sandboxing to make Cocoon run again. I have evangelized 
>>people to use Cocoon as many of aou have as well. Now some of 
>>them need to migrate onto the app server release mentioned 
>>above out of strategic directions in their companies and of 
>>course they expect some support/help/suggestions.
>>
> 
> Hmm, not sure what's best here - but afaik doing a release of
> excalibur-store might be not possible given the current time
> frame, so why not copy the source of the class for now,
> and provide at the same time a patch to excalibur? As soon
> as they're doing a release we can remove our copy again.

Should we migrate RunnableManager to Excalibur and update Janitor there to use it?

/me ducks and runs


Vadim

Mime
View raw message