Hi,
The method DefaultVOMSValidationStrategy#validateAC(VOMSAttribute attributes, X509Certificate[] chain) is synchronized, meaning that for an instance of the strategy, at most a single attribute certificate can be validated at a time. If one reuses the same DefaultVOMSValidator, this synchronization leads to lock congestion when used from many threads.
I wonder whether this synchronization is really necessary - it isn't obvious to me from the code why it is synchronized. In particular the method of the same name but without the certificate chain is not synchronized.
Cheers,
/gerd