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 1tzU3J-002ZkM-F8 for pgsql-hackers@arkaria.postgresql.org; Tue, 01 Apr 2025 05:20: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 1tzU3H-00GF1k-Ud for pgsql-hackers@arkaria.postgresql.org; Tue, 01 Apr 2025 05:20:43 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tzU3H-00GF1a-Kz for pgsql-hackers@lists.postgresql.org; Tue, 01 Apr 2025 05:20:43 +0000 Received: from mail-wr1-x429.google.com ([2a00:1450:4864:20::429]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tzU3F-002gzQ-1G for pgsql-hackers@lists.postgresql.org; Tue, 01 Apr 2025 05:20:43 +0000 Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-3965c995151so2755978f8f.1 for ; Mon, 31 Mar 2025 22:20:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743484839; x=1744089639; darn=lists.postgresql.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=7goZhO2vc6ZK2vDtbJVaUn3TlBV8OC2GlnfXLJszZLQ=; b=nCg4uwX7VWh5h86YRqtFldqSAANb1tdEjFB18I7Q4b0vm9e55jpvnJJll2mk002tXM MNdMWy3hYTyuRw0eL+LnW6VH+GkIy4af/2C4E4FgKLC4Jh/KWXtK9SoaO4MVWOkxyJBX M17OOMf1sH57nPxRPPtfALbSSoBSvaYxHeIHT7jt1LZ7cJVpufz7lH44IKxY2wDjlyIE 4kmdaj597+ea/A0fiieRENHtweNtgFY9zlM/NpCFH8agQ6DsQFWvsTjwk4teKGBQHmyB yn/LbsCTOyAyUqOBJarK3pfeTdJr06tpe6z5uFJCucNBMPImemWN9zKr6OreDdrrHABE 2UWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743484839; x=1744089639; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=7goZhO2vc6ZK2vDtbJVaUn3TlBV8OC2GlnfXLJszZLQ=; b=JtfZfmEIPDJvlF4vEXx4EAYlLO0BCUfUGV9L1aBMRlBPN+M0p9Df4u1/9b0W/0VsXj g9iEPEbBcfcdTymWiCuLUacWx+CXMe9qGS9f9O15jBhiEvKgQKOdlhacMIcRQQf4AXtK loGNXGtNvGyP1u+H1/x/SZMu4a1g8xnY2DBpIcjF7MafdSwHgxBLbsPawBTy2J/1bhrQ knbwuF2wUXPJtb6GcKlMqGS8eqKI0E7v0FswnraiE5EpGGqMEFGz2Hkt5qvojWUhq6cc qjhkr5tPWiCtFiSZjvSZMT1JWjdkVTrSuen9WyA3C9vtByiWZBC+l7Yq12gUtT9vsqHQ 0lPA== X-Forwarded-Encrypted: i=1; AJvYcCUfrHcklpiKsgmpoqrLXXtXrm7+tRKkvmmrccgaRyihayGrwabfKdn/rCr218AG5dCosvJo6KS1RhMljUaV@lists.postgresql.org X-Gm-Message-State: AOJu0Yy+GVP1p0gWfPq+f/FAySCx5IKZ5on3hk4ApyVSIoHSkTGJqE0z 1+L2Z/44XC5BPpuf7QmaslfOkFD65QZXh9Xb7Fk2rBekPQEWgtut X-Gm-Gg: ASbGnctpo5Ckc9Tm+W/qrEPv2cM/hYQcxsBBflNekbBdqjdbG5bmEySVwUy02eC/PYO dJu9KUAYdcEec6emfC/lh3SRSrwomFegk+DZprNG2l0AMlkMTc8k8yu+NdHuCapMVZrjj+hH+1s EDl4STuKhG7hzATD96Uo1W+YiYHlaDI7t6zPiCOWoiBDgGcCZd6HWXhUenaZI6Vc3h9pYuUmUdv w0cHMzOwusbFvoU1wwHZZvhsIU1CIvtRiSCocVqSv5rlz4mgMkCGvmSgiXXQg41O6xpRvR9FCba HNd2PT2Hw/i8QfCFaHlKmHn3TIKKCb0P+uTNZS9PnqaiSDCpMrM2zY/ZZ//ZAp7BvMbHbiPTEbd ETMCpLxD5eZSaBQ== X-Google-Smtp-Source: AGHT+IFDiS80Of1bMhMPJv8ivbvlv0CkkAKXsQuhyk0iACSBBQVcKjZpcpAzJ+XuHBt9UMKIankD1g== X-Received: by 2002:a5d:584a:0:b0:390:fbdd:994d with SMTP id ffacd0b85a97d-39c120e3cd6mr9389235f8f.27.1743484838959; Mon, 31 Mar 2025 22:20:38 -0700 (PDT) Received: from [192.168.0.89] (84.123.232.230.dyn.user.ono.com. [84.123.232.230]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-39c0b79e33asm13272323f8f.66.2025.03.31.22.20.38 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 31 Mar 2025 22:20:38 -0700 (PDT) Message-ID: Date: Tue, 1 Apr 2025 07:20:37 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: explain analyze rows=%.0f To: Robert Haas , Ilia Evdokimov Cc: Matthias van de Meent , Tom Lane , pgsql-hackers@lists.postgresql.org, Guillaume Lelarge , Matheus Alcantara , Alena Rybakina References: <3816053.1740190267@sss.pgh.pa.us> <40663fc5-edac-4b45-a2aa-a76976700ed9@tantorlabs.com> <432c75b0-be5f-4836-b46b-98c505eaad28@postgrespro.ru> Content-Language: en-AU From: Andrei Lepikhov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 3/31/25 19:35, Robert Haas wrote: > But why isn't it just as valuable to have two decimal places for the > estimate? I theorize that the cases that are really a problem here are > those where the row count estimate is between 0 and 1 per row, and > rounding to an integer loses all precision. Issues I've ever seen were about zero rows number - we lose understanding of what the job the executor has done in the node - loops = 10000000 doesn't tell us any helpful information in that case. Maybe in the next version, we replace the two fractional numbers rule with two valuable numbers. At least, it removes boring xxx.00 numbers from EXPLAIN. -- regards, Andrei Lepikhov