I got this exception and a hanging JBoss on a production site. Here is the last entries in the log: -
12:03:03,012 WARN [ValidatorResources] Form 'ProductForm' not found for locale 'en_NZ'
12:07:41,977 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.BasicAction_58] - Abort of action id -3f57fdff:12dd:466f4b3f:94029 invoked while multiple threads active within it.
12:07:41,977 WARN [arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.CheckedAction_2] - CheckedAction::check - atomic action -3f57fdff:12dd:466f4b3f:94029 aborting with 1 threads active!
It did not work until I restarted it. I don't know how to replicate it as it is the first time I have seen it. It may have occured at the same time as a user triggered a call to the loadCache() method of this EJB: -
@Stateless
@TransactionManagement (TransactionManagementType.CONTAINER)
public class EStoreServerCacheManagerBean implements EStoreServerCacheManager, EStoreServerCacheManagerLocal {
/**
* Called when the cache needs to be refreshed from the database
*/
@TransactionTimeout(value=600) //10 Minutes to load all the summaries
public void loadCache() {
logger.debug("loadCache called");
Store[] stores = storeManager.getStores();
for(Store store : stores) {
EStoreObjectSpace.loadCache(store);
}
}
}
EStoreObjectSpace.loadCache() is defined as: -
public static synchronized EStoreCache loadCache(Store store) { }
Could it be that this method is synchronized ?
Does any one have any recommendations for debugging this?