Re: Add comments for a postgres program in bootstrap mode - Mailing list pgsql-hackers

From Amit Langote
Subject Re: Add comments for a postgres program in bootstrap mode
Date
Msg-id CA+HiwqGKOCnj=F-OV+4Mb9oUuxZFQ5SOdfuamEULfugzzS5YoQ@mail.gmail.com
Whole thread Raw
In response to Add comments for a postgres program in bootstrap mode  (Youki Shiraishi <shiraishi@computer.org>)
Responses Re: Add comments for a postgres program in bootstrap mode
List pgsql-hackers
Hi Shiraishi-san,

On Thu, Sep 26, 2019 at 3:06 PM Youki Shiraishi <shiraishi@computer.org> wrote:
>
> Hi,
>
> I have just started to read the PostgreSQL code and found a lack of comments for a postgres backend program in
bootstrapmode.
 
> When I saw the --boot option implemented in src/backend/main/main.c at first time, I did not understand why the
--bootoption is not documented and what it is used for.
 
> The only way to know these things is to type `grep -r '\--boot' .` on a project root.
> It is easy to see that the --boot option is used in initdb for some historical reasons, but it is painful for a
beginnerlike me.
 
> I believe the attached patch which adds a few comments might help a beginner.

Thanks for the patch.  It might be a good idea to demystify this
secret --boot option.

+ /* Bootstrap mode for initdb */
  if (argc > 1 && strcmp(argv[1], "--boot") == 0)
  AuxiliaryProcessMain(argc, argv); /* does not return */
  else if (argc > 1 && strcmp(argv[1], "--describe-config") == 0)

How about expanding that comment just a little bit, say:

    /*
     * Bootstrapping is handled by AuxiliaryProcessMain() for historic
     * reasons.
     */

@@ -190,7 +190,8 @@ static IndexList *ILHead = NULL;
  * AuxiliaryProcessMain
  *
  * The main entry point for auxiliary processes, such as the bgwriter,
- * walwriter, walreceiver, bootstrapper and the shared memory checker code.
+ * walwriter, walreceiver, postgres program in bootstrap mode and the
+ * shared memory checker code.

This change may not be necessary, because, bootstrapper is a good
short name for 'postgres program in bootstrap mode'.  Also, this name
is similar in style to the names of other auxiliary processes.

Thanks,
Amit



pgsql-hackers by date:

Previous
From: Masahiko Sawada
Date:
Subject: pg_wal/RECOVERYHISTORY file remains after archive recovery
Next
From: Amit Khandekar
Date:
Subject: Re: Minimal logical decoding on standbys