Fix E402 (module level import not at top of file) pep8 errors
and no longer ignore new failures.
Trivialfix
Change-Id: If9a202f1f322b5b03966c692e33e94b7c872079b
This adds a new 'revision_number' field to all standard attribute
objects. This number can be used to distinguish between
snapshots of an object to determine which one is more recent
without having to trust system clocks. This can be leveraged
by agents, ML2 backends, core plugin backends, and/or other
external systems that need up-to-date data from the neutron
server to ignore stale updates.
This is done by leveraging the version counting feature built
into SQLAlchemy.[1] This converts each record update into a
compare-and-swap update based on the current version number.
If the CAS update fails, a StaleDataError is raised which will
abort the transaction and the API layer will catch this and
retry.
This patch only adds the revision number column to the DB
and to the model. There is a follow-up patch to actually
increment it in the following change:
I476d3e03c8ee763cc4be6d679fe9f501eb3a19b5
1. http://docs.sqlalchemy.org/en/latest/orm/versioning.html
Partially-Implements: bp/push-notifications
Change-Id: Ia2d911a6a90b1baba1d5cc36f7c625e156a2bc33