Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-7182 Make it possible to update Guava
  3. OAK-8702

deprecate Guava based APIs in o.a.j.o.cache

    XMLWordPrintableJSON

    Details

    • Type: Technical task
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.20.0
    • Component/s: core-spi
    • Labels:
      None

      Description

      There are multiple classes here; but it seems the most important one is CacheLIRS, where the other ones are related to that.

      CacheLIRS implements the Guava Cache API.

      In a perfect world, we would implement new variants which do not rely on that API but are "sufficiently" compatible. Unfortunately, that would mean adding own APIs that replecate the Guava API. Furthermore, due to the way the caches work, there are quite a few support API (Loader, Weicher, Stats etc) that would need to be added as well.

      The classes are currently used in three other parts of Oak, and hopefully not anywhere else. The best way forward seems to me to leave them untouched, but stop exporting the packages. Other users inside Oak would need to embed copies of the ~5 classes for now. cache-removal.diff demonstrates how that would work.

        Attachments

        1. cache-removal.diff
          4 kB
          Julian Reschke
        2. OAK-8702.diff
          6 kB
          Julian Reschke

          Issue Links

            Activity

              People

              • Assignee:
                reschke Julian Reschke
                Reporter:
                reschke Julian Reschke
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: