I'm trying to determine if an ltree GiST index search *ever *needs to load a row out of heap for a recheck, of if the index entry itself includes enough information for a definitive answer. I believe that this is controlled by the recheck flag in the consistency function.
>From what I've seen in the wild, and can sort out from the source, I think that ltree does *not* need to load rows from heap. https://github.com/postgres/postgres/blob/master/contrib/ltree/ltree_gist.c I wonder because an ltree GiST index is "lossy" and this behavior is more like a lossless strategy. I think that's either because I've misunderstood what "lossy" means in this case, or it's because ltree GiST index *pages *are based on a signature (lossy), while ltree GiST index *leaf entries* contain the full tree/path (lossless.) Can anyone confirm or deny for me? I'd be grateful for the certainty.