On Tue, 28 Jan 2025 at 08:40, Ajin Cherian <itsa...@gmail.com> wrote:
>
> Here's a patch-set created based on the design changes proposed by Hou-san.

Few comments:
1) Shouldn't we do the same thing for other DecodeXXX functions?
@@ -915,6 +915,11 @@ DecodeInsert(LogicalDecodingContext *ctx,
XLogRecordBuffer *buf)
        if (FilterByOrigin(ctx, XLogRecGetOrigin(r)))
                return;

+       if (ctx->reorder->can_filter_change &&
+               ReorderBufferFilterByRelFileLocator(ctx->reorder,
XLogRecGetXid(r),
+
                 buf->origptr, &target_locator, true))
+               return;
+

2) Let's add some debug logs so that it will be easy to verify the
changes that are getting filtered, or else we will have to debug and
verify them:
@@ -915,6 +915,11 @@ DecodeInsert(LogicalDecodingContext *ctx,
XLogRecordBuffer *buf)
        if (FilterByOrigin(ctx, XLogRecGetOrigin(r)))
                return;

+       if (ctx->reorder->can_filter_change &&
+               ReorderBufferFilterByRelFileLocator(ctx->reorder,
XLogRecGetXid(r),
+
                 buf->origptr, &target_locator, true))
+               return;

3) Also there are no tests currently, probably if we add the above
mentioned debug logs we could add few tests and verify them based on
the logs.

4) Can you elaborate a bit in the commit message why we need to
capture if a transaction has snapshot changes:
Subject: [PATCH v12 1/3] Track transactions with internal snapshot changes

Track transactions which have snapshot changes with a new flag
RBTXN_HAS_SNAPSHOT_CHANGES

Regards,
Vignesh


Reply via email to