Re: Suppressing useless wakeups in walreceiver - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: Suppressing useless wakeups in walreceiver
Date
Msg-id 20221013103739.mk767painn4ouxi5@alvherre.pgsql
Whole thread Raw
In response to Suppressing useless wakeups in walreceiver  (Thomas Munro <thomas.munro@gmail.com>)
Responses Re: Suppressing useless wakeups in walreceiver  (Nathan Bossart <nathandbossart@gmail.com>)
List pgsql-hackers
I think in 0001 we should put more stuff in the state struct --
specifically these globals:

static int    recvFile = -1;
static TimeLineID recvFileTLI = 0;
static XLogSegNo recvSegNo = 0;

The main reason is that it seems odd to have startpointTLI in the struct
used in some places together with a file-global recvFileTLI which isn't.
The way one is passed as argument and the other as part of a struct
seemed too distracting.  This should reduce the number of moving parts,
ISTM.


One thing that confused me for a moment is that we have some state in
walrcv and some more state in 'state'.  The difference is pretty obvious
once you look at the other, but it suggest to me that a better variable
name for the latter is 'localstate' to more obviously distinguish them.


I was tempted to suggest that LogstreamResult would also be good to have
in the new struct, but that might be going a bit too far for a first
cut.

-- 
Álvaro Herrera         PostgreSQL Developer  —  https://www.EnterpriseDB.com/



pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: Make finding openssl program a configure or meson option
Next
From: David Rowley
Date:
Subject: Re: Use LIMIT instead of Unique for DISTINCT when all distinct pathkeys are redundant