Re: Fastpath while arranging the changes in LSN order in logicaldecoding - Mailing list pgsql-hackers

From David Zhang
Subject Re: Fastpath while arranging the changes in LSN order in logicaldecoding
Date
Msg-id 1a8aa486-e5da-807f-0f3b-cb54911d3d6d@highgo.ca
Whole thread Raw
In response to Re: Fastpath while arranging the changes in LSN order in logical decoding  (David Zhang <david.zhang@highgo.ca>)
Responses Re: Fastpath while arranging the changes in LSN order in logicaldecoding  (David Steele <david@pgmasters.net>)
Re: Fastpath while arranging the changes in LSN order in logical decoding  (Dilip Kumar <dilipbalaut@gmail.com>)
List pgsql-hackers
After manually applied the patch, a diff regenerated is attached.

On 2020-02-18 4:16 p.m., David Zhang wrote:
> 1. Tried to apply the patch to PG 12.2 commit 45b88269a353ad93744772791feb6d01bc7e1e42 (HEAD -> REL_12_2, tag:
REL_12_2),it doesn't work. Then tried to check the patch, and found the errors showing below.
 
> $ git apply --check 0001-Fastpath-for-sending-changes-to-output-plugin-in-log.patch
> error: patch failed: contrib/test_decoding/logical.conf:1
> error: contrib/test_decoding/logical.conf: patch does not apply
> error: patch failed: src/backend/replication/logical/reorderbuffer.c:1133
> error: src/backend/replication/logical/reorderbuffer.c: patch does not apply
>
> 2. Ran a further check for file "logical.conf", and found there is only one commit since 2014, which doesn't have the
parameter,"logical_decoding_work_mem = 64kB"
 
>
> 3. Manually apply the patch including src/backend/replication/logical/reorderbuffer.c, and then ran a simple logical
replicationtest. A connection issue is found like below,
 
> "table public.pgbench_accounts: INSERT: aid[integer]:4071 bid[integer]:1 abalance[integer]:0 filler[character]:'
                                                                             '
 
> pg_recvlogical: error: could not receive data from WAL stream: server closed the connection unexpectedly
>     This probably means the server terminated abnormally
>     before or while processing the request.
> pg_recvlogical: disconnected; waiting 5 seconds to try again"
>
> 4. This connection issue can be reproduced on PG 12.2 commit mentioned above, the basic steps,
> 4.1 Change "wal_level = logical" in "postgresql.conf"
> 4.2 create a logical slot and listen on it,
> $ pg_recvlogical -d postgres --slot test --create-slot
> $ pg_recvlogical -d postgres --slot test --start -f -
>
> 4.3 from another terminal, run the command below,
> $ pgbench -i -p 5432 -d postgres
>
> Let me know if I did something wrong, and if a new patch is available, I can re-run the test on the same
environment.
>
-- 
David

Software Engineer
Highgo Software Inc. (Canada)
www.highgo.ca

Attachment

pgsql-hackers by date:

Previous
From: Cary Huang
Date:
Subject: Re: Internal key management system
Next
From: Peter Geoghegan
Date:
Subject: Re: Delaying/avoiding BTreeTupleGetNAtts() call within _bt_compare()