Only WAL-log the modified portion in an UPDATE, if possible. When a row is updated, and the new tuple version is put on the same page as the old one, only WAL-log the part of the new tuple that's not identical to the old. This saves significantly on the amount of WAL that needs to be written, in the common case that most fields are not modified.
Amit Kapila, with a lot of back and forth with me, Robert Haas, and others. Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/a3115f0d9ec1ac93b82156535dc00b10172a4fe7 Modified Files -------------- src/backend/access/heap/heapam.c | 307 +++++++++++++++++++++++++++++-------- src/backend/access/transam/xlog.c | 23 +++ src/include/access/heapam_xlog.h | 19 ++- src/include/access/xlog.h | 1 + 4 files changed, 285 insertions(+), 65 deletions(-) -- Sent via pgsql-committers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers
