Comment 5 for bug 987121

Revision history for this message
Kevin-Yang (benbenzhuforever) wrote :

I am using DB2 for Keystone 2012.2 Folsom version. I pre-created a DB named 'KEYSTONE' with command "db2 create db" on the DB2 server. In the keystone configuration file, i config it as ->
[sql]
connection = ibmdb://db2inst1:aq1sw2de@146.89.7.95:60000/KEYSTONE.

However, when i call the command "keystone-manage db_sync", i came across such issue.

########################
[root@usaxnso044ccpra keystone-2012.2]# keystone-manage db_sync
Traceback (most recent call last):
  File "/usr/local/bin/keystone-manage", line 5, in <module>
    pkg_resources.run_script('keystone==2012.2', 'keystone-manage')
  File "build/bdist.linux-x86_64/egg/pkg_resources.py", line 499, in run_script
  File "build/bdist.linux-x86_64/egg/pkg_resources.py", line 1239, in run_script
  File "/usr/local/lib/python2.7/site-packages/keystone-2012.2-py2.7.egg/EGG-INFO/scripts/keystone-manage", line 28, in <module>
    cli.main(argv=sys.argv, config_files=config_files)
  File "/usr/local/lib/python2.7/site-packages/keystone-2012.2-py2.7.egg/keystone/cli.py", line 164, in main
    return run(cmd, (args[:1] + args[2:]))
  File "/usr/local/lib/python2.7/site-packages/keystone-2012.2-py2.7.egg/keystone/cli.py", line 147, in run
    return CMDS[cmd](argv=args).run()
  File "/usr/local/lib/python2.7/site-packages/keystone-2012.2-py2.7.egg/keystone/cli.py", line 35, in run
    return self.main()
  File "/usr/local/lib/python2.7/site-packages/keystone-2012.2-py2.7.egg/keystone/cli.py", line 56, in main
    driver.db_sync()
  File "/usr/local/lib/python2.7/site-packages/keystone-2012.2-py2.7.egg/keystone/identity/backends/sql.py", line 136, in db_sync
    migration.db_sync()
  File "/usr/local/lib/python2.7/site-packages/keystone-2012.2-py2.7.egg/keystone/common/sql/migration.py", line 52, in db_sync
    return versioning_api.upgrade(CONF.sql.connection, repo_path, version)
  File "/usr/local/lib/python2.7/site-packages/migrate/versioning/api.py", line 186, in upgrade
    return _migrate(url, repository, version, upgrade=True, err=err, **opts)
  File "<string>", line 2, in _migrate
  File "/usr/local/lib/python2.7/site-packages/migrate/versioning/util/__init__.
    return f(*a, **kw)
  File "/usr/local/lib/python2.7/site-packages/migrate/versioning/api.py", line
    schema.runchange(ver, change, changeset.step)
  File "/usr/local/lib/python2.7/site-packages/migrate/versioning/schema.py", li
    change.run(self.engine, step)
  File "/usr/local/lib/python2.7/site-packages/migrate/versioning/script/py.py",
    script_func(engine)
  File "/usr/local/lib/python2.7/site-packages/keystone-2012.2-py2.7.egg/keyston
    old_id_col.alter(name='id_hash')
  File "/usr/local/lib/python2.7/site-packages/migrate/changeset/schema.py", lin
    return alter_column(self, *p, **k)
  File "/usr/local/lib/python2.7/site-packages/migrate/changeset/schema.py", lin
    visitorcallable = get_engine_visitor(engine, 'schemachanger')
  File "/usr/local/lib/python2.7/site-packages/migrate/changeset/databases/visit
    return get_dialect_visitor(engine.dialect, name)
  File "/usr/local/lib/python2.7/site-packages/migrate/changeset/databases/visit
    migrate_dialect_cls = DIALECTS[sa_dialect_name]

KeyError: 'ibmdb'
########################

Any insight on that?