]> granicus.if.org Git - postgresql/commitdiff
Change the signature of rm_desc so that it's passed a XLogRecord.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Sat, 14 Jun 2014 07:46:48 +0000 (10:46 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Sat, 14 Jun 2014 07:46:48 +0000 (10:46 +0300)
Just feels more natural, and is more consistent with rm_redo.

37 files changed:
contrib/pg_xlogdump/pg_xlogdump.c
contrib/pg_xlogdump/rmgrdesc.h
src/backend/access/rmgrdesc/clogdesc.c
src/backend/access/rmgrdesc/dbasedesc.c
src/backend/access/rmgrdesc/gindesc.c
src/backend/access/rmgrdesc/gistdesc.c
src/backend/access/rmgrdesc/hashdesc.c
src/backend/access/rmgrdesc/heapdesc.c
src/backend/access/rmgrdesc/mxactdesc.c
src/backend/access/rmgrdesc/nbtdesc.c
src/backend/access/rmgrdesc/relmapdesc.c
src/backend/access/rmgrdesc/seqdesc.c
src/backend/access/rmgrdesc/smgrdesc.c
src/backend/access/rmgrdesc/spgdesc.c
src/backend/access/rmgrdesc/standbydesc.c
src/backend/access/rmgrdesc/tblspcdesc.c
src/backend/access/rmgrdesc/xactdesc.c
src/backend/access/rmgrdesc/xlogdesc.c
src/backend/access/transam/xlog.c
src/include/access/clog.h
src/include/access/gin.h
src/include/access/gist_private.h
src/include/access/hash.h
src/include/access/heapam_xlog.h
src/include/access/multixact.h
src/include/access/nbtree.h
src/include/access/spgist.h
src/include/access/xact.h
src/include/access/xlog.h
src/include/access/xlog_internal.h
src/include/catalog/storage_xlog.h
src/include/commands/dbcommands.h
src/include/commands/sequence.h
src/include/commands/tablespace.h
src/include/pg_config_manual.h
src/include/storage/standby.h
src/include/utils/relmapper.h

index 824b8c393c9f601ccd7539b4347de9196c3546ff..c555786401fc3382f688bc2dd985b685445375d4 100644 (file)
@@ -351,7 +351,7 @@ XLogDumpDisplayRecord(XLogDumpConfig *config, XLogRecPtr ReadRecPtr, XLogRecord
                   !!(XLR_BKP_BLOCK(3) & record->xl_info));
 
        /* the desc routine will printf the description directly to stdout */
-       desc->rm_desc(NULL, record->xl_info, XLogRecGetData(record));
+       desc->rm_desc(NULL, record);
 
        putchar('\n');
 
index edf82577514e5fdc45e614f939c897bbd38230ab..d9641181401d91145f4171f5e5a7ce6fae7b8698 100644 (file)
@@ -13,7 +13,7 @@
 typedef struct RmgrDescData
 {
        const char *rm_name;
-       void            (*rm_desc) (StringInfo buf, uint8 xl_info, char *rec);
+       void            (*rm_desc) (StringInfo buf, XLogRecord *record);
 } RmgrDescData;
 
 extern const RmgrDescData RmgrDescTable[];
index 25a85228f3805ddceb9c1d69e795e73870a2e91a..e82baa8d00d0ca0de13752fd6b668fd77f6823fc 100644 (file)
 
 
 void
