The original migration only takes care of migrating the instances
table before all others. It turns out, when using MySQL with InnoDB
by default, there are many other tables with FKs that need to be converted
early on as well (see bug description for schema diagram).
Fixes bug 931602
Update: Convert all tables in a predefined order from within the same
execution.
Update: Avoid hard-coding database, fixes bug 930863
Update: Fix pep8 spacing
Change-Id: Ideb619eecef2ad067bda5c26612f761674dee924
The 'updated' value on the extension seems to be returned (in the XML) unaltered.
Some of the date values were 'untraditional', and this broke XML parsing.
Change-Id: I2803e19207af85207b4eca71e1e8b0d5bdcfa4b6
Related to bug 933584.
In this bug, I hit a case where some code tried to send a SQLAlchemy
model over rpc, which failed since it couldn't be serialized by Qpid.
This patch adds a simple serialization check to the fake RPC driver
using json. It also fixes problems that were exposed by adding this
check.
If json can't serialize a message sent through the fake RPC
driver, it will raise TypeError, causing unit tests to fail. 18 unit
tests failed with the check in place, but it was due to only 2 places
in the compute API.
Change-Id: I63f3077c0fa35097d4f5d2c485f4e48eede2c751
Fix bug 933584.
I noticed this when Qpid blew up because it didn't know how to serialize
a SQLAlchemy model. Fix it by making it only consist of primitive types
before sending it.
Change-Id: I63eb4bbabdb75fa7b277428bbd1aa2c2e1383383
Makes compute/network/volume API classes pluggable
Splits some code out in compute/api
Adds some race condition checking on deletes in compute/api
Make instance_delete support UUIDs
Add support to RPC to cast to specific servers
Migrations for future zones
Change-Id: Ibee126cd6d325e11770f27589e79dfd0e6104b99
I noticed these stubs while reviewing the dependent branch. They aren't
needed anymore. I tried to clean up some of the stub helpers as well.
Change-Id: I41cf93da392f76c150da2fa3125cfe4930a76f11
get_network_id_by_cidr is not used, I'm removing
it and it's tests.
get_tenant_id_by_net_id relies on catching
exceptions as part of the happy path. I expanded
the tests to try to exemplify that.
Change-Id: Iaf973da1d176ba8ea89d0fd762e796936d056d0f
There is a new Zones implementation coming that will use AMQP-to-AMQP
channels vs. the public API. This is being done for three reasons:
1. remove complications in the OpenStack API (and possibly allow EC2 Zones)
2. remove dependencies on keystone and novaclient
3. faster scheduling (fewer chances for race conditions)
Learn more here:
http://wiki.openstack.org/EssexSchedulerImprovements
Change-Id: I6fe538923dd5ae19276afac2ac3311a285fd5c99
* Allows for deployers to use compressed images if they prefer
* Flag defaults to current behavior
* Fixes bug 932180
* Re-enables fetch_to_raw which was being skipped
* Removes obsolete and broken method from libvirt
* Checksumming will be re-enabled in a later patch
Change-Id: I40c33cfd3997cae8d127fa45f8cf0aa071418170
I thought when I wrote the imagecache code for libvirt that the
instance names were of a fixed format. That is not correct. First
off the format is set in the instance_name_template flag. Worse
than that, it can change over time and old instances are not
renamed. So, now I check the database to see if the directory
name is a valid instance name (for this machine).
Change-Id: I318215aef5a10cee32959fd947ad628edff293a2
This patch fixes the docs so that the API extensions documentation gets
included. In passing, also update the API extensions index to include
an extension that was not listed.
Change-Id: Ia16cab2b29bbc121d940dc4ed9f033340935cde8
o fixed dns bug where dns was gotten from the wrong subnet
o project_id passed to get_instance_nw_info for when context.project_id
is null
o removed line breaks around quantum client request to improve
readability
o project_id passed into vif creation instead of using context
o exception handling around get_attached_ports in quantum connection
o updated object id generation to start with 1 in network_fake
o updated the fake subnets returned in the network_fake
o added proper v6 address generation to network_fake
o improved get_instance_nw_info test
o update api.openstack.compute.test_servers around improved network fake
Change-Id: I74d0a9dbfcbd38e2fbc7d7fefc2587e578980b6e
- Add fake quantum client to support more complete testing of Quantum Mgr
- Fix issue related to filters not being appended to Quantum queries
- Expand unit tests to check for # vifs, ports created, nic order.
- Add direct unit tests for quantum_connection class.
- improve error reporting for get_port_by_attachment
- remove invalid comment about not supporting floating IPs
- Remove E-3 hack that only allowed L3 gateway if DHCP was enabled.
Proper way to disable L3 gateway is to use the nova.network.l3.NullL3
driver.
- fix delete_network to properly find UUIDs for project specific networks
- fix issue with 'requested_networks' not working properly for a provider network.
- remove dead chunk of code that is unused because all networks in
quantum currently correspond to an entry in the nova db.
- make sure validate_networks allows both provider + tenant networks.
Update: incorporated feedback from first round of reviews.
Change-Id: Id63d27d457c63efe7ea27a7fbd7470a0a5709125
Addresses Bug 708278
Add check for duplicates in api.py
Add DuplicateVlan to exception.py
Add test to raise DuplicateVlan in test_db_api.py
Add to Authors
Change-Id: I9d68d7b7c886071e38df3c9d7d53724758bdd84c
* nova/tests/test_network.py (LdapDNSTestCase): Since the
ldapdns module imports ldap unconditionally, the following
will not run on a system without python-ldap installed
./run_tests.sh test_network
Therefore ensure the fake ldap module is used, as is the
case when running the full test suite.
Change-Id: If92c613bf2684c25cdadf2ac7f53f2005979b2b6