From 296d09ff5fbe8835fdd455dd2b865ce9937f8ed8 Mon Sep 17 00:00:00 2001 From: Serafeim Papastefanos Date: Mon, 17 Feb 2014 09:59:50 +0200 Subject: [PATCH] Fix for #24 running migrate with sqlite3 When using sqlite3 we set autocommit to True at the beginning of the migration 0002 for wagtail core / docs / images in order to disable transactions there and be able to do a simple python manage.py migrate also in sqlite3. --- wagtail/wagtailcore/migrations/0002_initial_data.py | 5 ++++- wagtail/wagtaildocs/migrations/0002_initial_data.py | 5 ++++- wagtail/wagtailimages/migrations/0002_initial_data.py | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/wagtail/wagtailcore/migrations/0002_initial_data.py b/wagtail/wagtailcore/migrations/0002_initial_data.py index f6c1d43c8..7445d746e 100644 --- a/wagtail/wagtailcore/migrations/0002_initial_data.py +++ b/wagtail/wagtailcore/migrations/0002_initial_data.py @@ -2,11 +2,14 @@ from south.utils import datetime_utils as datetime from south.db import db from south.v2 import DataMigration -from django.db import models +from django.db import models, connection +from django.db.transaction import set_autocommit class Migration(DataMigration): def forwards(self, orm): + if connection.vendor == 'sqlite': + set_autocommit(True) page_content_type, created = orm['contenttypes.contenttype'].objects.get_or_create( model='page', app_label='wagtailcore', defaults={'name': 'page'}) diff --git a/wagtail/wagtaildocs/migrations/0002_initial_data.py b/wagtail/wagtaildocs/migrations/0002_initial_data.py index 905665b5a..3c21f5b92 100644 --- a/wagtail/wagtaildocs/migrations/0002_initial_data.py +++ b/wagtail/wagtaildocs/migrations/0002_initial_data.py @@ -2,11 +2,14 @@ from south.utils import datetime_utils as datetime from south.db import db from south.v2 import DataMigration -from django.db import models +from django.db import models, connection +from django.db.transaction import set_autocommit class Migration(DataMigration): def forwards(self, orm): + if connection.vendor == 'sqlite': + set_autocommit(True) document_content_type, created = orm['contenttypes.ContentType'].objects.get_or_create( model='document', app_label='wagtaildocs', defaults={'name': 'document'}) add_permission, created = orm['auth.permission'].objects.get_or_create( diff --git a/wagtail/wagtailimages/migrations/0002_initial_data.py b/wagtail/wagtailimages/migrations/0002_initial_data.py index ffc719caf..21ac3b5b3 100644 --- a/wagtail/wagtailimages/migrations/0002_initial_data.py +++ b/wagtail/wagtailimages/migrations/0002_initial_data.py @@ -2,11 +2,14 @@ from south.utils import datetime_utils as datetime from south.db import db from south.v2 import DataMigration -from django.db import models +from django.db import models, connection +from django.db.transaction import set_autocommit class Migration(DataMigration): def forwards(self, orm): + if connection.vendor == 'sqlite': + set_autocommit(True) image_content_type, created = orm['contenttypes.ContentType'].objects.get_or_create( model='image', app_label='wagtailimages', defaults={'name': 'image'}) add_permission, created = orm['auth.permission'].objects.get_or_create(