On 2024-06-23 Su 9:03 PM, Noah Misch wrote:
On Thu, Jun 13, 2024 at 12:12:29PM +0000, Andrew Dunstan wrote:
Skip some permissions checks on Cygwin
These are checks that are already skipped on other Windows systems.
skip "unix-style permissions not supported on Windows", 2
- if ($windows_os);
+ if ($windows_os || $Config::Config{osname} eq 'cygwin');
- skip "group access not supported on Windows", 3 if
($windows_os);
+ skip "group access not supported on Windows", 3
+ if ($windows_os || $Config::Config{osname} eq 'cygwin');
Cygwin does support Unix-style permissions, so I'm not following
the rationale
for this change. Can you say more?
It seems to have some difficulties with group permissions in some
cases. I
improved the error message a bit, and got a bunch that all look
like this:
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/global/6303
mode must be 0640, not 0600
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/global/pg_control
mode must be 0640, not 0600
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/global/pg_filenode.map
mode must be 0640, not 0600
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/base/5
mode must be 0750, not 0000000000000000000000000000000000000700
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/base/5/112
mode must be 0640, not 0600
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/base/5/113
mode must be 0640, not 0600
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/base/5/1247
mode must be 0640, not 0600
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/base/5/1247_fsm
mode must be 0640, not 0600
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/base/5/1247_vm
mode must be 0640, not 0600
build/testrun/initdb/001_initdb/log/regress_log_001_initdb:*main::STDERR/home/Administrator/postgresql/build/testrun/initdb/001_initdb/data/tmp_test_qlhf/data_group/base/5/1249
mode must be 0640, not 0600
Apparently there's some issue with the group None. I don't mind
digging
further if you think it might be worthwhile, but it seemed to me
that since