author | Octave Orgeron <octave.orgeron@oracle.com> |
Thu, 08 Sep 2016 13:16:06 -0600 | |
changeset 6866 | 4c1935f5ec9a |
permissions | -rw-r--r-- |
6866
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
1 |
This patchset is for bug: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
2 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
3 |
24394574 Mitaka Neutron should support MySQL Cluster |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
4 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
5 |
This fixes the following aspects of Neutron: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
6 |
1. Implementation of an oslo.db configuration parameter to specify the MySQL |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
7 |
storage engine (mysql_storage_engine). |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
8 |
2. Replacement of hardcoded SQL statements that set the engine to "InnoDB" |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
9 |
to the above configuration value. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
10 |
3. Logic to handle SQL differences between MySQL InnoDB and MySQL Cluster (NDB). |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
11 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
12 |
This has not been committed upstream, but has been filed in launchpad: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
13 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
14 |
https://bugs.launchpad.net/neutron/+bug/1564110 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
15 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
16 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
17 |
--- neutron-8.1.2/neutron/db/agents_db.py.orig 2016-08-25 14:48:36.647874143 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
18 |
+++ neutron-8.1.2/neutron/db/agents_db.py 2016-08-25 15:25:50.307210666 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
19 |
@@ -73,6 +73,7 @@ AGENT_OPTS = [ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
20 |
"agent until admin changes admin_state_up to True.")), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
21 |
] |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
22 |
cfg.CONF.register_opts(AGENT_OPTS) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
23 |
+CONF = cfg.CONF |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
24 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
25 |
# this is the ratio from agent_down_time to the time we use to consider |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
26 |
# the agents down for considering their resource versions in the |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
27 |
@@ -90,10 +91,17 @@ class Agent(model_base.BASEV2, model_bas |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
28 |
) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
29 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
30 |
# L3 agent, DHCP agent, OVS agent, LinuxBridge |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
31 |
- agent_type = sa.Column(sa.String(255), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
32 |
- binary = sa.Column(sa.String(255), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
33 |
- # TOPIC is a fanout exchange topic |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
34 |
- topic = sa.Column(sa.String(255), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
35 |
+ if CONF.database.mysql_storage_engine == 'NDBCLUSTER': |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
36 |
+ agent_type = sa.Column(sa.String(128), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
37 |
+ binary = sa.Column(sa.String(128), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
38 |
+ # TOPIC is a fanout exchange topic |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
39 |
+ topic = sa.Column(sa.String(128), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
40 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
41 |
+ agent_type = sa.Column(sa.String(255), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
42 |
+ binary = sa.Column(sa.String(255), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
43 |
+ # TOPIC is a fanout exchange topic |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
44 |
+ topic = sa.Column(sa.String(255), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
45 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
46 |
# TOPIC.host is a target topic |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
47 |
host = sa.Column(sa.String(255), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
48 |
availability_zone = sa.Column(sa.String(255)) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
49 |
@@ -108,11 +116,17 @@ class Agent(model_base.BASEV2, model_bas |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
50 |
# description is note for admin user |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
51 |
description = sa.Column(sa.String(attributes.DESCRIPTION_MAX_LEN)) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
52 |
# configurations: a json dict string, I think 4095 is enough |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
53 |
- configurations = sa.Column(sa.String(4095), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
54 |
+ if CONF.database.mysql_storage_engine == 'NDBCLUSTER': |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
55 |
+ configurations = sa.Column(sa.Text(), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
56 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
57 |
+ configurations = sa.Column(sa.String(4095), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
58 |
# resource_versions: json dict, 8191 allows for ~256 resource versions |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
59 |
# assuming ~32byte length "'name': 'ver'," |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
60 |
# the whole row limit is 65535 bytes in mysql |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
61 |
- resource_versions = sa.Column(sa.String(8191)) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
62 |
+ if CONF.database.mysql_storage_engine == 'NDBCLUSTER': |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
63 |
+ resource_versions = sa.Column(sa.Text()) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
64 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
65 |
+ resource_versions = sa.Column(sa.String(8191)) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
66 |
# load - number of resources hosted by the agent |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
67 |
load = sa.Column(sa.Integer, server_default='0', nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
68 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
69 |
--- neutron-8.1.2/neutron/db/api.py.orig 2016-08-25 14:46:46.198992228 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
70 |
+++ neutron-8.1.2/neutron/db/api.py 2016-08-25 14:43:31.067614686 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
71 |
@@ -37,6 +37,8 @@ retry_db_errors = oslo_db_api.wrap_db_re |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
72 |
exception_checker=is_deadlock |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
73 |
) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
74 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
75 |
+CONF = cfg.CONF |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
76 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
77 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
78 |
@contextlib.contextmanager |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
79 |
def exc_to_retry(exceptions): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
80 |
@@ -81,12 +83,22 @@ def get_session(autocommit=True, expire_ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
81 |
@contextlib.contextmanager |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
82 |
def autonested_transaction(sess): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
83 |
"""This is a convenience method to not bother with 'nested' parameter.""" |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
84 |
- if sess.is_active: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
85 |
- session_context = sess.begin(nested=True) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
86 |
+ # MySQL Cluster does not support nested operations. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
87 |
+ if CONF.database.mysql_storage_engine == "NDBCLUSTER": |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
88 |
+ try: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
89 |
+ session_context = sess.begin(subtransactions=True, nested=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
90 |
+ except exc.InvalidRequestError: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
91 |
+ session_context = sess.begin(subtransactions=False, nested=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
92 |
+ finally: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
93 |
+ with session_context as tx: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
94 |
+ yield tx |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
95 |
else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
96 |
- session_context = sess.begin(subtransactions=True) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
97 |
- with session_context as tx: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
98 |
- yield tx |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
99 |
+ if sess.is_active: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
100 |
+ session_context = sess.begin(nested=True) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
101 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
102 |
+ session_context = sess.begin(subtransactions=True) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
103 |
+ with session_context as tx: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
104 |
+ yield tx |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
105 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
106 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
107 |
# Common database operation implementations |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
108 |
--- neutron-8.1.2/neutron/db/flavors_db.py.orig 2016-08-25 15:01:44.265969231 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
109 |
+++ neutron-8.1.2/neutron/db/flavors_db.py 2016-08-25 15:03:44.220882633 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
110 |
@@ -12,6 +12,7 @@ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
111 |
# License for the specific language governing permissions and limitations |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
112 |
# under the License. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
113 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
114 |
+from oslo_config import cfg |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
115 |
from oslo_log import log as logging |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
116 |
from oslo_utils import uuidutils |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
117 |
import sqlalchemy as sa |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
118 |
@@ -26,6 +27,8 @@ from neutron.extensions import flavors a |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
119 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
120 |
LOG = logging.getLogger(__name__) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
121 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
122 |
+CONF = cfg.CONF |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
123 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
124 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
125 |
class Flavor(model_base.BASEV2, model_base.HasId): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
126 |
name = sa.Column(sa.String(attr.NAME_MAX_LEN)) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
127 |
@@ -43,7 +46,10 @@ class ServiceProfile(model_base.BASEV2, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
128 |
driver = sa.Column(sa.String(1024), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
129 |
enabled = sa.Column(sa.Boolean, nullable=False, default=True, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
130 |
server_default=sa.sql.true()) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
131 |
- metainfo = sa.Column(sa.String(4096)) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
132 |
+ if CONF.database.mysql_storage_engine == 'NDBCLUSTER': |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
133 |
+ metainfo = sa.Column(sa.Text()) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
134 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
135 |
+ metainfo = sa.Column(sa.String(4096)) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
136 |
flavors = orm.relationship("FlavorServiceProfileBinding") |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
137 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
138 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
139 |
--- neutron-8.1.2/neutron/db/migration/alembic_migrations/agent_init_ops.py.orig 2016-08-25 14:46:52.869757151 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
140 |
+++ neutron-8.1.2/neutron/db/migration/alembic_migrations/agent_init_ops.py 2016-08-25 14:43:31.069947973 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
141 |
@@ -18,26 +18,53 @@ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
142 |
# in the modules for relevant resources |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
143 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
144 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
145 |
+from alembic import context |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
146 |
from alembic import op |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
147 |
import sqlalchemy as sa |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
148 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
149 |
+config = context.config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
150 |
+CONF = config.neutron_config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
151 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
152 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
153 |
def upgrade(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
154 |
- op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
155 |
- 'agents', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
156 |
- sa.Column('id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
157 |
- sa.Column('agent_type', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
158 |
- sa.Column('binary', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
159 |
- sa.Column('topic', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
160 |
- sa.Column('host', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
161 |
- sa.Column('admin_state_up', sa.Boolean(), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
162 |
- server_default=sa.sql.true()), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
163 |
- sa.Column('created_at', sa.DateTime(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
164 |
- sa.Column('started_at', sa.DateTime(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
165 |
- sa.Column('heartbeat_timestamp', sa.DateTime(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
166 |
- sa.Column('description', sa.String(length=255), nullable=True), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
167 |
- sa.Column('configurations', sa.String(length=4095), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
168 |
- sa.Column('load', sa.Integer(), server_default='0', nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
169 |
- sa.PrimaryKeyConstraint('id'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
170 |
- sa.UniqueConstraint('agent_type', 'host', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
171 |
- name='uniq_agents0agent_type0host')) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
172 |
+ # MySQL Cluster limits rows to 14,000 characters. This adjusts the |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
173 |
+ # columns to fit within that limit. Excessively large columns are |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
174 |
+ # converted to TEXT. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
175 |
+ if CONF.database.mysql_storage_engine == "NDBCLUSTER": |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
176 |
+ op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
177 |
+ 'agents', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
178 |
+ sa.Column('id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
179 |
+ sa.Column('agent_type', sa.String(length=128), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
180 |
+ sa.Column('binary', sa.String(length=128), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
181 |
+ sa.Column('topic', sa.String(length=128), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
182 |
+ sa.Column('host', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
183 |
+ sa.Column('admin_state_up', sa.Boolean(), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
184 |
+ server_default=sa.sql.true()), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
185 |
+ sa.Column('created_at', sa.DateTime(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
186 |
+ sa.Column('started_at', sa.DateTime(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
187 |
+ sa.Column('heartbeat_timestamp', sa.DateTime(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
188 |
+ sa.Column('description', sa.String(length=255), nullable=True), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
189 |
+ sa.Column('configurations', sa.Text(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
190 |
+ sa.Column('load', sa.Integer(), server_default='0', nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
191 |
+ sa.PrimaryKeyConstraint('id'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
192 |
+ sa.UniqueConstraint('agent_type', 'host', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
193 |
+ name='uniq_agents0agent_type0host')) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
194 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
195 |
+ op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
196 |
+ 'agents', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
197 |
+ sa.Column('id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
198 |
+ sa.Column('agent_type', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
199 |
+ sa.Column('binary', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
200 |
+ sa.Column('topic', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
201 |
+ sa.Column('host', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
202 |
+ sa.Column('admin_state_up', sa.Boolean(), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
203 |
+ server_default=sa.sql.true()), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
204 |
+ sa.Column('created_at', sa.DateTime(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
205 |
+ sa.Column('started_at', sa.DateTime(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
206 |
+ sa.Column('heartbeat_timestamp', sa.DateTime(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
207 |
+ sa.Column('description', sa.String(length=255), nullable=True), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
208 |
+ sa.Column('configurations', sa.String(length=4095), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
209 |
+ sa.Column('load', sa.Integer(), server_default='0', nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
210 |
+ sa.PrimaryKeyConstraint('id'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
211 |
+ sa.UniqueConstraint('agent_type', 'host', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
212 |
+ name='uniq_agents0agent_type0host')) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
213 |
--- neutron-8.1.2/neutron/db/migration/alembic_migrations/dvr_init_opts.py.orig 2016-08-25 14:46:59.635718601 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
214 |
+++ neutron-8.1.2/neutron/db/migration/alembic_migrations/dvr_init_opts.py 2016-08-25 14:43:31.071309141 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
215 |
@@ -15,9 +15,13 @@ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
216 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
217 |
# Initial operations for dvr |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
218 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
219 |
+from alembic import context |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
220 |
from alembic import op |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
221 |
import sqlalchemy as sa |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
222 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
223 |
+config = context.config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
224 |
+CONF = config.neutron_config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
225 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
226 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
227 |
def upgrade(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
228 |
op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
229 |
@@ -27,23 +31,43 @@ def upgrade(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
230 |
nullable=False, unique=True), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
231 |
sa.PrimaryKeyConstraint('host') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
232 |
) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
233 |
- op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
234 |
- 'ml2_dvr_port_bindings', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
235 |
- sa.Column('port_id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
236 |
- sa.Column('host', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
237 |
- sa.Column('router_id', sa.String(length=36), nullable=True), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
238 |
- sa.Column('vif_type', sa.String(length=64), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
239 |
- sa.Column('vif_details', sa.String(length=4095), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
240 |
- nullable=False, server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
241 |
- sa.Column('vnic_type', sa.String(length=64), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
242 |
- nullable=False, server_default='normal'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
243 |
- sa.Column('profile', sa.String(length=4095), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
244 |
- nullable=False, server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
245 |
- sa.Column(u'status', sa.String(16), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
246 |
- sa.ForeignKeyConstraint(['port_id'], ['ports.id'], |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
247 |
- ondelete='CASCADE'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
248 |
- sa.PrimaryKeyConstraint('port_id', 'host') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
249 |
- ) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
250 |
+ # MySQL Cluster limits rows to 14,000 characters. This adjusts the |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
251 |
+ # columns to fit within that limit. Excessively large columns are |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
252 |
+ # converted to TEXT. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
253 |
+ if CONF.database.mysql_storage_engine == "NDBCLUSTER": |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
254 |
+ op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
255 |
+ 'ml2_dvr_port_bindings', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
256 |
+ sa.Column('port_id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
257 |
+ sa.Column('host', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
258 |
+ sa.Column('router_id', sa.String(length=36), nullable=True), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
259 |
+ sa.Column('vif_type', sa.String(length=64), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
260 |
+ sa.Column('vif_details', sa.Text(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
261 |
+ sa.Column('vnic_type', sa.String(length=64), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
262 |
+ nullable=False, server_default='normal'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
263 |
+ sa.Column('profile', sa.Text(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
264 |
+ sa.Column(u'status', sa.String(16), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
265 |
+ sa.ForeignKeyConstraint(['port_id'], ['ports.id'], |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
266 |
+ ondelete='CASCADE'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
267 |
+ sa.PrimaryKeyConstraint('port_id', 'host') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
268 |
+ ) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
269 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
270 |
+ op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
271 |
+ 'ml2_dvr_port_bindings', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
272 |
+ sa.Column('port_id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
273 |
+ sa.Column('host', sa.String(length=255), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
274 |
+ sa.Column('router_id', sa.String(length=36), nullable=True), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
275 |
+ sa.Column('vif_type', sa.String(length=64), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
276 |
+ sa.Column('vif_details', sa.String(length=4095), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
277 |
+ nullable=False, server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
278 |
+ sa.Column('vnic_type', sa.String(length=64), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
279 |
+ nullable=False, server_default='normal'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
280 |
+ sa.Column('profile', sa.String(length=4095), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
281 |
+ nullable=False, server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
282 |
+ sa.Column(u'status', sa.String(16), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
283 |
+ sa.ForeignKeyConstraint(['port_id'], ['ports.id'], |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
284 |
+ ondelete='CASCADE'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
285 |
+ sa.PrimaryKeyConstraint('port_id', 'host') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
286 |
+ ) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
287 |
op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
288 |
'csnat_l3_agent_bindings', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
289 |
sa.Column('router_id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
290 |
--- neutron-8.1.2/neutron/db/migration/alembic_migrations/env.py.orig 2016-08-25 14:47:07.700975613 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
291 |
+++ neutron-8.1.2/neutron/db/migration/alembic_migrations/env.py 2016-08-25 14:43:31.072607136 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
292 |
@@ -34,6 +34,7 @@ except ImportError: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
293 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
294 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
295 |
MYSQL_ENGINE = None |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
296 |
+MYSQL_STORAGE_ENGINE = None |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
297 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
298 |
# this is the Alembic Config object, which provides |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
299 |
# access to the values within the .ini file in use. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
300 |
@@ -59,6 +60,16 @@ def set_mysql_engine(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
301 |
model_base.BASEV2.__table_args__['mysql_engine']) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
302 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
303 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
304 |
+def set_mysql_storage_engine(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
305 |
+ try: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
306 |
+ mysql_storage_engine = neutron_config.database.mysql_storage_engine |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
307 |
+ except cfg.NoSuchOptError: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
308 |
+ mysql_storage_engine = InnoDB |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
309 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
310 |
+ global MYSQL_STORAGE_ENGINE |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
311 |
+ MYSQL_STORAGE_ENGINE = mysql_storage_engine |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
312 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
313 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
314 |
def include_object(object_, name, type_, reflected, compare_to): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
315 |
if type_ == 'table' and name in external.TABLES: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
316 |
return False |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
317 |
@@ -81,6 +92,7 @@ def run_migrations_offline(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
318 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
319 |
""" |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
320 |
set_mysql_engine() |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
321 |
+ set_mysql_storage_engine() |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
322 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
323 |
kwargs = dict() |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
324 |
if neutron_config.database.connection: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
325 |
@@ -108,6 +120,7 @@ def run_migrations_online(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
326 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
327 |
""" |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
328 |
set_mysql_engine() |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
329 |
+ set_mysql_storage_engine() |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
330 |
connection = config.attributes.get('connection') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
331 |
with DBConnection(neutron_config.database.connection, connection) as conn: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
332 |
context.configure( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
333 |
--- neutron-8.1.2/neutron/db/migration/alembic_migrations/ml2_init_ops.py.orig 2016-08-25 14:47:14.579387371 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
334 |
+++ neutron-8.1.2/neutron/db/migration/alembic_migrations/ml2_init_ops.py 2016-08-25 14:43:31.074019618 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
335 |
@@ -16,9 +16,13 @@ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
336 |
# Initial operations for ML2 plugin and drivers |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
337 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
338 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
339 |
+from alembic import context |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
340 |
from alembic import op |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
341 |
import sqlalchemy as sa |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
342 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
343 |
+config = context.config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
344 |
+CONF = config.neutron_config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
345 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
346 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
347 |
def upgrade(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
348 |
op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
349 |
@@ -83,21 +87,39 @@ def upgrade(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
350 |
ondelete='CASCADE'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
351 |
sa.PrimaryKeyConstraint('id')) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
352 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
353 |
- op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
354 |
- 'ml2_port_bindings', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
355 |
- sa.Column('port_id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
356 |
- sa.Column('host', sa.String(length=255), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
357 |
- server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
358 |
- sa.Column('vif_type', sa.String(length=64), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
359 |
- sa.Column('vnic_type', sa.String(length=64), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
360 |
- server_default='normal'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
361 |
- sa.Column('profile', sa.String(length=4095), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
362 |
- server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
363 |
- sa.Column('vif_details', sa.String(length=4095), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
364 |
- server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
365 |
- sa.ForeignKeyConstraint(['port_id'], ['ports.id'], |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
366 |
- ondelete='CASCADE'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
367 |
- sa.PrimaryKeyConstraint('port_id')) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
368 |
+ # MySQL Cluster limits rows to 14,000 characters. This adjusts the |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
369 |
+ # columns to fit within that limit. Excessively large columns are |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
370 |
+ # converted to TEXT. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
371 |
+ if CONF.database.mysql_storage_engine == "NDBCLUSTER": |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
372 |
+ op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
373 |
+ 'ml2_port_bindings', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
374 |
+ sa.Column('port_id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
375 |
+ sa.Column('host', sa.String(length=255), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
376 |
+ server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
377 |
+ sa.Column('vif_type', sa.String(length=64), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
378 |
+ sa.Column('vnic_type', sa.String(length=64), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
379 |
+ server_default='normal'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
380 |
+ sa.Column('profile', sa.Text(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
381 |
+ sa.Column('vif_details', sa.Text(), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
382 |
+ sa.ForeignKeyConstraint(['port_id'], ['ports.id'], |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
383 |
+ ondelete='CASCADE'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
384 |
+ sa.PrimaryKeyConstraint('port_id')) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
385 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
386 |
+ op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
387 |
+ 'ml2_port_bindings', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
388 |
+ sa.Column('port_id', sa.String(length=36), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
389 |
+ sa.Column('host', sa.String(length=255), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
390 |
+ server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
391 |
+ sa.Column('vif_type', sa.String(length=64), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
392 |
+ sa.Column('vnic_type', sa.String(length=64), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
393 |
+ server_default='normal'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
394 |
+ sa.Column('profile', sa.String(length=4095), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
395 |
+ server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
396 |
+ sa.Column('vif_details', sa.String(length=4095), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
397 |
+ server_default=''), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
398 |
+ sa.ForeignKeyConstraint(['port_id'], ['ports.id'], |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
399 |
+ ondelete='CASCADE'), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
400 |
+ sa.PrimaryKeyConstraint('port_id')) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
401 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
402 |
op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
403 |
'ml2_port_binding_levels', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
404 |
--- neutron-8.1.2/neutron/db/migration/alembic_migrations/versions/liberty/expand/31337ec0ffee_flavors.py.orig 2016-08-25 14:47:21.341890981 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
405 |
+++ neutron-8.1.2/neutron/db/migration/alembic_migrations/versions/liberty/expand/31337ec0ffee_flavors.py 2016-08-25 14:43:31.076633173 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
406 |
@@ -24,9 +24,13 @@ Create Date: 2014-07-17 03:00:00.00 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
407 |
revision = '313373c0ffee' |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
408 |
down_revision = '52c5312f6baf' |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
409 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
410 |
+from alembic import context |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
411 |
from alembic import op |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
412 |
import sqlalchemy as sa |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
413 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
414 |
+config = context.config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
415 |
+CONF = config.neutron_config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
416 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
417 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
418 |
def upgrade(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
419 |
op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
420 |
@@ -40,16 +44,31 @@ def upgrade(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
421 |
sa.PrimaryKeyConstraint('id') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
422 |
) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
423 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
424 |
- op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
425 |
- 'serviceprofiles', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
426 |
- sa.Column('id', sa.String(36)), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
427 |
- sa.Column('description', sa.String(1024)), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
428 |
- sa.Column('driver', sa.String(1024), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
429 |
- sa.Column('enabled', sa.Boolean, nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
430 |
- server_default=sa.sql.true()), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
431 |
- sa.Column('metainfo', sa.String(4096)), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
432 |
- sa.PrimaryKeyConstraint('id') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
433 |
- ) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
434 |
+ # MySQL Cluster limits rows to 14,000 characters. This adjusts the |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
435 |
+ # columns to fit within that limit. Excessively large columns are |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
436 |
+ # converted to TEXT. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
437 |
+ if CONF.database.mysql_storage_engine == "NDBCLUSTER": |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
438 |
+ op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
439 |
+ 'serviceprofiles', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
440 |
+ sa.Column('id', sa.String(36)), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
441 |
+ sa.Column('description', sa.String(1024)), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
442 |
+ sa.Column('driver', sa.String(1024), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
443 |
+ sa.Column('enabled', sa.Boolean, nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
444 |
+ server_default=sa.sql.true()), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
445 |
+ sa.Column('metainfo', sa.Text()), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
446 |
+ sa.PrimaryKeyConstraint('id') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
447 |
+ ) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
448 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
449 |
+ op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
450 |
+ 'serviceprofiles', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
451 |
+ sa.Column('id', sa.String(36)), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
452 |
+ sa.Column('description', sa.String(1024)), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
453 |
+ sa.Column('driver', sa.String(1024), nullable=False), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
454 |
+ sa.Column('enabled', sa.Boolean, nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
455 |
+ server_default=sa.sql.true()), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
456 |
+ sa.Column('metainfo', sa.String(4096)), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
457 |
+ sa.PrimaryKeyConstraint('id') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
458 |
+ ) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
459 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
460 |
op.create_table( |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
461 |
'flavorserviceprofilebindings', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
462 |
--- neutron-8.1.2/neutron/db/migration/alembic_migrations/versions/mitaka/expand/31ed664953e6_add_resource_versions_row_to_agent_table.py.orig 2016-08-25 14:47:28.407786618 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
463 |
+++ neutron-8.1.2/neutron/db/migration/alembic_migrations/versions/mitaka/expand/31ed664953e6_add_resource_versions_row_to_agent_table.py 2016-08-25 14:43:31.079354015 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
464 |
@@ -25,10 +25,21 @@ Create Date: 2016-01-15 13:41:30.016915 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
465 |
revision = '31ed664953e6' |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
466 |
down_revision = '15e43b934f81' |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
467 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
468 |
+from alembic import context |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
469 |
from alembic import op |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
470 |
import sqlalchemy as sa |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
471 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
472 |
+config = context.config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
473 |
+CONF = config.neutron_config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
474 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
475 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
476 |
def upgrade(): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
477 |
- op.add_column('agents', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
478 |
- sa.Column('resource_versions', sa.String(length=8191))) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
479 |
+ # MySQL Cluster limits rows to 14,000 characters. This adjusts the |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
480 |
+ # columns to fit within that limit. Excessively large columns are |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
481 |
+ # converted to TEXT. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
482 |
+ if CONF.database.mysql_storage_engine == "NDBCLUSTER": |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
483 |
+ op.add_column('agents', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
484 |
+ sa.Column('resource_versions', sa.Text())) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
485 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
486 |
+ op.add_column('agents', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
487 |
+ sa.Column('resource_versions', sa.String(length=8191))) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
488 |
--- neutron-8.1.2/neutron/db/migration/cli.py.orig 2016-08-25 14:47:38.390828076 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
489 |
+++ neutron-8.1.2/neutron/db/migration/cli.py 2016-08-25 14:43:31.081266845 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
490 |
@@ -103,6 +103,9 @@ _db_opts = [ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
491 |
default='', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
492 |
help=_('Database engine for which script will be generated ' |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
493 |
'when using offline migration.')), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
494 |
+ cfg.StrOpt('mysql_storage_engine', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
495 |
+ default='InnoDB', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
496 |
+ help=_('MySQL Storage Engine')), |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
497 |
] |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
498 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
499 |
CONF = cfg.ConfigOpts() |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
500 |
--- neutron-8.1.2/neutron/db/model_base.py.orig 2016-08-25 14:47:46.388723853 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
501 |
+++ neutron-8.1.2/neutron/db/model_base.py 2016-08-25 14:43:31.082371798 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
502 |
@@ -13,6 +13,8 @@ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
503 |
# See the License for the specific language governing permissions and |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
504 |
# limitations under the License. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
505 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
506 |
+from alembic import context |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
507 |
+from oslo_config import cfg |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
508 |
from oslo_db.sqlalchemy import models |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
509 |
from oslo_utils import uuidutils |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
510 |
import sqlalchemy as sa |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
511 |
@@ -22,6 +24,15 @@ from sqlalchemy import orm |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
512 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
513 |
from neutron.api.v2 import attributes as attr |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
514 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
515 |
+# Attempt to determine the context that this module is being used. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
516 |
+# If via neutron-db-manage and alembic, use alembic context. If not, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
517 |
+# use oslo_config. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
518 |
+try: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
519 |
+ config = context.config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
520 |
+ CONF = config.neutron_config |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
521 |
+except AttributeError: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
522 |
+ CONF = cfg.CONF |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
523 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
524 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
525 |
class HasTenant(object): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
526 |
"""Tenant mixin, add to subclasses that have a tenant.""" |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
527 |
@@ -48,7 +59,7 @@ class HasStatusDescription(object): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
528 |
class NeutronBase(models.ModelBase): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
529 |
"""Base class for Neutron Models.""" |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
530 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
531 |
- __table_args__ = {'mysql_engine': 'InnoDB'} |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
532 |
+ __table_args__ = {'mysql_engine': CONF.database.mysql_storage_engine} |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
533 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
534 |
def __iter__(self): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
535 |
self._i = iter(orm.object_mapper(self).columns) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
536 |
--- neutron-8.1.2/neutron/plugins/ml2/models.py.orig 2016-08-25 15:03:58.107501050 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
537 |
+++ neutron-8.1.2/neutron/plugins/ml2/models.py 2016-08-25 15:22:24.556984578 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
538 |
@@ -13,6 +13,7 @@ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
539 |
# License for the specific language governing permissions and limitations |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
540 |
# under the License. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
541 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
542 |
+from oslo_config import cfg |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
543 |
import sqlalchemy as sa |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
544 |
from sqlalchemy import orm |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
545 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
546 |
@@ -22,6 +23,8 @@ from neutron.extensions import portbindi |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
547 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
548 |
BINDING_PROFILE_LEN = 4095 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
549 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
550 |
+CONF = cfg.CONF |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
551 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
552 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
553 |
class NetworkSegment(model_base.BASEV2, model_base.HasId): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
554 |
"""Represent persistent state of a network segment. |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
555 |
@@ -63,11 +66,22 @@ class PortBinding(model_base.BASEV2): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
556 |
vnic_type = sa.Column(sa.String(64), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
557 |
default=portbindings.VNIC_NORMAL, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
558 |
server_default=portbindings.VNIC_NORMAL) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
559 |
- profile = sa.Column(sa.String(BINDING_PROFILE_LEN), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
560 |
- default='', server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
561 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
562 |
+ if CONF.database.mysql_storage_engine == 'NDBCLUSTER': |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
563 |
+ profile = sa.Column(sa.Text(), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
564 |
+ default='', server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
565 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
566 |
+ profile = sa.Column(sa.String(BINDING_PROFILE_LEN), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
567 |
+ default='', server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
568 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
569 |
vif_type = sa.Column(sa.String(64), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
570 |
- vif_details = sa.Column(sa.String(4095), nullable=False, default='', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
571 |
- server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
572 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
573 |
+ if CONF.database.mysql_storage_engine == 'NDBCLUSTER': |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
574 |
+ vif_details = sa.Column(sa.Text(), nullable=False, default='', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
575 |
+ server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
576 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
577 |
+ vif_details = sa.Column(sa.String(4095), nullable=False, default='', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
578 |
+ server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
579 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
580 |
# Add a relationship to the Port model in order to instruct SQLAlchemy to |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
581 |
# eagerly load port bindings |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
582 |
@@ -113,13 +127,25 @@ class DVRPortBinding(model_base.BASEV2): |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
583 |
host = sa.Column(sa.String(255), nullable=False, primary_key=True) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
584 |
router_id = sa.Column(sa.String(36), nullable=True) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
585 |
vif_type = sa.Column(sa.String(64), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
586 |
- vif_details = sa.Column(sa.String(4095), nullable=False, default='', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
587 |
- server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
588 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
589 |
+ if CONF.database.mysql_storage_engine == 'NDBCLUSTER': |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
590 |
+ vif_details = sa.Column(sa.Text(), nullable=False, default='', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
591 |
+ server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
592 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
593 |
+ vif_details = sa.Column(sa.String(4095), nullable=False, default='', |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
594 |
+ server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
595 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
596 |
vnic_type = sa.Column(sa.String(64), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
597 |
default=portbindings.VNIC_NORMAL, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
598 |
server_default=portbindings.VNIC_NORMAL) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
599 |
- profile = sa.Column(sa.String(BINDING_PROFILE_LEN), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
600 |
- default='', server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
601 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
602 |
+ if CONF.database.mysql_storage_engine == 'NDBCLUSTER': |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
603 |
+ profile = sa.Column(sa.Text(), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
604 |
+ default='', server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
605 |
+ else: |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
606 |
+ profile = sa.Column(sa.String(BINDING_PROFILE_LEN), nullable=False, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
607 |
+ default='', server_default='') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
608 |
+ |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
609 |
status = sa.Column(sa.String(16), nullable=False) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
610 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
611 |
# Add a relationship to the Port model in order to instruct SQLAlchemy to |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
612 |
--- neutron-8.1.2/neutron/tests/functional/db/test_migrations.py.orig 2016-08-25 14:47:53.221640215 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
613 |
+++ neutron-8.1.2/neutron/tests/functional/db/test_migrations.py 2016-08-25 14:43:31.084056418 -0700 |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
614 |
@@ -30,6 +30,7 @@ from neutron.db.migration.models import |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
615 |
from neutron.tests.common import base |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
616 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
617 |
cfg.CONF.import_opt('core_plugin', 'neutron.common.config') |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
618 |
+CONF = cfg.CONF |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
619 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
620 |
CORE_PLUGIN = 'neutron.plugins.ml2.plugin.Ml2Plugin' |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
621 |
|
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
622 |
@@ -273,7 +274,7 @@ class TestModelsMigrationsMysql(_TestMod |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
623 |
self.assertTrue(len(tables) > 0, |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
624 |
"No tables found. Wrong schema?") |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
625 |
res = [table for table in tables if |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
626 |
- insp.get_table_options(table)['mysql_engine'] != 'InnoDB' |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
627 |
+ insp.get_table_options(table)['mysql_engine'] != CONF.database.mysql_storage_engine |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
628 |
and table != 'alembic_version'] |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
629 |
self.assertEqual(0, len(res), "%s non InnoDB tables created" % res) |
4c1935f5ec9a
24394524 MySQL Cluster support for Cinder must be ported to Mitaka
Octave Orgeron <octave.orgeron@oracle.com>
parents:
diff
changeset
|
630 |