In Swift store, retry chunk upload on Exception

Bug #1310735 reported by Hemanth Makkapati
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
glance_store
Won't Fix
Undecided
Hemanth Makkapati

Bug Description

During an image upload, if an exception occurs while uploading a chunk to swift, the glance swift store aborts the upload and deletes all the chunks that were uploaded thus far. Though this is the desired behavior, it maybe worthwhile to retry the failed chunk before deleting other chunks to account for intermittent connection errors. This will save a lot of time and bandwidth especially in the case of large images.

https://github.com/openstack/glance/blob/master/glance/store/swift.py#L437

Changed in glance:
assignee: nobody → Hemanth Makkapati (hemanth-makkapati)
Revision history for this message
Stuart McLaren (stuart-mclaren) wrote :

Hi Hemanth,

This may be worth a blueprint rather than a bug? eg similar to https://blueprints.launchpad.net/glance/+spec/retry-swift-download

If you're going to push up a patch (most welcome!) its probably worth bearing in mind
that the current method doesn't use much memory/disk when uploading (as it doesn't have to cache for retry) so it may
be worth making the behaviour configurable.

Revision history for this message
Feilong Wang (flwang) wrote :

+1 with Stuart, it's most like a feature instead of a bug.

Revision history for this message
Hemanth Makkapati (hemanth-makkapati) wrote :

Stuart and Fei,
Thanks the comments.
I will register a BP and get your feedback on it.

Revision history for this message
Sam Morrison (sorrison) wrote :

Just wondering what the state of this is?

Revision history for this message
Hemanth Makkapati (hemanth-makkapati) wrote :

There is a patch up for this https://review.openstack.org/#/c/120866/

Louis Taylor (kragniz)
affects: glance → glance-store
Revision history for this message
Flavio Percoco (flaper87) wrote :
Changed in glance-store:
status: New → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.