While evaluating Resin 4.0.16 we are seeing something that makes me 
really concerned. It appears as if after a redeploy there can be two 
instances of our main app running.

I was made aware of this by noticing that timed servlets (<run-at ... 
/>) were having concurrency issues and logging the same event twice 
within the same second.
This made me add some extra logging in a <load-on-startup/> servlet, and 
I can actually see that at some reploys, the same web app is initialized 
twice - in different, concurrent threads and different classloaders.
For example one instance may be initialized by 
Thread[http://*:8080-776,5,main] and at the same time (give or take a 
few seconds) another one by Thread[resin-366,5,main].

I cannot deliberately recreate it by simply redeploying (which makes it 
less likely to be a configuration issue). But it happens about daily on 
our test server; possibly issuing requests on a session in the app while 
redeploying is a factor.

We are not using versioning.
dependency-check-interval is set to 20 seconds.
The "extra" app does not appear in the admin console.

How can we figure out what is going on here???



resin-interest mailing list

Reply via email to