Uploaded image for project: 'XWiki Commons'
  1. XWiki Commons
  2. XCOMMONS-3837

Listing and prefix deletion failures of the blob stores escape as unchecked client exceptions

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • None
    • 17.10.0
    • Store
    • None
    • Unknown

    Description

      S3BlobStore#deleteDescendants declares BlobStoreException but iterates the listing outside any try block, so a failed ListObjectsV2 throws the SDK's runtime exception, while hasDescendants wraps it. More generally, the streams returned by listDescendants throw implementation-specific unchecked exceptions while iterating (SdkException for S3, UncheckedIOException for the file system), and this is not documented.

      Proposal: wrap the failure in deleteDescendants; add an API UncheckedBlobStoreException (cause BlobStoreException) thrown by the listing streams of both stores, and document it on listDescendants.

      Attachments

        Activity

          People

            ciaens Clément Christiaens
            ciaens Clément Christiaens
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated: