Fix newly introduced issue in EXPLAIN for Materialize nodes

David Rowley <drowley@postgresql.org>

Commit: 53abb1e0ebc38818f31f2ddb15a06feba8e19e6c
Author: David Rowley <drowley@postgresql.org>
Date: 2024-07-05T04:56:16Z
Releases: 18.0
Fix newly introduced issue in EXPLAIN for Materialize nodes

The code added in 1eff8279d was lacking a check to see if the tuplestore
had been created.  In nodeMaterial.c this is done by ExecMaterial() rather
than by ExecInitMaterial(), so the tuplestore won't be created unless
the node has been executed at least once, as demonstrated by Alexander
in his report.

Here we skip showing any of the new EXPLAIN ANALYZE information when the
Materialize node has not been executed.

Reported-by: Alexander Lakhin
Discussion: https://postgr.es/m/fe7fc8fb-86e5-ecb0-3cb2-dd2c9a6c482f@gmail.com

Files

PathChange+/−
src/backend/commands/explain.c modified +6 −3

Discussion