Revision 64387c540805e392d051cf484ebcf937a9bd8b1b authored by Etsuro Fujita on 14 September 2022, 09:45:01 UTC, committed by Etsuro Fujita on 14 September 2022, 09:45:01 UTC
The tlist of the EvalPlanQual outer plan for a ForeignScan node is adjusted to produce a tuple whose descriptor matches the scan tuple slot for the ForeignScan node. But in the case where the outer plan contains an extra Sort node, if the new tlist contained columns required only for evaluating PlaceHolderVars or columns required only for evaluating local conditions, this would cause setrefs.c to fail with the error. The cause of this is that when creating the outer plan by injecting the Sort node into an alternative local join plan that could emit such extra columns as well, we fail to arrange for the outer plan to propagate them up through the Sort node, causing setrefs.c to fail to match up them in the new tlist to what is available from the outer plan. Repair. Per report from Alexander Pyhalov. Richard Guo and Etsuro Fujita, reviewed by Alexander Pyhalov and Tom Lane. Backpatch to all supported versions. Discussion: http://postgr.es/m/cfb17bf6dfdf876467bd5ef533852d18%40postgrespro.ru
1 parent b3c630c
File | Mode | Size |
---|---|---|
config | ||
contrib | ||
doc | ||
src | ||
.cirrus.yml | -rw-r--r-- | 17.7 KB |
.dir-locals.el | -rw-r--r-- | 730 bytes |
.editorconfig | -rw-r--r-- | 183 bytes |
.git-blame-ignore-revs | -rw-r--r-- | 9.5 KB |
.gitattributes | -rw-r--r-- | 1.4 KB |
.gitignore | -rw-r--r-- | 504 bytes |
COPYRIGHT | -rw-r--r-- | 1.2 KB |
GNUmakefile.in | -rw-r--r-- | 4.1 KB |
HISTORY | -rw-r--r-- | 277 bytes |
Makefile | -rw-r--r-- | 1.8 KB |
README | -rw-r--r-- | 1.2 KB |
README.git | -rw-r--r-- | 721 bytes |
aclocal.m4 | -rw-r--r-- | 397 bytes |
configure | -rwxr-xr-x | 581.6 KB |
configure.ac | -rw-r--r-- | 86.5 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...