Anomalie #10764
fermé[analyse Script] Erreur lors du passage du 1904.sql
Description
Retour SGAMI :
En ligne 258 de votre script de montée de version 1904.sql, vous engagez un remplissage automatique du champ "added_by_entity"
UPDATE listinstance SET added_by_entity =
(SELECT entity_id FROM users_entities WHERE users_entities.user_id = listinstance.added_by_user AND primary_entity = 'Y')
WHERE added_by_entity IS NULL OR added_by_entity = '';
Nous rencontrons un rejet via l'erreur :
ERREUR: une valeur NULL viole la contrainte NOT NULL de la colonne « added_by_entity »
DÉTAIL : La ligne en échec contient (letterbox_coll, 9998, DOC, 0, FALEZINE, user_id, dest, EGILLET, null, 3, 51445, Y, entity_id, null, null, f, f)
Le script va charger une entité lorsque la condition : (SELECT entity_id FROM users_entities WHERE users_entities.user_id = listinstance.added_by_user AND primary_entity = 'Y') est rempli.
Or dans le cas d'usage, l'utilisateur listinstance.added_by_user peut ne plus exister dans la table users_entities de part sa suppression.
Donc la requête renvoie null ce qui n'est pas autorisé dans la table listinstance
En effet, un utilisateur peut avoir été supprimé : il est en position DEL dans la table users. Il est donc plus affecté et par conséquent supprimer de la table users_entities.
Mis à jour par Emmanuel DILLARD il y a plus de 5 ans
- Sujet changé de Erreur lors du passage du 1904.sql à [analyse Script] Erreur lors du passage du 1904.sql
- Statut changé de A traiter à R&D - A planifier
Mis à jour par Emmanuel DILLARD il y a plus de 5 ans
- Projet changé de 298 à 299
- Statut changé de R&D - A planifier à R&D - En cours
Mis à jour par Emmanuel DILLARD il y a plus de 5 ans
- Projet changé de 299 à 298
- Statut changé de R&D - En cours à R&D - Terminé
Mis à jour par Emmanuel DILLARD il y a plus de 3 ans
- Projet changé de 298 à Backlog Courrier
- Version cible changé de 19.04 (Fin de vie) à 19.04 (Sécurité)