Big Switch: Lock consistency table for REST calls

Adds a new class to hold an SQL table lock throughout
a REST call to prevent servers in an HA deployment from
using a stale consistency hash value.

Also passes the current context down to the server manager
for every request since the consistency hash will need to
be read from the database instead of from a variable on the
server pool object.

Closes-Bug: #1328331
Change-Id: I5f8402c076d7732742c0ae4d9b9d6833d42a0b7b
Updated neutron.conf to reflect new RPC options

After oslo.messaging port, some option became unavailable to set, some
of them changed description or default values. Make sure we don't leave
anything related to old RPC layer there.

New entries are generated by calling the following from inside
oslo-incubator:

$ python openstack/common/config/generator.py -l oslo.messaging

blueprint oslo-messaging

Change-Id: I1523309cf0cd92a5d5f0b265f49979b3e47c2afa
Pass newly created router to _update_router_gw_info

pass it to _update_router_gw_info as last parameter to save
retrieving it again from the session.

Change-Id: I7fbbd675839c2874578c62dfed390d86e3b4801a
Synced log module and its dependencies from olso-incubator

Old version of 'log' module depended on oslo-incubator RPC layer
implementation. This sync is intended to copy the following fix that
makes log module use oslo.messaging.notify.log_handler if available:

  * 109e325e: Use oslo.messaging to publish log errors

blueprint oslo-messaging

Change-Id: Ieb26df4e9fbb2aa4d319c79be7510006fc8461ab
Fixed dhcp & gateway ip conflict in PLUMgrid plugin

   * Adjust dhcp IP if conflicts with gateway IP
   * Added unit test case

Closes-Bug:1333442
Change-Id: Iaa4e63faf28b783e6b5dbc50035ca50ccde9951a
ofagent: Use port desc to monitor ports on br-int

also, use ofport.name as device identifiers.
sprinkle some TODO comments.

Implements: blueprint ofagent-port-monitor
Change-Id: I4995964f37729f954fec71c4a2e61e463a430b1a
Exit rpc_loop when SIGTERM is recieved in ovs-agent

Previously ovs-agent exited with exit code 1 after SIGTERM was received.
SIGTERM should shutdown agent gracefully and exit code should be 0.

Closes-Bug: #1334264
Change-Id: I23e81cee5ae9e9fdabbe1377420b0902f47be8a7
Use patch ports to interconnect integration/physical bridges

Use by default patch ports to interconnect the integration to
physical bridges for the openvswitch agent in order to increase
performance.

For ovs/kernel without ovs patch port support on kernel side, veths
can be used through the new option OVS.use_veth_interconnection.

Patch port support can be tested using:

    neutron-sanity-check --ovs_patch

DocImpact
Closes-Bug: #1285335
Change-Id: I47106e57bf5b23891d7bf43815959e0d10156fba
Add config for performance gate job

This rally scenario is intended to be run in OpenStack CI
by rally-dsvm-neutron-neutron job.

Implements: blueprint neutron-performance-gate-jobs
Closes-Bug: #1334434
Change-Id: If204f3dfc32933792d09fdc929c248fc3f17b0bc
Fix re-creation of the pool directory

Whenever vip is deleted the complete pool directory
is deleted, but since pool is still alive the get_stats
function recreates the directory. The fix prevents the
re-creation of the directory. Respective unit test case
is also modified

Change-Id: I577e8e3a51db361210aa83a6c7f9b4f61210e924
Closes-Bug: #1317871
Merge "Use patch ports to interconnect integration/physical bridges"
remove unsupported middleware

the audit and notifier middleware from oslo-incubator are not
compatible with oslo.messaging. remove these middleware.

Change-Id: I456c2aa5f24ef977949f589f72d521514d5e97e4
Use correct MAX_LEN constant in agent functional tests

Closes-bug: #1334922

Change-Id: I62bd12da21e778f5cca97d6280c107575d912a81
Merge "Add config for performance gate job"
Merge "Exit rpc_loop when SIGTERM is recieved in ovs-agent"
Merge "remove unsupported middleware"
Merge "Fixed dhcp & gateway ip conflict in PLUMgrid plugin"
Merge "ofagent: Use port desc to monitor ports on br-int"
Merge "Use correct MAX_LEN constant in agent functional tests"
changes ovs agent to get bridges via ovs_lib

ip_lib is currently used to list the bridges
in the Open vSwitch neutron agent.

use of ip_lib blocks reuse of the Open vSwitch agent
with userspace only open vSwitchs implementations.

this patch replaces calls to ip_lib with ovs_lib.get_bridges

Closes-Bug: #1331569
Change-Id: I5935d39b314055063a64266bda0cc4c2d1ac05fc