Uploaded image for project: 'MyFaces Trinidad'
  1. MyFaces Trinidad
  2. TRINIDAD-1939

SessionChangeManager should restore attribute lock after session failover

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.2.12-core
    • 1.2.14-core , 2.0.0-beta-1
    • Components
    • None

    Description

      The issue is in SessionChangeManager, we have an attribute lock, as this:
      private transient final Object _attrRebuildLock = new Object();
      And we synchronize on this object when we want to modify the changes arrays. When failover happens, this field becomes null. And future synchronization will fail since it's null. The fix is to implement the readObject() method, and re-initialize the _attrRebuildLock field to be new Object();
      private void readObject(java.io.ObjectInputStream in)
      throws IOException, ClassNotFoundException

      { in.defaultReadObject(); _attrRebuildLock = new Object(); }

      Attachments

        1. cm-serialproxy.patch.trunk
          8 kB
          Yuan Gao
        2. cm-serialproxy.patch.1.2.x
          8 kB
          Yuan Gao
        3. cm-serialproxy.patch.1.2.12.3
          8 kB
          Yuan Gao

        Activity

          People

            Unassigned Unassigned
            yugao Yuan Gao
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: