El 11/08/2024 a las 11:52, kernel escribió:
Hola,
Tengo 1 servidor principal y otros 2 de replica, en ellos estoy
haciendo streamin de la principal. los 3 con postgresql-16 y rocky 9.4
Esta es la primera instalación que tengo con postgresql-16, hasta
ahora estaba utilizado postgresql-11, veo en los log mensajes de
restartpoint que hasta ahora nunca había visto, se repiten cada hora,
entiendo que esto es algo normal, supongo que están relacionados con
el comando archive_timeout = 3600 del servidor principal , por favor
corregir me si no es así.
El problema que tengo , es que cuando voy a sacar un backup de alguno
de los servidores de replica me da un error y no termina correctamente
, en el principal saca el pg_dump sin problemas
Utilizo este comando : /usr/bin/pg_dumpall -U postgres
--lock-wait-timeout=300 | gzip -9 > /copias/datos.sql.gz
2024-08-11 10:05:33.557 CEST [249359] LOG: restartpoint de
recuperación en D/8C000028
2024-08-11 10:05:33.557 CEST [249359] DETALLE: Última transacción
completada al tiempo de registro 2024-08-11 10:00:51.940518+02.
2024-08-11 11:01:20.467 CEST [1155838] ERROR: cancelando la sentencia
debido a un conflicto con la recuperación
2024-08-11 11:01:20.467 CEST [1155838] DETALLE: El usuario mantuvo
una relación bloqueada por demasiado tiempo.
2024-08-11 11:01:20.467 CEST [1155838] SENTENCIA: COPY
public.g399docu (id, id_empresa, empresa, tipo, serie, clave, fecha,
origen, orden, fichero, notas_1, notas_2, tipo_doc, clase, bdata,
fecha_hora, borrado, usuario) TO stdout;
2024-08-11 11:01:21.257 CEST [1155834] LOG: no se pudo recibir datos
del cliente: Conexión reinicializada por la máquina remota
2024-08-11 11:05:26.764 CEST [249359] LOG: empezando restartpoint: time
2024-08-11 11:06:10.766 CEST [249359] LOG: restartpoint complete:
wrote 441 buffers (2.7%); 0 WAL file(s) added, 1 removed, 0 recycled;
write=43.997 s, sync=0.001 s, total=44.002 s; sync files=46,
longest=0.001 s, average=0.001 s; distance=16384 kB, estimate=87187
kB; lsn=D/8D24FDE8, redo lsn=D/8D000028
Gracias
Un Saludo
Esta es el mensaje de salida
[root@Backup-euroq:0 scripts]# /paquetes/scripts/gs_copia /copias/pgsql
pg_dump: error: Falló la extracción del contenido de la tabla
«g399docu»: PQgetResult() falló.
pg_dump: detalle: Mensaje de error del servidor: ERROR: cancelando la
sentencia debido a un conflicto con la recuperación
DETALLE: La consulta del usuario pudo haber necesitado examinar
versiones de tuplas que debían eliminarse.
pg_dump: detalle: ▒?X
pg_dumpall: error: pg_dump falló en la base de datos «euroq», saliendo
Gracias