pgsql: Suppress useless searches for unused line pointers in

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Suppress useless searches for unused line pointers in
Date: 2007-03-02 00:48:44
Message-ID: 20070302004844.D0DC09FB7B5@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Suppress useless searches for unused line pointers in PageAddItem. To do
this, add a 16-bit "flags" field to page headers by stealing some bits from
pd_tli. We use one flag bit as a hint to indicate whether there are any
unused line pointers; the remaining 15 are available for future use.

This is a cut-down form of an idea proposed by Hiroki Kataoka in July 2005.
At the time it was rejected because the original patch increased the size of
page headers and it wasn't clear that the benefit outweighed the distributed
cost. The flag-bit approach gets most of the benefit without requiring an
increase in the page header size.

Heikki Linnakangas and Tom Lane

Modified Files:
--------------
pgsql/doc/src/sgml:
storage.sgml (r1.14 -> r1.15)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/storage.sgml.diff?r1=1.14&r2=1.15)
pgsql/src/backend/storage/page:
bufpage.c (r1.71 -> r1.72)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/page/bufpage.c.diff?r1=1.71&r2=1.72)
pgsql/src/include/catalog:
catversion.h (r1.388 -> r1.389)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.388&r2=1.389)
pgsql/src/include/storage:
bufpage.h (r1.71 -> r1.72)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/storage/bufpage.h.diff?r1=1.71&r2=1.72)

Browse pgsql-committers by date

  From Date Subject
Next Message User Eggyknap 2007-03-02 01:47:16 pgsnmpd - pgsnmpd: Use OID from pg_database for rdbmsDbTable index
Previous Message Tom Lane 2007-03-01 20:07:03 pgsql: Fix miscalculation of stats collector's write delay, introduced