- Software y sistemas
- Base de datos
57P01
PostgreSQL 57P01 en base de datos: sesión terminada por acción administrativa
Evidencia vinculada a esta decisión
Ver fuente: PostgreSQL 18 Appendix A: Error CodesNivel de riesgo
Atención alta
Comprobaciones mínimas; se recomienda asistencia profesional.
Urgencia
Alta — no esperes
Respuesta rápida
El servidor terminó tu sesión por una orden de parada o de terminación de sesiones. Comprueba con el administrador si hubo parada, reinicio o terminación manual a esa hora y reconecta cuando pg_isready indique que acepta conexiones.
Seguridad primero
Antes de continuar
- Detente antes de repetir escrituras inciertas: la sesión se cortó y su transacción abierta se revirtió, pero un COMMIT enviado justo antes puede haberse aplicado.
Puedes hacerlo con seguridad
- Alcance: una sesión o todas
- Registro de mantenimiento y operaciones
- Transacciones interrumpidas
Deja estas tareas a un profesional cualificado
- No intentes esta tarea profesional: Planificar paradas con aviso a las aplicaciones
- No intentes esta tarea profesional: Revisar quién terminó la sesión
Lo que un técnico debe poder justificar
Viene un técnico a casa
Estos son los pasos que tiene que hacer y enseñarte. Márcalos mientras trabaja: si se salta pasos, no aceptes el cambio de pieza.
No son instrucciones para que abras o manipules el equipo. Son las comprobaciones que deben sostener una conclusión técnica.
Planificar paradas con aviso a las aplicaciones
Qué haceEl DBA usa la parada inteligente cuando sea posible, que deja terminar las sesiones, y avisa a los equipos.
Te tiene que enseñarel modo de parada usado.
Por escritohora, motivo y modo.
Revisar quién terminó la sesión
Qué haceEl DBA revisa qué rol ejecutó pg_terminate_backend y con qué permiso.
Te tiene que enseñarel registro de la acción.
Por escritoel motivo.
Antes de aceptar una pieza o reparación
Aún no ha demostrado nada. No aceptes un cambio de pieza solo por el código.
Sigue estos pasos
Aviso: Sigue el orden documentado. Un código identifica el sistema afectado, pero por sí solo no demuestra qué pieza está averiada.
Alcance: una sesión o todas
- Quién:
- el desarrollador o el DBA.
- Cómo:
- comprueba si a la misma hora fallaron todas las conexiones o solo algunas, y lanza pg_isready contra el servidor.
- Resultado que importa:
- cuántas sesiones se cortaron y el código de salida de pg_isready.
- Si fallaron todas y pg_isready devuelve 1 o 2:
- apunta a una parada del servidor; espera a que vuelva a 0.
- Si solo falló una sesión y el servidor acepta conexiones:
- indica una terminación individual.
- Evidencia a conservar:
- lista de sesiones afectadas, hora y salida de pg_isready.
No reinicies el servidor tú para probar: es una decisión del administrador.
Evidencia: PostgreSQL server shutdown · PostgreSQL 18 pg_isready
Registro de mantenimiento y operaciones
- Quién:
- el DBA o administrador.
- Cómo:
- compara la hora con el registro del servidor y el calendario de paradas, reinicios y despliegues.
- Resultado que importa:
- si hubo una orden de parada o terminación programada o manual.
- Si estaba planificada:
- confirma que el código responde a esa acción; no hay avería que buscar.
- Si nadie la ordenó:
- trátalo como incidente y conserva el registro.
- Evidencia a conservar:
- entradas del registro y quién ejecutó la acción.
Solo personal con acceso al servidor. No uses SIGKILL para parar el servidor: la documentación lo desaconseja.
Evidencia: PostgreSQL server shutdown · PostgreSQL 18 system administration functions
Transacciones interrumpidas
- Quién:
- tú, como desarrollador.
- Cómo:
- localiza las transacciones en curso al cortarse la sesión y comprueba en la base si sus cambios están.
- Resultado que importa:
- qué operaciones se revirtieron.
- Si los cambios no están:
- confirma la reversión; repite la transacción completa tras reconectar.
- Si no sabes si se confirmó:
- no repitas sin una clave que evite duplicar.
- Evidencia a conservar:
- lista de operaciones y resultado.
Evidencia: PostgreSQL 18 Appendix A: Error Codes · PostgreSQL server shutdown
Situación no resuelta
Si el error persiste, no sigas probando por tu cuenta. Mira qué tiene que hacer y enseñarte el técnico.
Técnico virtual
¿Sigue apareciendo 57P01 tras comprobarlo?
Este recorrido usa el código exacto y tus respuestas para elegir una prueba, su resultado esperado y la siguiente bifurcación.
Dónde se aplica este código
Un código solo tiene significado dentro del producto y la versión correctos.
Ámbito principal
- Sistema
- Software y sistemas
- Marca
- PostgreSQL
- Tipo de producto
- Base de datos
Variantes conocidas del código
- admin_shutdown
- PostgreSQL 57P01
- SQLSTATE 57P01
Qué significa
El apéndice A asigna 57P01 a admin_shutdown, en la clase 57 (intervención del operador). La documentación describe cómo se terminan sesiones desde fuera: la parada rápida no admite conexiones nuevas y envía SIGTERM a los procesos, que abortan su transacción; pg_terminate_backend termina una sola sesión. Al cerrar, el servidor revierte la transacción abierta. El código indica una acción administrativa, no un fallo de hardware ni de la consulta.
Advertencias y condiciones de parada
- Atención altaadvertencia editorial
Detente antes de repetir escrituras inciertas: la sesión se cortó y su transacción abierta se revirtió, pero un COMMIT enviado justo antes puede haberse aplicado.
Evidencia: PostgreSQL server shutdown
Síntomas y causas
Causas probables · en orden
- Parada o reinicio del servidorFrecuente
El administrador detuvo el servidor en modo rápido o un sistema gestionado lo reinició. Afecta a todas las sesiones a la vez.
Evidencia: PostgreSQL server shutdown
- Terminación de una sesión concretaPosible
Alguien con permiso usó pg_terminate_backend sobre esa sesión. Solo afecta a una o pocas sesiones y el resto sigue funcionando.
Evidencia: PostgreSQL 18 system administration functions
Fuentes y referencias técnicas
- 1
PostgreSQL 18 Appendix A: Error Codes
PostgreSQL Global Development Group · 2026 · official_doc
- 2
PostgreSQL Global Development Group · 2026 · official_doc
¿Te ha resultado útil esta ficha?