aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2023-09-28 14:05:25 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2023-09-28 14:05:25 -0400
commit12402b93117be733985418c6fdeda5f09877469e (patch)
tree396d83500ac3a7d7fe6d33549b39405667e14175 /src/backend/executor
parent7e00466a78be71a440ea683b971b1a19c34074ca (diff)
downloadpostgresql-12402b93117be733985418c6fdeda5f09877469e.tar.gz
postgresql-12402b93117be733985418c6fdeda5f09877469e.zip
Fix checking of index expressions in CompareIndexInfo().
This code was sloppy about comparison of index columns that are expressions. It didn't reliably reject cases where one index has an expression where the other has a plain column, and it could index off the start of the attmap array, leading to a Valgrind complaint (though an actual crash seems unlikely). I'm not sure that the expression-vs-column sloppiness leads to any visible problem in practice, because the subsequent comparison of the two expression lists would reject cases where the indexes have different numbers of expressions overall. Maybe we could falsely match indexes having the same expressions in different column positions, but it'd require unlucky contents of the word before the attmap array. It's not too surprising that no problem has been reported from the field. Nonetheless, this code is clearly wrong. Per bug #18135 from Alexander Lakhin. Back-patch to all supported branches. Discussion: https://postgr.es/m/18135-532f4a755e71e4d2@postgresql.org
Diffstat (limited to 'src/backend/executor')
0 files changed, 0 insertions, 0 deletions