Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pZR6T-0006wf-D0 for pgsql-hackers@arkaria.postgresql.org; Tue, 07 Mar 2023 06:47:17 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pZR6Q-0001wX-G1 for pgsql-hackers@arkaria.postgresql.org; Tue, 07 Mar 2023 06:47:14 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pZR6Q-0001wO-46 for pgsql-hackers@lists.postgresql.org; Tue, 07 Mar 2023 06:47:14 +0000 Received: from mail-pl1-x62b.google.com ([2607:f8b0:4864:20::62b]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pZR6M-0001G7-JW for pgsql-hackers@lists.postgresql.org; Tue, 07 Mar 2023 06:47:12 +0000 Received: by mail-pl1-x62b.google.com with SMTP id p20so13023246plw.13 for ; Mon, 06 Mar 2023 22:47:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; t=1678171630; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=S0nyJwZSjkEpTe+NnpVEUb183m4XP1Noz4Eh+PxDJIk=; b=C4m7Pe6M2M+t6JInx/WbQhZIKjKM4HGsAh+uStNNA85hhCoSzMpt7aBbdLz5OVKvJM NxozuraKBFwNRTYBF+OQ1lKTROTjMfCTL7JehUUM4smsU4DasTeG17/RGfVsHBcTDpua HXbt0sfVAT641mHVYoTSTXF8qrPu6wYpOFExoDdYCCf5xMT1bK2F0nDKxJCPJqLvGuxx E095AwvehwsPMeSXIRG+vLkEvV5sg/BstrGmeQYWfW528c+VOFbqKAq+DL0h/3tS8uh2 1/Czg4BYB3HYRllwbbn7dtwhbKR5z69HLwbDZrZh1Gt7C0N2p9raJOWPO6syJjnXQaSR nZrw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1678171630; h=in-reply-to:content-transfer-encoding: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=S0nyJwZSjkEpTe+NnpVEUb183m4XP1Noz4Eh+PxDJIk=; b=DyN6LvpbPshjQ696jwdF8XliYQURI/9q2lL/OvUYmLr92vqJHWgW8TfWdKtr5b+Ce2 3LRxN0lUyoiTHcfTHL2PTaRxEiNRwMhXNWZruEt7kdOf79SuTdNixU4RE4GuTqRiDv/Z deIfqbY+KgNxZX9wStUbg/LxgrZZgFEUSNdg72Vdz0TNncX/e6DbdNbbyt50wv5LhEcQ Zs082EdgJyLVnRNYpYA2A7a5o1sINTgcjhQKBLnbNBcbOQpxbhif9whR5Vjl2G+J+jKM +1mtucTvbCl8wOnYwiCpTvWI8GgYikyd30OFutDxaobp4Ix9ivVL9Mj7lGahnEYsNCkb GJTQ== X-Gm-Message-State: AO0yUKULATsjL6oZjj69EYYwTSUVcv4tXKjVes55ok9ayD9JhPNT9r74 Y8AbEwkMub2FyXpQkpp0jsg= X-Google-Smtp-Source: AK7set9xt+7rQtlk6bxpdXeBwWFCDZnHzrPKbINNtOVNDvEFhpelnJUXiLcRfGEpH4gozwUjsqytkg== X-Received: by 2002:a17:902:eb8a:b0:19c:bd10:3d40 with SMTP id q10-20020a170902eb8a00b0019cbd103d40mr16535020plg.40.1678171629638; Mon, 06 Mar 2023 22:47:09 -0800 (PST) Received: from jrouhaud (2001-b011-1006-937a-f1c6-c856-8731-0a63.dynamic-ip6.hinet.net. [2001:b011:1006:937a:f1c6:c856:8731:a63]) by smtp.gmail.com with ESMTPSA id v12-20020a1709028d8c00b0019cb6222698sm7675266plo.266.2023.03.06.22.47.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 06 Mar 2023 22:47:08 -0800 (PST) Date: Tue, 7 Mar 2023 14:47:05 +0800 From: Julien Rouhaud To: Thomas Munro Cc: Michael Paquier , Bharath Rupireddy , Andres Freund , Alvaro Herrera , Nathan Bossart , PostgreSQL Hackers Subject: Re: Use pg_pwritev_with_retry() instead of write() in dir_open_for_write() to avoid partial writes? Message-ID: <20230307064705.tvpltmp6xjunyhju@jrouhaud> References: <20230216190020.67rslbjq4tmo6cvh@awork3.anarazel.de> <20230217173114.kxnzc7wt7xtusnlv@awork3.anarazel.de> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Tue, Mar 07, 2023 at 07:14:51PM +1300, Thomas Munro wrote: > On Tue, Mar 7, 2023 at 5:32 PM Michael Paquier wrote: > > On Tue, Mar 07, 2023 at 03:44:46PM +1300, Thomas Munro wrote: > > > Oh, you already pushed a fix. But now I'm wondering if it's useful to > > > have old buggy compilers set to run with -Werror. > > > > Yes, as far as I can see when investigating the issue, this is an old > > bug of gcc when detecting where the initialization needs to be > > applied. And at the same time the fix is deadly simple, so the > > current statu-quo does not sound that bad to me. Note that lapwing is > > one of the only animals testing 32b builds, and it has saved from > > quite few bugs over the years. > > Yeah, but I'm just wondering, why not run a current release on it[1]? > Debian is one of the few distributions still supporting 32 bit > kernels, and it's good to test rare things, but AFAIK the primary > reason we finish up with EOL'd OSes in the 'farm is because they have > been forgotten (the secondary reason is because they couldn't be > upgraded because the OS dropped the [micro]architecture). I registered lapwing as a 32b Debian 7 so I thought it would be expected to keep it as-is rather than upgrading to all newer major Debian versions, especially since there were newer debian animal registered (no 32b though AFAICS). I'm not opposed to upgrading it but I think there's still value in having somewhat old packages versions being tested, especially since there isn't much 32b coverage of those. I would be happy to register a newer 32b version, or even sid, if needed but the -m32 part on the CI makes me think there isn't much value doing that now. Now about the -Werror: > BTW CI also tests 32 bit with -m32 on Debian, but with a 64 bit > kernel, which probably doesn't change much at the level we care about, > so maybe this doesn't matter much... just sharing an observation that > we're wasting time thinking about an OS release that gave up the ghost > in 2016, because it is running with -Werror. *shrug* I think this is the first time that a problem raised by -Werror on that old animal is actually a false positive, while there were many times it reported useful stuff. Now this has been up for years before we got better CI tooling, especially with -m32 support, so there might not be any value to have it anymore. As I mentioned at [1] I don't mind removing it or just work on upgrading any dependency (or removing known buggy compiler flags) to keep it without being annoying. In any case I'm usually quite fast at reacting to any problem/complaint on that animal, so you don't have to worry about the buildfarm being red too long if it came to that. [1] https://www.postgresql.org/message-id/20220921155025.wdixzbrt2uzbi6vz%40jrouhaud