Re: [BUG] "FailedAssertion" reported when streaming in logical replication
Dilip Kumar <dilipbalaut@gmail.com>
From: Dilip Kumar <dilipbalaut@gmail.com>
To: "tanghy.fnst@fujitsu.com" <tanghy.fnst@fujitsu.com>
Cc: Amit Kapila <amit.kapila16@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2021-04-29T10:53:41Z
Lists: pgsql-hackers
On Thu, Apr 29, 2021 at 12:09 PM tanghy.fnst@fujitsu.com <tanghy.fnst@fujitsu.com> wrote: > > > On Thursday, April 29, 2021 3:18 PM, Dilip Kumar <dilipbalaut@gmail.com> wrote > > >I tried to think about how to write a test case for this scenario, but > >I think it will not be possible to generate an automated test case for this. > >Basically, we need 2 concurrent transactions and out of that, > >we need one transaction which just has processed only one change i.e > >XLOG_HEAP2_NEW_CID and another transaction should overflow the logical > >decoding work mem, so that we select the wrong transaction which > >doesn't have the base snapshot. But how to control that the > >transaction which is performing the DDL just write the > >XLOG_HEAP2_NEW_CID wal and before it writes any other WAL we should > >get the WAl from other transaction which overflows the buffer. > > Thanks for your updating. > Actually, I tried to make the automated test for the problem, too. But made no process on this. > Agreed on your opinion " not be possible to generate an automated test case for this ". Thanks for trying this out. > If anyone figure out a good solution for the test automation of this case. > Please be kind to share that with us. Thanks. +1 -- Regards, Dilip Kumar EnterpriseDB: http://www.enterprisedb.com
Commits
-
Fix the bugs in selecting the transaction for streaming.
- ee4ba01dbbc3 14.0 landed