Uploaded image for project: 'jclouds'
  1. jclouds
  2. JCLOUDS-793

make blobstore put operations report server errors via HttpResponseException

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 1.8.1
    • Fix Version/s: None
    • Component/s: jclouds-blobstore
    • Labels:

      Description

      observed with openstack-swift 1.8.1 ObjectApi.put()

      if the server responds with a 4xx/5xx response, the put() call returns null for the etag

      would it be more useful if there was an HttpResponseException were thrown, with the actual request, response, and response code available? as of now, the null response only indicates that an etag was not found in the response, not that the whole request failed

      I observe that a failure to communicate (e.g. BackoffLimitedRetryHandler running through its retires) will result in an HttpResponseException

      there may also be an issue with consistency – from perusing the AzureBlobClient and S3Client code it seems like an HttpException("did not receive ETag") would be thrown, and not a null etag

      I would also propose that GETs report 4xx/5xx responses via HttpResponseException as well

      I realize this is a major departure from existing behavior, perhaps this exception-reporting-on-error could be enabled via an override?

      thank you

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              dchsueh Daniel Hsueh
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: