On Tue, Mar 05, 2024 at 11:38:37PM +0530, Bharath Rupireddy wrote: > On Tue, Mar 5, 2024 at 7:34 AM Nathan Bossart <nathandboss...@gmail.com> > wrote: >> Is there any way to simplify this? For >> example, would it be possible to make an enum that tracks the >> streaming_replication_retry_interval state? > > I guess the way it is right now looks simple IMHO. If the suggestion > is to have an enum like below; it looks overkill for just two states. > > typedef enum > { > CAN_SWITCH_SOURCE, > SWITCH_SOURCE > } XLogSourceSwitchState;
I was thinking of something more like typedef enum { NO_FORCE_SWITCH_TO_STREAMING, /* no switch necessary */ FORCE_SWITCH_TO_STREAMING_PENDING, /* exhausting pg_wal */ FORCE_SWITCH_TO_STREAMING, /* switch to streaming now */ } WALSourceSwitchState; At least, that illustrates my mental model of the process here. IMHO that's easier to follow than two similarly-named bool variables. -- Nathan Bossart Amazon Web Services: https://aws.amazon.com