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

AbstractPersistentCache#readSegment should propagate exception RepositoryNotReachableException

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.36.0
    • 1.38.0
    • segment-tar
    • 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

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

            Dates

              Created:
              Updated:
              Resolved: