[Pgsql-ayuda] Error en Conexión

Alvaro Herrera alvherre@dcc.uchile.cl
Mon, 7 Jul 2003 10:16:54 -0400


On Mon, Jul 07, 2003 at 11:44:01AM +0200, K wrote:

> Una cosita. Si mi cliente se cae (pierde el socket o se desconecta o lo
> que sea.....¿ como puede el postmaster decirmelo ?. Quiero decir, sin
> tener que preguntar por "si la conexión está activa, etc..." ..¿cómo el
> sistema gestor me puede enviar un mensaje de error en tal conexión,
> etc??

No puede.

Haz una consulta trivial como "select 1", y si eso no retorna
correctamente entonces asume que la conexión se cayó y la levantas de
nuevo.  Claro que eso mata el rendimiento, asi que no creo que sea
aconsejable hacerlo demasiado a menudo...

En todo caso mi experiencia personal al respecto es que la conexion es
super estable si usas sockets de dominio Unix.  Aqui hay un daemon que
corre meses sin caerse, y levanta la conexion en la partida.  Si se
llega a quedar sin conexion se muere, porque ese caso no está
contemplado... _pero_ esto no ha pasado nunca en los tres años que lleva
funcionando (sigue corriendo en 7.1.3).

Ojo que es distinto si la conexion es por TCP.  Ahi pueden pasar muchas
cosas.

-- 
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
Thou shalt check the array bounds of all strings (indeed, all arrays), for
surely where thou typest "foo" someone someday shall type
"supercalifragilisticexpialidocious" (5th Commandment for C programmers)