diff options
author | Marcin Kuzminski <marcin@python-works.com> | 2012-02-26 19:31:17 +0200 |
---|---|---|
committer | Marcin Kuzminski <marcin@python-works.com> | 2012-02-26 19:31:17 +0200 |
commit | 2929ee55694e16367f74cc20761b62a91e389f88 (patch) | |
tree | cff13b53fee8dc4bd55e8f6d5e310a65fc5d3d84 | |
parent | cc0e0f74d3b86e1a960a743d086b8c1d8185a516 (diff) | |
parent | f201206f6db89bf73751b18c708acdc388e0277a (diff) |
merge beta into default
-rw-r--r-- | rhodecode/lib/dbmigrate/versions/005_version_1_3_0.py | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/rhodecode/lib/dbmigrate/versions/005_version_1_3_0.py b/rhodecode/lib/dbmigrate/versions/005_version_1_3_0.py index 6770ddd4..01de1bab 100644 --- a/rhodecode/lib/dbmigrate/versions/005_version_1_3_0.py +++ b/rhodecode/lib/dbmigrate/versions/005_version_1_3_0.py @@ -26,17 +26,24 @@ def upgrade(migrate_engine): tbl = UserRepoToPerm().__table__ new_cons = UniqueConstraint('user_id', 'repository_id', 'permission_id', table=tbl) new_cons.create() - + old_cons = None if migrate_engine.name in ['mysql']: old_cons = UniqueConstraint('user_id', 'repository_id', table=tbl, name="user_id") - old_cons.drop() elif migrate_engine.name in ['postgresql']: old_cons = UniqueConstraint('user_id', 'repository_id', table=tbl) - old_cons.drop() else: # sqlite doesn't support dropping constraints... print """Please manually drop UniqueConstraint('user_id', 'repository_id')""" + if old_cons: + try: + old_cons.drop() + except Exception, e: + # we don't care if this fails really... better to pass migration than + # leave this in intermidiate state + print 'Failed to remove Unique for user_id, repository_id reason %s' % e + + #========================================================================== # fix uniques of table `user_repo_group_to_perm` #========================================================================== @@ -44,19 +51,26 @@ def upgrade(migrate_engine): tbl = UserRepoGroupToPerm().__table__ new_cons = UniqueConstraint('group_id', 'permission_id', 'user_id', table=tbl) new_cons.create() + old_cons = None # fix uniqueConstraints if migrate_engine.name in ['mysql']: #mysql is givinig troubles here... old_cons = UniqueConstraint('group_id', 'permission_id', table=tbl, name="group_id") - old_cons.drop() elif migrate_engine.name in ['postgresql']: old_cons = UniqueConstraint('group_id', 'permission_id', table=tbl, name='group_to_perm_group_id_permission_id_key') - old_cons.drop() else: # sqlite doesn't support dropping constraints... print """Please manually drop UniqueConstraint('group_id', 'permission_id')""" + if old_cons: + try: + old_cons.drop() + except Exception, e: + # we don't care if this fails really... better to pass migration than + # leave this in intermidiate state + print 'Failed to remove Unique for user_id, repository_id reason %s' % e + return |