Re: Check for tuplestorestate nullness before dereferencing

From: David Rowley <dgrowleyml(at)gmail(dot)com>
To: Alena Rybakina <a(dot)rybakina(at)postgrespro(dot)ru>
Cc: Ilia Evdokimov <ilya(dot)evdokimov(at)tantorlabs(dot)com>, kuznetsovam(at)altlinux(dot)org, PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, nickel(at)altlinux(dot)org, egori(at)altlinux(dot)org
Subject: Re: Check for tuplestorestate nullness before dereferencing
Date: 2024-10-17 23:28:22
Message-ID: CAApHDvqQ6xUtQy=0epOAmvXHjgHEz57P9UtW=SNjHmtL_cUgXA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, 15 Oct 2024 at 05:21, Alena Rybakina <a(dot)rybakina(at)postgrespro(dot)ru> wrote:
> As I see it, node->eflags can be zero if it passes the output of a
> subquery, during the initialization of the Material node execution, and
> when the subquery is rescanned.

Do you have a test case that calls Material with zero eflags? I tried
adding Assert(node->eflags != 0) to ExecMaterial() and nothing failed.

It would be good to know if the optimisation added in d2c555ee5 ever
applies with today's code. If it does apply, we should likely add a
test case for it and if it never does, then we should just remove the
optimisation and always create the tuplestore when it's NULL.

David

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andy Fan 2024-10-17 23:36:37 Re: Considering fractional paths in Append node
Previous Message Masahiko Sawada 2024-10-17 23:16:11 Re: UUID v7