Galera multi-writers compliant sync_allocations
Galera multi-writers compliant sync_allocations

Currently sync_allocations[1] uses with_lockmode('update) which implies
possible deadlocks with Galera multi-writers. This change decorates the
method in order to catch and retry sync_allocations.

[1] neutron.plugins.ml2.drivers.type_tunnel

Change-Id: Ic01614cb5daf174848cf14a6aa4b38c4ed40fe1e

mmnelemane/neutron,wenhuizhang/neutron,JianyuWang/neutron,glove747/liberty-neutron,cloudbase/neutron,barnsnake351/neutron,swdream/neutron,watonyweng/neutron,cloudbase/neutron,igor-toga/local-snat,asgard-lab/neutron,sasukeh/neutron,dims/neutron,apporc/neutron,asgard-lab/neutron,eonpatapon/neutron,openstack/neutron,cisco-openstack/neutron,dhanunjaya/neutron,sebrandon1/neutron,mahak/neutron,dims/neutron,skyddv/neutron,apporc/neutron,dhanunjaya/neutron,igor-toga/local-snat,openstack/neutron,adelina-t/neutron,jumpojoy/neutron,eayunstack/neutron,barnsnake351/neutron,chitr/neutron,MaximNevrov/neutron,huntxu/neutron,mattt416/neutron,sasukeh/neutron,jacknjzhou/neutron,noironetworks/neutron,swdream/neutron,takeshineshiro/neutron,cisco-openstack/neutron,MaximNevrov/neutron,klmitch/neutron,suneeth51/neutron,adelina-t/neutron,neoareslinux/neutron,yanheven/neutron,javaos74/neutron,klmitch/neutron,wolverineav/neutron,chitr/neutron,vivekanand1101/neutron,jumpojoy/neutron,takeshineshiro/neutron,silenci/neutron,paninetworks/neutron,jacknjzhou/neutron,neoareslinux/neutron,vivekanand1101/neutron,watonyweng/neutron,huntxu/neutron,yanheven/neutron,noironetworks/neutron,eonpatapon/neutron,javaos74/neutron,wolverineav/neutron,mahak/neutron,JianyuWang/neutron,mahak/neutron,eayunstack/neutron,shahbazn/neutron,suneeth51/neutron,wenhuizhang/neutron,paninetworks/neutron,mattt416/neutron,sebrandon1/neutron,bigswitch/neutron,openstack/neutron,mmnelemane/neutron,silenci/neutron,SamYaple/neutron,shahbazn/neutron,glove747/liberty-neutron,bigswitch/neutron,SamYaple/neutron,skyddv/neutron