Add an init callback for the logical decoding control data. LogicalDecodingCtl had no init callback so there is no guarantee that its fields are initialized. Its startup function StartupLogicalDecodingStatus() also returns without touching the fields when wal_level is 'minimal'.
Initialize them in an init callback explicitly. This is not a bug fix but we just shouldn't be depending on the allocator by accident. Backpatch to v19, where logicalctl.c was introduced, since a subsequent bug fix for slot synchronization adds a new field to LogicalDecodingCtlData and relies on this callback to initialize it. Reviewed-by: shveta malik <[email protected]> Reviewed-by: Nisha Moond <[email protected]> Discussion: https://postgr.es/m/CAM527d_eV_BAYFiQnfZLSPfHoihye=noi-onam_57pdh+f+...@mail.gmail.com Backpatch-through: 19 Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/952cb079131ba1bd16b71aada4b623b8b2926c6c Modified Files -------------- src/backend/replication/logical/logicalctl.c | 10 ++++++++++ 1 file changed, 10 insertions(+)
