agora inbox for pgsql-hackers@postgresql.orghelp / color / mirror / Atom feed
[PATCH v2 2/3] Add USDT for split location benchmarking 133+ messages / 1 participants [nested] [flat]
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
* [PATCH v2 2/3] Add USDT for split location benchmarking @ 2026-06-15 14:39 Dmitrii Dolgov <9erthalion6@gmail.com> 0 siblings, 0 replies; 133+ messages in thread From: Dmitrii Dolgov @ 2026-06-15 14:39 UTC (permalink / raw) Add new USDTs probe nbtree__page__findsplit__(start / done) for benchmarking of split logic. --- src/backend/access/nbtree/nbtsplitloc.c | 5 +++++ src/backend/utils/probes.d | 3 +++ 2 files changed, 8 insertions(+) diff --git a/src/backend/access/nbtree/nbtsplitloc.c b/src/backend/access/nbtree/nbtsplitloc.c index de9eca3c8b2..c64fef5ab27 100644 --- a/src/backend/access/nbtree/nbtsplitloc.c +++ b/src/backend/access/nbtree/nbtsplitloc.c @@ -17,6 +17,7 @@ #include "access/nbtree.h" #include "access/tableam.h" #include "common/int.h" +#include "pg_trace.h" typedef enum { @@ -152,6 +153,8 @@ _bt_findsplitloc(Relation rel, SplitPoint leftpage, rightpage; + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_START(origpage); + opaque = BTPageGetOpaque(origpage); maxoff = PageGetMaxOffsetNumber(origpage); @@ -425,6 +428,8 @@ _bt_findsplitloc(Relation rel, strategy); pfree(state.splits); + TRACE_POSTGRESQL_NBTREE_PAGE_FINDSPLIT_DONE(origpage); + return firstrightoff; } diff --git a/src/backend/utils/probes.d b/src/backend/utils/probes.d index d827ed0201c..b90b708d862 100644 --- a/src/backend/utils/probes.d +++ b/src/backend/utils/probes.d @@ -94,4 +94,7 @@ provider postgresql { probe nbtree__page__split(BlockNumber); probe nbtree__page__truncate(int); + + probe nbtree__page__findsplit__start(Page); + probe nbtree__page__findsplit__done(Page); }; -- 2.52.0 --hfljrm32b5osvvug Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: attachment; filename="v2-0003-Randomize-nbtree-split-location-to-avoid-oscillat.patch" Content-Transfer-Encoding: 8bit ^ permalink raw reply [nested|flat] 133+ messages in thread
end of thread, other threads:[~2026-06-15 14:39 UTC | newest] Thread overview: 133+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com> 2026-06-15 14:39 [PATCH v2 2/3] Add USDT for split location benchmarking Dmitrii Dolgov <9erthalion6@gmail.com>
This inbox is served by agora; see mirroring instructions for how to clone and mirror all data and code used for this inbox