Re: PATCH: logical_work_mem and logical streaming of large in-progress transactions
Neha Sharma <neha.sharma@enterprisedb.com>
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Tighten the concurrent abort check during decoding.
- 2ce353fc1902 14.0 landed
-
Improve hash_create()'s API for some added robustness.
- b3817f5f7746 14.0 landed
-
Use HASH_BLOBS for xidhash.
- a1b8aa1e4eec 14.0 landed
-
Fix initialization of RelationSyncEntry for streaming transactions.
- 69bd60672af6 14.0 landed
-
Remove unused function declaration in logicalproto.h.
- ddd5f6d2609b 14.0 landed
-
Add additional tests to test streaming of in-progress transactions.
- 58b5ae9d62bd 14.0 landed
-
Fix inline marking introduced in commit 464824323e.
- ac15b499f7f9 14.0 landed
-
Add support for streaming to built-in logical replication.
- 464824323e57 14.0 landed
-
Fix the SharedFileSetUnregister API.
- 4ab77697f67a 14.0 landed
-
Fix comment in procarray.c
- 77c7267c37f7 14.0 cited
-
Suppress compiler warning in non-cassert builds.
- e942af7b8261 14.0 cited
-
Extend the BufFile interface.
- 808e13b282ef 14.0 landed
-
Mark a few logical decoding related variables with PGDLLIMPORT.
- b48cac3b10a0 14.0 landed
-
Implement streaming mode in ReorderBuffer.
- 7259736a6e5b 14.0 landed
-
Extend the logical decoding output plugin API with stream methods.
- 45fdc9738b36 14.0 landed
-
WAL Log invalidations at command end with wal_level=logical.
- c55040ccd017 14.0 landed
-
Immediately WAL-log subtransaction and top-level XID association.
- 0bead9af484c 14.0 landed
-
Allow logical replication to transfer data in binary format.
- 9de77b545313 14.0 cited
-
Only superuser can set sslcert/sslkey in postgres_fdw user mappings
- cebf9d6e6ee1 13.0 cited
-
Track statistics for spilling of changes from ReorderBuffer.
- 9290ad198b15 13.0 landed
-
Add logical_decoding_work_mem to limit ReorderBuffer memory usage.
- cec2edfa7859 13.0 landed
-
logical decoding: process ASSIGNMENT during snapshot build
- bac2fae05c77 13.0 cited
-
Emit invalidations to standby for transactions without xid.
- c6ff84b06a68 9.6.0 cited
Hi, I have done code coverage analysis on the latest patches(v53) and below is the report for the same. Highlighted are the files where the coverage modifications were observed. OS: Ubuntu 18.04 Patch applied on commit : 77c7267c37f7fa8e5e48abda4798afdbecb2b95a File Name Coverage Without logical decoding patch On v53 (2,3,4,5) patch Without v53-0003 patch %Line %Function %Line %Function %Line %Function src/backend/access/transam/xact.c 86.2 92.9 86.2 92.9 86.2 92.9 src/backend/access/transam/xloginsert.c 90.2 94.1 90.2 94.1 90.2 94.1 src/backend/access/transam/xlogreader.c 73.3 93.3 73.8 93.3 73.8 93.3 src/backend/replication/logical/decode.c 93.4 100 93.4 100 93.4 100 src/backend/access/rmgrdesc/xactdesc.c 54.4 63.6 54.4 63.6 54.4 63.6 src/backend/replication/logical/reorderbuffer.c 93.4 96.7 93.4 96.7 93.4 96.7 src/backend/utils/cache/inval.c 98.1 100 98.1 100 98.1 100 contrib/test_decoding/test_decoding.c 86.8 95.2 86.8 95.2 86.8 95.2 src/backend/replication/logical/logical.c 90.9 93.5 90.9 93.5 91.8 93.5 src/backend/access/heap/heapam.c 86.1 94.5 86.1 94.5 86.1 94.5 src/backend/access/index/genam.c 90.7 91.7 91.2 91.7 91.2 91.7 src/backend/access/table/tableam.c 90.6 100 90.6 100 90.6 100 src/backend/utils/time/snapmgr.c 81.1 98.1 80.2 98.1 81.1 98.1 src/include/access/tableam.h 92.5 100 92.5 100 92.5 100 src/backend/access/heap/heapam_visibility.c 77.8 100 77.8 100 77.8 100 src/backend/replication/walsender.c 90.5 97.8 90.5 97.8 90.9 100 src/backend/catalog/pg_subscription.c 96 100 96 100 96 100 src/backend/commands/subscriptioncmds.c 93.2 90 92.7 90 92.7 90 src/backend/postmaster/pgstat.c 64.2 85.1 63.9 85.1 64.6 86.1 src/backend/replication/libpqwalreceiver/libpqwalreceiver.c 82.4 95 82.5 95 83.6 95 src/backend/replication/logical/proto.c 93.5 91.3 93.7 93.3 93.7 93.3 src/backend/replication/logical/worker.c 91.6 96 91.5 97.4 91.9 97.4 src/backend/replication/pgoutput/pgoutput.c 81.9 100 85.5 100 86.2 100 src/backend/replication/slotfuncs.c 93 93.8 93 93.8 93 93.8 src/include/pgstat.h 100 - 100 - 100 - src/backend/replication/logical/logicalfuncs.c 87.1 90 87.1 90 87.1 90 src/backend/storage/file/buffile.c 68.3 85 69.6 85 69.6 85 src/backend/storage/file/fd.c 81.1 93 81.1 93 81.1 93 src/backend/storage/file/sharedfileset.c 77.7 90.9 93.2 100 93.2 100 src/backend/utils/sort/logtape.c 94.4 100 94.4 100 94.4 100 src/backend/utils/sort/sharedtuplestore.c 90.1 90.9 90.1 90.9 90.1 90.9 Thanks. -- Regards, Neha Sharma On Thu, Aug 27, 2020 at 11:16 AM Amit Kapila <amit.kapila16@gmail.com> wrote: > On Wed, Aug 26, 2020 at 11:22 PM Jeff Janes <jeff.janes@gmail.com> wrote: > > > > > > On Tue, Aug 25, 2020 at 8:58 AM Amit Kapila <amit.kapila16@gmail.com> > wrote: > > > >> > >> I am planning > >> to push the first patch (v53-0001-Extend-the-BufFile-interface) in > >> this series tomorrow unless you have any comments on the same. > > > > > > > > I'm getting compiler warnings now, > src/backend/storage/file/sharedfileset.c line 288 needs to be: > > > > bool found PG_USED_FOR_ASSERTS_ONLY = false; > > > > Thanks for the report. Tom Lane has already fixed this [1]. > > [1] - > https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=e942af7b8261cd8070d0eeaf518dbc1a664859fd > > -- > With Regards, > Amit Kapila. > > >