From bf79b8bd5b8923026ad6f80ac98fa3e503fdc125 Mon Sep 17 00:00:00 2001 From: Jessica Tallon Date: Mon, 28 Dec 2015 13:27:41 +0000 Subject: [PATCH] Fix migrations of activity intermediators There was a problem where it was assuming the tablenames are the same in master as they always were and that isn't the case. This would cause it to raise an exception when trying to look up a table which didn't exist. This fixes that by hardcoding the old tablenames in for this migration. --- mediagoblin/db/migrations.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/mediagoblin/db/migrations.py b/mediagoblin/db/migrations.py index 1c159511..73807649 100644 --- a/mediagoblin/db/migrations.py +++ b/mediagoblin/db/migrations.py @@ -914,11 +914,11 @@ class ActivityIntermediator_R0(declarative_base()): type = Column(Unicode, nullable=False) # These are needed for migration 29 - TYPES = { - "user": User, - "media": MediaEntry, - "comment": Comment, - "collection": Collection, + TABLENAMES = { + "user": "core__users", + "media": "core__media_entries", + "comment": "core__media_comments", + "collection": "core__collections", } class Activity_R0(declarative_base()): @@ -1324,8 +1324,8 @@ def migrate_data_foreign_keys(db): ai_table.c.id==activity.object )).first() - object_ai_type = ActivityIntermediator_R0.TYPES[object_ai.type] - object_ai_table = inspect_table(metadata, object_ai_type.__tablename__) + object_ai_type = ActivityIntermediator_R0.TABLENAMES[object_ai.type] + object_ai_table = inspect_table(metadata, object_ai_type) activity_object = db.execute(object_ai_table.select( object_ai_table.c.activity==object_ai.id @@ -1334,7 +1334,7 @@ def migrate_data_foreign_keys(db): # now we need to create the GenericModelReference object_gmr = db.execute(gmr_table.insert().values( obj_pk=activity_object.id, - model_type=object_ai_type.__tablename__ + model_type=object_ai_type )) # Now set the ID of the GenericModelReference in the GenericForignKey @@ -1353,8 +1353,8 @@ def migrate_data_foreign_keys(db): ai_table.c.id==activity.target )).first() - target_ai_type = ActivityIntermediator_R0.TYPES[target_ai.type] - target_ai_table = inspect_table(metadata, target_ai_type.__tablename__) + target_ai_type = ActivityIntermediator_R0.TABLENAMES[target_ai.type] + target_ai_table = inspect_table(metadata, target_ai_type) activity_target = db.execute(target_ai_table.select( target_ai_table.c.activity==target_ai.id @@ -1363,7 +1363,7 @@ def migrate_data_foreign_keys(db): # We now want to create the new target GenericModelReference target_gmr = db.execute(gmr_table.insert().values( obj_pk=activity_target.id, - model_type=target_ai_type.__tablename__ + model_type=target_ai_type )) # Now set the ID of the GenericModelReference in the GenericForignKey -- 2.25.1