postgres.git / summary / log / commit / refs

commit    97c19e6c38ebc5e300539f6985ef3e05398c8f46
Author:   Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date:     Thu Nov 28 19:54:49 2013 +0000

    Fix gin_desc routine to match the WAL format.
    
    In the GIN incomplete-splits patch, I used BlockIdDatas to store the block
    number of left and right children, when inserting a downlink after a split
    to an internal page posting list page. But gin_desc thought they were stored
    as BlockNumbers.


src/backend/access/rmgrdesc/gindesc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/backend/access/rmgrdesc/gindesc.c b/src/backend/access/rmgrdesc/gindesc.c index 72d60bf8d32..3675e1ec5d8 100644 --- a/src/backend/access/rmgrdesc/gindesc.c +++ b/src/backend/access/rmgrdesc/gindesc.c @@ -56,9 +56,9 @@ gin_desc(StringInfo buf, uint8 xl_info, char *rec) BlockNumber leftChildBlkno; BlockNumber rightChildBlkno; - memcpy(&leftChildBlkno, payload, sizeof(BlockNumber)); - payload += sizeof(BlockNumber); - memcpy(&rightChildBlkno, payload, sizeof(BlockNumber)); + leftChildBlkno = BlockIdGetBlockNumber((BlockId) payload); + payload += sizeof(BlockIdData); + rightChildBlkno = BlockIdGetBlockNumber((BlockId) payload); payload += sizeof(BlockNumber); appendStringInfo(buf, " children: %u/%u", leftChildBlkno, rightChildBlkno); [parent: da8a7160893c]