codekingpro/portable-devtools
114k
1/*-------------------------------------------------------------------------2 *3 * xlogstats.h4 * Definitions for WAL Statitstics5 *6 * Copyright (c) 2022-2023, PostgreSQL Global Development Group7 *8 * IDENTIFICATION9 * src/include/access/xlogstats.h10 *11 *-------------------------------------------------------------------------12 */13#ifndef XLOGSTATS_H14#define XLOGSTATS_H15 16#include "access/rmgr.h"17#include "access/xlogreader.h"18 19#define MAX_XLINFO_TYPES 1620 21typedef struct XLogRecStats22{23 uint64 count;24 uint64 rec_len;25 uint64 fpi_len;26} XLogRecStats;27 28typedef struct XLogStats29{30 uint64 count;31#ifdef FRONTEND32 XLogRecPtr startptr;33 XLogRecPtr endptr;34#endif35 XLogRecStats rmgr_stats[RM_MAX_ID + 1];36 XLogRecStats record_stats[RM_MAX_ID + 1][MAX_XLINFO_TYPES];37} XLogStats;38 39extern void XLogRecGetLen(XLogReaderState *record, uint32 *rec_len,40 uint32 *fpi_len);41extern void XLogRecStoreStats(XLogStats *stats, XLogReaderState *record);42 43#endif /* XLOGSTATS_H */44 