Re: [BUG] Logical replication failure "ERROR: could not map filenode "base/13237/442428" to relation OID" with catalog modifying txns
От | Masahiko Sawada |
---|---|
Тема | Re: [BUG] Logical replication failure "ERROR: could not map filenode "base/13237/442428" to relation OID" with catalog modifying txns |
Дата | |
Msg-id | CAD21AoAyNPrOFg+QGh+=4205TU0=yrE+QyMgzStkH85uBZXptQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [BUG] Logical replication failure "ERROR: could not map filenode "base/13237/442428" to relation OID" with catalog modifying txns (Amit Kapila <amit.kapila16@gmail.com>) |
Ответы |
RE: [BUG] Logical replication failure "ERROR: could not map filenode "base/13237/442428" to relation OID" with catalog modifying txns
|
Список | pgsql-hackers |
On Tue, Jul 12, 2022 at 5:52 PM Amit Kapila <amit.kapila16@gmail.com> wrote: > > On Tue, Jul 12, 2022 at 1:13 PM Masahiko Sawada <sawada.mshk@gmail.com> wrote: > > > > On Tue, Jul 12, 2022 at 3:25 PM Amit Kapila <amit.kapila16@gmail.com> wrote: > > > > > > On Tue, Jul 12, 2022 at 11:38 AM Masahiko Sawada <sawada.mshk@gmail.com> wrote: > > > > > > > > On Tue, Jul 12, 2022 at 10:28 AM Masahiko Sawada <sawada.mshk@gmail.com> wrote: > > > > > > > > > > > > > > > I'm doing benchmark tests and will share the results. > > > > > > > > > > > > > I've done benchmark tests to measure the overhead introduced by doing > > > > bsearch() every time when decoding a commit record. I've simulated a > > > > very intensified situation where we decode 1M commit records while > > > > keeping builder->catchange.xip array but the overhead is negilible: > > > > > > > > HEAD: 584 ms > > > > Patched: 614 ms > > > > > > > > I've attached the benchmark script I used. With increasing > > > > LOG_SNAPSHOT_INTERVAL_MS to 90000, the last decoding by > > > > pg_logicla_slot_get_changes() decodes 1M commit records while keeping > > > > catalog modifying transactions. > > > > > > > > > > Thanks for the test. We should also see how it performs when (a) we > > > don't change LOG_SNAPSHOT_INTERVAL_MS, > > > > What point do you want to see in this test? I think the performance > > overhead depends on how many times we do bsearch() and how many > > transactions are in the list. > > > > Right, I am not expecting any visible performance difference in this > case. This is to ensure that we are not incurring any overhead in the > more usual scenarios (or default cases). As per my understanding, the > purpose of increasing the value of LOG_SNAPSHOT_INTERVAL_MS is to > simulate a stress case for the changes made by the patch, and keeping > its value default will test the more usual scenarios. Agreed. I've done simple benchmark tests to decode 100k pgbench transactions: HEAD: 10.34 s Patched: 10.29 s I've attached an updated patch that incorporated comments from Amit and Shi. Regards, -- Masahiko Sawada EDB: https://www.enterprisedb.com/
Вложения
В списке pgsql-hackers по дате отправления: