Uploaded image for project: 'Libcloud'
  1. Libcloud
  2. LIBCLOUD-228

Atmos driver's upload_object_via_stream is broken when the object does not already exist

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.10.1
    • 0.11.0
    • Storage
    • None

    Description

      Atmos doesn't like PUT requests being sent when the object has not already been created. The Atmos driver's implementation of upload_object_via_stream was using PUT requests with Range headers unconditionally.

      The attached patch gets the driver to first check if the object exists. If not, the first chunk is sent as a POST request in order to create the object. If not, the first chunk is sent as a PUT with no Range header. Subsequent chunks are all sent as PUT requests with Range headers as before.

      This has been tested against Ninefold's Atmos service.

      Attachments

        Activity

          People

            kami Tomaz Muraus
            jeamland Benno Rice
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment