Re: current_logfiles not following group access and instead follows log_file_mode permissions

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Haribabu Kommi <kommi.haribabu@gmail.com>
Cc: Stephen Frost <sfrost@snowman.net>, Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Gilles Darold <gilles.darold@dalibo.com>
Date: 2019-03-12T06:03:16Z
Lists: pgsql-hackers
On Tue, Feb 26, 2019 at 12:22:53PM +1100, Haribabu Kommi wrote:
> I checked the code why the current_logfiles is not implemented as
> shared memory and found that the current syslogger doesn't attach to
> the shared memory of the postmaster. To support storing the
> current_logfiles in shared memory, the syslogger process also needs
> to attach to the shared memory, this seems to be a new
> infrastructure change.

I don't think you can do that anyway and we should not do it.  Shared
memory can be reset after a backend exits abnormally, but the
syslogger lives across that.  What you sent upthread to improve the
documentation is in my opinion sufficient:
https://www.postgresql.org/message-id/CAJrrPGe-v2_LMFD9nHrBEjJy3vVOKJwY3w_h+Fs2nxCJg3PbaA@mail.gmail.com

I would not have split the paragraph you broke into two, but instead
just add this part in-between:
+       <para>
+        Permissions <literal>0640</literal> are recommended to be compatible with
+        <application>initdb</application> option <option>--allow-group-access</option>.
+       </para>
Any objections in doing that?
--
Michael

Commits

  1. Make current_logfiles use permissions assigned to files in data directory