• Tom Lane's avatar
    Fix SysCacheGetAttr() to handle the case where the specified syscache has not · 6ea8f495
    Tom Lane authored
    been initialized yet.  This can happen because there are code paths that call
    SysCacheGetAttr() on a tuple originally fetched from a different syscache
    (hopefully on the same catalog) than the one specified in the call.  It
    doesn't seem useful or robust to try to prevent that from happening, so just
    improve the function to cope instead.  Per bug#2678 from Jeff Trout.  The
    specific example shown by Jeff is new in 8.1, but to be on the safe side
    I'm backpatching 8.0 as well.  We could patch 7.x similarly but I think
    that's probably overkill, given the lack of evidence of old bugs of this ilk.
    6ea8f495
syscache.c 16.5 KB