summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane2012-04-06 22:10:41 +0000
committerTom Lane2012-04-06 22:10:41 +0000
commit3a7fdb7068830db6796b66c551520c36719fc74c (patch)
tree55be396e779f99e03e4c2baf76835e561fca1126
parent260b119c584775b389bb5af3bf3704b03ab35416 (diff)
Fix misleading output from gin_desc().
XLOG_GIN_UPDATE_META_PAGE and XLOG_GIN_DELETE_LISTPAGE records were printed with a list link field labeled as "blkno", which was confusing, especially when the link was empty (InvalidBlockNumber). Print the metapage block number instead, since that's what's actually being updated. We could include the link values too as a separate field, but not clear it's worth the trouble. Back-patch to 8.4 where the dubious code was added.
-rw-r--r--src/backend/access/gin/ginxlog.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/backend/access/gin/ginxlog.c b/src/backend/access/gin/ginxlog.c
index 6fc55311576..c9f611d936e 100644
--- a/src/backend/access/gin/ginxlog.c
+++ b/src/backend/access/gin/ginxlog.c
@@ -743,9 +743,7 @@ gin_desc(StringInfo buf, uint8 xl_info, char *rec)
(((ginxlogInsert *) rec)->isData) ? 'T' : 'F',
(((ginxlogInsert *) rec)->isLeaf) ? 'T' : 'F',
(((ginxlogInsert *) rec)->isDelete) ? 'T' : 'F',
- ((ginxlogInsert *) rec)->updateBlkno
- );
-
+ ((ginxlogInsert *) rec)->updateBlkno);
break;
case XLOG_GIN_SPLIT:
appendStringInfo(buf, "Page split, ");
@@ -762,7 +760,7 @@ gin_desc(StringInfo buf, uint8 xl_info, char *rec)
break;
case XLOG_GIN_UPDATE_META_PAGE:
appendStringInfo(buf, "Update metapage, ");
- desc_node(buf, ((ginxlogUpdateMeta *) rec)->node, ((ginxlogUpdateMeta *) rec)->metadata.tail);
+ desc_node(buf, ((ginxlogUpdateMeta *) rec)->node, GIN_METAPAGE_BLKNO);
break;
case XLOG_GIN_INSERT_LISTPAGE:
appendStringInfo(buf, "Insert new list page, ");
@@ -770,7 +768,7 @@ gin_desc(StringInfo buf, uint8 xl_info, char *rec)
break;
case XLOG_GIN_DELETE_LISTPAGE:
appendStringInfo(buf, "Delete list pages (%d), ", ((ginxlogDeleteListPages *) rec)->ndeleted);
- desc_node(buf, ((ginxlogDeleteListPages *) rec)->node, ((ginxlogDeleteListPages *) rec)->metadata.head);
+ desc_node(buf, ((ginxlogDeleteListPages *) rec)->node, GIN_METAPAGE_BLKNO);
break;
default:
elog(PANIC, "gin_desc: unknown op code %u", info);