Re: [PATCH] V3: Idle in transaction cancellation

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: [PATCH] V3: Idle in transaction cancellation
Дата
Msg-id 201012151313.31546.andres@anarazel.de
обсуждение исходный текст
Ответ на Re: [PATCH] V3: Idle in transaction cancellation  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: [PATCH] V3: Idle in transaction cancellation  (Robert Haas <robertmhaas@gmail.com>)
Список pgsql-hackers
On Wednesday 15 December 2010 02:20:31 Robert Haas wrote:
> On Sat, Oct 30, 2010 at 4:49 AM, Andres Freund <andres@anarazel.de> wrote:
> >> > Here is a proposed patch which enables cancellation of $subject.
> 
> Disclaimer: This isn't my area of expertise, so take the below with a
> grain or seven of salt.
I don't know whos area of expertise it is except maybe, surprise, surprise, 
Toms.

> It sort of looks to me like the LOG_NO_CLIENT error flag and the
> silent_error_while_idle flag are trying to cooperate to get the effect
> of throwing an error without actually throwing an error.  I'm
> wondering if it would be at all sensible to do that more directly by
> making ProcessInterrupts() call AbortCurrentTransaction() in this
> case.
Hm. I think you want the normal server-side error logging continuing to work.

Its not really throwing an error without throwing one - its throwing one 
without confusing the heck out of the client because the protocol is not ready 
for that. I don't think introducing an "half-error" state is a good idea 
because one day the protocol maybe ready to actually transport an error while 
idle in txn (I would like to get there).

> I'm not sure if this would work, or if it's better.  I'm just throwing
> it out there, because the current approach looks a little grotty to
> me.
I with you on the grotty aspect... On the other hand the whole code is not 
exactly nice...

Andres


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Magnus Hagander
Дата:
Сообщение: Default mode for shutdown
Следующее
От: Robert Haas
Дата:
Сообщение: Re: [PATCH] V3: Idle in transaction cancellation