-
- Downloads
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.
Showing
- contrib/postgres_fdw/deparse.c 54 additions, 30 deletionscontrib/postgres_fdw/deparse.c
- contrib/postgres_fdw/expected/postgres_fdw.out 19 additions, 0 deletionscontrib/postgres_fdw/expected/postgres_fdw.out
- contrib/postgres_fdw/sql/postgres_fdw.sql 3 additions, 0 deletionscontrib/postgres_fdw/sql/postgres_fdw.sql
Loading
Please register or sign in to comment