Looks like this commit might be causing problems! I can't get the Neutron database schema installed on a fresh installation of Openstack Juno on Ubuntu 14.04 and it's failing on this migration. Using ML2 with OVS plugin, enabled L3 HA and DVR as well. Fresh installation so the database is empty when starting "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugin.ini upgrade head"
Traceback below. Added the full log as an attachment.
INFO [alembic.migration] Running upgrade 37f322991f59 -> 31d7f831a591, add constraint for routerid
Traceback (most recent call last):
File "/usr/bin/neutron-db-manage", line 10, in <module>
sys.exit(main())
File "/usr/lib/python2.7/dist-packages/neutron/db/migration/cli.py", line 173, in main
CONF.command.func(config, CONF.command.name)
File "/usr/lib/python2.7/dist-packages/neutron/db/migration/cli.py", line 83, in do_upgrade_downgrade
do_alembic_command(config, cmd, revision, sql=CONF.command.sql)
File "/usr/lib/python2.7/dist-packages/neutron/db/migration/cli.py", line 61, in do_alembic_command
getattr(alembic_command, cmd)(config, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/alembic/command.py", line 125, in upgrade
script.run_env()
File "/usr/lib/python2.7/dist-packages/alembic/script.py", line 203, in run_env
util.load_python_file(self.dir, 'env.py')
File "/usr/lib/python2.7/dist-packages/alembic/util.py", line 212, in load_python_file
module = load_module_py(module_id, path)
File "/usr/lib/python2.7/dist-packages/alembic/compat.py", line 58, in load_module_py
mod = imp.load_source(module_id, path, fp)
File "/usr/lib/python2.7/dist-packages/neutron/db/migration/alembic_migrations/env.py", line 108, in <module>
run_migrations_online()
File "/usr/lib/python2.7/dist-packages/neutron/db/migration/alembic_migrations/env.py", line 100, in run_migrations_online
context.run_migrations()
File "<string>", line 7, in run_migrations
File "/usr/lib/python2.7/dist-packages/alembic/environment.py", line 688, in run_migrations
self.get_context().run_migrations(**kw)
File "/usr/lib/python2.7/dist-packages/alembic/migration.py", line 258, in run_migrations
change(**kw)
File "/usr/lib/python2.7/dist-packages/neutron/db/migration/alembic_migrations/versions/31d7f831a591_add_constraint_for_routerid.py", line 85, in upgrade
cols=['router_id', 'l3_agent_id']
File "<string>", line 7, in create_primary_key
File "/usr/lib/python2.7/dist-packages/alembic/operations.py", line 518, in create_primary_key
schema)
File "/usr/lib/python2.7/dist-packages/alembic/ddl/impl.py", line 135, in add_constraint
self._exec(schema.AddConstraint(const))
File "/usr/lib/python2.7/dist-packages/alembic/ddl/impl.py", line 76, in _exec
conn.execute(construct, *multiparams, **params)
File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 729, in execute
return meth(self, multiparams, params)
File "/usr/lib/python2.7/dist-packages/sqlalchemy/sql/ddl.py", line 69, in _execute_on_connection
return connection._execute_ddl(self, multiparams, params)
File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 783, in _execute_ddl
compiled
File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 958, in _execute_context
context)
File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1156, in _handle_dbapi_exception
util.raise_from_cause(newraise, exc_info)
File "/usr/lib/python2.7/dist-packages/sqlalchemy/util/compat.py", line 199, in raise_from_cause
reraise(type(exception), exception, tb=exc_tb)
File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 951, in _execute_context
context)
File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 436, in do_execute
cursor.execute(statement, parameters)
File "/usr/lib/python2.7/dist-packages/MySQLdb/cursors.py", line 174, in execute
self.errorhandler(self, exc, value)
File "/usr/lib/python2.7/dist-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
sqlalchemy.exc.OperationalError: (OperationalError) (1832, "Cannot change column 'l3_agent_id': used in a foreign key constraint 'routerl3agentbindings_ibfk_1'") 'ALTER TABLE routerl3agentbindings ADD CONSTRAINT pk_routerl3agentbindings PRIMARY KEY (router_id, l3_agent_id)' ()
Looks like this commit might be causing problems! I can't get the Neutron database schema installed on a fresh installation of Openstack Juno on Ubuntu 14.04 and it's failing on this migration. Using ML2 with OVS plugin, enabled L3 HA and DVR as well. Fresh installation so the database is empty when starting "neutron-db-manage --config-file /etc/neutron/ neutron. conf --config-file /etc/neutron/ plugin. ini upgrade head"
Traceback below. Added the full log as an attachment.
INFO [alembic.migration] Running upgrade 37f322991f59 -> 31d7f831a591, add constraint for routerid neutron- db-manage" , line 10, in <module> exit(main( )) python2. 7/dist- packages/ neutron/ db/migration/ cli.py" , line 173, in main command. func(config, CONF.command.name) python2. 7/dist- packages/ neutron/ db/migration/ cli.py" , line 83, in do_upgrade_ downgrade alembic_ command( config, cmd, revision, sql=CONF. command. sql) python2. 7/dist- packages/ neutron/ db/migration/ cli.py" , line 61, in do_alembic_command alembic_ command, cmd)(config, *args, **kwargs) python2. 7/dist- packages/ alembic/ command. py", line 125, in upgrade run_env( ) python2. 7/dist- packages/ alembic/ script. py", line 203, in run_env load_python_ file(self. dir, 'env.py') python2. 7/dist- packages/ alembic/ util.py" , line 212, in load_python_file py(module_ id, path) python2. 7/dist- packages/ alembic/ compat. py", line 58, in load_module_py source( module_ id, path, fp) python2. 7/dist- packages/ neutron/ db/migration/ alembic_ migrations/ env.py" , line 108, in <module> migrations_ online( ) python2. 7/dist- packages/ neutron/ db/migration/ alembic_ migrations/ env.py" , line 100, in run_migrations_ online run_migrations( ) python2. 7/dist- packages/ alembic/ environment. py", line 688, in run_migrations get_context( ).run_migration s(**kw) python2. 7/dist- packages/ alembic/ migration. py", line 258, in run_migrations python2. 7/dist- packages/ neutron/ db/migration/ alembic_ migrations/ versions/ 31d7f831a591_ add_constraint_ for_routerid. py", line 85, in upgrade ['router_ id', 'l3_agent_id'] python2. 7/dist- packages/ alembic/ operations. py", line 518, in create_primary_key python2. 7/dist- packages/ alembic/ ddl/impl. py", line 135, in add_constraint _exec(schema. AddConstraint( const)) python2. 7/dist- packages/ alembic/ ddl/impl. py", line 76, in _exec execute( construct, *multiparams, **params) python2. 7/dist- packages/ sqlalchemy/ engine/ base.py" , line 729, in execute python2. 7/dist- packages/ sqlalchemy/ sql/ddl. py", line 69, in _execute_ on_connection _execute_ ddl(self, multiparams, params) python2. 7/dist- packages/ sqlalchemy/ engine/ base.py" , line 783, in _execute_ddl python2. 7/dist- packages/ sqlalchemy/ engine/ base.py" , line 958, in _execute_context python2. 7/dist- packages/ sqlalchemy/ engine/ base.py" , line 1156, in _handle_ dbapi_exception raise_from_ cause(newraise, exc_info) python2. 7/dist- packages/ sqlalchemy/ util/compat. py", line 199, in raise_from_cause type(exception) , exception, tb=exc_tb) python2. 7/dist- packages/ sqlalchemy/ engine/ base.py" , line 951, in _execute_context python2. 7/dist- packages/ sqlalchemy/ engine/ default. py", line 436, in do_execute execute( statement, parameters) python2. 7/dist- packages/ MySQLdb/ cursors. py", line 174, in execute errorhandler( self, exc, value) python2. 7/dist- packages/ MySQLdb/ connections. py", line 36, in defaulterrorhandler exc.Operational Error: (OperationalError) (1832, "Cannot change column 'l3_agent_id': used in a foreign key constraint 'routerl3agentb indings_ ibfk_1' ") 'ALTER TABLE routerl3agentbi ndings ADD CONSTRAINT pk_routerl3agen tbindings PRIMARY KEY (router_id, l3_agent_id)' ()
Traceback (most recent call last):
File "/usr/bin/
sys.
File "/usr/lib/
CONF.
File "/usr/lib/
do_
File "/usr/lib/
getattr(
File "/usr/lib/
script.
File "/usr/lib/
util.
File "/usr/lib/
module = load_module_
File "/usr/lib/
mod = imp.load_
File "/usr/lib/
run_
File "/usr/lib/
context.
File "<string>", line 7, in run_migrations
File "/usr/lib/
self.
File "/usr/lib/
change(**kw)
File "/usr/lib/
cols=
File "<string>", line 7, in create_primary_key
File "/usr/lib/
schema)
File "/usr/lib/
self.
File "/usr/lib/
conn.
File "/usr/lib/
return meth(self, multiparams, params)
File "/usr/lib/
return connection.
File "/usr/lib/
compiled
File "/usr/lib/
context)
File "/usr/lib/
util.
File "/usr/lib/
reraise(
File "/usr/lib/
context)
File "/usr/lib/
cursor.
File "/usr/lib/
self.
File "/usr/lib/
raise errorclass, errorvalue
sqlalchemy.