Imposible realizar copia de seguridad con error en la tabla email_logs

Hola,

Tenemos una instancia de Discourse que no podemos respaldar (y actualizar) desde hace bastante tiempo.
Al ejecutar la copia de seguridad, obtenemos este error:

pg_dump: volcado de contenido de la tabla "public.email_change_requests"
pg_dump: procesamiento de datos para la tabla "public.email_logs"
pg_dump: volcado de contenido de la tabla "public.email_logs"
pg_dump: error: El volcado del contenido de la tabla "email_logs" falló: PQgetResult() falló.
pg_dump: error: Mensaje de error del servidor: ERROR:  no se pudo acceder al estado de la transacción 4156776275
DETAIL:  No se pudo abrir el archivo "pg_xact/0F7C": No existe tal archivo o directorio.
pg_dump: error: El comando fue: COPY public.email_logs (id, to_address, email_type, user_id, created_at, updated_at, post_id, bounce_key, bounced, message_id, smtp_group_id, cc_addresses, cc_user_ids, raw, topic_id) TO stdout;
EXCEPTION: pg_dump falló

Después de leer muchas publicaciones aquí e intentar muchas cosas, finalmente termino intentando consultar esa tabla y obtengo este error:

discourse=# select * from email_logs;
ERROR:  no se pudo acceder al estado de la transacción 4156776275
DETAIL:  No se pudo abrir el archivo "pg_xact/0F7C": No existe tal archivo o directorio.
discourse=#

Este problema ha estado ocurriendo durante mucho tiempo, por lo que restaurar desde la última copia de seguridad no es realmente una opción. Aparte de este ‘problema de copia de seguridad’, Discourse funciona bien.

Email_logs parece ser solo una tabla de registro y no tengo problemas en perder registros eventuales de correos electrónicos si eso significa que las copias de seguridad vuelven a funcionar. ¿Puedo simplemente TRUNCAR la tabla email_logs o los datos faltantes generarán más errores?

Gracias por tu ayuda.

1 me gusta