On Feb 1, 2012, at 4:25 AM, Simon Riggs wrote:
> At present log_newpage() produces log records called XLOG_HEAP_NEWPAGE.
> That routine is used by HEAP, BTREE, GIN, SPGIST rmgrs, as well as
> various forks.
> WAL contains no information as to which rmgr the data refers to,
> making debugging much harder and skewing efforts to optimise WAL
> traffic and is a pretty gross modularity violation of the whole rmgr
> This refactoring adds an RmgrId field onto each new page record and
> makes clearer that certain "heap" routines are actually generic. The
> WAL records are still marked as HEAP rmgr and have XLOG_NEWPAGE record
> type, but at least we can tell them apart. (We already had forknum,
> just not rmgrid).
But we already had RelFileNode; wouldn't that be enough to tell what rmgr was responsible for the new page? Can 2 different rmgrs write to the same file node?
Jim C. Nasby, Database Architect jim(at)nasby(dot)net
512.569.9461 (cell) http://jim.nasby.net
In response to
pgsql-hackers by date
|Next:||From: Robert Haas||Date: 2012-02-01 22:50:45|
|Subject: spgist text_ops and LIKE|
|Previous:||From: Duncan Rance||Date: 2012-02-01 22:37:32|
|Subject: Re: BUG #6425: Bus error in slot_deform_tuple |