]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Fix null-pointer crash in postgres_fdw's conversion_error_callback.
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 6 Oct 2021 19:50:24 +0000 (15:50 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 6 Oct 2021 19:50:24 +0000 (15:50 -0400)
commit2e33fbda1263533518614c3930cca4b8eb21bd26
tree990393a9e1b5b24f4b5325e7d449a01913a835a2
parent4853baaaca4a3469247027f7dc86b516e35f7c0a
Fix null-pointer crash in postgres_fdw's conversion_error_callback.

Commit c7b7311f6 adjusted conversion_error_callback to always use
information from the query's rangetable, to avoid doing catalog lookups
in an already-failed transaction.  However, as a result of the utterly
inadequate documentation for make_tuple_from_result_row, I failed to
realize that fsstate could be NULL in some contexts.  That led to a
crash if we got a conversion error in such a context.  Fix by falling
back to the previous coding when fsstate is NULL.  Improve the
commentary, too.

Per report from Andrey Borodin.  Back-patch to 9.6, like the previous
patch.

Discussion: https://postgr.es/m/08916396-55E4-4D68-AB3A-BD6066F9E5C0@yandex-team.ru
contrib/postgres_fdw/expected/postgres_fdw.out
contrib/postgres_fdw/postgres_fdw.c
contrib/postgres_fdw/sql/postgres_fdw.sql