pgsql: Specialize MemoryContextMemAllocated().

From: Jeff Davis <jdavis(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Specialize MemoryContextMemAllocated().
Date: 2020-03-18 22:39:28
Message-ID: E1jEhLU-0002Jd-6G@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Specialize MemoryContextMemAllocated().

An AllocSet doubles the size of allocated blocks (up to maxBlockSize),
which means that the current block can represent half of the total
allocated space for the memory context. But the free space in the
current block may never have been touched, so don't count the
untouched memory as allocated for the purposes of
MemoryContextMemAllocated().

Discussion: https://postgr.es/m/ec63d70b668818255486a83ffadc3aec492c1f57.camel@j-davis.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/e00912e11a9ec2d29274ed8a6465e81385906dc2

Modified Files
--------------
src/backend/utils/mmgr/aset.c | 46 ++++++++++++++++++++++++++-----------
src/backend/utils/mmgr/generation.c | 25 ++++++++++++++++----
src/backend/utils/mmgr/mcxt.c | 3 +--
src/backend/utils/mmgr/slab.c | 29 +++++++++++++++++------
src/include/nodes/memnodes.h | 2 +-
5 files changed, 77 insertions(+), 28 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Jeff Davis 2020-03-18 22:54:49 pgsql: Disk-based Hash Aggregation.
Previous Message Alvaro Herrera 2020-03-18 21:59:12 pgsql: Enable BEFORE row-level triggers for partitioned tables