postgresql/src/backend/utils/cache
Tom Lane 3aafc030a5 Reduce memory consumption for pending invalidation messages.
The existing data structures in inval.c are fairly inefficient for
the common case of a command or subtransaction that registers a small
number of cache invalidation events.  While this doesn't matter if we
commit right away, it can build up to a lot of bloat in a transaction
that contains many DDL operations.  By making a few more assumptions
about the expected use-case, we can switch to a representation using
densely-packed arrays.  Although this eliminates some data-copying,
it doesn't seem to make much difference time-wise.  But the space
consumption decreases substantially.

Patch by me; thanks to Nathan Bossart for review.

Discussion: https://postgr.es/m/2380555.1622395376@sss.pgh.pa.us
2021-08-16 16:48:25 -04:00
..
attoptcache.c Update copyright for 2021 2021-01-02 13:06:25 -05:00
catcache.c Add "pg_database_owner" default role. 2021-03-26 10:42:17 -07:00
evtcache.c Update copyright for 2021 2021-01-02 13:06:25 -05:00
inval.c Reduce memory consumption for pending invalidation messages. 2021-08-16 16:48:25 -04:00
lsyscache.c Use the "pg_temp" schema alias in EXPLAIN and related output. 2021-07-27 12:03:16 -04:00
Makefile Split all OBJS style lines in makefiles into one-line-per-entry style. 2019-11-05 14:41:07 -08:00
partcache.c Remove unused function parameter in get_qual_from_partbound 2021-07-14 09:52:04 -04:00
plancache.c Rename debug_invalidate_system_caches_always to debug_discard_caches. 2021-07-13 15:01:01 -04:00
relcache.c Rename debug_invalidate_system_caches_always to debug_discard_caches. 2021-07-13 15:01:01 -04:00
relfilenodemap.c Update copyright for 2021 2021-01-02 13:06:25 -05:00
relmapper.c Another fix to relmapper race condition. 2021-06-24 11:19:03 +03:00
spccache.c Update copyright for 2021 2021-01-02 13:06:25 -05:00
syscache.c Add index OID macro argument to DECLARE_INDEX 2021-06-29 08:08:40 +02:00
ts_cache.c Update copyright for 2021 2021-01-02 13:06:25 -05:00
typcache.c Fix assign_record_type_typmod(). 2021-07-10 10:26:38 -07:00