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

Replace the query exclusive lock with a cache tracker

    XMLWordPrintableJSON

    Details

    • Flags:
      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-putifnewer.patch
          3 kB
          Julian Reschke
        2. OAK-4112-4.patch
          43 kB
          Tomek Rękawek
        3. OAK-4112-3.patch
          42 kB
          Tomek Rękawek
        4. OAK-4112-2.patch
          42 kB
          Tomek Rękawek
        5. OAK-4112-1.patch
          37 kB
          Marcel Reutegger
        6. OAK-4112.patch
          38 kB
          Tomek Rękawek

          Issue Links

            Activity

              People

              • Assignee:
                tomek.rekawek Tomek Rękawek
                Reporter:
                tomek.rekawek Tomek Rękawek
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: