I've noticed that in some cases the CentralAuthenticationService deletes the 
TGTs from the ticket registry. As does the RegistryCleaner.
This caused some problems when we switched from the DefaultTicketRegistry to 
JpaTicketRegistry: the delete locks the whole table and, if two deletes happen 
simultaneously, a deadlock can occur. This manifests specifically when running 
CAS in clustered environment.
Initially we were under the impression that only the RegistryCleaner should 
clean the registry. So we put the blame on Quartz and configured it to run in 
clustered mode.
But that didn't solve the problem! The deadlocks would still happen 
sporadically.
Next, we disabled the RegistryCleaner altogether and still after some time the 
problem reappeared.
After further investigation we have discovered that the 
CentralAuthenticationService itself deletes the expired tickets from the 
registry and it seems to be the cause of the problem.

Right now we're configuring Tomcat and CAS to use JTA for transaction handling 
and it will likely resolve the problem but...

Is this a bug? I would think that the CentralAuthenticationService should just 
mark expired tickets but then the RegistryCleaner would delete them.

Please advise.

Thank you,

AT.
-- 
You are currently subscribed to [email protected] as: 
[email protected]
To unsubscribe, change settings or access archives, see 
http://www.ja-sig.org/wiki/display/JSG/cas-user

Reply via email to