B-tree key order follows access shape
Leading equality predicates constrain a multicolumn B-tree most effectively; the first non-equality key can then serve a range or ordering requirement. A partial index is usable only when the query predicate implies its predicate. INCLUDE may cover returned data but increases write and storage cost.
An index-only plan still depends on MVCC maintenance
PostgreSQL indexes do not carry tuple visibility for normal snapshots. Index-only scans consult the visibility map and may still fetch heap pages. Routine VACUUM reclaims reusable dead-tuple space, updates visibility information and prevents transaction-id wraparound; VACUUM FULL is a blocking rewrite, not routine medicine.