yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #21663
[Bug 1028495] Re: Separate image_snapshot from image_uploading
very old refactoring wishlist item
** Changed in: nova
Status: Confirmed => Opinion
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1028495
Title:
Separate image_snapshot from image_uploading
Status in OpenStack Compute (Nova):
Opinion
Bug description:
The current code does this:
1. Set task_state=image_snapshot
2. Snapshot Instance
3. Upload Image
4. Set task_state=None
There are a couple of problems with this.
First, there's a race condition between when the Upload-Image task
completes and when the task_state is set to None. This means that if
we're polling the image to see when it goes active and then take a
snapshot immediately afterwards, it *may* fail.
The second issue is that snapshotting an instance is quick, but
uploading is slow, so we're preventing more snapshots from being taken
for an *unnecessarily* long period of time.
Really, we should only forbid snapshots while the instance is
snapshotting. Uploading the Image would be handled asynchronously.
So, the revised proposal is:
Compute Manager:
1. Set task_state=image_snapshot
2. Snapshot Instance
3. Queue Snapshot for Upload
4. Set task_state=None
Image-Upload Worker
1. Dequeue Image Upload Job
2. Upload to Glance
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1028495/+subscriptions