Opened 4 years ago
Closed 4 years ago
#33576 closed Bug (invalid)
InconsistentMigrationHistory when multiple projects with custom user models share the same database.
| Reported by: | Artem | Owned by: | nobody |
|---|---|---|---|
| Component: | Core (Other) | Version: | 4.0 |
| Severity: | Normal | Keywords: | |
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | no | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
Hello.
I have multiple databases and use it in 2 project.
First project:
DATABASES = {
'default': {
'ENGINE': 'django.contrib.gis.db.backends.postgis',
'NAME': 'main-admin',
},
'main': {
'ENGINE': 'django.contrib.gis.db.backends.postgis',
'NAME': 'main',
},
}
Secondary project:
DATABASES = {
'default': {
'ENGINE': 'django.contrib.gis.db.backends.postgis',
'NAME': 'articles-admin',
},
'articles': {
'ENGINE': 'django.contrib.gis.db.backends.postgis',
'NAME': 'articles',
},
'main': {
'ENGINE': 'django.contrib.gis.db.backends.postgis',
'NAME': 'main',
},
}
I am config routers.
For example: https://monosnap.com/file/sblvTdWM9tmSx1DFxPhcI656SyRuHW
In first project I create database "main" and apply all migrations.
In secondary project I create CustomUser and apply migrations.
Then I create new migration in secondary project then look:
InconsistentMigrationHistory: Migration admin.0001_initial is applied before its dependency person.0001_initial on database 'main'
I need create next project with custom user and database "main".
But I will get an error again if now I delete the base and recreate it on the next project that will contain the base "main"
Main database migration sequence is not important, but every time I connect it to the next project and create a custom user, I will get an error
Change History (1)
comment:1 by , 4 years ago
| Component: | Migrations → Core (Other) |
|---|---|
| Resolution: | → invalid |
| Status: | new → closed |
| Summary: | CustomUser: InconsistentMigrationHistory in multiple databases → InconsistentMigrationHistory when multiple projects with custom user models share the same database. |
It's not supported to use the same database for two projects with different user models because they will share the same tables for reusable apps e.g.
django.contrib.admin, see docs about Substituting a custom User model. You will encounter many other conflicts with such set. Please see TicketClosingReasons/UseSupportChannels for ways to get help with Django usage.