I'm so sorry for my careless, you're right.
But I still think there should add a tip to our user when there's check ok, 
because when I use the check mode, it didn't give me any message (If there's no 
error happend) and just exit, like this:


[beginnerc@bogon devel]$ postgres --check -D /home/beginnerc/pgsql/data
[beginnerc@bogon devel]$ 

[beginnerc@bogon devel]$ echo $?
0


That's confused me, until I print the return value.
So I think we should add this tip.


I fix and recommit the patch, thanks very much for your reply.


Yours,
Wen Yi





------------------ Original ------------------
From:                                                                           
                                             "Matthias van de Meent"            
                                                                        
<boekewurm+postg...@gmail.com&gt;;
Date:&nbsp;Tue, Jul 11, 2023 09:44 PM
To:&nbsp;"Wen Yi"<wen...@qq.com&gt;;
Cc:&nbsp;"pgsql-hackers"<pgsql-hackers@lists.postgresql.org&gt;;
Subject:&nbsp;Re: [PATCH]Add a tip to the check mode



On Tue, 11 Jul 2023 at 15:11, Wen Yi <wen...@qq.com&gt; wrote:
&gt;
&gt; Hi community,
&gt; when I learn the source of PostgreSQL, I think it's better to add a tip to 
the postgres "check mode", this can help the postgres's user when they check 
the postgres's data directory.
&gt;
&gt; src/backend/bootstrap/bootstrap.c
&gt;
&gt; if (check_only)
&gt;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
SetProcessingMode(NormalProcessing);
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CheckerModeMain();
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; abort();
&gt;&nbsp;&nbsp;&nbsp;&nbsp; }
&gt;
&gt; Instead of
&gt;
&gt; if (check_only)
&gt;&nbsp;&nbsp;&nbsp;&nbsp; {
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
SetProcessingMode(NormalProcessing);
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CheckerModeMain();
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf("PostgreSQL check 
success, there's no problem\n");
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; abort();
&gt;&nbsp;&nbsp;&nbsp;&nbsp; }

I'm afraid I don't understand the point of your suggestion.
CheckerModeMain doesn't return (it unconditionally calls proc_exit(),
which doesn't return) - it shouldn't hit the abort() clause. If it did
hit the abort() clause, that'd probably be a problem on its own,
right?

-- 
Kind regards,

Matthias van de Meent
Neon (https://neon.tech)

Attachment: Add-a-tip-to-the-check-mode[fix].patch
Description: Binary data

Reply via email to