pgsql: Remove unnecessary memcpy when reading WAL record fitting on pag

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Remove unnecessary memcpy when reading WAL record fitting on pag
Date: 2018-11-19 01:26:34
Message-ID: E1gOYKg-0006Xu-D9@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Remove unnecessary memcpy when reading WAL record fitting on page

When reading a WAL record, its contents are copied into an intermediate
buffer. However, doing so is not necessary if the record fits fully
into the current page, saving one memcpy for each such record. The
allocation handling of the intermediate buffer is also now done only
when a record crosses a page boundary, shaving some extra cycles when
reading a WAL record.

Author: Andrey Lepikhov
Reviewed-by: Kyotaro Horiguchi, Heikki Linnakangas
Discussion: https://postgr.es/m/c2ea54dd-a1d3-80eb-ddbf-7e6f258e615e@postgrespro.ru

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/285bd0ac4a7c0538d544c40aa725682e11cb71a9

Modified Files
--------------
src/backend/access/transam/xlog.c | 3 ---
src/backend/access/transam/xlogreader.c | 27 +++++++++++++--------------
2 files changed, 13 insertions(+), 17 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Michael Paquier 2018-11-19 04:21:19 pgsql: Rework documentation of pg_promote
Previous Message Andrew Dunstan 2018-11-18 17:43:25 pgsql: fix typo