Re: Too rigorous assert in reorderbuffer.c

From: Alexey Kondratov <a(dot)kondratov(at)postgrespro(dot)ru>
To: Arseny Sher <a(dot)sher(at)postgrespro(dot)ru>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Alexander Lakhin <a(dot)lakhin(at)postgrespro(dot)ru>
Subject: Re: Too rigorous assert in reorderbuffer.c
Date: 2019-02-04 16:15:14
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


On 31.01.2019 9:21, Arseny Sher wrote:
> My colleague Alexander Lakhin has noticed an assertion failure in
> reorderbuffer.c:1330. Here is a simple snippet reproducing it:
> SELECT 'init' FROM pg_create_logical_replication_slot('regression_slot', 'test_decoding');
> create table t(k int);
> begin;
> savepoint a;
> alter table t alter column k type text;
> rollback to savepoint a;
> alter table t alter column k type bigint;
> commit;
> SELECT data FROM pg_logical_slot_get_changes('regression_slot', NULL, NULL, 'include-xids', '0', 'skip-empty-xacts', '1');

I just want to add, that I have accidentally discovered the same issue
during the testing of the Tomas's large transactions streaming patch
[1], and had to remove this assert to get things working. I thought that
it was somehow related to the streaming mode and did not test the same
query alone.



Alexey Kondratov

Postgres Professional
Russian Postgres Company

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2019-02-04 16:30:41 propagating replica identity to partitions
Previous Message Adrien NAYRAT 2019-02-04 15:32:05 Re: Log a sample of transactions