Skip to content

tag2 issue when merging #86

@stuartlynne

Description

@stuartlynne

We ran an event last weekend that involved pulling in some license holder data with tag2 set so we could support using their existing tags.

Merging duplicate license holders today I'm getting this if I select the newer record. Merging to the older record works.

Request Method: GET
Request URL: http://racedb.wimsey.online/RaceDB/LicenseHolders/LicenseHoldersManageDuplicates/LicenseHoldersMergeDuplicatesOK/6108/10621,6108/

Django Version: 5.1.1
Python Version: 3.10.15
Installed Applications:
('django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_extensions',
'crispy_forms',
'crispy_bootstrap3',
'core')
Installed Middleware:
['django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware']

Traceback (most recent call last):
File "/usr/local/lib/python3.10/site-packages/django/db/backends/utils.py", line 105, in _execute
return self.cursor.execute(sql, params)

The above exception (duplicate key value violates unique constraint "core_licenseholder_existing_tag2_key"
DETAIL: Key (existing_tag2)=(30187E7C3CA35DE138AF8E2A) already exists.
) was the direct cause of the following exception:
File "/usr/local/lib/python3.10/site-packages/django/core/handlers/exception.py", line 55, in inner
response = get_response(request)
File "/usr/local/lib/python3.10/site-packages/django/core/handlers/base.py", line 197, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/RaceDB/core/views.py", line 801, in LicenseHoldersMergeDuplicatesOK
license_holder_merge_duplicates( license_holder_merge, duplicates )
File "/RaceDB/core/models.py", line 5794, in license_holder_merge_duplicates
p.save()
File "/RaceDB/core/models.py", line 3924, in save
license_holder.save()
File "/RaceDB/core/models.py", line 2547, in save
super().save( *args, **kwargs )
File "/usr/local/lib/python3.10/site-packages/django/db/models/base.py", line 891, in save
self.save_base(
File "/usr/local/lib/python3.10/site-packages/django/db/models/base.py", line 997, in save_base
updated = self._save_table(
File "/usr/local/lib/python3.10/site-packages/django/db/models/base.py", line 1129, in _save_table
updated = self._do_update(
File "/usr/local/lib/python3.10/site-packages/django/db/models/base.py", line 1194, in _do_update
return filtered._update(values) > 0
File "/usr/local/lib/python3.10/site-packages/django/db/models/query.py", line 1278, in _update
return query.get_compiler(self.db).execute_sql(CURSOR)
File "/usr/local/lib/python3.10/site-packages/django/db/models/sql/compiler.py", line 2003, in execute_sql
cursor = super().execute_sql(result_type)
File "/usr/local/lib/python3.10/site-packages/django/db/models/sql/compiler.py", line 1574, in execute_sql
cursor.execute(sql, params)
File "/usr/local/lib/python3.10/site-packages/django/db/backends/utils.py", line 122, in execute
return super().execute(sql, params)
File "/usr/local/lib/python3.10/site-packages/django/db/backends/utils.py", line 79, in execute
return self._execute_with_wrappers(
File "/usr/local/lib/python3.10/site-packages/django/db/backends/utils.py", line 92, in _execute_with_wrappers
return executor(sql, params, many, context)
File "/usr/local/lib/python3.10/site-packages/django/db/backends/utils.py", line 100, in _execute
with self.db.wrap_database_errors:
File "/usr/local/lib/python3.10/site-packages/django/db/utils.py", line 91, in exit
raise dj_exc_value.with_traceback(traceback) from exc_value
File "/usr/local/lib/python3.10/site-packages/django/db/backends/utils.py", line 105, in _execute
return self.cursor.execute(sql, params)

Exception Type: IntegrityError at /RaceDB/LicenseHolders/LicenseHoldersManageDuplicates/LicenseHoldersMergeDuplicatesOK/6108/10621,6108/
Exception Value: duplicate key value violates unique constraint "core_licenseholder_existing_tag2_key"
DETAIL: Key (existing_tag2)=(30187E7C3CA35DE138AF8E2A) already exists.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions