Re: executeQuery and busy waiting - Mailing list pgsql-jdbc

From Tom Lane
Subject Re: executeQuery and busy waiting
Date
Msg-id 16052.1056779204@sss.pgh.pa.us
Whole thread Raw
In response to Re: executeQuery and busy waiting  (Garrick Dasbach <Garrick@musicrebellion.com>)
Responses Re: executeQuery and busy waiting  (Dave Cramer <Dave@micro-automation.net>)
List pgsql-jdbc
Garrick Dasbach <Garrick@musicrebellion.com> writes:
> Well, we found the problem.  Using a Packet Sniffer we found that
> Postgres was sending Thousands of 8K messages back to our JDBC test
> Program.  Inside these packets were the text from the 'NOTICE' commands
> we were using to debug our function.  We didn't realize that Postgres
> sent these messages back.

Someone reported a comparable problem recently in libpq: they had an ON
INSERT trigger that emitted tons of NOTICEs, and they found that a COPY
into that table would hang up, because libpq's routines to process COPY
IN data transmission don't bother to look to see if there's any return
data they ought to read.  Sooner or later the return path fills up and
the kernel blocks the sender (ie, the backend).  This is on my to-fix
list, but I've not gotten to it yet.  It sounds like JDBC has a similar
issue someplace.

            regards, tom lane

pgsql-jdbc by date:

Previous
From: Tom Lane
Date:
Subject: Re: Client_encoding
Next
From: Dave Cramer
Date:
Subject: Re: executeQuery and busy waiting