mirror of
https://github.com/postgres/postgres.git
synced 2026-03-11 10:45:17 -04:00
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 |
||
|---|---|---|
| .. | ||
| attoptcache.c | ||
| catcache.c | ||
| evtcache.c | ||
| inval.c | ||
| lsyscache.c | ||
| Makefile | ||
| partcache.c | ||
| plancache.c | ||
| relcache.c | ||
| relfilenodemap.c | ||
| relmapper.c | ||
| spccache.c | ||
| syscache.c | ||
| ts_cache.c | ||
| typcache.c | ||