f7eec937c8
Very rarely, we see an object in swift doesn't match the sha256 we expect. Nor does the Etag (swift-calculated md5sum) match the md5sum that openstacksdk calculated on upload. Something is going wrong somewhere, but nothing is raising an exception. This change adds considerable debugging to attempt to localize the point at which the data in swift is not what we expect. It also raises exceptions in those cases to attempt to cause the upload to fail (which in a content-addressible storage system is better than having the wrong content at a given address). If we see uploads fail, we can track down the log entries to find out why. * Add more log lines to swift driver * Include upload UUID in more log lines * Calculate and keep track of each chunk's md5 during upload * Verify that the local and swift-calculated md5sums match after each chunk upload * Verify that all metadata for each chunk matches before and after the move * Verify that all metadata for each chunk matches the original calculation before finalizing the final large-object manifest. * Adjust logging verbosity for debug and non-debug modes Change-Id: If9f7cfe7d4be2f23de80e9d3659af9c060d3f22c |
||
---|---|---|
.. | ||
__init__.py | ||
filesystem.py | ||
main.py | ||
storage.py | ||
storageutils.py | ||
swift.py |