Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sLqWS-00Gt2b-Up for pgsql-committers@arkaria.postgresql.org; Mon, 24 Jun 2024 20:42:45 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sLqWR-00Bmpf-9E for pgsql-committers@arkaria.postgresql.org; Mon, 24 Jun 2024 20:42:43 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sLqWB-00BlQ6-1p for pgsql-committers@lists.postgresql.org; Mon, 24 Jun 2024 20:42:27 +0000 Received: from mail-oi1-x22a.google.com ([2607:f8b0:4864:20::22a]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1sLqW8-002wXP-Jk for pgsql-committers@lists.postgresql.org; Mon, 24 Jun 2024 20:42:26 +0000 Received: by mail-oi1-x22a.google.com with SMTP id 5614622812f47-3c9cc66c649so2390592b6e.1 for ; Mon, 24 Jun 2024 13:42:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leadboat.com; s=google; t=1719261744; x=1719866544; darn=lists.postgresql.org; h=user-agent:in-reply-to:content-disposition:mime-version:references :message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=TR4XjofV2zgf1yzqy/f3BqgPtRbi/cPQ/sWHt5SvSmE=; b=RAUTIDjv1obv+Jz6zGnsMNMG4XCunaOORPHFWY6naGJdmlqr9msJDsaCBWi1VfQf8y lf/vPIwYgur55Gr4u6rIQh2TIzsUH43P6VX+0G2T4BM4S8k3JA65nQqm0XhGtVZSkPVA hhLK3FA+E6UFjlSMu0MQP0RLahR1x5jUZ+G2Y= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719261744; x=1719866544; h=user-agent:in-reply-to:content-disposition:mime-version:references :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=TR4XjofV2zgf1yzqy/f3BqgPtRbi/cPQ/sWHt5SvSmE=; b=l1n9HSM9foqQKiMxstv05Gp2pdRuA/L7htTO5bdIKJ8SbQ4Ym4AkMDrV1BLvo6oL94 0N26iHQ4KrSHtGaM9bRCdQENnNWkPq5wwtJuwd2mBxLcvmFZkbkBzOr2YI9g6XcvR9s/ 1wcJv6tdfYVUbrefhKhVKKfUAiHayzotwQD7I5sGuJojNnZHa4SWlW6olw8WaYTInDbs IQR6QmLGn2sVjV3hSR1zg+JCWvmCTLNBQgYhYorb8TFzhfgPqKRxsK1qx9YZGk+GsRvA Yc1/wUzp+aNT/B0R1upOmU/bRXpqqJUEiJONszITFE+4GK456QpOXzZwlnna4bUTLiob HJJg== X-Gm-Message-State: AOJu0Yzypc4sBoQ2w+rtxpyrNH4h2YEUFYeep0dKjxnlWZWizA6Z+w7g e2rkNFHwI5yI5uKXcuW2MebWkoz1NbAtCe8oUpIWVRdBC2Hpo1Nqwp+4sRLO2fMMkSKCTXeeXFE = X-Google-Smtp-Source: AGHT+IGIT2z3DiYSUR2RW5EuEU26U2Slfhk3zWHAnNbST9EdYmQdzAQ/uCCtD0/+G4PML99iH6jsDA== X-Received: by 2002:a05:6808:f03:b0:3d2:2aa8:3b32 with SMTP id 5614622812f47-3d5459ece7amr7595733b6e.30.1719261743744; Mon, 24 Jun 2024 13:42:23 -0700 (PDT) Received: from google.com ([2600:1702:a20:5750::48]) by smtp.gmail.com with ESMTPSA id 5614622812f47-3d5344fa318sm1619958b6e.15.2024.06.24.13.42.22 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 24 Jun 2024 13:42:23 -0700 (PDT) Date: Mon, 24 Jun 2024 13:42:21 -0700 From: Noah Misch To: Andrew Dunstan Cc: pgsql-committers@lists.postgresql.org Subject: Re: pgsql: Skip some permissions checks on Cygwin Message-ID: <20240624204221.42.nmisch@google.com> References: <20240624010311.0b.nmisch@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/2.2.12 (2023-09-09) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk 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.