diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2014-04-16 17:21:57 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2014-04-16 17:21:57 -0400 |
commit | 5b68d81697bcb0d16136bd037e454ee53c521185 (patch) | |
tree | 3d000062ee27c48372ba65599123a81d82a8e840 /src/backend/commands/explain.c | |
parent | 9c5334650085d441324e0f4fd9f8db12657b25c7 (diff) | |
download | postgresql-5b68d81697bcb0d16136bd037e454ee53c521185.tar.gz postgresql-5b68d81697bcb0d16136bd037e454ee53c521185.zip |
Fix contrib/postgres_fdw's remote-estimate representation of array Params.
We were emitting "(SELECT null::typename)", which is usually interpreted
as a scalar subselect, but not so much in the context "x = ANY(...)".
This led to remote-side parsing failures when remote_estimate is enabled.
A quick and ugly fix is to stick in an extra cast step,
"((SELECT null::typename)::typename)". The cast will be thrown away as
redundant by parse analysis, but not before it's done its job of making
sure the grammar sees the ANY argument as an a_expr rather than a
select_with_parens. Per an example from Hannu Krosing.
Diffstat (limited to 'src/backend/commands/explain.c')
0 files changed, 0 insertions, 0 deletions