Projet

Général

Profil

Actions

Anomalie #16856

fermé

[Statistiques] Erreur SQL

Ajouté par Cyril VAZQUEZ il y a plus de 3 ans. Mis à jour il y a plus de 3 ans.

Statut:
R&D - Terminé
Priorité:
2-Sérieux
Assigné à:
-
Version cible:
Début:
14/04/2021
Echéance:
Tags RM:
2.7.3

Description

A l'arrivée sur la page des statistiques, le spinner reste actif et rien ne s'affiche.

Dans les en-têtes renvoyées par le serveur, on trouve l'erreur suivante:

X-Laabs-Exception
	PDOException; SQLSTATE[22P02]: Invalid text representation: 7 ERREUR: syntaxe en entrée invalide pour l'entier : « » in /var/www/maarchRM2.7.2/src/bundle/Statistics/Controller/Statistics.php:853

Mis à jour par Cyril VAZQUEZ il y a plus de 3 ans

il y a un événement de dépôt dont la colonne 8 des données complémentaires, censée contenir la taille de l'objet et pouvoir être castée en INT, est en fait un texte

C'est une valeur vide parce que le c'est un dépôt d'archive dossier (sans pièce)

Evénement de dépôt avec une resource:

[
  "maarchRM_5o29z5c7f-0000-1y1v2i",
  "SHA256",
  "1903047eb078ed77ffa4542f705910e544545a70428fb2c90d0ed0cb43c46f1e",
  "\\\\\\\\maarchRM\\ACME\\DIP\\DOSIP\\2020\\09\\03\\maarchRM_5o29mswmf-0000-qhozdw\\maarchRM_5o29z0uof-0000-jgdbso\\maarchRM_5o29z5bss-0000-k5sbcv\\maarchRM_5o29z5c7f-0000-1y1v2i",
  "DIP",
  "",
  "GIC",
  "",
  263045
]

Evénement dépôt sans ressource :

[
  "",
  "",
  "",
  "\\\\maarchRM\\ACME\\DIP\\DOSIP\\2020\\09\\03\\maarchRM_5o29mswmf-0000-qhozdw\\maarchRM_5o29z0uof-0000-jgdbso",
  "DIP",
  "",
  "GIC",
  "",
  ""
]

Il faut donc ajouter une clause dans le SQL pour ne prendre en compte que les valeurs numériques à chaque fois qu'on fait la somme de la taille:

Modification du contrôleur Statistics dans fonction 'getSizeForDirectEvent'

Requête qui plantait :

SELECT SUM(CAST("event"."eventInfo"::json->>8 AS INTEGER))
        FROM "lifeCycle"."event" "event"
        WHERE "event"."eventType" IN ('recordsManagement/deposit')

Requête corrigée:

SELECT SUM(CAST(COALESCE(NULLIF("event"."eventInfo"::json->>8, ''), '0') AS INTEGER))
        FROM "lifeCycle"."event" "event"
        WHERE "event"."eventType" IN ('recordsManagement/deposit')

Mis à jour par Cyril VAZQUEZ il y a plus de 3 ans

  • Statut changé de En cours à R&D - En test

il y a un événement de dépôt dont la colonne 8 des données complémentaires, censée contenir la taille de l'objet et pouvoir être castée en INT, est en fait un texte

C'est une valeur vide parce que le c'est un dépôt d'archive dossier (sans pièce)

Evénement de dépôt avec une resource:

[
  "maarchRM_5o29z5c7f-0000-1y1v2i",
  "SHA256",
  "1903047eb078ed77ffa4542f705910e544545a70428fb2c90d0ed0cb43c46f1e",
  "\\\\\\\\maarchRM\\ACME\\DIP\\DOSIP\\2020\\09\\03\\maarchRM_5o29mswmf-0000-qhozdw\\maarchRM_5o29z0uof-0000-jgdbso\\maarchRM_5o29z5bss-0000-k5sbcv\\maarchRM_5o29z5c7f-0000-1y1v2i",
  "DIP",
  "",
  "GIC",
  "",
  263045
]

Evénement dépôt sans ressource :

[
  "",
  "",
  "",
  "\\\\maarchRM\\ACME\\DIP\\DOSIP\\2020\\09\\03\\maarchRM_5o29mswmf-0000-qhozdw\\maarchRM_5o29z0uof-0000-jgdbso",
  "DIP",
  "",
  "GIC",
  "",
  ""
]

Il faut donc ajouter une clause dans le SQL pour ne prendre en compte que les valeurs numériques à chaque fois qu'on fait la somme de la taille:

Modification du contrôleur Statistics dans fonction 'getSizeForDirectEvent'

Requête qui plantait :

~~sql
SELECT SUM(CAST("event"."eventInfo"::json->>8 AS INTEGER))
FROM "lifeCycle"."event" "event"
WHERE "event"."eventType" IN ('recordsManagement/deposit')


Requête corrigée:

~~sql
SELECT SUM(CAST(COALESCE(NULLIF("event"."eventInfo"::json->>8, ''), '0') AS INTEGER))
        FROM "lifeCycle"."event" "event"
        WHERE "event"."eventType" IN ('recordsManagement/deposit')

Mis à jour par Cyril VAZQUEZ il y a plus de 3 ans

  • Version cible changé de 2.7 à 2.7.3

Mis à jour par Arnaud PAUGET il y a plus de 3 ans

  • Statut changé de R&D - En test à Livré

Mis à jour par Emmanuel DILLARD il y a plus de 3 ans

  • Projet changé de 252 à Backlog RM
  • Version cible changé de 2.7.3 à 2.7
  • Fonction Interrogation supprimé
  • Tags RM 2.7.3 ajouté

Mis à jour par Emmanuel DILLARD il y a plus de 3 ans

  • Statut changé de Livré à R&D - Terminé
Actions

Formats disponibles : Atom PDF