Retry bw_usage_update() on innodb Deadlock
Retry bw_usage_update() on innodb Deadlock

Adds a new decorator _retry_on_deadlock() to sqlalchemy api.  This patch
makes bw_usage_update() use it.

Fixes bug 1129622

Change-Id: I0293c62d2dd5ac036445bc639cabbd05ba016e83

maheshp/novatest,maelnor/nova,rrader/nova-docker-plugin,ntt-sic/nova,CloudServer/nova,Triv90/Nova,silenceli/nova,takeshineshiro/nova,Brocade-OpenSource/OpenStack-DNRM-Nova,varunarya10/nova_test_latest,openstack/nova,shail2810/nova,Francis-Liu/animated-broccoli,rajalokan/nova,fnordahl/nova,Tehsmash/nova,zzicewind/nova,shail2810/nova,TieWei/nova,CiscoSystems/nova,mandeepdhami/nova,joker946/nova,eharney/nova,alexandrucoman/vbox-nova-driver,TwinkleChawla/nova,shahar-stratoscale/nova,bigswitch/nova,mahak/nova,joker946/nova,blueboxgroup/nova,badock/nova,zzicewind/nova,MountainWei/nova,bclau/nova,imsplitbit/nova,jeffrey4l/nova,petrutlucian94/nova_dev,plumgrid/plumgrid-nova,affo/nova,Tehsmash/nova,plumgrid/plumgrid-nova,CCI-MOC/nova,sacharya/nova,barnsnake351/nova,projectcalico/calico-nova,apporc/nova,devendermishrajio/nova_test_latest,sridevikoushik31/nova,Stavitsky/nova,angdraug/nova,TieWei/nova,petrutlucian94/nova_dev,noironetworks/nova,saleemjaveds/https-github.com-openstack-nova,mikalstill/nova,devendermishrajio/nova,sridevikoushik31/openstack,sridevikoushik31/openstack,dawnpower/nova,luogangyi/bcec-nova,vmturbo/nova,kimjaejoong/nova,spring-week-topos/nova-week,BeyondTheClouds/nova,mmnelemane/nova,ntt-sic/nova,orbitfp7/nova,SUSE-Cloud/nova,varunarya10/nova_test_latest,mikalstill/nova,felixma/nova,viggates/nova,mahak/nova,nikesh-mahalka/nova,cloudbase/nova-virtualbox,sebrandon1/nova,TwinkleChawla/nova,petrutlucian94/nova,dawnpower/nova,maelnor/nova,adelina-t/nova,virtualopensystems/nova,double12gzh/nova,alvarolopez/nova,sacharya/nova,CEG-FYP-OpenStack/scheduler,luogangyi/bcec-nova,edulramirez/nova,Stavitsky/nova,jianghuaw/nova,hanlind/nova,LoHChina/nova,cloudbase/nova-virtualbox,maheshp/novatest,DirectXMan12/nova-hacking,klmitch/nova,scripnichenko/nova,citrix-openstack-build/nova,Triv90/Nova,sridevikoushik31/nova,LoHChina/nova,alaski/nova,cyx1231st/nova,rickerc/nova_audit,klmitch/nova,qwefi/nova,dims/nova,JianyuWang/nova,akash1808/nova,adelina-t/nova,noironetworks/nova,Yusuke1987/openstack_template,hanlind/nova,petrutlucian94/nova,rahulunair/nova,devendermishrajio/nova,ewindisch/nova,watonyweng/nova,tealover/nova,sridevikoushik31/openstack,cloudbau/nova,saleemjaveds/https-github.com-openstack-nova,angdraug/nova,gspilio/nova,zaina/nova,tanglei528/nova,yatinkumbhare/openstack-nova,jianghuaw/nova,BeyondTheClouds/nova,klmitch/nova,tudorvio/nova,NeCTAR-RC/nova,leilihh/nova,sebrandon1/nova,j-carpentier/nova,yosshy/nova,vladikr/nova_drafts,Francis-Liu/animated-broccoli,CEG-FYP-OpenStack/scheduler,affo/nova,cloudbase/nova,NeCTAR-RC/nova,leilihh/novaha,eayunstack/nova,devendermishrajio/nova_test_latest,tianweizhang/nova,jianghuaw/nova,orbitfp7/nova,gooddata/openstack-nova,isyippee/nova,vmturbo/nova,Triv90/Nova,takeshineshiro/nova,kimjaejoong/nova,phenoxim/nova,mahak/nova,openstack/nova,alaski/nova,devoid/nova,JioCloud/nova_test_latest,thomasem/nova,rajalokan/nova,zhimin711/nova,shootstar/novatest,berrange/nova,devoid/nova,leilihh/nova,badock/nova,cernops/nova,openstack/nova,ewindisch/nova,ruslanloman/nova,Yuriy-Leonov/nova,phenoxim/nova,SUSE-Cloud/nova,dstroppa/openstack-smartos-nova-grizzly,zaina/nova,redhat-openstack/nova,nikesh-mahalka/nova,CiscoSystems/nova,yatinkumbhare/openstack-nova,projectcalico/calico-nova,Juniper/nova,gooddata/openstack-nova,gooddata/openstack-nova,ruslanloman/nova,Brocade-OpenSource/OpenStack-DNRM-Nova,spring-week-topos/nova-week,vmturbo/nova,alvarolopez/nova,gspilio/nova,CCI-MOC/nova,tangfeixiong/nova,leilihh/novaha,Metaswitch/calico-nova,rickerc/nova_audit,yrobla/nova,bclau/nova,iuliat/nova,dstroppa/openstack-smartos-nova-grizzly,sebrandon1/nova,silenceli/nova,maheshp/novatest,mandeepdhami/nova,bgxavier/nova,mgagne/nova,yrobla/nova,akash1808/nova_test_latest,ted-gould/nova,watonyweng/nova,imsplitbit/nova,Juniper/nova,barnsnake351/nova,BeyondTheClouds/nova,Yusuke1987/openstack_template,berrange/nova,felixma/nova,mmnelemane/nova,akash1808/nova,JioCloud/nova_test_latest,klmitch/nova,qwefi/nova,thomasem/nova,rajalokan/nova,hanlind/nova,cernops/nova,fnordahl/nova,dims/nova,edulramirez/nova,vmturbo/nova,akash1808/nova_test_latest,sridevikoushik31/nova,JioCloud/nova,rahulunair/nova,jeffrey4l/nova,shahar-stratoscale/nova,blueboxgroup/nova,eharney/nova,bgxavier/nova,redhat-openstack/nova,rahulunair/nova,cyx1231st/nova,tangfeixiong/nova,Metaswitch/calico-nova,DirectXMan12/nova-hacking,MountainWei/nova,raildo/nova,Yuriy-Leonov/nova,sridevikoushik31/nova,JianyuWang/nova,viggates/nova,belmiromoreira/nova,tudorvio/nova,belmiromoreira/nova,scripnichenko/nova,ted-gould/nova,cloudbase/nova,cernops/nova,citrix-openstack-build/nova,tianweizhang/nova,OpenAcademy-OpenStack/nova-scheduler,iuliat/nova,rajalokan/nova,tanglei528/nova,vladikr/nova_drafts,alexandrucoman/vbox-nova-driver,DirectXMan12/nova-hacking,eayunstack/nova,raildo/nova,yrobla/nova,zhimin711/nova,cloudbau/nova,Juniper/nova,eonpatapon/nova,apporc/nova,jianghuaw/nova,tealover/nova,JioCloud/nova,OpenAcademy-OpenStack/nova-scheduler,eonpatapon/nova,rrader/nova-docker-plugin,isyippee/nova,CloudServer/nova,whitepages/nova,bigswitch/nova,dstroppa/openstack-smartos-nova-grizzly,gooddata/openstack-nova,yosshy/nova,shootstar/novatest,Juniper/nova,gspilio/nova,whitepages/nova,mikalstill/nova,virtualopensystems/nova,cloudbase/nova,mgagne/nova,j-carpentier/nova,double12gzh/nova