pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
pgsql: Skip some permissions checks on Cygwin
12+ messages / 3 participants
[nested] [flat]

* pgsql: Skip some permissions checks on Cygwin
@ 2024-06-13 12:12 Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 01:03 ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
  0 siblings, 1 reply; 12+ messages in thread

From: Andrew Dunstan @ 2024-06-13 12:12 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Skip some permissions checks on Cygwin

These are checks that are already skipped on other Windows systems.

Backpatch to all live branches, as appropriate.

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/f83908798f78c4cafda217ca875602c88ea2ae28

Modified Files
--------------
src/bin/initdb/t/001_initdb.pl               | 2 +-
src/bin/pg_basebackup/t/010_pg_basebackup.pl | 2 +-
src/bin/pg_ctl/t/001_start_stop.pl           | 3 ++-
src/bin/pg_rewind/t/002_databases.pl         | 2 +-
src/bin/pg_verifybackup/t/003_corruption.pl  | 3 ++-
5 files changed, 7 insertions(+), 5 deletions(-)



^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* Re: pgsql: Skip some permissions checks on Cygwin
  2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
@ 2024-06-24 01:03 ` Noah Misch <noah@leadboat.com>
  2024-06-24 14:17   ` Re: pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 1 reply; 12+ messages in thread

From: Noah Misch @ 2024-06-24 01:03 UTC (permalink / raw)
  To: Andrew Dunstan <andrew@dunslane.net>; +Cc: pgsql-committers@lists.postgresql.org

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?





^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* Re: pgsql: Skip some permissions checks on Cygwin
  2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 01:03 ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
@ 2024-06-24 14:17   ` Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 20:42     ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
  0 siblings, 1 reply; 12+ messages in thread

From: Andrew Dunstan @ 2024-06-24 14:17 UTC (permalink / raw)
  To: Noah Misch <noah@leadboat.com>; +Cc: pgsql-committers@lists.postgresql.org


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 we didn't mind too much skipping these checks on native Windows we 
wouldn't mind on Cygwin either.

Up to now we haven't been covering Cygwin with TAP tests, and I'd like 
to change that.


cheers


andrew

--
Andrew Dunstan
EDB: https://www.enterprisedb.com






^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* Re: pgsql: Skip some permissions checks on Cygwin
  2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 01:03 ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
  2024-06-24 14:17   ` Re: pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
@ 2024-06-24 20:42     ` Noah Misch <noah@leadboat.com>
  2024-06-24 20:58       ` Re: pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 1 reply; 12+ messages in thread

From: Noah Misch @ 2024-06-24 20:42 UTC (permalink / raw)
  To: Andrew Dunstan <andrew@dunslane.net>; +Cc: pgsql-committers@lists.postgresql.org

On Mon, Jun 24, 2024 at 10:17:32AM -0400, Andrew Dunstan wrote:
> 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

I'll guess digging further is not worthwhile.  Even if it is a PostgreSQL bug,
the consequences seem limited to unintentionally withholding group access.
There's a remote chance you're using a "noacl" mount, where this result could
fit.

> we didn't mind too much skipping these checks on native Windows we wouldn't
> mind on Cygwin either.

The reasons for skipping the test are different on native Windows (does not
provide POSIX file modes) vs. Cygwin (has POSIX file modes, but the
combination of PostgreSQL and Cygwin somehow reaches the wrong mode).

> Up to now we haven't been covering Cygwin with TAP tests, and I'd like to
> change that.

Thanks for doing that.





^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* Re: pgsql: Skip some permissions checks on Cygwin
  2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 01:03 ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
  2024-06-24 14:17   ` Re: pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 20:42     ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
@ 2024-06-24 20:58       ` Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 22:43         ` Re: pgsql: Skip some permissions checks on Cygwin Marco Atzeri <marco.atzeri@gmail.com>
  0 siblings, 1 reply; 12+ messages in thread

From: Andrew Dunstan @ 2024-06-24 20:58 UTC (permalink / raw)
  To: Noah Misch <noah@leadboat.com>; marco atzeri <marco.atzeri@gmail.com>; +Cc: pgsql-committers@lists.postgresql.org


On 2024-06-24 Mo 4:42 PM, Noah Misch wrote:
> On Mon, Jun 24, 2024 at 10:17:32AM -0400, Andrew Dunstan wrote:
>> 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
> I'll guess digging further is not worthwhile.  Even if it is a PostgreSQL bug,
> the consequences seem limited to unintentionally withholding group access.
> There's a remote chance you're using a "noacl" mount, where this result could
> fit.


mount doesn't show noacl being used


>
>> we didn't mind too much skipping these checks on native Windows we wouldn't
>> mind on Cygwin either.
> The reasons for skipping the test are different on native Windows (does not
> provide POSIX file modes) vs. Cygwin (has POSIX file modes, but the
> combination of PostgreSQL and Cygwin somehow reaches the wrong mode).


True.


I wonder if Marco can shed any light on what's going on here.


cheers


andrew

--
Andrew Dunstan
EDB: https://www.enterprisedb.com






^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* Re: pgsql: Skip some permissions checks on Cygwin
  2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 01:03 ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
  2024-06-24 14:17   ` Re: pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 20:42     ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
  2024-06-24 20:58       ` Re: pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
@ 2024-06-24 22:43         ` Marco Atzeri <marco.atzeri@gmail.com>
  2024-06-25 15:55           ` Re: pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 1 reply; 12+ messages in thread

From: Marco Atzeri @ 2024-06-24 22:43 UTC (permalink / raw)
  To: Andrew Dunstan <andrew@dunslane.net>; Noah Misch <noah@leadboat.com>; +Cc: pgsql-committers@lists.postgresql.org

On 24/06/2024 22:58, Andrew Dunstan wrote:
> 
> On 2024-06-24 Mo 4:42 PM, Noah Misch wrote:
>> On Mon, Jun 24, 2024 at 10:17:32AM -0400, Andrew Dunstan wrote:
>>> 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
>> I'll guess digging further is not worthwhile.  Even if it is a 
>> PostgreSQL bug,
>> the consequences seem limited to unintentionally withholding group 
>> access.
>> There's a remote chance you're using a "noacl" mount, where this 
>> result could
>> fit.
> 
> 
> mount doesn't show noacl being used
> 
> 
>>
>>> we didn't mind too much skipping these checks on native Windows we 
>>> wouldn't
>>> mind on Cygwin either.
>> The reasons for skipping the test are different on native Windows 
>> (does not
>> provide POSIX file modes) vs. Cygwin (has POSIX file modes, but the
>> combination of PostgreSQL and Cygwin somehow reaches the wrong mode).
> 
> 
> True.
> 
> 
> I wonder if Marco can shed any light on what's going on here.
> 
> 
> cheers
> 
> 
> andrew
> 

are you referring to a specific version or is an old issue ?

Regards
Marco







^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* Re: pgsql: Skip some permissions checks on Cygwin
  2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 01:03 ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
  2024-06-24 14:17   ` Re: pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 20:42     ` Re: pgsql: Skip some permissions checks on Cygwin Noah Misch <noah@leadboat.com>
  2024-06-24 20:58       ` Re: pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
  2024-06-24 22:43         ` Re: pgsql: Skip some permissions checks on Cygwin Marco Atzeri <marco.atzeri@gmail.com>
@ 2024-06-25 15:55           ` Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 12+ messages in thread

From: Andrew Dunstan @ 2024-06-25 15:55 UTC (permalink / raw)
  To: Marco Atzeri <marco.atzeri@gmail.com>; Noah Misch <noah@leadboat.com>; +Cc: pgsql-committers@lists.postgresql.org


On 2024-06-24 Mo 6:43 PM, Marco Atzeri wrote:
> On 24/06/2024 22:58, Andrew Dunstan wrote:
>>
>> On 2024-06-24 Mo 4:42 PM, Noah Misch wrote:
>>> On Mon, Jun 24, 2024 at 10:17:32AM -0400, Andrew Dunstan wrote:
>>>> 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
>>> I'll guess digging further is not worthwhile.  Even if it is a 
>>> PostgreSQL bug,
>>> the consequences seem limited to unintentionally withholding group 
>>> access.
>>> There's a remote chance you're using a "noacl" mount, where this 
>>> result could
>>> fit.
>>
>>
>> mount doesn't show noacl being used
>>
>>
>>>
>>>> we didn't mind too much skipping these checks on native Windows we 
>>>> wouldn't
>>>> mind on Cygwin either.
>>> The reasons for skipping the test are different on native Windows 
>>> (does not
>>> provide POSIX file modes) vs. Cygwin (has POSIX file modes, but the
>>> combination of PostgreSQL and Cygwin somehow reaches the wrong mode).
>>
>>
>> True.
>>
>>
>> I wonder if Marco can shed any light on what's going on here.
>>
>>
>> cheers
>>
>>
>> andrew
>>
>
> are you referring to a specific version or is an old issue ?
>
>


This is probably an old issue. We haven't been running TAP tests on 
Cygwin (at least in the buildfarm) so the issue hasn't surfaced before now.


cheers


andrew

--
Andrew Dunstan
EDB: https://www.enterprisedb.com






^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* pgsql: Skip some permissions checks on Cygwin
@ 2024-06-13 12:12 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 12+ messages in thread

From: Andrew Dunstan @ 2024-06-13 12:12 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Skip some permissions checks on Cygwin

These are checks that are already skipped on other Windows systems.

Backpatch to all live branches, as appropriate.

Branch
------
REL_16_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/32c5dc0ebe83e927c953c42ad79148a03933c6ba

Modified Files
--------------
src/bin/initdb/t/001_initdb.pl               | 2 +-
src/bin/pg_basebackup/t/010_pg_basebackup.pl | 2 +-
src/bin/pg_ctl/t/001_start_stop.pl           | 3 ++-
src/bin/pg_rewind/t/002_databases.pl         | 2 +-
src/bin/pg_verifybackup/t/003_corruption.pl  | 3 ++-
5 files changed, 7 insertions(+), 5 deletions(-)



^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* pgsql: Skip some permissions checks on Cygwin
@ 2024-06-13 12:12 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 12+ messages in thread

From: Andrew Dunstan @ 2024-06-13 12:12 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Skip some permissions checks on Cygwin

These are checks that are already skipped on other Windows systems.

Backpatch to all live branches, as appropriate.

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/c38518fa978075d08d64a34e1b4504da13a81e02

Modified Files
--------------
src/bin/initdb/t/001_initdb.pl               | 2 +-
src/bin/pg_basebackup/t/010_pg_basebackup.pl | 2 +-
src/bin/pg_ctl/t/001_start_stop.pl           | 3 ++-
src/bin/pg_rewind/t/002_databases.pl         | 2 +-
src/bin/pg_verifybackup/t/003_corruption.pl  | 3 ++-
5 files changed, 7 insertions(+), 5 deletions(-)



^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* pgsql: Skip some permissions checks on Cygwin
@ 2024-06-13 12:12 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 12+ messages in thread

From: Andrew Dunstan @ 2024-06-13 12:12 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Skip some permissions checks on Cygwin

These are checks that are already skipped on other Windows systems.

Backpatch to all live branches, as appropriate.

Branch
------
REL_14_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/0e51485392c0c457de0709181a3d2bfdba6f3fb6

Modified Files
--------------
src/bin/initdb/t/001_initdb.pl               | 2 +-
src/bin/pg_basebackup/t/010_pg_basebackup.pl | 2 +-
src/bin/pg_ctl/t/001_start_stop.pl           | 3 ++-
src/bin/pg_rewind/t/002_databases.pl         | 2 +-
src/bin/pg_verifybackup/t/003_corruption.pl  | 3 ++-
5 files changed, 7 insertions(+), 5 deletions(-)



^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* pgsql: Skip some permissions checks on Cygwin
@ 2024-06-13 12:12 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 12+ messages in thread

From: Andrew Dunstan @ 2024-06-13 12:12 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Skip some permissions checks on Cygwin

These are checks that are already skipped on other Windows systems.

Backpatch to all live branches, as appropriate.

Branch
------
REL_13_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/57625308f62da2d4f875478a39158a23e41a3dbe

Modified Files
--------------
src/bin/initdb/t/001_initdb.pl               |  2 +-
src/bin/pg_basebackup/t/010_pg_basebackup.pl | 15 +++++++++++----
src/bin/pg_ctl/t/001_start_stop.pl           |  3 ++-
src/bin/pg_rewind/t/002_databases.pl         |  2 +-
src/bin/pg_verifybackup/t/003_corruption.pl  |  3 ++-
5 files changed, 17 insertions(+), 8 deletions(-)



^ permalink  raw  reply  [nested|flat] 12+ messages in thread

* pgsql: Skip some permissions checks on Cygwin
@ 2024-06-13 12:12 Andrew Dunstan <andrew@dunslane.net>
  0 siblings, 0 replies; 12+ messages in thread

From: Andrew Dunstan @ 2024-06-13 12:12 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Skip some permissions checks on Cygwin

These are checks that are already skipped on other Windows systems.

Backpatch to all live branches, as appropriate.

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/ca947649208ce7343c54c8f92e67ea9274be812c

Modified Files
--------------
src/bin/initdb/t/001_initdb.pl               |  2 +-
src/bin/pg_basebackup/t/010_pg_basebackup.pl | 15 +++++++++++----
src/bin/pg_ctl/t/001_start_stop.pl           |  3 ++-
src/bin/pg_rewind/t/002_databases.pl         |  2 +-
4 files changed, 15 insertions(+), 7 deletions(-)



^ permalink  raw  reply  [nested|flat] 12+ messages in thread


end of thread, other threads:[~2024-06-25 15:55 UTC | newest]

Thread overview: 12+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
2024-06-24 01:03 ` Noah Misch <noah@leadboat.com>
2024-06-24 14:17   ` Andrew Dunstan <andrew@dunslane.net>
2024-06-24 20:42     ` Noah Misch <noah@leadboat.com>
2024-06-24 20:58       ` Andrew Dunstan <andrew@dunslane.net>
2024-06-24 22:43         ` Marco Atzeri <marco.atzeri@gmail.com>
2024-06-25 15:55           ` Andrew Dunstan <andrew@dunslane.net>
2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>
2024-06-13 12:12 pgsql: Skip some permissions checks on Cygwin Andrew Dunstan <andrew@dunslane.net>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox