Uploaded image for project: 'Sling'
  1. Sling
  2. SLING-11113

resource resolver: bloom filter might be out of sync on startup

    XMLWordPrintableJSON

Details

    Description

      It appears that the bloom filter can be out of sync with the repo on startup.

      Upon startup, when not present, it get's created, and updated with all vanity paths found in the repo. If present, it is used as is.

      So for a restart of a node, there's a time window (up to save interval of 60s plus downtime) during which the addition of vanity paths will not be reflected in the bloom filter.

      Now the bloom filter is only relevant if the number of vanity paths exceeds the maximum number, so this problem might be hard to observe.

      AFAIU, the intent of persisting the bloom filter is to avoid the cost of re-filling it on startup. However, we already know that finding the vanity paths (doing the query, getting the resources and processing the properties) is already costly. It's dubious that avoiding the cost of updating the filter helps here.

      Proposal: get rid of the persistence of the bloom filter altogether, reducing the complexity of the code significantly.

       

      Attachments

        1. SLING-11113.diff
          15 kB
          Julian Reschke

        Issue Links

          Activity

            People

              cziegeler Carsten Ziegeler
              reschke Julian Reschke
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 2h 40m
                  2h 40m