excalibur-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Berin Loritsch <blorit...@d-haven.org>
Subject Re: refactoring StoreJanitorImpl
Date Wed, 10 Nov 2004 16:51:27 GMT
Giacomo Pati wrote:

> Vadim brought up the idea to contribute the Cocoon Event package 
> replacement (RunnableManager) to Excalibur. Personally, I'm not sure 
> about it as in the end we have the Event package back here in a 
> different form. So, maybe you guys have a look at it at 
> http://svn.apache.org/repos/asf/cocoon/trunk/src/java/org/apache/cocoon/components/thread/

> and give us your thoughts about it.

OK, here is my surmizing of what is in that package:

1) It is a thin wrapper around the Doug Lea Concurrent library
2) That makes it pretty close to Java5 java.util.concurrent stuff
3) The LinkedQueue will has race conditions waiting to happen with the
    size tracking--only use it with one thread at a time.
4) The RunnableManager is a lot of code without one test--it makes me
    nervous.

For the most part it is a big departure from the Excalibur/D-Haven event
packages and it is pretty close to the Doug Lea Concurrent library.  I
can see some potential issues with synchronization--especially as it
relates to tracking queue size.

The RunnableManager is a non-trivial class that might actually be
better split up.  I highly recommend writing a bunch of test cases
with JUnit and Clover until the whole thing is covered by tests.
While I know Vadim does good work, it surprised me the number of
issues I found in my own code.

-- 

"Programming today is a race between software engineers striving to 
build bigger and better idiot-proof programs, and the Universe trying to 
produce bigger and better idiots. So far, the Universe is winning."
                 - Rich Cook

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@excalibur.apache.org
For additional commands, e-mail: dev-help@excalibur.apache.org
Apache Excalibur Project -- URL: http://excalibur.apache.org/


Mime
View raw message