| 1 | | Ah sorry I had an environment issue , here's the exception I'm getting for 3.2.16: |
| 2 | | |
| 3 | | {{{ |
| 4 | | ====================================================================== |
| 5 | | ERROR: test_update_or_create (ticket_34523.tests.TransactionManagementErrorTest.test_update_or_create) |
| 6 | | ---------------------------------------------------------------------- |
| 7 | | Traceback (most recent call last): |
| 8 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/query.py", line 581, in get_or_create |
| 9 | | return self.get(**kwargs), False |
| 10 | | ^^^^^^^^^^^^^^^^^^ |
| 11 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/query.py", line 435, in get |
| 12 | | raise self.model.DoesNotExist( |
| 13 | | ticket_34523.tests.TransactionManagementErrorTest.TestModel.DoesNotExist: TestModel matching query does not exist. |
| 14 | | |
| 15 | | During handling of the above exception, another exception occurred: |
| 16 | | |
| 17 | | Traceback (most recent call last): |
| 18 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/backends/utils.py", line 84, in _execute |
| 19 | | return self.cursor.execute(sql, params) |
| 20 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 21 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/backends/sqlite3/base.py", line 423, in execute |
| 22 | | return Database.Cursor.execute(self, query, params) |
| 23 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 24 | | sqlite3.IntegrityError: UNIQUE constraint failed: test_model_update_or_create.id |
| 25 | | |
| 26 | | The above exception was the direct cause of the following exception: |
| 27 | | |
| 28 | | Traceback (most recent call last): |
| 29 | | File "/Users/dsanders/projects/django-sample-3_2/ticket_34523/tests.py", line 42, in test_update_or_create |
| 30 | | self.TestModel.objects.update_or_create(id=1, defaults={"field": 2}) |
| 31 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/manager.py", line 85, in manager_method |
| 32 | | return getattr(self.get_queryset(), name)(*args, **kwargs) |
| 33 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 34 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/query.py", line 608, in update_or_create |
| 35 | | obj, created = self.select_for_update().get_or_create(defaults, **kwargs) |
| 36 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 37 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/query.py", line 588, in get_or_create |
| 38 | | return self.create(**params), True |
| 39 | | ^^^^^^^^^^^^^^^^^^^^^ |
| 40 | | File "/Users/dsanders/projects/django-sample-3_2/ticket_34523/tests.py", line 16, in create |
| 41 | | return super().create(**kwargs) |
| 42 | | ^^^^^^^^^^^^^^^^^^^^^^^^ |
| 43 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/query.py", line 453, in create |
| 44 | | obj.save(force_insert=True, using=self.db) |
| 45 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/base.py", line 739, in save |
| 46 | | self.save_base(using=using, force_insert=force_insert, |
| 47 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/base.py", line 776, in save_base |
| 48 | | updated = self._save_table( |
| 49 | | ^^^^^^^^^^^^^^^^^ |
| 50 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/base.py", line 881, in _save_table |
| 51 | | results = self._do_insert(cls._base_manager, using, fields, returning_fields, raw) |
| 52 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 53 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/base.py", line 919, in _do_insert |
| 54 | | return manager._insert( |
| 55 | | ^^^^^^^^^^^^^^^^ |
| 56 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/manager.py", line 85, in manager_method |
| 57 | | return getattr(self.get_queryset(), name)(*args, **kwargs) |
| 58 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 59 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/query.py", line 1270, in _insert |
| 60 | | return query.get_compiler(using=using).execute_sql(returning_fields) |
| 61 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 62 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/models/sql/compiler.py", line 1416, in execute_sql |
| 63 | | cursor.execute(sql, params) |
| 64 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/backends/utils.py", line 66, in execute |
| 65 | | return self._execute_with_wrappers(sql, params, many=False, executor=self._execute) |
| 66 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 67 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers |
| 68 | | return executor(sql, params, many, context) |
| 69 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 70 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/backends/utils.py", line 79, in _execute |
| 71 | | with self.db.wrap_database_errors: |
| 72 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/utils.py", line 90, in __exit__ |
| 73 | | raise dj_exc_value.with_traceback(traceback) from exc_value |
| 74 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/backends/utils.py", line 84, in _execute |
| 75 | | return self.cursor.execute(sql, params) |
| 76 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 77 | | File "/Users/dsanders/projects/django-sample-3_2/.direnv/python-3.11.2/lib/python3.11/site-packages/django/db/backends/sqlite3/base.py", line 423, in execute |
| 78 | | return Database.Cursor.execute(self, query, params) |
| 79 | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |
| 80 | | django.db.utils.IntegrityError: UNIQUE constraint failed: test_model_update_or_create.id |
| 81 | | |
| 82 | | ---------------------------------------------------------------------- |
| 83 | | Ran 1 test in 1.192s |
| 84 | | |
| 85 | | FAILED (errors=1) |
| 86 | | }}} |