postgres_fdw: Fix oversights in fetch_attstats().

The query to get attribute statistics from a remote server applied the
"C" collation to a column of type name without checking the server's
version.  Since the name type was made collatable in Postgres 12, this
could break attribute statistics import if the server was older.  Fix by
casting the column value to text before collating it if the server is
older.

Also, fix a typo in the if-test in the same function.

Oversights in commit 28972b6fc; the former was reported by Fujii Masao.

Reported-by: Fujii Masao <[email protected]>
Author: Etsuro Fujita <[email protected]>
Reviewed-by: Corey Huinker <[email protected]>
Discussion: 
https://postgr.es/m/CAHGQGwGvA_3q7Wg7GXQkuugGZj3%3DkxDRjDsKgVvK1uwAxHTopQ%40mail.gmail.com
Backpatch-through: 19

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/bea01b825c077e73b009be0a6f000ed643490ae9

Modified Files
--------------
contrib/postgres_fdw/postgres_fdw.c | 29 ++++++++++++++++++++++-------
1 file changed, 22 insertions(+), 7 deletions(-)

Reply via email to