aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcin Kuzminski <marcin@python-works.com>2012-02-26 19:31:17 +0200
committerMarcin Kuzminski <marcin@python-works.com>2012-02-26 19:31:17 +0200
commit2929ee55694e16367f74cc20761b62a91e389f88 (patch)
treecff13b53fee8dc4bd55e8f6d5e310a65fc5d3d84
parentcc0e0f74d3b86e1a960a743d086b8c1d8185a516 (diff)
parentf201206f6db89bf73751b18c708acdc388e0277a (diff)
merge beta into default
-rw-r--r--rhodecode/lib/dbmigrate/versions/005_version_1_3_0.py24
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