Bug #66572
IntegrityError: ERREUR: la valeur d'une clé dupliquée rompt la contrainte unique « base_adresse_streetmodel_reso...
Début:
24 juin 2022
Echéance:
% réalisé:
0%
Temps estimé:
Patch proposed:
Oui
Planning:
Non
Description
https://sentry.entrouvert.org/entrouvert/publik/issues/61879/
StreetModel.DoesNotExist: StreetModel matching query does not exist. File "django/db/models/query.py", line 554, in update_or_create obj = self.select_for_update().get(**kwargs) File "django/db/models/query.py", line 406, in get raise self.model.DoesNotExist( UniqueViolation: ERREUR: la valeur d'une clé dupliquée rompt la contrainte unique « base_adresse_streetmodel_resource_id_ban_id_627e4172_uniq » DETAIL: La clé « (resource_id, ban_id)=(1, 69189_0290) » existe déjà. File "django/db/backends/utils.py", line 84, in _execute return self.cursor.execute(sql, params) IntegrityError: ERREUR: la valeur d'une clé dupliquée rompt la contrainte unique « base_adresse_streetmodel_resource_id_ban_id_627e4172_uniq » DETAIL: La clé « (resource_id, ban_id)=(1, 69189_0290) » existe déjà. (18 additional frame(s) were not displayed) ... File "django/db/backends/utils.py", line 67, in execute return self._execute_with_wrappers(sql, params, many=False, executor=self._execute) File "django/db/backends/utils.py", line 76, in _execute_with_wrappers return executor(sql, params, many, context) File "django/db/backends/utils.py", line 84, in _execute return self.cursor.execute(sql, params) File "django/db/utils.py", line 89, in __exit__ raise dj_exc_value.with_traceback(traceback) from exc_value File "django/db/backends/utils.py", line 84, in _execute return self.cursor.execute(sql, params) connector "base-adresse.base-adresse-nationale" error running daily job
Fichiers
Demandes liées
Révisions associées
ban import: remove unicity constraint on ban_id (#66572)
Historique
Mis à jour par Lauréline Guérin il y a presque 2 ans
- Projet changé de Suivi des traces à Passerelle
Mis à jour par Lauréline Guérin il y a presque 2 ans
- Lié à Bug #66342: base adresse, le cron qui met à jour les rues ne tourne plus ? ajouté
Mis à jour par Lauréline Guérin il y a presque 2 ans
J'aurais dû mieux regarder le code:
self.streetmodel_set.update_or_create( resource=self, citycode=citycode, name=street_info['name'][:150], defaults={ 'ban_id': ban_id, 'city': street_info['city'], 'zipcode': street_info['postcode'], 'type': street_info['type'], }, )
ban_id ne peut pas être unique (le temps de l'exécution de update_streets_data
), si street_info['name']
change, par exemple.
je propose de revert aussi l'ajout de la contrainte d'unicité
Mis à jour par Lauréline Guérin il y a presque 2 ans
- Fichier 0001-ban-import-remove-unicity-constraint-on-ban_id-66572.patch 0001-ban-import-remove-unicity-constraint-on-ban_id-66572.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Assigné à mis à Lauréline Guérin
- Patch proposed changé de Non à Oui
Mis à jour par Frédéric Péters il y a presque 2 ans
- Statut changé de Solution proposée à Solution validée
Mis à jour par Lauréline Guérin il y a presque 2 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit fff4455a2d54b17349a3837d68e55a6482a62c91 Author: Lauréline Guérin <zebuline@entrouvert.com> Date: Fri Jun 24 08:31:11 2022 +0200 ban import: remove unicity constraint on ban_id (#66572)
Mis à jour par Thomas Noël il y a presque 2 ans
- Assigné à changé de Lauréline Guérin à Thomas Noël
(hotfix en cours)
Mis à jour par Frédéric Péters il y a presque 2 ans
C'est a priori ok sur la prod,
2022-06-24 22:48:40 status half-configured passerelle:all 6.37.post1+g0a0634d4-1~eob100+1 2022-06-24 22:48:53 status installed passerelle:all 6.37.post1+g0a0634d4-1~eob100+1
Sur la recette flemme de traduire le connecteur BigBlueButton, je laisse à plus tard.
Mis à jour par Thomas Noël il y a presque 2 ans
Frédéric Péters a écrit :
Sur la recette flemme de traduire le connecteur BigBlueButton, je laisse à plus tard.
Et c'est la même flemme que j'ai eue, j'avoue.
Mis à jour par Transition automatique il y a presque 2 ans
- Statut changé de Résolu (à déployer) à Solution déployée
Mis à jour par Lauréline Guérin il y a plus d'un an
- Lié à Development #67375: BAN: reprendre l'optimisation de l'import, qu'on a dû revert ajouté
ban import: remove unicity constraint on ban_id (#66572)