Glance stores library
 
 
Go to file
Alfredo Moralejo 053614be14 Do not include ETag when puting manifest in chunked uploads
While testing glance with Ceph Rados Gateway using latest Ceph release
(Nautilus), i've found that glance fails to upload the manifest using
dynamic large objects mode because of the value used in ETag request.

This issue has been reported to Ceph as it seems related to some recent
change in radosgw code [1].

However, checking at the upload workflow used by glance and comparing
to Swift documentation [2], I wonder if adding the etag is actually
providing any value. In the Swift the ETag header is used to validate
integrity when uploading chunks, not the manifest while glance is doing
exactly the oposite, not sending the etag in the chunks (I guess to
avoid checksuming big images, which makes sense to me) and sending it
when puting the manifest.

This patch is removing the etag header when sending the PUT request for
the manifest in chunked uploads.

[1] https://tracker.ceph.com/issues/39160
[2] https://docs.openstack.org/swift/latest/api/large_objects.html#dynamic-large-objects

Closes-bug: #1824533
Change-Id: I0b563dfcdc30026669fb089c82db8c3df7edc808
(cherry picked from commit ed356fc6b4)
2019-04-17 16:29:26 +00:00
doc
etc/glance
glance_store Do not include ETag when puting manifest in chunked uploads 2019-04-17 16:29:26 +00:00
releasenotes Stein cycle Release Notes 2019-02-28 17:29:56 +00:00
tools
.gitignore
.gitreview Update .gitreview for stable/stein 2019-03-18 14:39:13 +00:00
.stestr.conf
.zuul.yaml add python 3.7 unit test job 2019-02-14 22:40:49 -05:00
LICENSE
README.rst
babel.cfg
lower-constraints.txt
requirements.txt
run_tests.sh
setup.cfg
setup.py
test-requirements.txt
tox.ini Update UPPER_CONSTRAINTS_FILE for stable/stein 2019-03-18 14:39:15 +00:00

README.rst

Team and repository tags

The following tags have been asserted for the Glance Store
Library:
"project:official",
"stable:follows-policy",
"vulnerability:managed".
Follow the link for an explanation of these tags.

Glance Store Library

Glance's stores library

This library has been extracted from the Glance source code for the specific use of the Glance and Glare projects.

The API it exposes is not stable, has some shortcomings, and is not a general purpose interface. We would eventually like to change this, but for now using this library outside of Glance or Glare will not be supported by the core team.