Comment 14 for bug 1417304

Revision history for this message
Nikhil Komawar (nikhil-komawar) wrote :

It is doubtful for the entire solution related to this bug be implemented in Kilo.

1. @Tushar: Thanks for that nice suggestion. It does make sense however, we've some challenges to implement it. With multiple locations enabled, it becomes really difficult for Glance to determine whether all the locations need to be checked before deleting this Image. This can result into deletes being slow. They can be slow already in some of the backends (especially for larger Images). So, we are looking at some tradeoffs here (and thanks for adding the performance overhead tag to your suggestion). Also, passing around locations might not be a good idea for some of the stores like swift that have sensitive data.

Also, this kind of resource utilization is seen in case of the current Image upload logic (using REST API call and not asynchronous task process). If an Image in saving state is deleted it's not deleted right away and only after the API tries to change it's state to active that it find it to be deleted (NotFound) and breaks the Image creation workflow.

Having to check the state of Image record every so often during the upload process is an expensive operation. I'm not completely against it however, we need a cleaner and more performant way to fix this.

So, until we have a good solution, I recommend this to be deferred.

Can we remove the RC1 tag or anyone has any objections?

Thanks!