Tom Lane wrote: > Bruce Momjian <br...@momjian.us> writes: > > Tom Lane wrote: > >> This makes the function *not* like the other two, rather than > >> improving consistency. > > > Well, it makes it like some of the existing functions, but not like > > others. This applied patch fixes them all. > > This is making things worse, not better. You have just changed the > behavior, and not in a good way. Formerly these were no-ops on > a unix socket connection, and now they can throw errors.
Is this the proper way to fix the issue? Patch attached. -- Bruce Momjian <br...@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com PG East: http://www.enterprisedb.com/community/nav-pg-east-2010.do
Index: src/backend/libpq/pqcomm.c =================================================================== RCS file: /cvsroot/pgsql/src/backend/libpq/pqcomm.c,v retrieving revision 1.208 diff -c -c -r1.208 pqcomm.c *** src/backend/libpq/pqcomm.c 13 Mar 2010 16:56:37 -0000 1.208 --- src/backend/libpq/pqcomm.c 13 Mar 2010 17:01:14 -0000 *************** *** 1317,1326 **** int pq_getkeepalivesidle(Port *port) { - #ifdef TCP_KEEPIDLE if (port == NULL || IS_AF_UNIX(port->laddr.addr.ss_family)) return 0; if (port->keepalives_idle != 0) return port->keepalives_idle; --- 1317,1326 ---- int pq_getkeepalivesidle(Port *port) { if (port == NULL || IS_AF_UNIX(port->laddr.addr.ss_family)) return 0; + #ifdef TCP_KEEPIDLE if (port->keepalives_idle != 0) return port->keepalives_idle; *************** *** 1389,1398 **** int pq_getkeepalivesinterval(Port *port) { - #ifdef TCP_KEEPINTVL if (port == NULL || IS_AF_UNIX(port->laddr.addr.ss_family)) return 0; if (port->keepalives_interval != 0) return port->keepalives_interval; --- 1389,1398 ---- int pq_getkeepalivesinterval(Port *port) { if (port == NULL || IS_AF_UNIX(port->laddr.addr.ss_family)) return 0; + #ifdef TCP_KEEPINTVL if (port->keepalives_interval != 0) return port->keepalives_interval; *************** *** 1461,1470 **** int pq_getkeepalivescount(Port *port) { - #ifdef TCP_KEEPCNT if (port == NULL || IS_AF_UNIX(port->laddr.addr.ss_family)) return 0; if (port->keepalives_count != 0) return port->keepalives_count; --- 1461,1470 ---- int pq_getkeepalivescount(Port *port) { if (port == NULL || IS_AF_UNIX(port->laddr.addr.ss_family)) return 0; + #ifdef TCP_KEEPCNT if (port->keepalives_count != 0) return port->keepalives_count;
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers