doc patch: clarify the naming rule for injection_points
Dear hackers,
This is a forked thread from [1]/messages/by-id/OSCPR01MB14966B78F3AF15C252EB9E02FF5B32@OSCPR01MB14966.jpnprd01.prod.outlook.com.
Naming rule of points is not determined yet, but most of them have lower cases
and each term are divided by dash "-". I think this is a good chance to formally
clarify it. PSA adding the description.
I was confused the correct place for the description. I added at the end of first
paragraph, because it describes how we add and use it. Suggestions are very
welcomed.
[1]: /messages/by-id/OSCPR01MB14966B78F3AF15C252EB9E02FF5B32@OSCPR01MB14966.jpnprd01.prod.outlook.com
Best regards,
Hayato Kuroda
FUJITSU LIMITED
Attachments:
0001-Doc-clarify-the-naming-rule-for-injection-points.patchapplication/octet-stream; name=0001-Doc-clarify-the-naming-rule-for-injection-points.patchDownload
From 47054c250b6466abcc48143a054ca12e5976718d Mon Sep 17 00:00:00 2001
From: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Date: Mon, 14 Apr 2025 20:00:13 +0900
Subject: [PATCH] Doc: clarify the naming rule for injection points
---
doc/src/sgml/xfunc.sgml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml
index 8074f66417d..d4f486e28fd 100644
--- a/doc/src/sgml/xfunc.sgml
+++ b/doc/src/sgml/xfunc.sgml
@@ -3836,7 +3836,8 @@ INJECTION_POINT(name);
within the server code. After adding a new injection point the code needs
to be compiled in order for that injection point to be available in the
binary. Add-ins written in C-language can declare injection points in
- their own code using the same macro.
+ their own code using the same macro. The name of injection points must be
+ lower characters, and dashes must separate its terms.
</para>
<para>
--
2.43.5
Hi,
Naming rule of points is not determined yet, but most of them have lower cases
and each term are divided by dash "-". I think this is a good chance to formally
clarify it. PSA adding the description.I was confused the correct place for the description. I added at the end of first
paragraph, because it describes how we add and use it. Suggestions are very
welcomed.
```
- their own code using the same macro.
+ their own code using the same macro. The name of injection points must be
+ lower characters, and dashes must separate its terms.
```
Perhaps "must" is a too strong statement. I suggest something like:
"""
By convention, the name of injection points ...
"""
I have mixed feelings about the patch overall though. This would mean
that we need to rename injection points like this:
``
AtEOXact_Inval-with-transInvalInfo
heap_update-before-pin
```
Otherwise we would contradict our own documentation.
I don't mind heap-update-before-pin, but not 100% sure if:
at-eo-xact-inval-with-trans-inval-info
... would be a better name than the current one.
--
Best regards,
Aleksander Alekseev
Dear Aleksander,
``` - their own code using the same macro. + their own code using the same macro. The name of injection points must be + lower characters, and dashes must separate its terms. ```Perhaps "must" is a too strong statement. I suggest something like:
"""
By convention, the name of injection points ...
"""
It is always difficult for me to distinguish them, thanks for comments.
PSA updated.
I have mixed feelings about the patch overall though. This would mean
that we need to rename injection points like this:``
AtEOXact_Inval-with-transInvalInfo
heap_update-before-pin
```Otherwise we would contradict our own documentation.
Thanks for telling these counterexamples. I grepped with "INJECTION_POINTS" and
"IS_INJECTION_POINT_ATTACHED", and no others are found.
I don't mind heap-update-before-pin, but not 100% sure if:
at-eo-xact-inval-with-trans-inval-info
... would be a better name than the current one.
I also feel just converting lower case is not good. The point seems to locate in
the end-of-transaction callback and it accepts invalidation messages. Based on the
fact, how about "inval-process-invalidation-messages"?
0002 did simple replacements of these words.
Best regards,
Hayato Kuroda
FUJITSU LIMITED
Attachments:
v2-0002-Follow-naming-rules-for-injection-points.patchapplication/octet-stream; name=v2-0002-Follow-naming-rules-for-injection-points.patchDownload
From 3a41012c114a1b2b98b648744f08488e48c8f037 Mon Sep 17 00:00:00 2001
From: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Date: Mon, 14 Apr 2025 21:34:05 +0900
Subject: [PATCH v2 2/2] Follow naming rules for injection points
---
src/backend/access/heap/heapam.c | 2 +-
src/backend/utils/cache/inval.c | 2 +-
.../expected/syscache-update-pruned.out | 24 +++++++++----------
.../expected/syscache-update-pruned_1.out | 24 +++++++++----------
.../specs/syscache-update-pruned.spec | 12 +++++-----
5 files changed, 32 insertions(+), 32 deletions(-)
diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c
index ed2e3021799..0d01465d22e 100644
--- a/src/backend/access/heap/heapam.c
+++ b/src/backend/access/heap/heapam.c
@@ -3304,7 +3304,7 @@ heap_update(Relation relation, ItemPointer otid, HeapTuple newtup,
interesting_attrs = bms_add_members(interesting_attrs, id_attrs);
block = ItemPointerGetBlockNumber(otid);
- INJECTION_POINT("heap_update-before-pin");
+ INJECTION_POINT("heap-update-before-pin");
buffer = ReadBuffer(relation, block);
page = BufferGetPage(buffer);
diff --git a/src/backend/utils/cache/inval.c b/src/backend/utils/cache/inval.c
index 4893dbdd7c8..d397a46663a 100644
--- a/src/backend/utils/cache/inval.c
+++ b/src/backend/utils/cache/inval.c
@@ -1200,7 +1200,7 @@ AtEOXact_Inval(bool isCommit)
/* Must be at top of stack */
Assert(transInvalInfo->my_level == 1 && transInvalInfo->parent == NULL);
- INJECTION_POINT("AtEOXact_Inval-with-transInvalInfo");
+ INJECTION_POINT("inval-process-invalidation-messages");
if (isCommit)
{
diff --git a/src/test/modules/injection_points/expected/syscache-update-pruned.out b/src/test/modules/injection_points/expected/syscache-update-pruned.out
index 9a9683bb496..81b55c0314d 100644
--- a/src/test/modules/injection_points/expected/syscache-update-pruned.out
+++ b/src/test/modules/injection_points/expected/syscache-update-pruned.out
@@ -10,14 +10,14 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('inval-process-invalidation-messages');
+ SELECT FROM injection_points_wakeup('inval-process-invalidation-messages');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
step wakegrant4:
- SELECT FROM injection_points_detach('heap_update-before-pin');
- SELECT FROM injection_points_wakeup('heap_update-before-pin');
+ SELECT FROM injection_points_detach('heap-update-before-pin');
+ SELECT FROM injection_points_wakeup('heap-update-before-pin');
<waiting ...>
step grant1: <... completed>
ERROR: tuple concurrently deleted
@@ -33,8 +33,8 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('inval-process-invalidation-messages');
+ SELECT FROM injection_points_wakeup('inval-process-invalidation-messages');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
@@ -42,8 +42,8 @@ step mkrels4:
SELECT FROM vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED
step wakegrant4:
- SELECT FROM injection_points_detach('heap_update-before-pin');
- SELECT FROM injection_points_wakeup('heap_update-before-pin');
+ SELECT FROM injection_points_detach('heap-update-before-pin');
+ SELECT FROM injection_points_wakeup('heap-update-before-pin');
<waiting ...>
step grant1: <... completed>
ERROR: duplicate key value violates unique constraint "pg_class_oid_index"
@@ -64,15 +64,15 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('inval-process-invalidation-messages');
+ SELECT FROM injection_points_wakeup('inval-process-invalidation-messages');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
step at4: ALTER TABLE vactest.child50 INHERIT vactest.orig50;
step wakegrant4:
- SELECT FROM injection_points_detach('heap_update-before-pin');
- SELECT FROM injection_points_wakeup('heap_update-before-pin');
+ SELECT FROM injection_points_detach('heap-update-before-pin');
+ SELECT FROM injection_points_wakeup('heap-update-before-pin');
<waiting ...>
step grant1: <... completed>
step wakegrant4: <... completed>
diff --git a/src/test/modules/injection_points/expected/syscache-update-pruned_1.out b/src/test/modules/injection_points/expected/syscache-update-pruned_1.out
index 64c39d708bd..dd1519e95da 100644
--- a/src/test/modules/injection_points/expected/syscache-update-pruned_1.out
+++ b/src/test/modules/injection_points/expected/syscache-update-pruned_1.out
@@ -10,14 +10,14 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('inval-process-invalidation-messages');
+ SELECT FROM injection_points_wakeup('inval-process-invalidation-messages');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
step wakegrant4:
- SELECT FROM injection_points_detach('heap_update-before-pin');
- SELECT FROM injection_points_wakeup('heap_update-before-pin');
+ SELECT FROM injection_points_detach('heap-update-before-pin');
+ SELECT FROM injection_points_wakeup('heap-update-before-pin');
<waiting ...>
step grant1: <... completed>
step wakegrant4: <... completed>
@@ -32,8 +32,8 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('inval-process-invalidation-messages');
+ SELECT FROM injection_points_wakeup('inval-process-invalidation-messages');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
@@ -41,8 +41,8 @@ step mkrels4:
SELECT FROM vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED
step wakegrant4:
- SELECT FROM injection_points_detach('heap_update-before-pin');
- SELECT FROM injection_points_wakeup('heap_update-before-pin');
+ SELECT FROM injection_points_detach('heap-update-before-pin');
+ SELECT FROM injection_points_wakeup('heap-update-before-pin');
<waiting ...>
step grant1: <... completed>
step wakegrant4: <... completed>
@@ -62,15 +62,15 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('inval-process-invalidation-messages');
+ SELECT FROM injection_points_wakeup('inval-process-invalidation-messages');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
step at4: ALTER TABLE vactest.child50 INHERIT vactest.orig50;
step wakegrant4:
- SELECT FROM injection_points_detach('heap_update-before-pin');
- SELECT FROM injection_points_wakeup('heap_update-before-pin');
+ SELECT FROM injection_points_detach('heap-update-before-pin');
+ SELECT FROM injection_points_wakeup('heap-update-before-pin');
<waiting ...>
step grant1: <... completed>
ERROR: tuple concurrently updated
diff --git a/src/test/modules/injection_points/specs/syscache-update-pruned.spec b/src/test/modules/injection_points/specs/syscache-update-pruned.spec
index 086d084de25..6308bba8134 100644
--- a/src/test/modules/injection_points/specs/syscache-update-pruned.spec
+++ b/src/test/modules/injection_points/specs/syscache-update-pruned.spec
@@ -103,7 +103,7 @@ session s1
setup {
SET debug_discard_caches = 0;
SELECT FROM injection_points_set_local();
- SELECT FROM injection_points_attach('heap_update-before-pin', 'wait');
+ SELECT FROM injection_points_attach('heap-update-before-pin', 'wait');
}
step cachefill1 { SELECT FROM vactest.reloid_catcache_set('vactest.orig50'); }
step grant1 { GRANT SELECT ON vactest.orig50 TO PUBLIC; }
@@ -117,7 +117,7 @@ session s2
setup {
SELECT FROM injection_points_set_local();
SELECT FROM
- injection_points_attach('AtEOXact_Inval-with-transInvalInfo', 'wait');
+ injection_points_attach('inval-process-invalidation-messages', 'wait');
}
step at2 {
CREATE TRIGGER to_set_relhastriggers BEFORE UPDATE ON vactest.orig50
@@ -140,13 +140,13 @@ step mkrels4 {
SELECT FROM vactest.mkrels('intruder', 1, 100); -- repopulate LP_UNUSED
}
step wakegrant4 {
- SELECT FROM injection_points_detach('heap_update-before-pin');
- SELECT FROM injection_points_wakeup('heap_update-before-pin');
+ SELECT FROM injection_points_detach('heap-update-before-pin');
+ SELECT FROM injection_points_wakeup('heap-update-before-pin');
}
step at4 { ALTER TABLE vactest.child50 INHERIT vactest.orig50; }
step wakeinval4 {
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('inval-process-invalidation-messages');
+ SELECT FROM injection_points_wakeup('inval-process-invalidation-messages');
}
# Witness effects of steps at2 and/or at4.
step inspect4 {
--
2.43.5
v2-0001-Doc-clarify-the-naming-rule-for-injection-points.patchapplication/octet-stream; name=v2-0001-Doc-clarify-the-naming-rule-for-injection-points.patchDownload
From 5d73bb9bf5da8c23d61f68f01f0375bac2bbdb7c Mon Sep 17 00:00:00 2001
From: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Date: Mon, 14 Apr 2025 20:00:13 +0900
Subject: [PATCH v2] Doc: clarify the naming rule for injection points
---
doc/src/sgml/xfunc.sgml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml
index 8074f66417d..c0726331d62 100644
--- a/doc/src/sgml/xfunc.sgml
+++ b/doc/src/sgml/xfunc.sgml
@@ -3836,7 +3836,8 @@ INJECTION_POINT(name);
within the server code. After adding a new injection point the code needs
to be compiled in order for that injection point to be available in the
binary. Add-ins written in C-language can declare injection points in
- their own code using the same macro.
+ their own code using the same macro. By convention, the name of injection
+ points is lower characters, and dashes separate its terms.
</para>
<para>
--
2.43.5
On Mon, Apr 14, 2025 at 12:36:20PM +0000, Hayato Kuroda (Fujitsu) wrote:
I also feel just converting lower case is not good. The point seems to locate in
the end-of-transaction callback and it accepts invalidation messages. Based on the
fact, how about "inval-process-invalidation-messages"?
0002 did simple replacements of these words.
- INJECTION_POINT("heap_update-before-pin");
+ INJECTION_POINT("heap-update-before-pin");
The former name is better IMO. heap_update() is the name of the
function where the point is defined.
- INJECTION_POINT("AtEOXact_Inval-with-transInvalInfo");
+ INJECTION_POINT("inval-process-invalidation-messages");
This naming has been puzzling me, though, so a rename looks fit. I am
not sure that this is the best name that matches with this code path,
as this lacks a reference regarding the end of a transaction. Perhaps
something like "end-transaction-process-inval" would be better?
--
Michael
Dear Michael,
I also feel just converting lower case is not good. The point seems to locate in
the end-of-transaction callback and it accepts invalidation messages. Based onthe
fact, how about "inval-process-invalidation-messages"?
0002 did simple replacements of these words.- INJECTION_POINT("heap_update-before-pin"); + INJECTION_POINT("heap-update-before-pin");The former name is better IMO. heap_update() is the name of the
function where the point is defined.- INJECTION_POINT("AtEOXact_Inval-with-transInvalInfo"); + INJECTION_POINT("inval-process-invalidation-messages");This naming has been puzzling me, though, so a rename looks fit. I am
not sure that this is the best name that matches with this code path,
as this lacks a reference regarding the end of a transaction. Perhaps
something like "end-transaction-process-inval" would be better?
Thanks for suggesting them. ISTM, you are correct. PSA updated version.
Best regards,
Hayato Kuroda
FUJITSU LIMITED
Attachments:
v3-0001-Doc-clarify-the-naming-rule-for-injection-points.patchapplication/octet-stream; name=v3-0001-Doc-clarify-the-naming-rule-for-injection-points.patchDownload
From 25954dbd739b1e92e8d959b2fe1ff60c3bedd584 Mon Sep 17 00:00:00 2001
From: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Date: Mon, 14 Apr 2025 20:00:13 +0900
Subject: [PATCH v3 1/2] Doc: clarify the naming rule for injection points
---
doc/src/sgml/xfunc.sgml | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml
index 8074f66417d..c0726331d62 100644
--- a/doc/src/sgml/xfunc.sgml
+++ b/doc/src/sgml/xfunc.sgml
@@ -3836,7 +3836,8 @@ INJECTION_POINT(name);
within the server code. After adding a new injection point the code needs
to be compiled in order for that injection point to be available in the
binary. Add-ins written in C-language can declare injection points in
- their own code using the same macro.
+ their own code using the same macro. By convention, the name of injection
+ points is lower characters, and dashes separate its terms.
</para>
<para>
--
2.43.5
v3-0002-Follow-naming-rules-for-injection-points.patchapplication/octet-stream; name=v3-0002-Follow-naming-rules-for-injection-points.patchDownload
From 06346be1dc7860b34f119498f34d0a86658fa5ec Mon Sep 17 00:00:00 2001
From: Hayato Kuroda <kuroda.hayato@fujitsu.com>
Date: Mon, 14 Apr 2025 21:34:05 +0900
Subject: [PATCH v3 2/2] Follow naming rules for injection points
---
src/backend/utils/cache/inval.c | 2 +-
.../expected/syscache-update-pruned.out | 12 ++++++------
.../expected/syscache-update-pruned_1.out | 12 ++++++------
.../specs/syscache-update-pruned.spec | 6 +++---
4 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/src/backend/utils/cache/inval.c b/src/backend/utils/cache/inval.c
index c93679dfdcc..c53a15a8260 100644
--- a/src/backend/utils/cache/inval.c
+++ b/src/backend/utils/cache/inval.c
@@ -1207,7 +1207,7 @@ AtEOXact_Inval(bool isCommit)
/* Must be at top of stack */
Assert(transInvalInfo->my_level == 1 && transInvalInfo->parent == NULL);
- INJECTION_POINT("AtEOXact_Inval-with-transInvalInfo");
+ INJECTION_POINT("end-transaction-process-inval");
if (isCommit)
{
diff --git a/src/test/modules/injection_points/expected/syscache-update-pruned.out b/src/test/modules/injection_points/expected/syscache-update-pruned.out
index 9a9683bb496..3b743810ee6 100644
--- a/src/test/modules/injection_points/expected/syscache-update-pruned.out
+++ b/src/test/modules/injection_points/expected/syscache-update-pruned.out
@@ -10,8 +10,8 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('end-transaction-process-inval');
+ SELECT FROM injection_points_wakeup('end-transaction-process-inval');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
@@ -33,8 +33,8 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('end-transaction-process-inval');
+ SELECT FROM injection_points_wakeup('end-transaction-process-inval');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
@@ -64,8 +64,8 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('end-transaction-process-inval');
+ SELECT FROM injection_points_wakeup('end-transaction-process-inval');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
diff --git a/src/test/modules/injection_points/expected/syscache-update-pruned_1.out b/src/test/modules/injection_points/expected/syscache-update-pruned_1.out
index 64c39d708bd..d31fd66be70 100644
--- a/src/test/modules/injection_points/expected/syscache-update-pruned_1.out
+++ b/src/test/modules/injection_points/expected/syscache-update-pruned_1.out
@@ -10,8 +10,8 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('end-transaction-process-inval');
+ SELECT FROM injection_points_wakeup('end-transaction-process-inval');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
@@ -32,8 +32,8 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('end-transaction-process-inval');
+ SELECT FROM injection_points_wakeup('end-transaction-process-inval');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
@@ -62,8 +62,8 @@ step waitprunable4: CALL vactest.wait_prunable();
step vac4: VACUUM (FREEZE, DISABLE_PAGE_SKIPPING) pg_class;
step grant1: GRANT SELECT ON vactest.orig50 TO PUBLIC; <waiting ...>
step wakeinval4:
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('end-transaction-process-inval');
+ SELECT FROM injection_points_wakeup('end-transaction-process-inval');
<waiting ...>
step at2: <... completed>
step wakeinval4: <... completed>
diff --git a/src/test/modules/injection_points/specs/syscache-update-pruned.spec b/src/test/modules/injection_points/specs/syscache-update-pruned.spec
index 086d084de25..4fa3690dd74 100644
--- a/src/test/modules/injection_points/specs/syscache-update-pruned.spec
+++ b/src/test/modules/injection_points/specs/syscache-update-pruned.spec
@@ -117,7 +117,7 @@ session s2
setup {
SELECT FROM injection_points_set_local();
SELECT FROM
- injection_points_attach('AtEOXact_Inval-with-transInvalInfo', 'wait');
+ injection_points_attach('end-transaction-process-inval', 'wait');
}
step at2 {
CREATE TRIGGER to_set_relhastriggers BEFORE UPDATE ON vactest.orig50
@@ -145,8 +145,8 @@ step wakegrant4 {
}
step at4 { ALTER TABLE vactest.child50 INHERIT vactest.orig50; }
step wakeinval4 {
- SELECT FROM injection_points_detach('AtEOXact_Inval-with-transInvalInfo');
- SELECT FROM injection_points_wakeup('AtEOXact_Inval-with-transInvalInfo');
+ SELECT FROM injection_points_detach('end-transaction-process-inval');
+ SELECT FROM injection_points_wakeup('end-transaction-process-inval');
}
# Witness effects of steps at2 and/or at4.
step inspect4 {
--
2.43.5
On Mon, Apr 21, 2025 at 12:10:51PM +0000, Hayato Kuroda (Fujitsu) wrote:
Thanks for suggesting them. ISTM, you are correct. PSA updated version.
Thanks, I've applied some slight tweaks, and applied the result down
to v17, leaving the heap_update point alone.
--
Michael