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

NodeCache.getIfPresent() may result in writing to persistent cache

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 1.4.10, 1.5.14
    • Fix Version/s: 1.4.11, 1.5.15, 1.6.0
    • Component/s: cache, documentmk
    • Labels:
      None

      Description

      The NodeCache#getIfPresent() method checks whether the requested item exists either in the memCache or the persisted, multi-generational cache.

      If the item exists in the multi-generational cache, but not in the most recent (write) generation, it's being moved (so the MultiGenerationMap.put() method is invoked).

      As a result, the NodeCache#getIfPresent() method may result in a synchronous write, even in the asynchronous mode.

        Attachments

        1. OAK-5138.patch
          5 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:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: