The Neutron API test neutron.tests.tempest.api.test_revisions.TestRevisions.test_update_network_constrained_by_revision fails
The test error
==============
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers [req-a0545d22-75f5-479e-a062-e28a0629065d 02d962afddff4e56a7570ab7f4b73612 39a6b3e9622e431885de21dc4ad9eac9 - default default] Mechanism driver 'opendaylight_v2' failed in update_network_precommit: RevisionNumberConstraintFailed: Constrained to 2, but current revision is 3
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers Traceback (most recent call last):
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/neutron/plugins/ml2/managers.py", line 426, in _call_on_drivers
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers getattr(driver.obj, method_name)(context)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_log/helpers.py", line 67, in wrapper
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers return method(*args, **kwargs)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/networking_odl/ml2/mech_driver_v2.py", line 129, in update_network_precommit
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers context, odl_const.ODL_NETWORK, odl_const.ODL_UPDATE)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/networking_odl/ml2/mech_driver_v2.py", line 109, in _record_in_journal
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers ml2_context=context)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/networking_odl/journal/journal.py", line 97, in record
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers operation, data, depending_on=depending_on)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_db/api.py", line 150, in wrapper
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers ectxt.value = e.inner_exc
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers self.force_reraise()
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers six.reraise(self.type_, self.value, self.tb)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_db/api.py", line 138, in wrapper
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers return f(*args, **kwargs)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/networking_odl/db/db.py", line 144, in create_pending_row
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers session.flush()
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib64/python2.7/site-packages/sqlalchemy/orm/session.py", line 2171, in flush
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers self._flush(objects)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib64/python2.7/site-packages/sqlalchemy/orm/session.py", line 2198, in _flush
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers self.dispatch.before_flush(self, flush_context, objects)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib64/python2.7/site-packages/sqlalchemy/event/attr.py", line 218, in __call__
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers fn(*args, **kw)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/neutron/services/revisions/revision_plugin.py", line 45, in bump_revisions
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers self._enforce_if_match_constraints(session)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/neutron/services/revisions/revision_plugin.py", line 184, in _enforce_if_match_constraints
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers instance.revision_number)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers RevisionNumberConstraintFailed: Constrained to 2, but current revision is 3
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers
2017-08-10 13:41:46.148 727854 INFO neutron.pecan_wsgi.hooks.translation [req-a0545d22-75f5-479e-a062-e28a0629065d 02d962afddff4e56a7570ab7f4b73612 39a6b3e9622e431885de21dc4ad9eac9 - default default] PUT failed (client error): Constrained to 2, but current revision is 3
The Neutron log error
=====================
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers [req-a0545d22-75f5-479e-a062-e28a0629065d 02d962afddff4e56a7570ab7f4b73612 39a6b3e9622e431885de21dc4ad9eac9 - default default] Mechanism driver 'opendaylight_v2' failed in update_network_precommit: RevisionNumberConstraintFailed: Constrained to 2, but current revision is 3
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers Traceback (most recent call last):
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/neutron/plugins/ml2/managers.py", line 426, in _call_on_drivers
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers getattr(driver.obj, method_name)(context)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_log/helpers.py", line 67, in wrapper
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers return method(*args, **kwargs)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/networking_odl/ml2/mech_driver_v2.py", line 129, in update_network_precommit
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers context, odl_const.ODL_NETWORK, odl_const.ODL_UPDATE)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/networking_odl/ml2/mech_driver_v2.py", line 109, in _record_in_journal
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers ml2_context=context)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/networking_odl/journal/journal.py", line 97, in record
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers operation, data, depending_on=depending_on)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_db/api.py", line 150, in wrapper
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers ectxt.value = e.inner_exc
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 220, in __exit__
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers self.force_reraise()
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 196, in force_reraise
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers six.reraise(self.type_, self.value, self.tb)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/oslo_db/api.py", line 138, in wrapper
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers return f(*args, **kwargs)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/networking_odl/db/db.py", line 144, in create_pending_row
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers session.flush()
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib64/python2.7/site-packages/sqlalchemy/orm/session.py", line 2171, in flush
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers self._flush(objects)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib64/python2.7/site-packages/sqlalchemy/orm/session.py", line 2198, in _flush
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers self.dispatch.before_flush(self, flush_context, objects)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib64/python2.7/site-packages/sqlalchemy/event/attr.py", line 218, in __call__
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers fn(*args, **kw)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/neutron/services/revisions/revision_plugin.py", line 45, in bump_revisions
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers self._enforce_if_match_constraints(session)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers File "/usr/lib/python2.7/site-packages/neutron/services/revisions/revision_plugin.py", line 184, in _enforce_if_match_constraints
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers instance.revision_number)
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers RevisionNumberConstraintFailed: Constrained to 2, but current revision is 3
2017-08-10 13:41:46.145 727854 ERROR neutron.plugins.ml2.managers
2017-08-10 13:41:46.148 727854 INFO neutron.pecan_wsgi.hooks.translation [req-a0545d22-75f5-479e-a062-e28a0629065d 02d962afddff4e56a7570ab7f4b73612 39a6b3e9622e431885de21dc4ad9eac9 - default default] PUT failed (client error): Constrained to 2, but current revision is 3
Version
========
python-networking-odl-11.0.0-0.20170804111351.a27bd55.el7ost.noarch
For now we haven't understood why this test fails.
One possibility is that networking-odl update network resource with callback to bump revision number so that the test may be invalid. But we haven't investigated it yet.
this isn't critical or high because it doesn't cause any explicit harm and there is no clear contract between plugin and driver regarding to how many revision number should be bumped.
So marking this low priority and unsigned.
This should be closed until we understand why.