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 1v2Faw-001jJe-Gz for pgsql-hackers@arkaria.postgresql.org; Fri, 26 Sep 2025 21:03:10 +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 1v2Fat-005tWW-99 for pgsql-hackers@arkaria.postgresql.org; Fri, 26 Sep 2025 21:03:07 +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 1v2Fas-005tWN-TR for pgsql-hackers@lists.postgresql.org; Fri, 26 Sep 2025 21:03:07 +0000 Received: from mail-pj1-x102e.google.com ([2607:f8b0:4864:20::102e]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1v2Fap-000Hzc-0I for pgsql-hackers@postgresql.org; Fri, 26 Sep 2025 21:03:07 +0000 Received: by mail-pj1-x102e.google.com with SMTP id 98e67ed59e1d1-33274fcf5c1so2701457a91.1 for ; Fri, 26 Sep 2025 14:03:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1758920581; x=1759525381; darn=postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :reply-to:in-reply-to:references:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=9h7gHyBoGeekZXTlplmaOYILFsBQf1aHbrP/RF3CH3w=; b=KmX9IBY1+PBAJQjJSinDnkHUOVkX2GyyYUbEJXusEbTSH5PJ8aUFMsiJnbjHn4avBu nfN5GBzDG2wZxxCbOSvStKLsmjn5nOH9MowUhynNZXn/ZBAhRyh3qKX5eVITa4wOSJf4 z6ropxHRzjfGjCItqcHKFkDbRRod520951aGCWPf6EJhlgDMmOrzFza/U9un8E7ae/Fj UctnH2aNTGsjODumbQKj9oJVFimJgmv1uxMJZ91I89asSMkMudIdw6Y5Cfyr5x68McY9 ztD2hejJtv5SOzK/OLixOixdlYH/QUXAoBlZi6ZdIYooPxfWZS0V7om+DLJmY6mIWp4j GIOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1758920581; x=1759525381; h=content-transfer-encoding:cc:to:subject:message-id:date:from :reply-to:in-reply-to:references:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=9h7gHyBoGeekZXTlplmaOYILFsBQf1aHbrP/RF3CH3w=; b=kuxOByLBrLIYwInimrLXcXXgT7f9WfFHIEL14nwnj+/DYvD2ueZevwC+fAAkClVyaj G8/w54hDayIqfS2OSQyoNLxR7n/MEnc13bCk6zzz62TybZw5NpnS7EePWR+PyGgpD1N6 AATbQ0AzvxIpRMlCCY4M/YeBQFzeEJ0v+EtKTTE4P/9i8iHzAXg18EMVWcPOTE5TZZmv XrqiYMmkZqj6+hE3raELPeLFhpFAVLZY2vDYvDH3HW1JVcYF3njZK0ryspdpYznDWkv/ YuDdzSq0palusazGcWEAS8aKaMloQHMJ7wR9naBbH2P5zi/+SzgIT69YObFXgjFlXQbH 9zaw== X-Gm-Message-State: AOJu0YzIOlXwUkQYI+FN0EztIGyOJQepcm6wwRgoFDb2s+bAhyLDCFU+ GWiin58/uZP0f++t6YPvkLG/8Qo4BeNNGbcpOAni5R3RKeop2vJTBhtO5axxL7TYEUdL9d8m0L2 F3Mcxc5Eolk+kffIxA0IS/mGl5eXZnyg= X-Gm-Gg: ASbGncvSrX5iJlWX0e2dpM3NGWAsBTzaKfulp3yLiw2W5p4f7u6DxTQw/kt6cAWjdTe LBFtavvDt/arQyCcxwjXc08bsbe9nAM5OHuo2m0vZfBzGAUpaZY2yp+j4ApsTvIF52aI58jiVPk t0gfDF1JqOoQHnZADKzPk49yTOuAtHeMI4V69qkuMLe23SxkGRrBsM2TzjUxbsuC9MCW1VFUM5P ca+Yv7i4RzPUTuU0A== X-Google-Smtp-Source: AGHT+IFYZIZmv/hHlTiDmxWJ0r9NNMMzPPGvpdXO7Z6fkxsAnCplQyQHSD8IP2V4D1sAXpXtxoAyHHbXHLu8TJqZH9o= X-Received: by 2002:a17:90b:3ccd:b0:32d:dc3e:5575 with SMTP id 98e67ed59e1d1-3342a236714mr8722268a91.5.1758920580727; Fri, 26 Sep 2025 14:03:00 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Reply-To: maciek@sakrejda.org From: Maciek Sakrejda Date: Fri, 26 Sep 2025 14:01:37 -0700 X-Gm-Features: AS18NWAl5M5HX9mBzXimRyIuxyXWErzqDjY_4hZFQ4pq2W_XxXShJ6tyAif85eE Message-ID: Subject: Re: V18 change on EXPLAIN ANALYZE To: Marcos Pegoraro Cc: pgsql-hackers 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 Fri, Sep 26, 2025 at 1:34=E2=80=AFPM Marcos Pegoraro = wrote: > Robert Hass committed ddb17e387aa28d61521227377b00f997756b8a27, which cha= nged how EXPLAIN indicates fractional rows. That's cool but I have to see t= hat change on sources because it's not explained on DOCs. > > One can understand that cost=3D4.36, that actual time=3D0.009, but what m= eans rows=3D10.43 ? Costs and Time having decimals are fine but what is a r= ow and a half ? > > So, I don't know exactly how to explain this change but I think it would = be good to have a new paragraph on [1] and explain that now when nloops > 1= , we now display two digits after the decimal point, rather than none. > > [1] - https://www.postgresql.org/docs/current/using-explain.html#USING-EX= PLAIN-ANALYZE The page you link says In some query plans, it is possible for a subplan node to be executed more than once. For example, the inner index scan will be executed once per outer row in the above nested-loop plan. In such cases, the loops value reports the total number of executions of the node, and the actual time and rows values shown are averages per-execution. This is done to make the numbers comparable with the way that the cost estimates are shown. Multiply by the loops value to get the total time actually spent in the node. In the above example, we spent a total of 0.030 milliseconds executing the index scans on tenk2. in the second paragraph after the example in this section. Do you think that's not sufficiently clear? Thanks, Maciek