Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-9464

Notify listeners without holding the shared topology lock


    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 9.4.0.Final
    • 9.4.0.Final
    • Core

      Post-write listeners are invoked from ClusteringDependentLogic.commitSingleEntry(), while holding the shared topology lock. We should be able to release the topology lock before invoking listeners, so that slow listeners (e.g. clustered/client listeners) don't delay the installation of a new topology.

      Going further, we could try to use optimistic locking (e.g. with a StampedLock) instead of the ReentrantReadWriteLock, reverting the data container write if the topology changes and we are no longer an owner. This could help in scenarios where the data container update itself is slow, e.g. when using passivation with a JDBC/remote store.

            dberinde@redhat.com Dan Berindei (Inactive)
            dberinde@redhat.com Dan Berindei (Inactive)
            Diego Lovison Diego Lovison
            0 Vote for this issue
            3 Start watching this issue