commit f0370b2293f3a7f3ce59b6164ae96798ba4bbe0d
Author: Alexander Korotkov <a.korotkov@postgrespro.ru>
Date:   Thu Apr 19 00:56:37 2018 +0300

    Handle XLOG_BTREE_META_CLEANUP in btree_desc() and btree_identify()
    
    New WAL record XLOG_BTREE_META_CLEANUP introduced in 857f9c36 has no handling
    in btree_desc() and btree_identify().  This patch implements corresponding
    handling.

diff --git a/src/backend/access/rmgrdesc/nbtdesc.c b/src/backend/access/rmgrdesc/nbtdesc.c
index 0b996ea13a..384ac07289 100644
--- a/src/backend/access/rmgrdesc/nbtdesc.c
+++ b/src/backend/access/rmgrdesc/nbtdesc.c
@@ -96,6 +96,15 @@ btree_desc(StringInfo buf, XLogReaderState *record)
 								 xlrec->node.relNode, xlrec->latestRemovedXid);
 				break;
 			}
+		case XLOG_BTREE_META_CLEANUP:
+			{
+				xl_btree_metadata *xlrec = (xl_btree_metadata *) rec;
+
+				appendStringInfo(buf, "oldest_btpo_xact %u; last_cleanup_num_heap_tuples: %lf",
+								 xlrec->oldest_btpo_xact,
+								 xlrec->last_cleanup_num_heap_tuples);
+				break;
+			}
 	}
 }
 
@@ -148,6 +157,9 @@ btree_identify(uint8 info)
 		case XLOG_BTREE_REUSE_PAGE:
 			id = "REUSE_PAGE";
 			break;
+		case XLOG_BTREE_META_CLEANUP:
+			id = "META CLEANUP";
+			break;
 	}
 
 	return id;
