Guillaume Leger created SHIRO-544:
-------------------------------------
Summary: WeakHashMap 100% CPU utilisation in ShiroModule
Key: SHIRO-544
URL: https://issues.apache.org/jira/browse/SHIRO-544
Project: Shiro
Issue Type: Bug
Components: Integration: Guice
Affects Versions: 1.2.4
Reporter: Guillaume Leger
Assignee: Jared Bunting
`ShiroModule`'s destroyables member variable is backed by an unsynchronized
WeakHashMap, which can cause endless loops.
See:
https://java.net/jira/browse/JAVASERVERFACES-2544
https://bugs.eclipse.org/bugs/show_bug.cgi?id=397439
This means that the `add(Destroyable)` method can cause deadlock.
This issue is hard to workaround because the `destroy()` method is final so we
cannot simply override the behavior.
We were able to fix this problem by making both the add() and destroy() methods
synchronized after forking the project.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)