Received: from trends.net (clio.trends.ca [209.47.148.2]) by hub.org (8.9.3/8.9.3) with ESMTP id AAA29596 for ; Wed, 3 Nov 1999 00:08:52 -0500 (EST) (envelope-from postgres@weblynk.com) Received: from mta4.snfc21.pbi.net (mta4.snfc21.pbi.net [206.13.28.142]) by trends.net (8.8.8/8.8.8) with ESMTP id AAA06740 for ; Wed, 3 Nov 1999 00:01:04 -0500 (EST) Received: from pinto.usedcars.com ([206.170.239.155]) by mta4.snfc21.pbi.net (Sun Internet Mail Server sims.3.5.1999.09.16.21.57.p8) with SMTP id <0FKL005NGV91RJ@mta4.snfc21.pbi.net> for pgsql-interfaces@postgreSQL.org; Tue, 2 Nov 1999 21:00:37 -0800 (PST) Date: Tue, 02 Nov 1999 20:58:27 -0800 From: Rich Ryan Subject: Inifinite socket send from backend to java servlet To: pgsql-interfaces@postgreSQL.org Message-id: <00ab01bf25b8$1192b260$9befaace@usedcars.com> MIME-version: 1.0 X-Mailer: Microsoft Outlook Express 5.00.2314.1300 Content-type: text/plain; charset="iso-8859-1" Content-transfer-encoding: 7bit X-MSMail-Priority: Normal X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 References: <381978E3352.179CSAKAIDA@smtp.psn.ne.jp> X-Priority: 3 I'm running RH Linux 5.2, Jdk 1.1.7v3 on machine A, and RH Linux 6.1, postgres 6.5.2 on machine B. Some queries made from A to B never return. It looks like the java servlet on machine A skipped out on the query or the thread died or got interrupted or something, and machine B is infinitely waiting for it to read query results. Doing a ps -x will show several postmaster processes doing SELECT's, but just sitting there, ( not SELECT waiting), but not consuming any cpu time either. When I restart the web server on machine A and then immediately look at the postgres log file on machine B, I get a ton of these messages... FATAL: pq_endmessage failed: errno=32 pq_flush: send() failed: Broken pipe Within a half day or so, my database connection pool is exhausted because there taken up by these infinite waits. Of course, I could write a db connection timeout thread that closes these lazy connections, and I suspect that the postmaster processes on machine B would detect the broken connection and go away also, but still... seems like pretty icky behavior. Any comments? Rich