Description
This bug tracks the conversation going on in dev@beehive:
about a threading problem with NetUI's DeferredSessionStorageHandler's acceptChanges() method. This method performs two updates to the HttpSession to first apply attributes to the session and second step to ensure that the appropriate attributes failover in a clustered server environment. When both of these operations execute and interact with the HttpSession, it's possible to have values changed in the session between accepting changes and ensuring failover of those attributes.
When this happens, the ensure failover call can cause the destroy part of a Page Flow lifecycle to be invoked on a Page Flow. In some rare circumstances, this can result in deadlock.
I've actually got a fix for this that will go in shortly...