¿Cómo soluciono los errores de «no se pudieron enviar datos al cliente» o «no se pudieron recibir datos del cliente» al conectarme a mi instancia de base de datos de Amazon RDS for PostgreSQL o Aurora compatible con PostgreSQL?

2 minutos de lectura
0

He intentado consultar mi instancia de base de datos PostgreSQL de Amazon Relational Database Service (Amazon RDS) o de la Edición compatible con PostgreSQL de Amazon Aurora. Pero al hacerlo, he recibido uno de los siguientes errores: «No se han podido enviar datos al cliente» o «no se han podido recibir datos del cliente»

Resolución

Un proceso de backend en una instancia de base de datos de Amazon RDS debe poder enviar o recibir datos de un cliente. Si el proceso de backend no puede enviar ni recibir datos, el proceso de backend registra uno de los errores en el registro de PostgreSQL. Para solucionar este problema, siga estos pasos.

Compruebe la vitalidad del cliente

Compruebe primero la vitalidad del proceso del cliente. Si el proceso del cliente se bloquea debido a una falta de memoria (OOM), por ejemplo, es posible que la sesión se haya terminado incorrectamente. Esta terminación puede provocar cualquiera de estos errores.

Reduzca los parámetros tcp_keepalives_idle y tcp_keepalives_interval

Si el tiempo de proceso de una consulta es demasiado largo, es posible que la sesión se haya terminado incorrectamente en el cliente. Para resolver este problema, aumente la configuración del tiempo de espera del cliente. También puede acortar los parámetros tcp_keepalives_idle y tcp_keepalives_interval para comprobar la vitalidad del cliente desde el proceso de backend. Para obtener más información, consulte Trabajo con los grupos de parámetros.

Para comprobar los valores predeterminados de tcp_keepalives_idle y tcp_keepalives_interval, ejecute el siguiente comando con un cliente de PostgreSQL como psql:

SELECT name, setting FROM pg_settings WHERE name LIKE 'tcp_keepalives_%'

Compruebe la conectividad

Si el error se produce independientemente de la reducción del tiempo de procesamiento de las consultas, compruebe la conectividad entre el cliente y la instancia de base de datos.

Compruebe si el error se produce después de la conmutación por error desde la sesión rdsadmin

Si el error se produce tras una conmutación por error desde una sesión de rdsadmin, puede ignorarlo.

Información relacionada

Códigos de error de PostgreSQL (en el sitio web de PostgreSQL)

Conexiones y autenticación (en el sitio web de PostgreSQL)

Configuración de los parámetros de TCP keepalives

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año