Re: timeout implementation issues - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: timeout implementation issues
Date
Msg-id Pine.LNX.4.30.0204081224560.685-100000@peter.localdomain
Whole thread Raw
In response to Re: timeout implementation issues  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: timeout implementation issues  (Karel Zak <zakkr@zf.jcu.cz>)
List pgsql-hackers
Bruce Momjian writes:

> OK, probably good time for summarization.  First, consider this:
>
>     BEGIN WORK;
>     SET something;
>     query fails;
>     SET something else;
>     COMMIT WORK;
>
> Under current behavior, the first SET is honored, while the second is
> ignored because the transaction is in ABORT state.  I can see no logical
> reason for this behavior.

But that is not a shortcoming of the SET command.  The problem is that the
system does not accept any commands after one command has failed in a
transaction even though it could usefully do so.

> The jdbc timeout issue is this:
>
>
>     BEGIN WORK;
>     SET query_timeout=20;
>     query fails;
>     SET query_timeout=0;
>     COMMIT WORK;
>
> In this case, with our current code, the first SET is done, but the
> second is ignored.

Given appropriate functionality, you could rewrite this thus:

BEGIN WORK;
SET FOR THIS TRANSACTION ONLY query_timeout=20;
query;
COMMIT WORK;

-- 
Peter Eisentraut   peter_e@gmx.net



pgsql-hackers by date:

Previous
From: Jan Wieck
Date:
Subject: Re: timeout implementation issues
Next
From: "Hiroshi Inoue"
Date:
Subject: Re: timeout implementation issues