diff options
Diffstat (limited to 'askbot/migrations/0092_postize_vote_and_activity.py')
-rw-r--r-- | askbot/migrations/0092_postize_vote_and_activity.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/askbot/migrations/0092_postize_vote_and_activity.py b/askbot/migrations/0092_postize_vote_and_activity.py index 45442f8f..9c77597d 100644 --- a/askbot/migrations/0092_postize_vote_and_activity.py +++ b/askbot/migrations/0092_postize_vote_and_activity.py @@ -6,13 +6,15 @@ from south.v2 import DataMigration from django.db import models from askbot.migrations import TERM_RED_BOLD, TERM_GREEN, TERM_RESET +from askbot.utils.console import ProgressBar class Migration(DataMigration): def forwards(self, orm): - # TODO: Speed this up by prefetching all votes ? - for v in orm.Vote.objects.iterator(): + message = "Connecting votes to posts" + num_votes = orm.Vote.objects.count() + for v in ProgressBar(orm.Vote.objects.iterator(), num_votes, message): if (v.content_type.app_label, v.content_type.model) == ('askbot', 'question'): v.voted_post = orm.Post.objects.get(self_question__id=v.object_id) elif (v.content_type.app_label, v.content_type.model) == ('askbot', 'answer'): @@ -31,7 +33,9 @@ class Migration(DataMigration): abandoned_activities = [] - for a in orm.Activity.objects.iterator(): + message = "Connecting activity objects to posts" + num_activities = orm.Activity.objects.count() + for a in ProgressBar(orm.Activity.objects.iterator(), num_activities, message): # test if content_object for this activity exists - there might be a bunch of "abandoned" activities # # NOTE that if activity.content_object is gone then we cannot reliably recover it from activity.question |