Hi,

On 2019-03-25 13:53:32 -0400, Tom Lane wrote:
> One idea that might be useful is to have walsenders refuse to transmit
> any logical-replication data if they see wal_level is too low.  That
> would get users' attention pretty quickly.

They do:


/*
 * Load previously initiated logical slot and prepare for sending data (via
 * WalSndLoop).
 */
static void
StartLogicalReplication(StartReplicationCmd *cmd)
{
        StringInfoData buf;

        /* make sure that our requirements are still fulfilled */
        CheckLogicalDecodingRequirements();

and CheckLogicalDecodingReqs contains:

        if (wal_level < WAL_LEVEL_LOGICAL)
                ereport(ERROR,
                                
(errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE),
                                 errmsg("logical decoding requires wal_level >= 
logical")));


Greetings,

Andres Freund

Reply via email to