Search Postgresql Archives

Re: best way to kill long running query?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>>> I want to allow some queries for my users to run for a
>>> prescribed period of time and kill them if they go over
>>> time. Is there a good way to do this?

>> set statement_timeout perhaps?
> I don't think you can set GUC parameters from the ODBC driver. Your
> options are:
>
> * postgresql.conf. Will apply to all sessions to the databse.
>
> * database. Use ALTER DATABLASE foo SET statement_timeout=<something>.
> Will then affect all connections to that database.
>
> * user. Use ALTER ROLE foo SET statement_timeout=<something>. Will then
> affect all connections from that user.
>
> * change your application to issue a "SET statement_timeout=<something>"
> query before anything else it sends.
>

The last option is almost exactly what I wanted. It works quite nicely The
only downside to this approach is that an error is raised if the timeout is
exceeded. Which, when I think about it, is probably good behavior --> it
allows me to distinguish between (1) a query that completed and returned no
records and (2) a query that aborted because it exceeded the timeout.

Thanks to all for the assist.

Bill Eaton




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux