Search Postgresql Archives

Re: libpq - prevent automatic reconnect

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



icholy <ilia.choly@xxxxxxxxx> writes:
> libpq will automatically reconnect if the connection is dropped.

No it won't.  You'd have to do a PQreset() to make that happen.

>   auto con = PQconnectdb("info");    while (true) {    PQclear(PQexec(con,
> "SELECT * FROM foo LIMIT 1"));   
> std::this_thread::sleep_for(std::chrono::seconds(1));    std::cout << "here
> " << i++ << std::endl;  }

This test case doesn't prove much of anything, since it's not examining
the PGresult to see if it was OK or an error.

> $ sudo ifconfig eth0 down
> output stops

I suspect this action isn't dropping the TCP connection.  It's only
equivalent to a momentary glitch in your network connectivity --- and
you'd be very unhappy if that caused TCP connections to go down, because
networks have glitches all the time.  Generally, the operating system
tries hard to prevent applications from even knowing that a glitch
happened.  (Connections will time out eventually if connectivity doesn't
come back, but typically such timeouts are many minutes.  Possibly
whatever your real complaint is could be addressed by twiddling the TCP
timeout parameters for the socket.)

			regards, tom lane


-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux