Project

General

Profile

Development #32337

suppression de schéma épuise la mémoire partagée

Added by Christophe Siraut 4 days ago. Updated 4 days ago.

Status:
Résolu (à déployer)
Priority:
Normal
Start date:
15 Apr 2019
Due date:
% Done:

0%

Patch proposed:
No
Planning:
No

Description

Sur les gros tenants la commande de suppression de schéma échoue avec "OperationalError: ERREUR: mémoire partagée épuisée / out of shared memory". À moins d'augmenter de façon démesurée le paramètre max_locks_per_transaction, une solution est de supprimer les tables dans des transactions séparées. Cela ne peut se faire dans une procédure plpgsql. Le patch suivant récupère la liste des tables avant de les supprimer. Je l'ai testé avec les données d'un w.c.s. de 500Mo qui échouait.

0001-drop-tables-sequencially-to-avoid-max_locks_per_tran.patch View (1.48 KB) Christophe Siraut, 15 Apr 2019 04:39 PM


Related issues

Related to BiJoe - Bug #20190: prod BiJoe: erreurs de Postgres En cours 21 Nov 2017

History

#1 Updated by Christophe Siraut 4 days ago

  • Related to Bug #20190: prod BiJoe: erreurs de Postgres added

#3 Updated by Benjamin Dauvergne 4 days ago

  • Status changed from Solution proposée to Solution validée

Ack, mais je pensais qu'on l'avait déjà fait...

#4 Updated by Christophe Siraut 4 days ago

  • Status changed from Solution validée to Solution déployée
commit 0ef61ec6944c100b075a43ec42250145bcd6897e (HEAD -> master, origin/master, origin/HEAD)
Author: Christophe Siraut <csiraut@entrouvert.com>
Date:   Mon Apr 15 16:30:45 2019 +0200

    drop tables sequencially to avoid max_locks_per_transaction (#20190)

#5 Updated by Christophe Siraut 4 days ago

  • Status changed from Solution déployée to Résolu (à déployer)

Also available in: Atom PDF