Accept empty tsquery in binary input. tsqueryrecv() calls findoprnd() even when the input has no query items, so it fails on an empty tsquery, which is legal data. This breaks, for example, binary COPY of a table containing an empty tsquery.
Skip the operand walk for an empty query, as parse_tsquery() does. Bug: #19778 Reported-by: Shay Rojansky <[email protected]> Author: Ayush Tiwari <[email protected]> Reviewed-by: Tom Lane <[email protected]> Discussion: https://postgr.es/m/[email protected] Backpatch-through: 14 Branch ------ REL_19_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/0d0d2a13e8b60f66017836ded0c05b5907921bf0 Modified Files -------------- src/backend/utils/adt/tsquery.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)
