Gracias a todos por la gran ayuda. Jaime, me quedo con la duda donde dices que VACUUM, ANALYZE, CREATE INDEX CONCURRENTLY; solo uno puede estar corriendo en un momento dado, segun lo que entiendo mientras hago VACUUM, no podria estar ejecutando ANALYZE ? o viseversa ? Gralmente suelo ejecutar VACUUM VERBOSE ANALYZE desde consola, eso me podria ocacionar problemas entonces.
Saludos a todos. <- El bloqueo apropiado si evita que VACUUM se ejecute El VACUUM toma un bloqueo de tipo SHARE UPDATE EXCLUSIVE y como indica la documentación ( http://www.postgresql.org/docs/8.4/static/explicit-locking.html#LOCKING-TABLES ) ese bloqueo tiene conflicto con otros SHARE UPDATE EXCLUSIVE (es decir, de estos tres: VACUUM, ANALYZE, CREATE INDEX CONCURRENTLY; solo uno puede estar corriendo en un momento dado). Tambien tiene conflicto con SHARE (CREATE INDEX) y con ACCESS EXCLUSIVE (ALTER TABLE, DROP TABLE, TRUNCATE, REINDEX, CLUSTER, and VACUUM FULL) El 17 de septiembre de 2013 15:30, Alvaro Herrera <alvhe...@2ndquadrant.com>escribió: > Jaime Casanova escribió: > > 2013/9/17 Eduardo Morras <emorr...@yahoo.es>: > > > > > > Puede ser que una conexion de un cliente se quedara abierta y con un > lock en dicha tabla, impidiendo que vacuum hiciese su trabajo. Lo que no se > es si cuando vacuum encuentra un lock en una tabla se para o si sigue con > la siguiente tabla sin lock. > > > > Depende de lo que la conexión abierta hubiera estado haciendo. Si dejo > > abierta una transacción y estuvo leyendo (SELECT) o escribiendo > > (INSERT/UPDATE/DELETE) en esa taba, VACUUM no podría procesar ciertas > > tuplas en la tabla (pero si procesaría la tabla) y no causaría este > > efecto. > > También podría ser una transacción preparada. Mira > select * from pg_prepared_xacts; > > Si retorna más de cero filas, seguramente necesitarás abortarlas o > comprometerlas. > > -- > Álvaro Herrera http://www.2ndQuadrant.com/ > PostgreSQL Development, 24x7 Support, Training & Services > > - > Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org > ) > Para cambiar tu suscripción: > http://www.postgresql.org/mailpref/pgsql-es-ayuda >