• Tom Lane's avatar
    Fix crash in contrib/ltree's lca() function for empty input array. · 28a1ae53
    Tom Lane authored
    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
    28a1ae53
ltree.sgml 24.4 KB