From: | Bowen Shi <zxwsbg12138(at)gmail(dot)com> |
---|---|
To: | shveta malik <shveta(dot)malik(at)gmail(dot)com> |
Cc: | pgsql-bugs(at)lists(dot)postgresql(dot)org |
Subject: | Re: BUG #17716: walsender process hang while decoding 'DROP PUBLICATION' XLOG |
Date: | 2022-12-19 12:22:21 |
Message-ID: | CAM_vCudVP=zWPaTXo23voZUSFnwrF7dMkVRYpiExkxiiTsvo6w@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Hello,
Thanks for your advice. I make some tests and this problem can't be
reproduced in PG 14+ version. I think adding a new XLOG type will help
resolve this problem. But I think the following patch may be helpful
in the PG 13 version.
The invalidation contains two parts: pgoutput and relfilenodeMap. We
have no way to optimize relfilenodeMap part , since it has been
discussed in previous mails
https://www.postgresql.org/message-id/CANDwggKYveEtXjXjqHA6RL3AKSHMsQyfRY6bK+NqhAWJyw8psQ@mail.gmail.com.
However, I'd like to contribute a patch to fix pgoutput part. We can skip
invalidating caches after first time with a lazy tag and this works.
It almost doubles the walsender performance while decoding this XLOG.
I use the test in the last email and reduce the number of relations in
publications to 1000, the test result is following:
Before optimization: 76 min
After optimization: 35 min
Though the result is not good enough, I think this patch is still worthy.
Attachment | Content-Type | Size |
---|---|---|
0001-Add-cache-invalid-flag-in-pgoutput.patch | application/octet-stream | 2.2 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | PG Bug reporting form | 2022-12-20 03:35:22 | BUG #17725: Sefault when seg_in() called with a large argument |
Previous Message | Robins Tharakan | 2022-12-19 12:03:44 | Re: BUG #17713: Assert with postgres_fdw in v12 |