pgsql: Fix crash in contrib/ltree's lca() function for empty inputarra

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Fix crash in contrib/ltree's lca() function for empty inputarra
Дата
Msg-id E1fe6ou-0001wZ-32@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix crash in contrib/ltree's lca() function for empty input array.

lca_inner() wasn't prepared for the possibility of getting no inputs.
Fix that, and make some cosmetic improvements to the code while at it.

Also, I thought the documentation of this function as returning the
"longest common prefix" of the paths was entirely misleading; it really
returns a path one shorter than the longest common prefix, for the typical
definition of "prefix".  Don't use that term in the docs, and adjust the
examples to clarify what really happens.

This has been broken since its beginning, so back-patch to all supported
branches.

Per report from Hailong Li.  Thanks to Pierre Ducroquet for diagnosing
and for the initial patch, though I whacked it around some and added
test cases.

Discussion: https://postgr.es/m/5b0d8e4f-f2a3-1305-d612-e00e35a7be66@qunar.com

Branch
------
REL9_3_STABLE

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

Modified Files
--------------
contrib/ltree/expected/ltree.out | 18 ++++++++++++++++++
contrib/ltree/ltree_op.c         | 34 +++++++++++++++++++++++++---------
contrib/ltree/sql/ltree.sql      |  3 +++
doc/src/sgml/ltree.sgml          |  8 ++++----
4 files changed, 50 insertions(+), 13 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: pgsql: Add wait event for fsync of WAL segments
Следующее
От: Michael Paquier
Дата:
Сообщение: Re: pgsql: Fix FK checks of TRUNCATE involving partitioned tables