Uploaded image for project: 'Felix'
  1. Felix
  2. FELIX-4566

Consistency in PersistenceManager and Cache is not guaranteed

    XMLWordPrintableJSON

Details

    Description

      Currently the store method in the CachingPersistenceManagerProxy performs an update on the PersistenceManager and then also updates the Cache.

      Since we are updating 2 resources, without any form of synchronisation its possible that the resources are out of sync.

      For example:

      Two threads A and B call configuration.update() on the same pid. The first threads calls store(), the PersistenceManager gets updated and then the second thread kicks in updates both PersistenceManager and the cache and finally the first thread updates the cache.

      Attachments

        1. FELIX-4566.patch
          6 kB
          Ioannis Canellos
        2. FELIX-45661-global-lock.patch
          5 kB
          Ioannis Canellos
        3. FELIX-4566-2.patch
          6 kB
          Ioannis Canellos

        Issue Links

          Activity

            People

              gnodet Guillaume Nodet
              iocanel Ioannis Canellos
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: