postgresql/src/backend
John Naylor 8a1b31e6e5 Use bump context for TID bitmaps stored by vacuum
Vacuum does not pfree individual entries, and only frees the entire
storage space when finished with it. This allows using a bump context,
eliminating the chunk header in each leaf allocation. Most leaf
allocations will be 16 to 32 bytes, so that's a significant savings.
TidStoreCreateLocal gets a boolean parameter to indicate that the
created store is insert-only.

This requires a separate tree context for iteration, since we free
the iteration state after iteration completes.

Discussion: https://postgr.es/m/CANWCAZac%3DpBePg3rhX8nXkUuaLoiAJJLtmnCfZsPEAS4EtJ%3Dkg%40mail.gmail.com
Discussion: https://postgr.es/m/CANWCAZZQFfxvzO8yZHFWtQV+Z2gAMv1ku16Vu7KWmb5kZQyd1w@mail.gmail.com
2024-04-08 14:39:49 +07:00
..
access Use bump context for TID bitmaps stored by vacuum 2024-04-08 14:39:49 +07:00
archive Add built-in ERROR handling for archive callbacks. 2024-04-02 22:28:11 -05:00
backup Remove useless duplicate call of defGetBoolean(). 2024-04-07 17:08:06 -04:00
bootstrap Remove unused #include's from backend .c files 2024-03-04 12:02:20 +01:00
catalog JSON_TABLE: Add support for NESTED paths and columns 2024-04-08 16:14:13 +09:00
commands Use streaming I/O in ANALYZE. 2024-04-08 13:16:28 +12:00
executor Change BitmapAdjustPrefetchIterator to accept BlockNumber 2024-04-07 01:25:15 +02:00
foreign Remove unused #include's from backend .c files 2024-03-04 12:02:20 +01:00
jit Add SQL/JSON query functions 2024-03-21 17:07:03 +09:00
lib Use the pairing heap instead of a flat array for LSN replay waiters 2024-04-03 18:15:41 +03:00
libpq Fix check for 'outlen' return from SSL_select_next_proto() 2024-04-08 05:03:17 +03:00
main Remove unused #include's from backend .c files 2024-03-04 12:02:20 +01:00
nodes JSON_TABLE: Add support for NESTED paths and columns 2024-04-08 16:14:13 +09:00
optimizer Fix usage of same ListCell transform_or_to_any()'s in nested loops 2024-04-08 01:38:37 +03:00
parser JSON_TABLE: Add support for NESTED paths and columns 2024-04-08 16:14:13 +09:00
partitioning Implement ALTER TABLE ... SPLIT PARTITION ... command 2024-04-07 01:18:44 +03:00
po Update copyright for 2024 2024-01-03 20:49:05 -05:00
port Remove unused #include's from backend .c files 2024-03-04 12:02:20 +01:00
postmaster Add built-in ERROR handling for archive callbacks. 2024-04-02 22:28:11 -05:00
regex Support C.UTF-8 locale in the new builtin collation provider. 2024-03-19 15:24:41 -07:00
replication Support retrieval of results in chunks with libpq. 2024-04-06 20:45:11 -04:00
rewrite Add RETURNING support to MERGE. 2024-03-17 13:58:59 +00:00
snowball Remove unused #include's from backend .c files 2024-03-04 12:02:20 +01:00
statistics Make stxstattarget nullable 2024-03-17 12:26:26 +01:00
storage Add pg_buffercache_evict() function for testing. 2024-04-08 16:23:40 +12:00
tcop Send ALPN in TLS handshake, require it in direct SSL connections 2024-04-08 04:24:51 +03:00
tsearch Remove unused #include's from backend .c files 2024-03-04 12:02:20 +01:00
utils JSON_TABLE: Add support for NESTED paths and columns 2024-04-08 16:14:13 +09:00
.gitignore
Makefile Rework lwlocknames.txt to become lwlocklist.h 2024-03-20 11:55:20 +01:00
common.mk Blind attempt to fix LLVM dependency in the backend 2022-09-15 10:53:48 +07:00
meson.build Remove AIX support 2024-02-28 15:17:23 +04:00
nls.mk Remove distprep 2023-11-06 15:18:04 +01:00