-clog_desc(StringInfo buf, uint8 xl_info, char *rec)
+clog_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        if (info == CLOG_ZEROPAGE)
        {
index 1ea02e7fe7a94e7ac5f12760557eb3e02f83b42f..0230716509fcd46e45d15ac1732ab30c6b70131c 100644 (file)
 
 
 void
-dbase_desc(StringInfo buf, uint8 xl_info, char *rec)
+dbase_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        if (info == XLOG_DBASE_CREATE)
        {
index cd1edfffa25c57983429566b3761de50f592a87b..12d68d7d40aeb548618d859feaad254575eedf16 100644 (file)
@@ -77,9 +77,10 @@ desc_recompress_leaf(StringInfo buf, ginxlogRecompressDataLeaf *insertData)
 }
 
 void
-gin_desc(StringInfo buf, uint8 xl_info, char *rec)
+gin_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        switch (info)
        {
@@ -121,7 +122,7 @@ gin_desc(StringInfo buf, uint8 xl_info, char *rec)
                                        ginxlogRecompressDataLeaf *insertData =
                                        (ginxlogRecompressDataLeaf *) payload;
 
-                                       if (xl_info & XLR_BKP_BLOCK(0))
+                                       if (record->xl_info & XLR_BKP_BLOCK(0))
                                                appendStringInfo(buf, " (full page image)");
                                        else
                                                desc_recompress_leaf(buf, insertData);
@@ -159,7 +160,7 @@ gin_desc(StringInfo buf, uint8 xl_info, char *rec)
 
                                appendStringInfoString(buf, "Vacuum data leaf page, ");
                                desc_node(buf, xlrec->node, xlrec->blkno);
-                               if (xl_info & XLR_BKP_BLOCK(0))
+                               if (record->xl_info & XLR_BKP_BLOCK(0))
                                        appendStringInfo(buf, " (full page image)");
                                else
                                        desc_recompress_leaf(buf, &xlrec->data);
index b7f876622bec0bd025accc38edb5cdb825c6c3c9..cdac49688201e5c25efc6543ec879c2fd3aa048c 100644 (file)
@@ -42,9 +42,10 @@ out_gistxlogPageSplit(StringInfo buf, gistxlogPageSplit *xlrec)
 }
 
 void
-gist_desc(StringInfo buf, uint8 xl_info, char *rec)
+gist_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        switch (info)
        {
index 23be85698eb7d2686c59b84937b2fc9831462dfa..86a0376dabdbea7b852d78e0484072c3dd52e7a6 100644 (file)
@@ -17,6 +17,6 @@
 #include "access/hash.h"
 
 void
-hash_desc(StringInfo buf, uint8 xl_info, char *rec)
+hash_desc(StringInfo buf, XLogRecord *record)
 {
 }
index c8a61669dd292c3fd7345fcbd8b274487cbe9f6b..7df18fa2d2cf4a7ea57324a046e42ea19b9f1248 100644 (file)
@@ -41,16 +41,17 @@ out_infobits(StringInfo buf, uint8 infobits)
 }
 
 void
-heap_desc(StringInfo buf, uint8 xl_info, char *rec)
+heap_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        info &= XLOG_HEAP_OPMASK;
        if (info == XLOG_HEAP_INSERT)
        {
                xl_heap_insert *xlrec = (xl_heap_insert *) rec;
 
-               if (xl_info & XLOG_HEAP_INIT_PAGE)
+               if (record->xl_info & XLOG_HEAP_INIT_PAGE)
                        appendStringInfoString(buf, "insert(init): ");
                else
                        appendStringInfoString(buf, "insert: ");
@@ -69,7 +70,7 @@ heap_desc(StringInfo buf, uint8 xl_info, char *rec)
        {
                xl_heap_update *xlrec = (xl_heap_update *) rec;
 
-               if (xl_info & XLOG_HEAP_INIT_PAGE)
+               if (record->xl_info & XLOG_HEAP_INIT_PAGE)
                        appendStringInfoString(buf, "update(init): ");
                else
                        appendStringInfoString(buf, "update: ");
@@ -85,7 +86,7 @@ heap_desc(StringInfo buf, uint8 xl_info, char *rec)
        {
                xl_heap_update *xlrec = (xl_heap_update *) rec;
 
-               if (xl_info & XLOG_HEAP_INIT_PAGE)              /* can this case happen? */
+               if (record->xl_info & XLOG_HEAP_INIT_PAGE)      /* can this case happen? */
                        appendStringInfoString(buf, "hot_update(init): ");
                else
                        appendStringInfoString(buf, "hot_update: ");
@@ -126,9 +127,10 @@ heap_desc(StringInfo buf, uint8 xl_info, char *rec)
                appendStringInfoString(buf, "UNKNOWN");
 }
 void
-heap2_desc(StringInfo buf, uint8 xl_info, char *rec)
+heap2_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        info &= XLOG_HEAP_OPMASK;
        if (info == XLOG_HEAP2_CLEAN)
@@ -172,7 +174,7 @@ heap2_desc(StringInfo buf, uint8 xl_info, char *rec)
        {
                xl_heap_multi_insert *xlrec = (xl_heap_multi_insert *) rec;
 
-               if (xl_info & XLOG_HEAP_INIT_PAGE)
+               if (record->xl_info & XLOG_HEAP_INIT_PAGE)
                        appendStringInfoString(buf, "multi-insert (init): ");
                else
                        appendStringInfoString(buf, "multi-insert: ");
index daf9b4100ea3f12a41676a33e1daee5ed2aedce6..50d9b55ea9ef45fb9648a3ea848e30ac72a24122 100644 (file)
@@ -47,9 +47,10 @@ out_member(StringInfo buf, MultiXactMember *member)
 }
 
 void
-multixact_desc(StringInfo buf, uint8 xl_info, char *rec)
+multixact_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        if (info == XLOG_MULTIXACT_ZERO_OFF_PAGE)
        {
index a3c746f1a849d658e0674177c544a72c4fcbe2a1..bf3389cbcd4ef361e08b0e11a0414649cf32eca9 100644 (file)
@@ -26,9 +26,10 @@ out_target(StringInfo buf, xl_btreetid *target)
 }
 
 void
-btree_desc(StringInfo buf, uint8 xl_info, char *rec)
+btree_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        switch (info)
        {
index 8409016319168160897fbdd8a8b7451cd793e565..06fd4b3a99702a0c3c502826414ef52393a1076d 100644 (file)
 #include "utils/relmapper.h"
 
 void
-relmap_desc(StringInfo buf, uint8 xl_info, char *rec)
+relmap_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        if (info == XLOG_RELMAP_UPDATE)
        {
index 726fb2acf76d95d3c5c1388664a7a7c2190acf34..42eb9b916092f9c30e17a39ea6e1c19bb55c7cc7 100644 (file)
 
 
 void
-seq_desc(StringInfo buf, uint8 xl_info, char *rec)
+seq_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
        xl_seq_rec *xlrec = (xl_seq_rec *) rec;
 
        if (info == XLOG_SEQ_LOG)
index aa72d4c4c3a6dd27dfc14c3c47acbe6451aa1468..c76c8156c5e8de6e8de18d97694ec949deadfc0e 100644 (file)
 
 
 void
-smgr_desc(StringInfo buf, uint8 xl_info, char *rec)
+smgr_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        if (info == XLOG_SMGR_CREATE)
        {
index 9c41097f199f4661f3d4ce6988935ef382784b4f..ed369b25acd52511a6b47f605ab58f17801474d5 100644 (file)
@@ -24,9 +24,10 @@ out_target(StringInfo buf, RelFileNode node)
 }
 
 void
-spg_desc(StringInfo buf, uint8 xl_info, char *rec)
+spg_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        switch (info)
        {
index 80cc7dcdec35288c76c8da3f1a4a84081109efc2..a127d3889271dab8b1122653aee0d2652ae1d434 100644 (file)
@@ -37,9 +37,10 @@ standby_desc_running_xacts(StringInfo buf, xl_running_xacts *xlrec)
 }
 
 void
-standby_desc(StringInfo buf, uint8 xl_info, char *rec)
+standby_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        if (info == XLOG_STANDBY_LOCK)
        {
index a0ccd0e25ac6479a383aaa6a3fe02fbf17c043a7..30b1f06106b74e7f793ed45a6ab464662943f87c 100644 (file)
 
 
 void
-tblspc_desc(StringInfo buf, uint8 xl_info, char *rec)
+tblspc_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        if (info == XLOG_TBLSPC_CREATE)
        {
index 7c43d4c06fdcd4358e53e2a8409412e7097342ed..994931e66c2b5cc0ee08aa58d58312a680f93032 100644 (file)
@@ -137,9 +137,10 @@ xact_desc_assignment(StringInfo buf, xl_xact_assignment *xlrec)
 }
 
 void
-xact_desc(StringInfo buf, uint8 xl_info, char *rec)
+xact_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        if (info == XLOG_XACT_COMMIT_COMPACT)
        {
index e3d7b6681f3d3b3fba17f4d55ac34d028279c988..2224da1320eee8333fd1c573634b854838c0345f 100644 (file)
@@ -32,9 +32,10 @@ const struct config_enum_entry wal_level_options[] = {
 };
 
 void
-xlog_desc(StringInfo buf, uint8 xl_info, char *rec)
+xlog_desc(StringInfo buf, XLogRecord *record)
 {
-       uint8           info = xl_info & ~XLR_INFO_MASK;
+       char       *rec = XLogRecGetData(record);
+       uint8           info = record->xl_info & ~XLR_INFO_MASK;
 
        if (info == XLOG_CHECKPOINT_SHUTDOWN ||
                info == XLOG_CHECKPOINT_ONLINE)
index 3f92482b42d4b792c2b6b908a2b635dfc2a04766..029c68e53d3aab11f3be4052ae792630f6ad2b20 100644 (file)
@@ -1276,11 +1276,12 @@ begin:;
                        rdt_lastnormal->next = NULL;
 
                        initStringInfo(&recordbuf);
+                       appendBinaryStringInfo(&recordbuf, (char *) &rechdr, sizeof(XLogRecord));
                        for (; rdata != NULL; rdata = rdata->next)
                                appendBinaryStringInfo(&recordbuf, rdata->data, rdata->len);
 
                        appendStringInfoString(&buf, " - ");
-                       RmgrTable[rechdr->xl_rmid].rm_desc(&buf, rechdr->xl_info, recordbuf.data);
+                       RmgrTable[rechdr->xl_rmid].rm_desc(&buf, (XLogRecord *) recordbuf.data);
                        pfree(recordbuf.data);
                }
                elog(LOG, "%s", buf.data);
@@ -6627,9 +6628,7 @@ StartupXLOG(void)
                                                         (uint32) (EndRecPtr >> 32), (uint32) EndRecPtr);
                                        xlog_outrec(&buf, record);
                                        appendStringInfoString(&buf, " - ");
-                                       RmgrTable[record->xl_rmid].rm_desc(&buf,
-                                                                                                          record->xl_info,
-                                                                                                        XLogRecGetData(record));
+                                       RmgrTable[record->xl_rmid].rm_desc(&buf, record);
                                        elog(LOG, "%s", buf.data);
                                        pfree(buf.data);
                                }
@@ -10453,9 +10452,7 @@ rm_redo_error_callback(void *arg)
        StringInfoData buf;
 
        initStringInfo(&buf);
-       RmgrTable[record->xl_rmid].rm_desc(&buf,
-                                                                          record->xl_info,
-                                                                          XLogRecGetData(record));
+       RmgrTable[record->xl_rmid].rm_desc(&buf, record);
 
        /* don't bother emitting empty description */
        if (buf.len > 0)
index 66a6d17f18c8776926f6f250a2139ce51a7ad76a..be9b8675a414a4159ec98eea59cb4df506dfb978 100644 (file)
@@ -48,6 +48,6 @@ extern void TruncateCLOG(TransactionId oldestXact);
 #define CLOG_TRUNCATE          0x10
 
 extern void clog_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void clog_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void clog_desc(StringInfo buf, XLogRecord *record);
 
 #endif   /* CLOG_H */
index 4cda0ecbab70144af400fc43a6fe4d38dd7da756..a0b288d957a3069e3b41b3a4ee99aa0419927d82 100644 (file)
@@ -73,7 +73,7 @@ extern void ginUpdateStats(Relation index, const GinStatsData *stats);
 
 /* ginxlog.c */
 extern void gin_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void gin_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void gin_desc(StringInfo buf, XLogRecord *record);
 extern void gin_xlog_startup(void);
 extern void gin_xlog_cleanup(void);
 
index 089c67942138614ce4ac42dd9513ac0f7704d15d..03e9903e8a093e417e6c12255758c4495524b4f8 100644 (file)
@@ -451,7 +451,7 @@ extern SplitedPageLayout *gistSplit(Relation r, Page page, IndexTuple *itup,
 
 /* gistxlog.c */
 extern void gist_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void gist_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void gist_desc(StringInfo buf, XLogRecord *record);
 extern void gist_xlog_startup(void);
 extern void gist_xlog_cleanup(void);
 
index d89bcea39d25dc83db9eefda4296ec9a6ab6663c..2062801db5c3d18389b76ac8a626508fdbff2660 100644 (file)
@@ -355,6 +355,6 @@ extern OffsetNumber _hash_binsearch_last(Page page, uint32 hash_value);
 
 /* hash.c */
 extern void hash_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void hash_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void hash_desc(StringInfo buf, XLogRecord *record);
 
 #endif   /* HASH_H */
index cfdd1ffbefc37246a8243149be4a2cd04e28e5f3..05beb0054505224b08d0412311f6c8ff3aadd072 100644 (file)
@@ -367,10 +367,10 @@ typedef struct xl_heap_rewrite_mapping
 extern void HeapTupleHeaderAdvanceLatestRemovedXid(HeapTupleHeader tuple,
                                                                           TransactionId *latestRemovedXid);
 
-extern void heap_redo(XLogRecPtr lsn, XLogRecord *rptr);
-extern void heap_desc(StringInfo buf, uint8 xl_info, char *rec);
-extern void heap2_redo(XLogRecPtr lsn, XLogRecord *rptr);
-extern void heap2_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void heap_redo(XLogRecPtr lsn, XLogRecord *record);
+extern void heap_desc(StringInfo buf, XLogRecord *record);
+extern void heap2_redo(XLogRecPtr lsn, XLogRecord *record);
+extern void heap2_desc(StringInfo buf, XLogRecord *record);
 extern void heap_xlog_logical_rewrite(XLogRecPtr lsn, XLogRecord *r);
 
 extern XLogRecPtr log_heap_cleanup_info(RelFileNode rnode,
index 80c70748cf202e9e36ab289fa7ea229ec13d2db9..448ec100d393399e1357322fe7085491fa8d749d 100644 (file)
@@ -134,7 +134,7 @@ extern void multixact_twophase_postabort(TransactionId xid, uint16 info,
                                                         void *recdata, uint32 len);
 
 extern void multixact_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void multixact_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void multixact_desc(StringInfo buf, XLogRecord *record);
 extern char *mxid_to_string(MultiXactId multi, int nmembers,
                           MultiXactMember *members);
 
index f2817590c4186896281877fec622c0d1b1ae419e..ed6f697c8ede2f11a998204e90371b9cc9d10cda 100644 (file)
@@ -724,6 +724,6 @@ extern void _bt_leafbuild(BTSpool *btspool, BTSpool *spool2);
  * prototypes for functions in nbtxlog.c
  */
 extern void btree_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void btree_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void btree_desc(StringInfo buf, XLogRecord *record);
 
 #endif   /* NBTREE_H */
index 9187b4ac413c4b6289a33e60c1cb799f4aad79d8..7f8655cf60e0e1ec54a99bf378696014cb09ad15 100644 (file)
@@ -197,7 +197,7 @@ extern Datum spgvacuumcleanup(PG_FUNCTION_ARGS);
 
 /* spgxlog.c */
 extern void spg_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void spg_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void spg_desc(StringInfo buf, XLogRecord *record);
 extern void spg_xlog_startup(void);
 extern void spg_xlog_cleanup(void);
 
index 634f5b2480cfb1aaa77c053d18bde4df88c25b7d..10ee9433521c7ea81f10de021275ef3a1b62623a 100644 (file)
@@ -256,6 +256,6 @@ extern void UnregisterSubXactCallback(SubXactCallback callback, void *arg);
 extern int     xactGetCommittedChildren(TransactionId **ptr);
 
 extern void xact_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void xact_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void xact_desc(StringInfo buf, XLogRecord *record);
 
 #endif   /* XACT_H */
index 1eaa5c1c2106807af068b84d7ada6e6083c7213e..85f9cb7cab2c4489d47cc23e5199de68465d3c0c 100644 (file)
@@ -298,7 +298,7 @@ extern Buffer RestoreBackupBlock(XLogRecPtr lsn, XLogRecord *record,
                                   bool get_cleanup_lock, bool keep_buffer);
 
 extern void xlog_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void xlog_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void xlog_desc(StringInfo buf, XLogRecord *record);
 
 extern void issue_xlog_fsync(int fd, XLogSegNo segno);
 
index 3a692cdf0c826fde24aee1670edd58706b48fc8f..8c8de387e024069e37950dd079375b89f0ebf41f 100644 (file)
@@ -245,7 +245,7 @@ typedef struct RmgrData
 {
        const char *rm_name;
        void            (*rm_redo) (XLogRecPtr lsn, struct XLogRecord *rptr);
-       void            (*rm_desc) (StringInfo buf, uint8 xl_info, char *rec);
+       void            (*rm_desc) (StringInfo buf, struct XLogRecord *rptr);
        void            (*rm_startup) (void);
        void            (*rm_cleanup) (void);
 } RmgrData;
index 43bf277f35b2405584a8744a9d7e3ca6ec5b6fc8..7081c990adaaa120024bf0d0e70542081208451b 100644 (file)
@@ -44,6 +44,6 @@ typedef struct xl_smgr_truncate
 extern void log_smgrcreate(RelFileNode *rnode, ForkNumber forkNum);
 
 extern void smgr_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void smgr_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void smgr_desc(StringInfo buf, XLogRecord *record);
 
 #endif   /* STORAGE_XLOG_H */
index fa10295d3a85bca7c436381e1511e2a7572e3e1e..c2380dca11159579d6c26f6d898c5ee371658251 100644 (file)
@@ -63,7 +63,7 @@ extern Oid    get_database_oid(const char *dbname, bool missingok);
 extern char *get_database_name(Oid dbid);
 
 extern void dbase_redo(XLogRecPtr lsn, XLogRecord *rptr);
-extern void dbase_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void dbase_desc(StringInfo buf, XLogRecord *rptr);
 
 extern void check_encoding_locale_matches(int encoding, const char *collate, const char *ctype);
 
index 7d8a370ddb99f1f013500cadd89566c476796bd0..8819c00e812a391fd549addf9808dbb6e50229a2 100644 (file)
@@ -77,6 +77,6 @@ extern void ResetSequence(Oid seq_relid);
 extern void ResetSequenceCaches(void);
 
 extern void seq_redo(XLogRecPtr lsn, XLogRecord *rptr);
-extern void seq_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void seq_desc(StringInfo buf, XLogRecord *rptr);
 
 #endif   /* SEQUENCE_H */
index 1603f677a7de23b68d7e0ac6da7eeca0617a2d2f..073cb0d64a1f403899439bae37f9d827b3040894 100644 (file)
@@ -57,6 +57,6 @@ extern char *get_tablespace_name(Oid spc_oid);
 extern bool directory_is_empty(const char *path);
 
 extern void tblspc_redo(XLogRecPtr lsn, XLogRecord *rptr);
-extern void tblspc_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void tblspc_desc(StringInfo buf, XLogRecord *rptr);
 
 #endif   /* TABLESPACE_H */
index d1f99fbafef3260b60faf386000cfd786e57c55c..0f4402fd96ea29e6110c5a39351584acb78499a7 100644 (file)
  * Enable debugging print statements for WAL-related operations; see
  * also the wal_debug GUC var.
  */
-/* #define WAL_DEBUG */
+#define WAL_DEBUG
 
 /*
  * Enable tracing of resource consumption during sort operations;
index 89ab704699ba32dedca81d4d0ddfba6ef77f1318..da22fd31499fc0c083c7f0bb58248dda4ad3ab57 100644 (file)
@@ -82,7 +82,7 @@ typedef struct xl_running_xacts
 
 /* Recovery handlers for the Standby Rmgr (RM_STANDBY_ID) */
 extern void standby_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void standby_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void standby_desc(StringInfo buf, XLogRecord *record);
 
 /*
  * Declarations for GetRunningTransactionData(). Similar to Snapshots, but
index 2452c94352a28742d06aa23e2472eec940ee2a01..76bcf18d5ab49bd2a1c594f5abaa5d9fa614f9c4 100644 (file)
@@ -59,6 +59,6 @@ extern void RelationMapInitializePhase2(void);
 extern void RelationMapInitializePhase3(void);
 
 extern void relmap_redo(XLogRecPtr lsn, XLogRecord *record);
-extern void relmap_desc(StringInfo buf, uint8 xl_info, char *rec);
+extern void relmap_desc(StringInfo buf, XLogRecord *record);
 
 #endif   /* RELMAPPER_H */