+1 to going back to file locks, too. We can keep the current scheme under a different API in the module for anyone that wants to use it explicitly, but I think at this point it’s better to have something that works reliably when configured properly as the default.
I hope we can switch that to tooz/zookeeper in a future release, but we’ll need some more discussion before making that change. Doug On Aug 20, 2014, at 3:29 PM, Davanum Srinivas <[email protected]> wrote: > Ben, +1 to the plan you outlined. > > -- dims > > On Wed, Aug 20, 2014 at 4:13 PM, Ben Nemec <[email protected]> wrote: >> On 08/20/2014 01:03 PM, Vishvananda Ishaya wrote: >>> This may be slightly off-topic but it is worth mentioning that the use of >>> threading.Lock[1] >>> which was included to make the locks thread safe seems to be leading to a >>> deadlock in eventlet[2]. >>> It seems like we have rewritten this too many times in order to fix minor >>> pain points and are >>> adding risk to a very important component of the system. >>> >>> [1] https://review.openstack.org/#/c/54581 >>> [2] https://bugs.launchpad.net/nova/+bug/1349452 >> >> This is pretty much why I'm pushing to just revert to the file locking >> behavior we had up until a couple of months ago, rather than >> implementing some new shiny lock thing that will probably cause more >> subtle issues in the consuming projects. It's become clear to me that >> lockutils is too deeply embedded in the other projects, and there are >> too many implementation details that they rely on, to make significant >> changes to its default code path. >> >>> >>> On Aug 18, 2014, at 2:05 PM, Pádraig Brady <[email protected]> wrote: >>> >>>> On 08/18/2014 03:38 PM, Julien Danjou wrote: >>>>> On Thu, Aug 14 2014, Yuriy Taraday wrote: >>>>> >>>>> Hi Yuriy, >>>>> >>>>> […] >>>>> >>>>>> Looking forward to your opinions. >>>>> >>>>> This looks like a good summary of the situation. >>>>> >>>>> I've added a solution E based on pthread, but didn't get very far about >>>>> it for now. >>>> >>>> In my experience I would just go with the fcntl locks. >>>> They're auto unlocked and well supported, and importantly, >>>> supported for distributed processes. >>>> >>>> I'm not sure how problematic the lock_path config is TBH. >>>> That is adjusted automatically in certain cases where needed anyway. >>>> >>>> Pádraig. >>>> >>>> _______________________________________________ >>>> OpenStack-dev mailing list >>>> [email protected] >>>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev >>> >>> >>> >>> _______________________________________________ >>> OpenStack-dev mailing list >>> [email protected] >>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev >>> >> >> >> _______________________________________________ >> OpenStack-dev mailing list >> [email protected] >> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > > > > -- > Davanum Srinivas :: http://davanum.wordpress.com > > _______________________________________________ > OpenStack-dev mailing list > [email protected] > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev _______________________________________________ OpenStack-dev mailing list [email protected] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
