Closed nniehoff closed 3 months ago
It seems newer versions of Dolt break this plugin. @nniehoff Output above is with 0.37.3
. I was able to recreate that with our published Gizmo container.
I pulled down said Gizmo-dolt container and rebuilt with the latest version of Dolt (0.39.0
) and it's broken but with a different error:
sandbox-nautobot on nn_nautobot_13 [!]
➜ INVOKE_SANDBOX_PYPROJECT_SRC=dolt INVOKE_SANDBOX_DATABASE=dolt invoke sandbox.migrate
1.2.11
Running docker-compose command "docker-compose --project-name sandbox --project-directory "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.redis.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.base.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dev.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dolt.yml" ps --services --filter status=running"
1.2.11
Running docker-compose command "docker-compose --project-name sandbox --project-directory "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.redis.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.base.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dev.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dolt.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dolt.yml" run --entrypoint 'nautobot-server migrate' nautobot"
[+] Running 2/0
⠿ Container sandbox-redis-1 Running 0.0s
⠿ Container sandbox-database-1 Running 0.0s
Operations to perform:
Apply all migrations: admin, auth, circuits, contenttypes, database, dcim, django_celery_beat, extras, ipam, nautobot_version_control, sessions, social_django, taggit, tenancy, users, virtualization
Running migrations:
Applying auth.0002_alter_permission_name_max_length...Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/mysql/base.py", line 73, in execute
return self.cursor.execute(query, args)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 206, in execute
res = self._query(query)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 319, in _query
db.query(q)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/connections.py", line 259, in query
_mysql.connection.query(self, query)
MySQLdb._exceptions.OperationalError: (1105, 'unable to change type of column `name` as it is used by foreign keys')
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/local/bin/nautobot-server", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.7/site-packages/nautobot/core/cli.py", line 61, in main
initializer=_configure_settings, # Called after defaults
File "/usr/local/lib/python3.7/site-packages/nautobot/core/runner/runner.py", line 266, in run_app
management.execute_from_command_line([runner_name, command] + command_args)
File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 395, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 330, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 371, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 85, in wrapped
res = handle_func(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/django/core/management/commands/migrate.py", line 245, in handle
fake_initial=fake_initial,
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/executor.py", line 117, in migrate
state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/executor.py", line 227, in apply_migration
state = migration.apply(state, schema_editor)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/migration.py", line 124, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/operations/fields.py", line 236, in database_forwards
schema_editor.alter_field(from_model, from_field, to_field)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/schema.py", line 572, in alter_field
old_db_params, new_db_params, strict)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/schema.py", line 726, in _alter_field
params,
File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/schema.py", line 142, in execute
cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 98, in execute
return super().execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/cacheops/transaction.py", line 93, in execute
result = self._no_monkey.execute(self, sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 66, in execute
return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers
return executor(sql, params, many, context)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/utils.py", line 90, in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/mysql/base.py", line 73, in execute
return self.cursor.execute(query, args)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 206, in execute
res = self._query(query)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 319, in _query
db.query(q)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/connections.py", line 259, in query
_mysql.connection.query(self, query)
django.db.utils.OperationalError: (1105, 'unable to change type of column `name` as it is used by foreign keys')
sandbox-nautobot on nn_nautobot_13 [!]
➜ INVOKE_SANDBOX_PYPROJECT_SRC=dolt INVOKE_SANDBOX_DATABASE=dolt invoke sandbox.cli -c database
1.2.11
Running docker-compose command "docker-compose --project-name sandbox --project-directory "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.redis.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.base.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dev.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dolt.yml" exec database bash"
root@0af4a1f391d3:/var/lib/nautobot# do
do dolt domainname done
root@0af4a1f391d3:/var/lib/nautobot# dolt version
dolt version 0.39.0
root@0af4a1f391d3:/var/lib/nautobot#
CEO of DoltHub here. This looks like we broke something in 0.39.0. There was a big prepared statement change in that release so I suspect that will be the cause.
We will look at this first thing tomorrow PST tomorrow and provide an ETA for a fix as quick as we can. When we get a fix, we’ll make a patch release and update this issue.
Thanks for the prompt response @timsehn! Trying to get a lot of things updated here and bumping into little bugs. I can try 0.38.0
as well in the morning. We also updated a lot of dependencies in Nautobot with the release of 1.3
.
I tried again with 0.38.0
and same as my output for 0.39.0
. The migration it fails on is from Django core: https://github.com/django/django/blob/3.2.13/django/contrib/auth/migrations/0002_alter_permission_name_max_length.py
Rebuilt a container running 0.39.0
starting with trace.
➜ INVOKE_SANDBOX_PYPROJECT_SRC=dolt INVOKE_SANDBOX_DATABASE=dolt invoke sandbox.migrate
1.2.11
Running docker-compose command "docker-compose --project-name sandbox --project-directory "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.redis.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.base.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dev.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dolt.yml" ps --services --filter status=running"
1.2.11
Running docker-compose command "docker-compose --project-name sandbox --project-directory "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.redis.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.base.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dev.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dolt.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dolt.yml" run --entrypoint 'nautobot-server migrate' nautobot"
[+] Running 4/4
⠿ Network sandbox_default Created 0.0s
⠿ Volume "sandbox_dolt_data" Created 0.0s
⠿ Container sandbox-database-1 Created 0.1s
⠿ Container sandbox-redis-1 Created 0.1s
[+] Running 2/2
⠿ Container sandbox-redis-1 Started 0.3s
⠿ Container sandbox-database-1 Started 0.4s
2022-04-22 15:03:17,018 WARNING Wrapping model clean methods for custom validators failed because the ContentType table was not available or populated. This is normal during the execution of the migration command for the first time. - nautobot.extras.apps - apps - /usr/local/lib/python3.7/site-packages/nautobot/extras/apps.py:38
2022-04-22 15:03:17,018 WARNING Wrapping model clean methods for custom validators failed because the ContentType table was not available or populated. This is normal during the execution of the migration command for the first time. - nautobot.extras.apps - apps - /usr/local/lib/python3.7/site-packages/nautobot/extras/apps.py:38
Operations to perform:
Apply all migrations: admin, auth, circuits, contenttypes, database, dcim, django_celery_beat, extras, ipam, nautobot_version_control, sessions, social_django, taggit, tenancy, users, virtualization
Running migrations:
Applying contenttypes.0001_initial... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0001_initial... OK
Applying auth.0002_alter_permission_name_max_length...Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/mysql/base.py", line 73, in execute
return self.cursor.execute(query, args)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 206, in execute
res = self._query(query)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 319, in _query
db.query(q)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/connections.py", line 259, in query
_mysql.connection.query(self, query)
MySQLdb._exceptions.OperationalError: (1105, 'unable to change type of column `name` as it is used by foreign keys')
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/local/bin/nautobot-server", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.7/site-packages/nautobot/core/cli.py", line 61, in main
initializer=_configure_settings, # Called after defaults
File "/usr/local/lib/python3.7/site-packages/nautobot/core/runner/runner.py", line 266, in run_app
management.execute_from_command_line([runner_name, command] + command_args)
File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 395, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 330, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 371, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 85, in wrapped
res = handle_func(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/django/core/management/commands/migrate.py", line 245, in handle
fake_initial=fake_initial,
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/executor.py", line 117, in migrate
state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/executor.py", line 227, in apply_migration
state = migration.apply(state, schema_editor)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/migration.py", line 124, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/operations/fields.py", line 236, in database_forwards
schema_editor.alter_field(from_model, from_field, to_field)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/schema.py", line 572, in alter_field
old_db_params, new_db_params, strict)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/schema.py", line 726, in _alter_field
params,
File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/schema.py", line 142, in execute
cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 98, in execute
return super().execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/cacheops/transaction.py", line 93, in execute
result = self._no_monkey.execute(self, sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 66, in execute
return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers
return executor(sql, params, many, context)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/utils.py", line 90, in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/mysql/base.py", line 73, in execute
return self.cursor.execute(query, args)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 206, in execute
res = self._query(query)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 319, in _query
db.query(q)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/connections.py", line 259, in query
_mysql.connection.query(self, query)
django.db.utils.OperationalError: (1105, 'unable to change type of column `name` as it is used by foreign keys')
➜ INVOKE_SANDBOX_PYPROJECT_SRC=dolt INVOKE_SANDBOX_DATABASE=dolt invoke sandbox.cli -c database
1.2.11
Running docker-compose command "docker-compose --project-name sandbox --project-directory "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.redis.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.base.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dev.yml" -f "/Users/bryanculver/Developer/repos/sandbox-nautobot/environments/local/docker-compose.dolt.yml" exec database bash"
root@8da88841ccbf:/var/lib/nautobot# dolt version
dolt version 0.39.0
gizmo-dolt-nautobot on main [!]
➜ docker logs sandbox-database-1
Starting server with Config HP="0.0.0.0:3306"|U="nautobot"|P="***"|T="28800000"|R="false"|L="info"
2022-04-22T15:03:16Z INFO [conn 1] NewConnection {DisableClientMultiStatements=false}
2022-04-22T15:03:17Z WARN [conn 1] error running query {connectTime=2022-04-22T15:03:16Z, error=table not found: django_content_type, query=SELECT `django_content_type`.`id`, `django_content_type`.`app_label`, `django_content_type`.`model` FROM `django_content_type` WHERE ((`django_content_type`.`app_label` = 'extras' AND `django_content_type`.`model` IN ('status', 'tag', 'configcontextschema', 'secret', 'secretsgroup')) OR (`django_content_type`.`app_label` = 'dcim' AND `django_content_type`.`model` IN ('consoleport', 'consoleserverport', 'powerport', 'poweroutlet', 'interface', 'frontport', 'rearport', 'devicebay', 'inventoryitem', 'manufacturer', 'devicetype', 'devicerole', 'platform', 'device', 'virtualchassis', 'cable', 'consoleporttemplate', 'consoleserverporttemplate', 'powerporttemplate', 'poweroutlettemplate', 'interfacetemplate', 'frontporttemplate', 'rearporttemplate', 'devicebaytemplate', 'powerpanel', 'powerfeed', 'rackgroup', 'rackrole', 'rack', 'rackreservation', 'region', 'site')) OR (`django_content_type`.`app_label` = 'circuits' AND `django_content_type`.`model` IN ('provider', 'circuittype', 'circuit', 'circuittermination')) OR (`django_content_type`.`app_label` = 'virtualization' AND `django_content_type`.`model` IN ('clustertype', 'clustergroup', 'cluster', 'virtualmachine', 'vminterface')) OR (`django_content_type`.`app_label` = 'ipam' AND `django_content_type`.`model` IN ('vrf', 'routetarget', 'rir', 'aggregate', 'role', 'prefix', 'ipaddress', 'vlangroup', 'vlan', 'service')) OR (`django_content_type`.`app_label` = 'tenancy' AND `django_content_type`.`model` IN ('tenantgroup', 'tenant')))}
2022-04-22T15:03:18Z INFO [conn 2] NewConnection {DisableClientMultiStatements=false}
2022-04-22T15:03:23Z WARN [conn 2] error running query {connectTime=2022-04-22T15:03:18Z, error=unable to change type of column `name` as it is used by foreign keys, query=ALTER TABLE `auth_permission` MODIFY `name` varchar(255) NOT NULL}
2022-04-22T15:03:23Z INFO [conn 2] ConnectionClosed {}
2022-04-22T15:03:23Z INFO [conn 1] ConnectionClosed {}
https://github.com/dolthub/dolt/releases/tag/v0.39.1
This release should fix the above issues. Please test and let us know if something else breaks. Thanks for the report.
Progressing further but new issue now:
...
Added 19, linked 29 status records
OK
Applying extras.0005_configcontext_device_types... OK
Applying extras.0006_graphqlquery... OK
Applying extras.0007_configcontextschema... OK
Applying extras.0008_jobresult__custom_field_data... OK
Applying extras.0009_computedfield... OK
Applying extras.0010_change_cf_validation_max_min_field_to_bigint...Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/mysql/base.py", line 73, in execute
return self.cursor.execute(query, args)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 206, in execute
res = self._query(query)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 319, in _query
db.query(q)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/connections.py", line 259, in query
_mysql.connection.query(self, query)
MySQLdb._exceptions.OperationalError: (1105, 'unable to change type of column `validation_maximum` as it is used by foreign keys')
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/local/bin/nautobot-server", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.7/site-packages/nautobot/core/cli.py", line 61, in main
initializer=_configure_settings, # Called after defaults
File "/usr/local/lib/python3.7/site-packages/nautobot/core/runner/runner.py", line 266, in run_app
management.execute_from_command_line([runner_name, command] + command_args)
File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line
utility.execute()
File "/usr/local/lib/python3.7/site-packages/django/core/management/__init__.py", line 395, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 330, in run_from_argv
self.execute(*args, **cmd_options)
File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 371, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python3.7/site-packages/django/core/management/base.py", line 85, in wrapped
res = handle_func(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/django/core/management/commands/migrate.py", line 245, in handle
fake_initial=fake_initial,
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/executor.py", line 117, in migrate
state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/executor.py", line 227, in apply_migration
state = migration.apply(state, schema_editor)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/migration.py", line 124, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "/usr/local/lib/python3.7/site-packages/django/db/migrations/operations/fields.py", line 236, in database_forwards
schema_editor.alter_field(from_model, from_field, to_field)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/schema.py", line 572, in alter_field
old_db_params, new_db_params, strict)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/schema.py", line 726, in _alter_field
params,
File "/usr/local/lib/python3.7/site-packages/django/db/backends/base/schema.py", line 142, in execute
cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 98, in execute
return super().execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/cacheops/transaction.py", line 93, in execute
result = self._no_monkey.execute(self, sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 66, in execute
return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers
return executor(sql, params, many, context)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/utils.py", line 90, in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "/usr/local/lib/python3.7/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.7/site-packages/django/db/backends/mysql/base.py", line 73, in execute
return self.cursor.execute(query, args)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 206, in execute
res = self._query(query)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/cursors.py", line 319, in _query
db.query(q)
File "/usr/local/lib/python3.7/site-packages/MySQLdb/connections.py", line 259, in query
_mysql.connection.query(self, query)
django.db.utils.OperationalError: (1105, 'unable to change type of column `validation_maximum` as it is used by foreign keys')
Relevant trace from container:
2022-04-22T22:55:48Z WARN [conn 2] error running query {connectTime=2022-04-22T22:49:23Z, error=unable to change type of column `validation_maximum` as it is used by foreign keys, query=ALTER TABLE `extras_customfield` MODIFY `validation_maximum` bigint NULL}
2022-04-22T22:55:48Z INFO [conn 2] ConnectionClosed
Current table schema
mysql> DESCRIBE extras_customfield;
+--------------------+-------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------------------+-------------------+------+-----+---------+-------+
| id | char(32) | NO | PRI | | |
| type | varchar(50) | NO | | | |
| name | varchar(50) | NO | UNI | | |
| label | varchar(50) | NO | | | |
| description | varchar(200) | NO | | | |
| required | tinyint | NO | | | |
| filter_logic | varchar(50) | NO | | | |
| default | json | YES | | | |
| weight | smallint unsigned | NO | | | |
| validation_minimum | int unsigned | YES | | | |
| validation_maximum | int unsigned | YES | | | |
| validation_regex | varchar(500) | NO | | | |
+--------------------+-------------------+------+-----+---------+-------+
We’ve got another release out, which should fix the above issue! https://github.com/dolthub/dolt/releases/tag/v0.39.2
Migrations are succeeding again with Dolt version 0.39.2
. Performing our other test suites now.
Dolt version 0.37.3 breaks this plugin: