Simplify/speed up assertion cross-check in ginCompressPostingList().

Tom Lane <tgl@sss.pgh.pa.us>

Commit: ea7dace2aa21e79a7a8eb23c493bcd2057d9bd7e
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: 2020-03-07T18:31:17Z
Releases: 13.0
Simplify/speed up assertion cross-check in ginCompressPostingList().

I noticed while testing some other stuff that the CHECK_ENCODING_ROUNDTRIP
logic in ginCompressPostingList could account for over 50% of the runtime
of an INSERT with a GIN index.  While that's not relevant to production
performance, it's still kind of annoying in a debug build.  Replacing
the loop around short memcmp's with one long memcmp works just as well
and is significantly faster, at least on my machine.

Files

PathChange+/−
src/backend/access/gin/ginpostinglist.c modified +1 −3