Compile BigInteger to INTEGER for sqlite

Ensure BigInteger does not map to BIGINT for an auto-created
sqlite registry DB, as this type is not supported by sqlite.

Refactoring a test to use generic unsupported column type

Fixes bug 1147879

Change-Id: I590c798dd470def286802bc6e00bb4b621332b8d
Fixes nbd device can't be released error

When the 'mount' operation is successful but stderr is not empty during
injecting key/file into image, there may be some warning messages output to
stderr, so we need to discard them and continue to inject files into image.

Fixes bug #1152519

Change-Id: Icc7d15196f3ee67674f9d815ddeef4378f363e2c
xenapi: Fix reboot with hung volumes

If a volume becomes inoperable (e.g. the ISCSI connection is severed)
and the user goes to reboot, the instance may enter a permanently halted
state.

The root cause is that a VBD that points to 'bad' volume prevents VM
operations ('reboot', 'start') from completing under XenServer.

The work around is to detect which volumes are bad, detach in the
virt-layer, retry the operation (or in the case of reboot, just 'start'
the halted instance), and then notify the compute manager via a
callback so it can detach the volume in Cinder.

Fixes bug 1148614

Change-Id: Id4e8e84bb5748cfa267c2a418f9405fd86829e8f
Force resource updates to update updated_at

When there's no changes in resources, compute_node_update (and other
DB update calls) won't modify 'updated_at'.

'updated_at' is what is used to invalidate the cache in the scheduler's
host_manager.  Because of a race with the compute manager, the scheduler
could be out of sync with the compute_nodes table but have a newer time
on its cache.

By always updating 'updated_at' on resource updates, the periodic task
will be sure to invalidate any bad cache the scheduler has.

Fixes bug 1153778

Change-Id: I19b51a5b84f472cd0f4de6460a4edb540cc62da2
Fix quota issues with instance deletes.

In order to keep quotas in sync as much as possible, only commit quota
changes for delete when:

1) An instance's vm_state is updated to be SOFT_DELETED.
2) The DB record is marked as deleted (and the instance's vm_state is
   not SOFT_DELETED)

If a host is down and we delete the instance in the API, this means
quotas are committed within the API.  Otherwise, quotas are committed
on the manager side.

Fixes bug 1098380

Also needed for proper testing: Fixed compute cells tests so that pseudo
child cells use NoopQuotaDriver.  This uncovered inconsistencies in the
NoopQuotaDriver wrt the DBQuotaDriver.  Those issues were fixed as well.

Change-Id: Ib72de1a457f0c5056d55a5c7dd4d8d7c69708996
Fix: nova-manage throws uncaught exception on invalid host/service

Add a test case for this too.

Fix bug 1154089.

Change-Id: I3a60e581a9fac945fddf72c4f037ca5cae0005fc
Merge "Force resource updates to update updated_at"
Merge "Fixes nbd device can't be released error"
websockify 0.4 is busted

This was just released and it is broken, stalling our gates.  When
attempting to install it, we get:

"error: can't copy 'include/util.js': doesn't exist or not a regular
file"

Change-Id: I9d93bff92cc4a9d837382acce78bff587f52fb99
Merge "websockify 0.4 is busted"
Merge "Compile BigInteger to INTEGER for sqlite"
Merge "Fix quota issues with instance deletes."
Merge "Fix: nova-manage throws uncaught exception on invalid host/service"
Merge "xenapi: Fix reboot with hung volumes"