Re: BUG #6661: out-of-order XID insertion in KnownAssignedXids

Поиск
Список
Период
Сортировка
От Simon Riggs
Тема Re: BUG #6661: out-of-order XID insertion in KnownAssignedXids
Дата
Msg-id CA+U5nMKssCuycCz4DsX_rPa0Hdxgm6omxjpsKVW732qzR8dW2g@mail.gmail.com
обсуждение исходный текст
Ответ на Re: BUG #6661: out-of-order XID insertion in KnownAssignedXids  (Andres Freund <andres@2ndquadrant.com>)
Список pgsql-bugs
On 8 June 2012 12:40, Andres Freund <andres@2ndquadrant.com> wrote:
> Hi All,
>
> On Friday, June 08, 2012 12:42:00 PM Andres Freund wrote:
>> On Friday, June 08, 2012 12:25:25 PM Valentine Gogichashvili wrote:
>> > unfortunately I did not manage to keep the snapshot of the database, t=
hat
>> > had this issue.
> Ok, after some playing I could reproduce the issue:
>
> master:
> S1: CREATE FUNCTION insertone() RETURNS void LANGUAGE plpgsql AS $$BEGIN
> INSERT INTO data(data) VALUES (random()); EXCEPTION WHEN division_by_zero=
 THEN
> RAISE NOTICE 'huh'; END;$$;
> S1: BEGIN;
> S1: SELECT insertone() FROM generate_series(1, 1000); --subxid overflow
> S2: BEGIN;
> S2: SELECT insertone(); --allocate xid
>
> standby:
> pg_basebackup
> LOG: =A000000: consistent recovery state reached at 0/5C0001C0
> LOG: =A000000: recovery snapshot waiting for non-overflowed snapshot or u=
ntil
> oldest active xid on standby is at least 4752 (now 3750)
>
> master:
> S1: commit:
> S3: checkpoint;
>
> standby:
> before patch:
> crash in assert/elog
> after:
> =A0LOG: =A000000: recovery snapshots are now enabled
>
> So I can confirm the above patch fixes at least that bug.
>
> Andres

Committed, with minor changes in wording of comments and error messages.

--=20
=A0Simon Riggs=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0 http:/=
/www.2ndQuadrant.com/
=A0PostgreSQL Development, 24x7 Support, Training & Services

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

Предыдущее
От: Dave Page
Дата:
Сообщение: Re: 9.2 beta1 libxml2 can't be loaded on Windows
Следующее
От: Robert Haas
Дата:
Сообщение: Re: control character check in JSON type seems broken