[openstack-dev] [cinder][oslo] Locks for create from volume/snapshot
Joshua Harlow
harlowja at outlook.com
Sat Jun 27 17:47:05 UTC 2015
Duncan Thomas wrote:
> We are working on some sort of distributed replacement for the locks in
> cinder, since file locks are limiting our ability to do HA. I'm afraid
> you're unlikely to get any traction until that work is done.
>
> I also have a concern that some backend do not handle load well, and so
> benefit from the current serialisation. It might be necessary to push
> this lock down into the driver and allow each driver to choose it's
> locking model for snapshots.
IMHO (and I know this isn't what everyone thinks) but I'd rather have
cinder (and other projects) be like this from top gear (
https://www.youtube.com/watch?v=xnWKz7Cthkk ) where that toyota truck is
virtually indestructible vs. trying to be a high-maintenance ferrari
(when most openstack projects do a bad job of trying to be one). So,
maybe for a time (and I may regret saying this) we could consider
focusing on reliability, consistency, being the toyota vs. handling some
arbitrary amount of load (trying to be a ferrari).
Also I'd expect/think operators would rather prefer a toyota at this
stage of openstack :) Ok enough analogies, ha.
-Josh
>
> On 27 Jun 2015 06:18, "niuzhenguo" <niuzhenguo at huawei.com
> <mailto:niuzhenguo at huawei.com>> wrote:
>
> Hi folks,____
>
> __ __
>
> Currently we use a lockfile to protect the create operations from
> concurrent delete the source volume/snapshot, we use exclusive____
>
> locks on both delete and create sides which will ensure that:____
>
> __ __
>
> __1.__If a create of VolA from snap/VolB is in progress, any delete
> requests for snap/VolB will wait until the create is complete.____
>
> __2.__If a delete of snap/VolA is in progress, any create from
> snap/VolA will wait until snap/VolA delete is complte.____
>
> __ __
>
> but, the exclusive locks will also result in:____
>
> __ __
>
> __3.__If a create of VolA from snap/VolB is inprogress, any other
> create requests from snap/VolB will wait until the create is
> complete. ____
>
> __ __
>
> So the create operations from same volume/snapshot can not process
> on parallel, please reference bp [1].____
>
> I’d like to change the current filelock or introduce a new lock to
> oslo.concurrency.____
>
> __ __
>
> Proposed change:____
>
> Add exclusive(write) locks for delete operations and shared(read)
> locks for create operations, to ensure that create from
> volume/snapshot____
>
> can work on parallel and protect create operations from concurrent
> delete the source volume/snapshot.____
>
> __ __
>
> I’d like to get what’s your suggestions, thanks in advance.____
>
> __ __
>
> [1] https://blueprints.launchpad.net/cinder/+spec/enhance-locks____
>
> __ __
>
> __ __
>
> -zhenguo____
>
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe:
> OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> <http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe>
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
More information about the OpenStack-dev
mailing list