Re: executeQuery and busy waiting

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Garrick Dasbach <Garrick(at)musicrebellion(dot)com>
Cc: Dave(at)micro-automation(dot)net, "pgsql-jdbc(at)postgresql(dot)org" <pgsql-jdbc(at)postgresql(dot)org>
Subject: Re: executeQuery and busy waiting
Date: 2003-06-28 05:46:44
Message-ID: 16052.1056779204@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Garrick Dasbach <Garrick(at)musicrebellion(dot)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

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Joao Paulo Camargo - JPC Solutions 2003-06-28 13:12:34 PostgreSQL JDBC Driver
Previous Message Tom Lane 2003-06-28 02:50:13 Re: Client_encoding