Anomalie #18841
Erreur d’enregistrement des JSON vides
Description
Lors de la création / mise-à-jour d’une entité notamment, les champs de type jsonb
en SQL sont initialisés à []
au lieu de {}
.
Impact : le champ external_id
prend la mauvaise valeur []
et non {}
lorsqu’il devient vide. En outre, ceci bloque par la suite l’insertion des external_id
tels que l’UID Multigest ou l’identifiant dans le parapheur externe.
Correction proposée : ajouter aux appels de json_encode()
le flag JSON_FORCE_OBJECT
(back, PHP). Voir https://www.php.net/manual/fr/json.constants.php
History
#1 Updated by Quentin RIBAC about 2 years ago
- Target version set to 21.03
#2 Updated by Emmanuel DILLARD about 2 years ago
- Due date set to 11/29/2021
- Status changed from A traiter to R&D - A étudier
#3 Updated by Emmanuel DILLARD about 2 years ago
- Due date changed from 11/29/2021 to 12/22/2021
- Status changed from R&D - A étudier to R&D - A planifier
- Priority changed from 2-Sérieux to 1-Majeur
#4 Updated by Quentin RIBAC about 2 years ago
Après test, on remarquera que l’action de JSON_FORCE_OBJECT est récursive : si un objet contient un tableau, ce tableau sera en fait stocké sous format objet.
Si cela présente un risque, utiliser plutôt quelque chose comme coalesce(data, '{}'::jsonb)
en SQL.
#5 Updated by Hamza HRAMCHI almost 2 years ago
- Assignee set to Mathieu PIONNIER
#6 Updated by Emmanuel DILLARD almost 2 years ago
- Status changed from R&D - A planifier to R&D - En cours
#7 Updated by GIT LAB almost 2 years ago
Commit ajouté sur la branche fix/18841/develop de MaarchCourrier par Mathieu mathieu.pionnier@maarch.org
FIX #18841 TIME 0:15 Empty JSON registration error
https://labs.maarch.org/maarch/MaarchCourrier/commit/5ab020e20d3451f914675a1fc33649541f46e585
#8 Updated by GIT LAB almost 2 years ago
[MERGE REQUEST] Mergé sur 21.03 (https://labs.maarch.org/maarch/MaarchCourrier/-/merge_requests/547)
#9 Updated by Quentin RIBAC almost 2 years ago
- Status changed from R&D - En cours to R&D - En test
#10 Updated by GIT LAB almost 2 years ago
[MERGE REQUEST] Mergé sur develop (https://labs.maarch.org/maarch/MaarchCourrier/-/merge_requests/546)
#12 Updated by Hamza HRAMCHI almost 2 years ago
- Status changed from R&D - En test to R&D - Terminé