Обсуждение: how to cancel a query ?

Поиск
Список
Период
Сортировка

how to cancel a query ?

От
Andreas Schmitz
Дата:
Hello,

ist there any way to cancel a user query as dba ?

regards

-andreas


--
Andreas Schmitz - Phone +49 201 8501 318
Cityweb-Technik-Service-Gesellschaft mbH
Friedrichstr. 12 - Fax +49 201 8501 104
45128 Essen - email a.schmitz@cityweb.de


Re: how to cancel a query ?

От
Tom Lane
Дата:
Andreas Schmitz <a.schmitz@cityweb.de> writes:
> ist there any way to cancel a user query as dba ?

Send a SIGINT to the backend process running that query, eg

    kill -INT <pid>

This has the same effect as a user-requested cancel (eg ^C in psql).

            regards, tom lane

Re: how to cancel a query ?

От
Bruce Momjian
Дата:
Tom Lane wrote:
> Andreas Schmitz <a.schmitz@cityweb.de> writes:
> > ist there any way to cancel a user query as dba ?
>
> Send a SIGINT to the backend process running that query, eg
>
>     kill -INT <pid>
>
> This has the same effect as a user-requested cancel (eg ^C in psql).

And finally documented in 7.3.  ;-)

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Re: how to cancel a query ?

От
Andreas Schmitz
Дата:
On Wednesday 04 December 2002 17:47, Tom Lane wrote:
> Andreas Schmitz <a.schmitz@cityweb.de> writes:
> > ist there any way to cancel a user query as dba ?
>
> Send a SIGINT to the backend process running that query, eg
>
>     kill -INT <pid>
>
> This has the same effect as a user-requested cancel (eg ^C in psql).
>

What about an implementation into the command structure ?

regards

-andreas

--
Andreas Schmitz - Phone +49 201 8501 318
Cityweb-Technik-Service-Gesellschaft mbH
Friedrichstr. 12 - Fax +49 201 8501 104
45128 Essen - email a.schmitz@cityweb.de


Re: how to cancel a query ?

От
Eric Hallander
Дата:
If you wanted to do something programatically, couldn't you define some
functions that would allow you say implement a query id, and embed a
function call in the where clause like

select getNextQueryId()

where ...... and queryStillActive(query_id) = true

Then another function could be called to kill the query either from within
the program, or externally like

stopQuery(query_id).

You probably wouldn't want to do this for every query, but if you know you
have some potentially long running queries, then....

Eric

> -----Original Message-----
> From: Andreas Schmitz [mailto:a.schmitz@cityweb.de]
> Sent: Thursday, December 05, 2002 7:51 AM
> To: Tom Lane; pgman@candle.pha.pa.us
> Cc: pgsql-admin@postgresql.org
> Subject: Re: [ADMIN] how to cancel a query ?
>
>
> On Wednesday 04 December 2002 17:47, Tom Lane wrote:
> > Andreas Schmitz <a.schmitz@cityweb.de> writes:
> > > ist there any way to cancel a user query as dba ?
> >
> > Send a SIGINT to the backend process running that query, eg
> >
> >     kill -INT <pid>
> >
> > This has the same effect as a user-requested cancel (eg ^C in psql).
> >
>
> What about an implementation into the command structure ?
>
> regards
>
> -andreas
>
> --
> Andreas Schmitz - Phone +49 201 8501 318
> Cityweb-Technik-Service-Gesellschaft mbH
> Friedrichstr. 12 - Fax +49 201 8501 104
> 45128 Essen - email a.schmitz@cityweb.de
>
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
>

Re: how to cancel a query ?

От
Bruce Momjian
Дата:
Andreas Schmitz wrote:
> On Wednesday 04 December 2002 17:47, Tom Lane wrote:
> > Andreas Schmitz <a.schmitz@cityweb.de> writes:
> > > ist there any way to cancel a user query as dba ?
> >
> > Send a SIGINT to the backend process running that query, eg
> >
> >     kill -INT <pid>
> >
> > This has the same effect as a user-requested cancel (eg ^C in psql).
> >
>
> What about an implementation into the command structure ?

Libpq has:

    PQrequestCancel()

Where else did you want it?

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

Re: how to cancel a query ?

От
Murthy Kambhampaty
Дата:
I was asking on the pyPgSQL list whether the PQrequestCancel() would allow
that if a user submitting queries from Python closed the Python shell, the
query would be cancelled (a la ^C in psql). This led me to:

If the connection from which a synchronous query
("libpq->connection.query()") was submitted is closed, should libpq assume a
PQrequesCancel() and cancel the query at the same time? Isn't this the
analog of ^C in psql?

Thanks,
    Murthy

-----Original Message-----
From: Bruce Momjian [mailto:pgman@candle.pha.pa.us]
Sent: Thursday, December 05, 2002 14:19
To: a.schmitz@cityweb.de
Cc: Tom Lane; pgsql-admin@postgresql.org
Subject: Re: [ADMIN] how to cancel a query ?


Andreas Schmitz wrote:
> On Wednesday 04 December 2002 17:47, Tom Lane wrote:
> > Andreas Schmitz <a.schmitz@cityweb.de> writes:
> > > ist there any way to cancel a user query as dba ?
> >
> > Send a SIGINT to the backend process running that query, eg
> >
> >     kill -INT <pid>
> >
> > This has the same effect as a user-requested cancel (eg ^C in psql).
> >
>
> What about an implementation into the command structure ?

Libpq has:

    PQrequestCancel()

Where else did you want it?

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)