Tom, > Uh, what exactly did you cut out? I suggested dropping the dumping of > full page images, but not removing CRCs altogether ...
Attached is the patch I used. (it's a -Urn patch 'cause that's what STP takes) -- --Josh Josh Berkus Aglio Database Solutions San Francisco
diff -urN pgsql/src/backend/access/transam/xlog.c pgsql-new/src/backend/access/transam/xlog.c --- pgsql/src/backend/access/transam/xlog.c 2005-06-21 16:28:37.000000000 -0700 +++ pgsql-new/src/backend/access/transam/xlog.c 2005-06-21 16:27:10.000000000 -0700 @@ -942,44 +942,6 @@ */ *lsn = page->pd_lsn; - if (XLByteLE(page->pd_lsn, RedoRecPtr)) - { - /* - * The page needs to be backed up, so set up *bkpb - */ - bkpb->node = BufferGetFileNode(rdata->buffer); - bkpb->block = BufferGetBlockNumber(rdata->buffer); - - if (rdata->buffer_std) - { - /* Assume we can omit data between pd_lower and pd_upper */ - uint16 lower = page->pd_lower; - uint16 upper = page->pd_upper; - - if (lower >= SizeOfPageHeaderData && - upper > lower && - upper <= BLCKSZ) - { - bkpb->hole_offset = lower; - bkpb->hole_length = upper - lower; - } - else - { - /* No "hole" to compress out */ - bkpb->hole_offset = 0; - bkpb->hole_length = 0; - } - } - else - { - /* Not a standard page header, don't try to eliminate "hole" */ - bkpb->hole_offset = 0; - bkpb->hole_length = 0; - } - - return true; /* buffer requires backup */ - } - return false; /* buffer does not need to be backed up */ }
---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match