| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> | 
|---|---|
| To: | "Mason Hale" <mason(at)onespot(dot)com> | 
| Cc: | pgsql-bugs(at)postgresql(dot)org | 
| Subject: | Re: BUG #5459: Unable to cancel query while in send() | 
| Date: | 2010-05-12 01:44:16 | 
| Message-ID: | 5744.1273628656@sss.pgh.pa.us | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-bugs | 
"Mason Hale" <mason(at)onespot(dot)com> writes:
> ISSUE: unable to cancel queries using pg_cancel_backend(), that are in
> send() function call, waiting on client receipt of data.
I think what you are describing is a kernel bug.  There's not a lot
we can do about it if the send() call hangs.  Considering the kernel
already knows the connection is closed (per the CLOSE_WAIT state shown
by netstat) the send() should return failure immediately, and it's not
doing so.
There might be some TCP-level incompatibility involved between the
database and gateway server TCP stacks, since the combination of the
FIN_WAIT2 and CLOSE_WAIT states really ought not persist very long;
but I'm not a network hacker so I'm a bit out of my depth in diagnosing
that aspect of it.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bryan Henderson | 2010-05-12 01:55:17 | Re: bool: symbol name collision | 
| Previous Message | Robert Haas | 2010-05-11 22:33:41 | Re: bool: symbol name collision |