oncall-engine/engine
Matias Bordese 1a8e4fef40
Update OrderedModel.swap to retry on IntegrityError (#3940)
Related to https://github.com/grafana/oncall-private/issues/2386.

Issue seems related to [multiple concurrent Terraform-triggered
updates](https://ops.grafana-ops.net/explore?schemaVersion=1&panes=%7B%22j0s%22:%7B%22datasource%22:%22000000193%22,%22queries%22:%5B%7B%22refId%22:%22B%22,%22expr%22:%22%7Bcluster%3D%5C%22prod-eu-west-0%5C%22,%20namespace%3D%5C%22amixr-prod%5C%22%7D%20%7C%3D%20%5C%22logger%3Dinsight_logger%20tenant_id%3D735393%5C%22%20%7C%3D%20%5C%22resource_type%3Droute%5C%22%22,%22queryType%22:%22range%22,%22datasource%22:%7B%22type%22:%22loki%22,%22uid%22:%22000000193%22%7D,%22editorMode%22:%22code%22%7D%5D,%22range%22:%7B%22from%22:%221707813893526%22,%22to%22:%221707815856774%22%7D%7D%7D&orgId=1
) changing the route order to zero (and eventually succeeding)

Sample test run with the failing error:
```
========================================== short test summary info ===========================================
FAILED common/tests/test_ordered_model.py::test_ordered_model_swap_all_to_zero - assert not [DoesNotExist(), IntegrityError(1062, "Duplicate entry 'test-0' for key 'base_testorderedmodel...
======================================= 1 failed, 5 warnings in 34.39s =======================================
make: *** [Makefile:283: run-backend-test] Error 1
```
2024-02-22 20:51:05 +00:00
..
apps Remove explicit request size limits (#3878) 2024-02-22 15:00:33 +00:00
common Update OrderedModel.swap to retry on IntegrityError (#3940) 2024-02-22 20:51:05 +00:00
config_integrations Improve template to handle empty group labels (#2794) 2023-08-17 07:52:05 +00:00
engine Remove explicit request size limits (#3878) 2024-02-22 15:00:33 +00:00
settings Remove explicit request size limits (#3878) 2024-02-22 15:00:33 +00:00
static/images remove django admin panel (#2731) 2023-08-02 14:26:50 -04:00
type_stubs/icalendar continue addressing mypy violations (#2170) 2023-06-27 10:23:08 +00:00
.dockerignore One startup command to rule them all (#760) 2022-11-07 16:34:43 +01:00
.gitignore modify push notification settings + use fcm-django library (#998) 2022-12-20 12:41:34 +01:00
celery_with_exporter.sh Add flag to debug logs (#912) 2022-11-29 11:16:42 +08:00
conftest.py address occasional failing tests when run w/ pytest-xdist (#3840) 2024-02-06 11:57:54 -05:00
Dockerfile Revert "upgrade to Python 3.12 (#3456)" and "bump uwsgi version to latest #3466" (#3483) 2023-12-01 09:56:26 -05:00
manage.py World, meet OnCall! 2022-06-03 08:09:47 -06:00
pyproject.toml patch occasional UnicodeEncodeError that occurs with outgoing webhooks (#3832) 2024-02-02 21:08:04 +00:00
requirements-dev.in Use pip-tools to handle Python deps (#3892) 2024-02-20 17:44:15 +00:00
requirements-dev.txt Use pip-tools to handle Python deps (#3892) 2024-02-20 17:44:15 +00:00
requirements.in Use pip-tools to handle Python deps (#3892) 2024-02-20 17:44:15 +00:00
requirements.txt Use pip-tools to handle Python deps (#3892) 2024-02-20 17:44:15 +00:00
tox.ini address occasional failing tests when run w/ pytest-xdist (#3840) 2024-02-06 11:57:54 -05:00
uwsgi.ini Remove explicit request size limits (#3878) 2024-02-22 15:00:33 +00:00
wait_for_test_mysql_start.sh Revert "Revert "speed up ci builds from 15 to <7 minutes"" (#1643) 2023-03-28 09:34:03 +02:00