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

Make the Azure Persistence timeouts configurable

    XMLWordPrintableJSON

Details

    • Task
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.18.0
    • segment-azure
    • None

    Description

      OAK-8406 introduced timeout for the server-side execution in Azure cloud. This may cause issues like this:

      Exception in thread "main" java.util.NoSuchElementException: An error occurred while enumerating the result, check the original exception for details.
              at com.microsoft.azure.storage.core.LazySegmentedIterator.hasNext(LazySegmentedIterator.java:113)
              at java.util.Iterator.forEachRemaining(Iterator.java:115)
              at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801)
              at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
              at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
              at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
              at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
              at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
              at org.apache.jackrabbit.oak.segment.azure.AzureSegmentArchiveReader.<init>(AzureSegmentArchiveReader.java:61)
              at org.apache.jackrabbit.oak.segment.azure.AzureArchiveManager.forceOpen(AzureArchiveManager.java:103)
              at org.apache.jackrabbit.oak.segment.azure.tool.SegmentStoreMigrator.migrateArchives(SegmentStoreMigrator.java:149)
              at org.apache.jackrabbit.oak.segment.azure.tool.SegmentStoreMigrator.migrate(SegmentStoreMigrator.java:87)
      [...]
      Caused by: com.microsoft.azure.storage.StorageException: The client could not finish the operation within specified maximum execution timeout.
              at com.microsoft.azure.storage.core.ExecutionEngine.executeWithRetry(ExecutionEngine.java:233)
              at com.microsoft.azure.storage.core.LazySegmentedIterator.hasNext(LazySegmentedIterator.java:109)
              ... 14 more
      Caused by: java.util.concurrent.TimeoutException: The client could not finish the operation within specified maximum execution timeout.
              at com.microsoft.azure.storage.core.ExecutionEngine.executeWithRetry(ExecutionEngine.java:232)
              ... 15 more
      

      Let's make the timeouts configurable.

      //cc: frm, ierandra

      Attachments

        1. OAK-8515.patch
          2 kB
          Tomek Rękawek

        Issue Links

          Activity

            People

              tomek.rekawek Tomek Rękawek
              tomek.rekawek Tomek Rękawek
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: