Re: Narrow the scope of the variable outputstr in logicalrep_write_tuple - Mailing list pgsql-hackers

From Bharath Rupireddy
Subject Re: Narrow the scope of the variable outputstr in logicalrep_write_tuple
Date
Msg-id CALj2ACV1m79SR40t21DRp_YTd7SgMUB3=V=QjeBKJt-iHwvbMw@mail.gmail.com
Whole thread Raw
In response to Narrow the scope of the variable outputstr in logicalrep_write_tuple  (japin <japinli@hotmail.com>)
Responses Re: Narrow the scope of the variable outputstr in logicalrep_write_tuple  (japin <japinli@hotmail.com>)
List pgsql-hackers
On Mon, Jan 18, 2021 at 1:16 PM japin <japinli@hotmail.com> wrote:
>
>
> Hi,
>
> I find that the outputstr variable in logicalrep_write_tuple() only use in
> `else` branch, I think we can narrow the scope, just like variable outputbytes
> in `if` branch (for more readable).
>
>         /*
>          * Send in binary if requested and type has suitable send function.
>          */
>         if (binary && OidIsValid(typclass->typsend))
>         {
>             bytea      *outputbytes;
>             int         len;
>
>             pq_sendbyte(out, LOGICALREP_COLUMN_BINARY);
>             outputbytes = OidSendFunctionCall(typclass->typsend, values[i]);
>             len = VARSIZE(outputbytes) - VARHDRSZ;
>             pq_sendint(out, len, 4);    /* length */
>             pq_sendbytes(out, VARDATA(outputbytes), len);   /* data */
>             pfree(outputbytes);
>         }
>         else
>         {
>             pq_sendbyte(out, LOGICALREP_COLUMN_TEXT);
>             outputstr = OidOutputFunctionCall(typclass->typoutput, values[i]);
>             pq_sendcountedtext(out, outputstr, strlen(outputstr), false);
>             pfree(outputstr);
>         }
>
> Attached is a samll patch to fix it.

+1. Binary mode uses block level variable outputbytes, so making
outputstr block level is fine IMO.

Patch basically looks good to me, but it doesn't apply on my system.
Looks like it's not created with git commit. Please create the patch
with git commit command.

git apply /mnt/hgfs/Shared/narrow-the-scope-of-the-variable-in-logicalrep_write_tuple.patch
error: corrupt patch at line 10

With Regards,
Bharath Rupireddy.
EnterpriseDB: http://www.enterprisedb.com



pgsql-hackers by date:

Previous
From: Craig Ringer
Date:
Subject: [PATCH] ProcessInterrupts_hook
Next
From: japin
Date:
Subject: Re: Narrow the scope of the variable outputstr in logicalrep_write_tuple