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

AbstractPersistentCache#readSegment should propagate exception RepositoryNotReachableException

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.36.0
    • Fix Version/s: 1.38.0
    • Component/s: segment-tar
    • Labels:
      None

      Description

      Implementation of SegmentArchiveReader#readSegment can throw RepositoryNotReachableException, when invoked in AbstractPersistentCache. readSegment. One possible reason for that exception to be thrown, is timeout when communicating with remote storage, or other type of error coming from the remote storage (check AzureUtilities. readBufferFully).  

      After catching the exception, method returns null, which causes that later SNFE is being thrown in FileStore.readSegment (also counter about number of SNFE incremented), where instead RepositoryNotReachableException should be thrown at that point.  

      Test case which demonstrates described behaviour:

      OAK-9303_test.patch

       

        Attachments

        1. OAK-9303_fix_2.patch
          8 kB
          miroslav#1
        2. OAK-9303_fix.patch
          8 kB
          miroslav#1
        3. OAK-9303_test.patch
          6 kB
          miroslav#1

          Activity

            People

            • Assignee:
              miroslav#1 miroslav#1
              Reporter:
              miroslav#1 miroslav#1
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: