Le contexte
Sql
CREATE INDEX CONCURRENTLY idx_consentement_xxx ON consentement (colonne);
Ce qui s'est mal passé
Diagnostic
Sql
SELECT pg_size_pretty(pg_database_size('nom_db'));
Sql
SELECT * FROM pg_stat_progress_create_index;
La leçon principale
Comment l'éviter la prochaine fois
- Vérifier l'espace disque disponible avant toute opération de ce type sur une grosse table, avec une marge confortable
- Surveiller pg_stat_progress_create_index pendant l'exécution plutôt que de lancer la commande et attendre passivement
- Planifier sur une fenêtre de faible charge, même avec CONCURRENTLY, pour limiter les effets de bord
- Avoir une alerte de supervision sur l'espace disque restant, pas seulement sur la charge CPU/mémoire