Re: Synchronizing slots from primary to standby - Mailing list pgsql-hackers
From | Peter Smith |
---|---|
Subject | Re: Synchronizing slots from primary to standby |
Date | |
Msg-id | CAHut+PvW8s6AYD2UD0xadM+3VqBkXP2LjD30LEGRkHUa-Szm+Q@mail.gmail.com Whole thread Raw |
In response to | Re: Synchronizing slots from primary to standby (shveta malik <shveta.malik@gmail.com>) |
Responses |
RE: Synchronizing slots from primary to standby
|
List | pgsql-hackers |
FYI -- I checked patch v81-0001 to find which of the #includes are strictly needed. ====== src/backend/replication/logical/slotsync.c 1. +#include "postgres.h" + +#include <time.h> + +#include "access/genam.h" +#include "access/table.h" +#include "access/xlog_internal.h" +#include "access/xlogrecovery.h" +#include "catalog/pg_database.h" +#include "commands/dbcommands.h" +#include "libpq/pqsignal.h" +#include "pgstat.h" +#include "postmaster/bgworker.h" +#include "postmaster/fork_process.h" +#include "postmaster/interrupt.h" +#include "postmaster/postmaster.h" +#include "replication/logical.h" +#include "replication/logicallauncher.h" +#include "replication/walreceiver.h" +#include "replication/slotsync.h" +#include "storage/ipc.h" +#include "storage/lmgr.h" +#include "storage/procarray.h" +#include "tcop/tcopprot.h" +#include "utils/builtins.h" +#include "utils/fmgroids.h" +#include "utils/guc_hooks.h" +#include "utils/pg_lsn.h" +#include "utils/ps_status.h" +#include "utils/timeout.h" +#include "utils/varlena.h" Many of these #includes seem unnecessary. e.g. I was able to remove all those that are commented-out below, and the file still compiles OK with no warnings: #include "postgres.h" //#include <time.h> //#include "access/genam.h" //#include "access/table.h" #include "access/xlog_internal.h" #include "access/xlogrecovery.h" #include "catalog/pg_database.h" #include "commands/dbcommands.h" //#include "libpq/pqsignal.h" //#include "pgstat.h" //#include "postmaster/bgworker.h" //#include "postmaster/fork_process.h" //#include "postmaster/interrupt.h" //#include "postmaster/postmaster.h" #include "replication/logical.h" //#include "replication/logicallauncher.h" //#include "replication/walreceiver.h" #include "replication/slotsync.h" #include "storage/ipc.h" #include "storage/lmgr.h" #include "storage/procarray.h" //#include "tcop/tcopprot.h" #include "utils/builtins.h" //#include "utils/fmgroids.h" //#include "utils/guc_hooks.h" #include "utils/pg_lsn.h" //#include "utils/ps_status.h" //#include "utils/timeout.h" //#include "utils/varlena.h" ====== src/backend/replication/slot.c 2. #include "pgstat.h" +#include "replication/slotsync.h" #include "replication/slot.h" +#include "replication/walsender.h" #include "storage/fd.h" The #include "replication/walsender.h" seems to be unnecessary. ====== src/backend/replication/walsender.c 3. #include "replication/logical.h" +#include "replication/slotsync.h" #include "replication/slot.h" The #include "replication/slotsync.h" is needed, but only for Assert code: Assert(am_cascading_walsender || IsSyncingReplicationSlots()); So you could #ifdef around that #include if you wish to. ====== Kind Regards, Peter Smith. Fujitsu Australia
pgsql-hackers by date: