Hi, logicalrep_read_tuple() duplicates code for LOGICALREP_COLUMN_TEXT and LOGICALREP_COLUMN_BINARY introduced by commit 9de77b5. While it doesn't hurt anyone, deduplication makes code a bit leaner by 57 bytes [1]. I've attached a patch for $SUBJECT.
Thoughts? [1] size ./src/backend/replication/logical/proto.o PATCHED: text data bss dec hex filename 15558 0 0 15558 3cc6 ./src/backend/replication/logical/proto.o HEAD: text data bss dec hex filename 15615 0 0 15615 3cff ./src/backend/replication/logical/proto.o -- Bharath Rupireddy PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com
From 9c645a11a56b3729b4f9184e6bfb7a6fcf834692 Mon Sep 17 00:00:00 2001 From: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com> Date: Wed, 18 Jan 2023 05:14:47 +0000 Subject: [PATCH v1] Deduplicate logicalrep_read_tuple() --- src/backend/replication/logical/proto.c | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/backend/replication/logical/proto.c b/src/backend/replication/logical/proto.c index 3a9d53a61e..86e0750fde 100644 --- a/src/backend/replication/logical/proto.c +++ b/src/backend/replication/logical/proto.c @@ -895,17 +895,6 @@ logicalrep_read_tuple(StringInfo in, LogicalRepTupleData *tuple) /* we don't receive the value of an unchanged column */ break; case LOGICALREP_COLUMN_TEXT: - len = pq_getmsgint(in, 4); /* read length */ - - /* and data */ - value->data = palloc(len + 1); - pq_copymsgbytes(in, value->data, len); - value->data[len] = '\0'; - /* make StringInfo fully valid */ - value->len = len; - value->cursor = 0; - value->maxlen = len; - break; case LOGICALREP_COLUMN_BINARY: len = pq_getmsgint(in, 4); /* read length */ -- 2.34.1