From: | Xuneng Zhou <xunengzhou(at)gmail(dot)com> |
---|---|
To: | Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com>, Andres Freund <andres(at)anarazel(dot)de> |
Cc: | Kevin K Biju <kevinkbiju(at)gmail(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org |
Subject: | Re: Add progressive backoff to XactLockTableWait functions |
Date: | 2025-07-17 14:54:44 |
Message-ID: | CABPTF7Vhh7aS9qpU6oBJ=iqS5zgNS5AhB6bLj-+hS6cMhgLvZg@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
After studying proarray and lmgr more closely, I have found several
critical issues in the two patches and underestimated their complexity
and subtlety. Sorry for posting immature patches that may have created
noise.
I now realize that making lock acquisition— (void) LockAcquire(&tag,
ShareLock, false, false); in XactLockTableWait
work on a standby, following Andres’ first suggestion, may be simpler
and require fewer new helpers.
XactLockTableWait fails on a standby simply because we never call
XactLockTableInsert. I am considering invoking XactLockTableInsert
when an XID is added to KnownAssignedXids, and XactLockTableDelete(the
constraint for delete now is not used for main xid in primary) when it
is removed. A preliminary implementation and test shows this approach
kinda works, but still need to confirm it is safe on a standby and
does not break other things.
patched:
Performance counter stats for process id '2331196':
233,947,559 cycles
106,270,044 instructions # 0.45
insn per cycle
12,464,449 cache-misses
9,397 context-switches
60.001191369 seconds time elapsed
head:
Performance counter stats for process id '2435004':
1,258,615,994 cycles
575,248,830 instructions # 0.46
insn per cycle
72,508,027 cache-misses
43,791 context-switches
60.001040589 seconds time elapsed
Best,
Xuneng
Attachment | Content-Type | Size |
---|---|---|
flamegraph.svg | image/svg+xml | 58.9 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Nathan Bossart | 2025-07-17 15:32:10 | Re: small fix for pg_overexplain docs |
Previous Message | Fujii Masao | 2025-07-17 14:34:32 | Re: Log prefix missing for subscriber log messages received from publisher |