Re: Cancelling Requests Frontend/Backend Protocol TCP/IP

From: Craig Ringer <craig(at)postnewspapers(dot)com(dot)au>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Raimon Fernandez <coder(at)montx(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: Cancelling Requests Frontend/Backend Protocol TCP/IP
Date: 2009-11-02 16:37:42
Message-ID: 4AEF0AD6.4080107@postnewspapers.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-interfaces

On 2/11/2009 10:38 PM, Tom Lane wrote:
> Craig Ringer <craig(at)postnewspapers(dot)com(dot)au> writes:
>> On 2/11/2009 5:15 PM, Raimon Fernandez wrote:
>>> If for example I send a SELECT * from myTable, it has 20000 rows, and
>>> postgre starts sending the rows, how I can cancel this operation ?
>
>> Assuming you're asking "is there any way to cancel a running query using
>> the postgresql tcp/ip protocol" then, as you've noted, you can cancel
>> the request until you start getting data.
>
>> After that, you can still cancel the query by establishing another
>> connection to the server and calling pg_cancel_backend( ) at the SQL
>> level. This does, unfortunately, involve the overhead of setting up and
>> tearing down a connection and the associated backend.
>
> The above distinction is nonsense. Query cancel works the same way
> whether you have started receiving data or not --- it will open a
> transient connection in any case. Otherwise there would be race
> condition problems if the backend is just about to start sending data.

Whoops - and thanks for clearing that up. For some reason I though it
used the existing connection if possible, but you've rather succinctly
pointed out why that wouldn't work sanely.

--
Craig Ringer

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Raimon Fernandez 2009-11-02 16:50:57 Re: Cancelling Requests Frontend/Backend Protocol TCP/IP
Previous Message Tom Lane 2009-11-02 16:35:32 Re: Cancelling Requests Frontend/Backend Protocol TCP/IP

Browse pgsql-interfaces by date

  From Date Subject
Next Message Raimon Fernandez 2009-11-02 16:50:57 Re: Cancelling Requests Frontend/Backend Protocol TCP/IP
Previous Message Tom Lane 2009-11-02 16:35:32 Re: Cancelling Requests Frontend/Backend Protocol TCP/IP