]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commit
BigSwitch: Auto re-sync on backend inconsistencies
authorKevin Benton <blak111@gmail.com>
Fri, 14 Feb 2014 10:07:29 +0000 (10:07 +0000)
committerMark McClain <mmcclain@yahoo-inc.com>
Wed, 5 Mar 2014 20:08:39 +0000 (15:08 -0500)
commiteb7de12defaa30624141f27631228f49ab8befc9
tree5497eb8deca361c09c3b66affa28653beb64d3ea
parent8a1d02194324ac564c060412d85e924f5dc86a89
BigSwitch: Auto re-sync on backend inconsistencies

If the controller supports it, pass a hash to the
controller indicating the expected state that a
REST transaction is updating. If the state is
inconsistent, the controller will return an error
indicating a conflict and the plugin/driver will
trigger a full synchronization.

For controllers that don't support the consistency
hash, trigger a full background synchronization
if the plugin tries to create a port and receives
a 404 error due to the parent network not existing.

Implements: blueprint bsn-auto-resync
Change-Id: I07c92b011453f6bf81b8ee12661170817287cdd7
etc/neutron/plugins/bigswitch/restproxy.ini
neutron/db/migration/alembic_migrations/versions/81c553f3776c_bsn_consistencyhashes.py [new file with mode: 0644]
neutron/plugins/bigswitch/config.py
neutron/plugins/bigswitch/db/consistency_db.py [new file with mode: 0644]
neutron/plugins/bigswitch/plugin.py
neutron/plugins/bigswitch/servermanager.py
neutron/plugins/ml2/drivers/mech_bigswitch/driver.py
neutron/tests/unit/bigswitch/fake_server.py
neutron/tests/unit/bigswitch/test_base.py
neutron/tests/unit/bigswitch/test_restproxy_plugin.py
neutron/tests/unit/ml2/drivers/test_bigswitch_mech.py