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 1tnh6p-000Wcx-Gs for pgsql-hackers@arkaria.postgresql.org; Thu, 27 Feb 2025 16:51:40 +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 1tnh6q-000Qzi-H1 for pgsql-hackers@arkaria.postgresql.org; Thu, 27 Feb 2025 16:51:39 +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 1tnh6q-000QxU-6a for pgsql-hackers@lists.postgresql.org; Thu, 27 Feb 2025 16:51:38 +0000 Received: from mail-ed1-x532.google.com ([2a00:1450:4864:20::532]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tnh6m-0000bi-2R for pgsql-hackers@lists.postgresql.org; Thu, 27 Feb 2025 16:51:37 +0000 Received: by mail-ed1-x532.google.com with SMTP id 4fb4d7f45d1cf-5e0939c6456so1640841a12.3 for ; Thu, 27 Feb 2025 08:51:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1740675095; x=1741279895; darn=lists.postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=38L09W1KmnmA9b+UIKjI/PdvW7yXhA0GQYomRHp4H3w=; b=WfVazGQXmbywg+BBGJx5SvqG5U/etzHYJBrGda7TGHbajZi0SVope8L0sREpW1GZXP 6Kcncje6cc/gVm3krdDvdL5sHyWba/bYHhi7I+i0SkhsxJyhZnIlBfyoxuH63s/JY0JM DeGW0FWpEYkh+CEfnWYWuYZJJgjLHcilDPHMkgSNZg9XTcfW/4gS+ggx+0yw6LXHR0pH cEKPWa/2WRbGNtrXEkCz+jnXFgUAYXUVoRSxifNmL/BEVG3yYCw8SoE4mSxTa5/hcgy6 mFQ7sEERrYnwvFsYdE5Hsn5bcKztuXrSiBR7c1YQdI8GTBpnB8bXL+64U2KyriaKn2If JcXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740675095; x=1741279895; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=38L09W1KmnmA9b+UIKjI/PdvW7yXhA0GQYomRHp4H3w=; b=lSFu7ZAlGPlxjPf5gC2vX7KAoyHBbL7K2c3ti5rMmfQjLkvwJN74QmYtb0s0heTCjm n31vt7UE07fMBK7HcJmpYQeWxrXpWVpB1tjvu179iNW7LWxyMim0puzeAY43eES7rjCA 2G1otPnivFWEBURWylamgLA656O17LOU3HrmolrPEB1OBeaS9UKav0xJAoXFw74U1+ZB iIZGa/xI/J0isP5uGqjvTYSn3PNfZLkW9kqb66uow4LNApCNUJaHhkYI0p0wG/iHCKt4 8t55/uJyzhuGaxlKrcrT80700EHz66ZYBCWAPNmjpzI5xZ90v2+e+l2A50d/Imvz5seb NQfw== X-Forwarded-Encrypted: i=1; AJvYcCU9UeW4kd8a+8e7RMH9u9ZBSaiS29T2ep4BJFI/AGtoqo2AlcN6ww9tTyKKZoQ92xbmyvEiic4uYA6vNOqH@lists.postgresql.org X-Gm-Message-State: AOJu0YxIHmMDeQd5o6Eby0ypH4xPTA6XrI3c0mXHuLGawrDAmc7Gl/GN lezVGchHAyRpn4Mb7FmKiOlgmlkF1md5OOFXT3/xg2caNCrdiu5oIvi6wKLhUqafO9zQQrDW7M9 BDiiPGB36bJ/ZolgAOp2TcMoRyCE= X-Gm-Gg: ASbGncsnl7+9odZ6rzvek7tJICkUJ6swg24M32cBxwCWxh5lMZJpPDhQKzIIg4lCRnE RFa9iwGkIGl42Iy8oCCdTmbyt6OMv0GNgsgLDN0RyIfaMYpf8buq9AIj4OppD1DvVeeGmEVQXCS mIIhz88tM= X-Google-Smtp-Source: AGHT+IER9kZ2nhkZfb+Q+ThX/ar9cnsR9sy/txd5J2ZzTMRxGeouQsHyevVb5XEwXhnUG/RlshXcABfR9IryWSrv0BI= X-Received: by 2002:a17:906:fe44:b0:ab7:cfe7:116f with SMTP id a640c23a62f3a-abf2684a9ecmr11627066b.46.1740675095122; Thu, 27 Feb 2025 08:51:35 -0800 (PST) MIME-Version: 1.0 References: <3365160.1739385615@sss.pgh.pa.us> <0e4c813a-18eb-41e2-8edb-89b78d43c82d@gmail.com> <01ec86c1-e04b-4cbe-b641-22cae8b87604@tantorlabs.com> <73e2440e-7d8b-4860-974d-931a93326d95@gmail.com> <3737950.1740182671@sss.pgh.pa.us> <3816053.1740190267@sss.pgh.pa.us> <40663fc5-edac-4b45-a2aa-a76976700ed9@tantorlabs.com> In-Reply-To: From: Robert Haas Date: Thu, 27 Feb 2025 11:51:22 -0500 X-Gm-Features: AQ5f1JoxU7XaxhdImAGnj9bVW3XmsfGJN8vQEqUfAwv_PWyDOC3iH0dhtmK0ITM Message-ID: Subject: Re: explain analyze rows=%.0f To: Ilia Evdokimov Cc: Tom Lane , Andrei Lepikhov , pgsql-hackers@lists.postgresql.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon, Feb 24, 2025 at 2:16=E2=80=AFPM Robert Haas = wrote: > On Mon, Feb 24, 2025 at 12:12=E2=80=AFPM Ilia Evdokimov > wrote: > > If no one is concerned about rows being a non-integer, then I support > > this, as it's quite strange for the average rows to be an integer only > > for me. If we go with this approach, we should also update all examples > > in the documentation accordingly. I attached patch with changes in > > documentation. > > Thanks, that's very helpful. If we go forward with this, I'll commit > your patch and mine together. Since Tom doesn't seem to want to further object to trying it this way, I've gone ahead and done this for now. Granted, it's not altogether clear from the buildfarm that we would have ever gotten any more failures after 44cbba9a7f51a3888d5087fc94b23614ba2b81f2, but it seems to me that there's no way to rule out the possibility, and low-frequency buildfarm failures that might only occur once a year are in some ways more annoying than high-frequency ones, especially to people who put a lot of energy into tracking down those failures. It just seems unprincipled to me to leave things in a state where we know that such failures are possible, and wonky to have things in a state where whether parallel query gets used or not could make the difference between getting a report of X rows and getting a report of X.00 rows. If a user notices that difference in their own environment -- regression tests aside -- they're not likely to guess what has happened. Of course, if this commit draws objections or runs into problems with the buildfarm or with users, we might have to reconsider. I'm not dead set on having it this way rather than any other. But I think it's more principled than making 0-vs-2 digits predicated on a random event; and it's a lot simpler than any of the other options that have been proposed. --=20 Robert Haas EDB: http://www.enterprisedb.com