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 1tnzTf-004WjF-AS for pgsql-hackers@arkaria.postgresql.org; Fri, 28 Feb 2025 12:28:28 +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 1tnzSi-004n0L-7I for pgsql-hackers@arkaria.postgresql.org; Fri, 28 Feb 2025 12:27:26 +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 1tnzSh-004n0C-Ri for pgsql-hackers@lists.postgresql.org; Fri, 28 Feb 2025 12:27:26 +0000 Received: from forward501d.mail.yandex.net ([178.154.239.209]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1tnzSd-000A2i-0U for pgsql-hackers@lists.postgresql.org; Fri, 28 Feb 2025 12:27:25 +0000 Received: from mail-nwsmtp-smtp-production-main-95.klg.yp-c.yandex.net (mail-nwsmtp-smtp-production-main-95.klg.yp-c.yandex.net [IPv6:2a02:6b8:c42:7e29:0:640:68f8:0]) by forward501d.mail.yandex.net (Yandex) with ESMTPS id A61876127C; Fri, 28 Feb 2025 15:27:19 +0300 (MSK) Received: by mail-nwsmtp-smtp-production-main-95.klg.yp-c.yandex.net (smtp/Yandex) with ESMTPSA id GReBnn8LbKo0-SM4K1H2v; Fri, 28 Feb 2025 15:27:19 +0300 X-Yandex-Fwd: 1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tantorlabs.com; s=mail; t=1740745639; bh=FuVqxoirV+RGWxf6JlzMHmUCzOsScdngfavVVD6+0Zc=; h=From:In-Reply-To:Cc:Date:References:To:Subject:Message-ID; b=If0y/f1qmxuyyMmGFpqSBgq0iGT/xZNWE4JH+fj64YznWSfrTKm6we5PLMXAJap5j AJhjOKPl9b+DU2Ed/iVmG1HnXTH74a5fzNJZhWEEHjgVpV1/zgjX8vg23rLSIm6e6m xjZsPAEx0V7Z8ozVzQvWsUxfDrZpiXlR8sBORqsY= Authentication-Results: mail-nwsmtp-smtp-production-main-95.klg.yp-c.yandex.net; dkim=pass header.i=@tantorlabs.com Message-ID: Date: Fri, 28 Feb 2025 15:27:16 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: explain analyze rows=%.0f To: Robert Haas Cc: Tom Lane , Andrei Lepikhov , pgsql-hackers@lists.postgresql.org, Guillaume Lelarge , Matheus Alcantara , Alena Rybakina References: <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> Content-Language: en-US From: Ilia Evdokimov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 27.02.2025 19:51, Robert Haas wrote: > On Mon, Feb 24, 2025 at 2:16 PM Robert Haas wrote: >> On Mon, Feb 24, 2025 at 12:12 PM 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. > Then I am moving the commitfest entry [0] to the Committed status. [0]: https://commitfest.postgresql.org/patch/5501/ -- Best regards, Ilia Evdokimov, Tantor Labs LLC.