]> granicus.if.org Git - postgresql/commit
Make current_logfiles use permissions assigned to files in data directory
authorMichael Paquier <michael@paquier.xyz>
Sun, 24 Mar 2019 12:00:35 +0000 (21:00 +0900)
committerMichael Paquier <michael@paquier.xyz>
Sun, 24 Mar 2019 12:00:35 +0000 (21:00 +0900)
commit276d2e6c2d8141f194a26da03b5b79375eb7041b
treefe5d812e73140432d2d4078d1b2f7f56f55396c2
parent280a408b48d5ee42969f981bceb9e9426c3a344c
Make current_logfiles use permissions assigned to files in data directory

Since its introduction in 19dc233c, current_logfiles has been assigned
the same permissions as a log file, which can be enforced with
log_file_mode.  This setup can lead to incompatibility problems with
group access permissions as current_logfiles is not located in the log
directory, but at the root of the data folder.  Hence, if group
permissions are used but log_file_mode is more restrictive, a backup
with a user in the group having read access could fail even if the log
directory is located outside of the data folder.

Per discussion with the folks mentioned below, we have concluded that
current_logfiles should not be treated as a log file as it only stores
metadata related to log files, and that it should use the same
permissions as all other files in the data directory.  This solution has
the merit to be simple and fixes all the interaction problems between
group access and log_file_mode.

Author: Haribabu Kommi
Reviewed-by: Stephen Frost, Robert Haas, Tom Lane, Michael Paquier
Discussion: https://postgr.es/m/CAJrrPGcEotF1P7AWoeQyD3Pqr-0xkQg_Herv98DjbaMj+naozw@mail.gmail.com
Backpatch-through: 11, where group access has been added.
src/backend/postmaster/syslogger.c