Sync request_id middleware for nova

This piece of middleware generates and attaches a request_id to
a request, to be used in completing the blueprint
cross-service-request-id for icehouse.
See change Ib4a9c404cb149d8f76bde52f7613a9596b2233b9

Change-Id: Ib0b0f19b3be332f736246b472902c6b95c1264e9
Implements: blueprint cross-service-request-id
Re-write sqlite BigInteger mapping test

This test makes sure that our hook that compiles BigInteger() into
INTEGER for sqlite instead of BIGINT is working as we expect.
Unfortunately, we've seen some problems running the sqlite command to
check the schema.

This patch rewrites the test to only use sqlalchemy APIs and avoid
calling out to the sqlite command for verification.

Change-Id: Id3964d0dd5b0ddf08ab745d6878840ff06b2f0dd
Closes-bug: #1271331
Merge "Sync request_id middleware for nova"
Make test_poll_volume_usage_with_data more reliable

This test includes 2 calls to time.time().  It assumes that the result
from the second call may be greater than the first.  This isn't
definietly true and we see periodic failures of this test in the gate as
a result.

Change the test to not worry about the specific time value that gets
set.  We set _last_vol_usage_poll to 0 before calling the function under
test.  We really only need to check that it got set to some value after
calling the function under test.  This tweak should make the test pass
consistently.

Change-Id: I6c01d2958cf671c29622562689a15ca1ddea0a3c
Closes-bug: #1270693
Merge "Re-write sqlite BigInteger mapping test"
Merge "Make test_poll_volume_usage_with_data more reliable"