one of our apps was stuck in a deadlock in ResourceProperties.size(), see excerpt of the stack trace below. this fix synchronizes various overriding methods since they are synchronized in Hashtable as well. removed superfluous toString method too. ``` "app-230": at java.util.Hashtable.size(Hashtable.java:206) - waiting to lock <0xa13f8548> (a helma.util.ResourceProperties) at helma.util.ResourceProperties.size(ResourceProperties.java:529) at java.util.Hashtable.equals(Hashtable.java:742) - locked <0xa1065708> (a helma.util.ResourceProperties) at helma.objectmodel.db.DbSource.equals(DbSource.java:292) ... "app-439": at java.util.Hashtable.size(Hashtable.java:206) - waiting to lock <0xa1065708> (a helma.util.ResourceProperties) at helma.util.ResourceProperties.size(ResourceProperties.java:529) at java.util.Hashtable.equals(Hashtable.java:742) - locked <0xa13f8548> (a helma.util.ResourceProperties) at helma.objectmodel.db.DbSource.equals(DbSource.java:292) ... ``` |
||
---|---|---|
.. | ||
helma | ||
META-INF/services |