diff options
Diffstat (limited to 'keystone')
-rw-r--r-- | keystone/common/sql/migrate_repo/versions/031_drop_credential_indexes.py | 40 | ||||
-rw-r--r-- | keystone/credential/backends/sql.py | 5 |
2 files changed, 40 insertions, 5 deletions
diff --git a/keystone/common/sql/migrate_repo/versions/031_drop_credential_indexes.py b/keystone/common/sql/migrate_repo/versions/031_drop_credential_indexes.py new file mode 100644 index 00000000..89ca04f0 --- /dev/null +++ b/keystone/common/sql/migrate_repo/versions/031_drop_credential_indexes.py @@ -0,0 +1,40 @@ +# vim: tabstop=4 shiftwidth=4 softtabstop=4 + +# Copyright 2013 OpenStack Foundation +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +import sqlalchemy + + +def upgrade(migrate_engine): + #This migration is relevant only for mysql because for all other + #migrate engines these indexes were successfully dropped. + if migrate_engine.name != 'mysql': + return + meta = sqlalchemy.MetaData(bind=migrate_engine) + table = sqlalchemy.Table('credential', meta, autoload=True) + for index in table.indexes: + index.drop() + + +def downgrade(migrate_engine): + if migrate_engine.name != 'mysql': + return + meta = sqlalchemy.MetaData(bind=migrate_engine) + table = sqlalchemy.Table('credential', meta, autoload=True) + index = sqlalchemy.Index('user_id', table.c['user_id']) + index.create() + index = sqlalchemy.Index('credential_project_id_fkey', + table.c['project_id']) + index.create() diff --git a/keystone/credential/backends/sql.py b/keystone/credential/backends/sql.py index 8aab3511..eab9dfea 100644 --- a/keystone/credential/backends/sql.py +++ b/keystone/credential/backends/sql.py @@ -30,11 +30,6 @@ class CredentialModel(sql.ModelBase, sql.DictBase): blob = sql.Column(sql.JsonBlob(), nullable=False) type = sql.Column(sql.String(255), nullable=False) extra = sql.Column(sql.JsonBlob()) - #TODO(eezhova):extra indexes should be removed. (23 migration). - __table_args__ = ( - sql.Index('user_id', 'user_id'), - sql.Index('credential_project_id_fkey', 'project_id') - ) class Credential(sql.Base, credential.Driver): |