Re: [HACKERS] Query cancel and OOB data

From: Bruce Momjian <maillist(at)candle(dot)pha(dot)pa(dot)us>
To: dg(at)illustra(dot)com (David Gould)
Cc: byronn(at)insightdist(dot)com, tgl(at)sss(dot)pgh(dot)pa(dot)us, hackers(at)postgreSQL(dot)org
Subject: Re: [HACKERS] Query cancel and OOB data
Date: 1998-05-19 02:17:08
Message-ID: 199805190217.WAA02121@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

>
> > > Bruce Momjian wrote:
> > >
> > > > OK, thanks to Tom Lane's many patches, I have query cancel working on my
> > > > machine. However, it is not working with Unix domain sockets. I get:
> > > >
> > > > Cannot send cancel request:
> > > > PQrequestCancel() -- couldn't send OOB data: errno=45
> > > > Operation not supported
> > > >
> > > > This is under BSDI 3.1.
> > > >
> > > > Do Unix Domain sockets support OOB(out-of-band) data?
> > > >
> > >
> > > Unix domain sockets don't support OOB (Stevens, Unix Network Programming).
> >
> > Yea, I found that too, late last night, Section 6.14, page 332.
> >
> > I basically need some way to 'signal' the backend of a cancellation
> > request. Polling the socket is not an option because it would impose
> > too great a performance penalty. Maybe async-io on a read(), but that
> > is not going to be very portable.
> >
> > I could pass the backend pid to the front end, and send a kill(SIG_URG)
> > to that pid on a cancel, but the frontend can be running as a different
> > user than the backend. Problem is, the only communcation channel is
> > that unix domain socket.
> >
> > We basically need some way to get the attention of the backend,
> > hopefully via some signal.
> >
> > Any ideas?
>
> Use TCP. On most modern systems (eg Linux ;-) ), TCP especially on the local
> machine is very efficient. Not quite as efficient as a Unix domain socket,
> but close enough that no one will notice.
>
> To investigate this, see Larry McVoy's wonderful lmbench suite...

We implemented Unix domain sockets for performance, and security. Hard
to beat a Unix domain socket's security. I need the SIB_URG signal.

--
Bruce Momjian | 830 Blythe Avenue
maillist(at)candle(dot)pha(dot)pa(dot)us | Drexel Hill, Pennsylvania 19026
+ If your life is a hard drive, | (610) 353-9879(w)
+ Christ can be your backup. | (610) 853-3000(h)

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message t-ishii 1998-05-19 02:33:04 Re: [HACKERS] Re: [PATCHES] char/varchar locale support
Previous Message Matthew N. Dodd 1998-05-18 19:48:50 Kerberos 5 breakage.