Although we can't support out-of-line TOAST storage in indexes (yet),
Tom Lane <tgl@sss.pgh.pa.us>
Although we can't support out-of-line TOAST storage in indexes (yet), compressed storage works perfectly well. Might as well have a coherent strategy for applying it, rather than the haphazard store-what-you-get approach that was in the code before. The strategy I've set up here is to attempt compression of any compressible index value exceeding BLCKSZ/16, or about 500 bytes by default.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/access/common/indextuple.c | modified | +37 −18 |
| src/backend/access/heap/tuptoaster.c | modified | +2 −3 |
| src/include/access/tuptoaster.h | modified | +15 −1 |