Projet

Général

Profil

Anomalie #10524

Requête extrêmement longue sur le serveur lors d'une mise à jour

Ajouté par Henri QUENEAU il y a presque 5 ans. Mis à jour il y a presque 3 ans.

Statut:
R&D - Terminé
Priorité:
2-Sérieux
Assigné à:
Version cible:
Début:
07/05/2019
Echéance:
Version applicable MC:
Tags Courrier:
19.04.2

Description

En tant qu'administrateur technique, lorsque je fais une mise à jour, il y a la requête ci-dessous qui est extrêmement longue car j'ai énormément de courrier en base.

DO $$ BEGIN
  IF (SELECT count(attname) FROM pg_attribute WHERE attrelid = (SELECT oid FROM pg_class WHERE relname = 'mlb_coll_ext') AND attname = 'recommendation_limit_date') = 1 THEN
    ALTER TABLE res_letterbox ADD COLUMN opinion_limit_date TIMESTAMP without TIME ZONE DEFAULT NULL;
    UPDATE res_letterbox SET opinion_limit_date =
    (
      SELECT recommendation_limit_date FROM mlb_coll_ext
      WHERE res_letterbox.res_id = mlb_coll_ext.res_id
    );
    ALTER TABLE mlb_coll_ext DROP COLUMN IF EXISTS recommendation_limit_date;
  END IF;
END$$;

Il faut ajouter une condition pour que ça marche mieux

DO $$ BEGIN
  IF (SELECT count(attname) FROM pg_attribute WHERE attrelid = (SELECT oid FROM pg_class WHERE relname = 'mlb_coll_ext') AND attname = 'recommendation_limit_date') = 1 THEN
    ALTER TABLE res_letterbox ADD COLUMN opinion_limit_date TIMESTAMP without TIME ZONE DEFAULT NULL;

UPDATE res_letterbox SET opinion_limit_date = mlb_coll_ext.recommendation_limit_date 
FROM mlb_coll_ext
WHERE res_letterbox.res_id = mlb_coll_ext.res_id
AND recommendation_limit_date IS NOT NULL;

    ALTER TABLE mlb_coll_ext DROP COLUMN IF EXISTS recommendation_limit_date;
  END IF;
END$$;

Historique

#1 Mis à jour par Henri QUENEAU il y a presque 5 ans

  • Assigné à Henri QUENEAU supprimé

#2 Mis à jour par Emmanuel DILLARD il y a presque 5 ans

  • Statut changé de A traiter à R&D - A étudier
  • Tags Courrier 19.04.2 ajouté

#3 Mis à jour par Florian AZIZIAN il y a presque 5 ans

  • Tracker changé de Fonctionnalité à Anomalie
  • Projet changé de Backlog à CURRENT SPRINT
  • Sujet changé de requête extrêmement longue sur le serveur lors d'une mise à jour à Requête extrêmement longue sur le serveur lors d'une mise à jour
  • Statut changé de R&D - A étudier à R&D - En cours
  • Assigné à mis à EDI PO
  • Version cible changé de 19.04 (Fin de vie) à 20.03 (Fin de vie)

#4 Mis à jour par Emmanuel DILLARD il y a presque 5 ans

  • Projet changé de CURRENT SPRINT à Backlog
  • Statut changé de R&D - En cours à R&D - Terminé

#8 Mis à jour par Emmanuel DILLARD il y a presque 3 ans

  • Projet changé de Backlog à Backlog Courrier
  • Version cible changé de 20.03 (Fin de vie) à 20.03 (Sécurité)

Formats disponibles : Atom PDF