#30039: Inconsistency error after unapplying squash migration.
-------------------------------------+-------------------------------------
               Reporter:  Shehzad-   |          Owner:  nobody
  Ahmed                              |
                   Type:  Bug        |         Status:  new
              Component:  Database   |        Version:  2.1
  layer (models, ORM)                |       Keywords:  Squash migration,
               Severity:  Normal     |  replaces, rolled back(UN-applied)
           Triage Stage:             |      Has patch:  1
  Unreviewed                         |
    Needs documentation:  0          |    Needs tests:  0
Patch needs improvement:  0          |  Easy pickings:  0
                  UI/UX:  0          |
-------------------------------------+-------------------------------------
 Just for reminder: Migrations contain parent migrations called
 dependencies. So when an parent migration is rolled back all of its
 successors are also rolled back. For the consistency django make record of
 all applied and rolled back(unapplied) migrations. Now before any new
 migration is applied consistency is checked.

 Just for reminder: In Case when a squash migration is created, a list
 inside it is maintained which tracks all migrations it replaced called
 replaces.

 Problem: when a squash migration is rolled back all its replaces(which can
 be dependencies or depended on other migrations) are marked UN-applied but
 squash migration migration it-self does not record UN-applied. Since the
 operation of rolling back squash migration becomes completed. But Then
 when new migrate operation is performed, it causes inconsistency error e.g
 below:

 "django.db.migrations.exceptions.InconsistentMigrationHistory: Migration
 compliance.0007_auto_20180329_1238_squashed_0026_auto_20180815_0741 is
 applied before its dependency
 survey.0092_prospectfarmerviewlinkcompliancelink on database 'default' ."

-- 
Ticket URL: <https://code.djangoproject.com/ticket/30039>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/056.7844ee7ebb53b574e84738f10cbbb6df%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to