public inbox for [email protected]  
help / color / mirror / Atom feed
From: Alena Rybakina <[email protected]>
To: Tom Lane <[email protected]>
To: David Rowley <[email protected]>
Cc: PostgreSQL Developers <[email protected]>
Subject: Re: Sort operation displays more tuples than it contains its subnode
Date: Thu, 23 May 2024 17:16:14 +0300
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
	<[email protected]>

Yes, I got it. Thank you very much for the explanation.

On 23.05.2024 00:17, Tom Lane wrote:
> "a.rybakina" <[email protected]> writes:
>> I faced the issue, when the sorting node in the actual information
>> shows a larger number of tuples than it actually is. And I can not
>> understand why?
> If I'm reading this correctly, the sort node you're worrying about
> feeds the inner side of a merge join.  Merge join will rewind its
> inner side to the start of the current group of equal-keyed tuples
> whenever it sees that the next outer tuple must also be joined to
> that group.  Since what EXPLAIN is counting is the number of tuples
> returned from the node, that causes it to double-count those tuples.
> The more duplicate-keyed tuples on the outer side, the bigger the
> effect.
>
> You can see the same thing happening at the Materialize a little
> further up, which is feeding the inside of the other merge join.

-- 
Regards,
Alena Rybakina
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company







view thread (4+ messages)

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected]
  Subject: Re: Sort operation displays more tuples than it contains its subnode
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox