regarde le pid du worker dans la vue pg_stat_activity et envoie un signal de cancel. ca va stopper le vacuum proprement sans casser la base
SELECT pg_cancel_backend(pid) FROM pg_stat_activity WHERE query LIKE '%vacuum%';
si le cancel suffit pas après quelques minutes faut passer au terminate mais fais gaffe car le rollback des transactions peut prendre du temps sur des grosses tables
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE query LIKE '%vacuum%';
le cancel a suffit. la table est de nouveau accessible et j ai pu passer ma migration. ouf
Vous devez être connecté pour poster un message !
Recevoir les derniers articles gratuitement en créant un compte !
S'inscrire
nath06
Membre depuis le 24/03/2019actif
j ai une grosse table de logs qui est lock par un worker autovacuum depuis des heures. ca bloque mes migrations et mon cpu sature. comment je kill ca proprement sans corrompre les données