Uploaded image for project: 'EJB 3.0'
  1. EJB 3.0
  2. EJBTHREE-956

StatefulTreeCache does not replicate removed parent if it has live nested children

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • AS 4.2.0 GA, AS 5.0.0.Beta3
    • AS 4.2.0 GA
    • None
    • None

      When StatefulTreeCache gets a callback from StatefulRemoveInterceptor telling it an @Remove method has been invoked, it only removes the bean context from the clustered cache if the bean doesn't have any live nested children. Problem is, it also doesn't replicate the bean context. Effect of this is that the other nodes in the cluster are made aware that the parent bean has been removed.

      This problem occurs because the StatefulRemoveInterceptor handles the @Remove after the call has already passed through the StatefulReplicationInterceptor.

      Solution is to have StatefulTreeCache.remove() replicate the context via a TreeCache.put() if the presence of live nested beans prevents it removing the context via a TreeCache.remove().

              bstansbe@redhat.com Brian Stansberry
              bstansbe@redhat.com Brian Stansberry
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: