Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-4112

Replace the query exclusive lock with a cache tracker

    XMLWordPrintableJSON

Details

    • Patch

    Description

      The MongoDocumentStore#query() method uses an expensive TreeLock#acquireExclusive method, introduced in OAK-1897 to avoid caching outdated documents.

      It should be possible to avoid acquiring the exclusive lock, by tracking the cache changes that occurs during the Mongo find() operation. When the find() is done, we can update the cache with the received documents if they haven't been invalidated in the meantime.

      Attachments

        1. OAK-4112.patch
          38 kB
          Tomek Rękawek
        2. OAK-4112-1.patch
          37 kB
          Marcel Reutegger
        3. OAK-4112-2.patch
          42 kB
          Tomek Rękawek
        4. OAK-4112-3.patch
          42 kB
          Tomek Rękawek
        5. OAK-4112-4.patch
          43 kB
          Tomek Rękawek
        6. OAK-4112-putifnewer.patch
          3 kB
          Julian Reschke

        Issue Links

          Activity

            People

              tomek.rekawek Tomek Rękawek
              tomek.rekawek Tomek Rękawek
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: