david harel wrote:
> I use postgresql on a Linux server on a virtual machine (despite my prote=
st to IT personal).
> The client is typically a web server implementing PHP sites.
>
> Customers many times close a page typically when a heavy report runs for =
too long.
> Using the command "top", I got the impression that the query still runs e=
ven though the page was
> closed.
That is true.
> I want to make sure the query is dropped when the customer closes the pag=
e.
> Any method to kill such query would it still hang out there?
One crude method would be to set statement_timeout to a nonzero
value - then queries that take longer than that many seconds
will be canceled.
Another option would be to use asynchronous query processing.
The challenge is of course to regularly poll the query status,
but if you can detect that the page is closed you could send
a cancel request (pg_cancel_query in PHP).
Yours,
Laurenz Albe