mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-09-30 18:01:19 +02:00
c8e1ba736b
Backpatch-through: 11
44 lines
986 B
C
44 lines
986 B
C
/*-------------------------------------------------------------------------
|
|
*
|
|
* xlogstats.h
|
|
* Definitions for WAL Statitstics
|
|
*
|
|
* Copyright (c) 2022-2023, PostgreSQL Global Development Group
|
|
*
|
|
* IDENTIFICATION
|
|
* src/include/access/xlogstats.h
|
|
*
|
|
*-------------------------------------------------------------------------
|
|
*/
|
|
#ifndef XLOGSTATS_H
|
|
#define XLOGSTATS_H
|
|
|
|
#include "access/rmgr.h"
|
|
#include "access/xlogreader.h"
|
|
|
|
#define MAX_XLINFO_TYPES 16
|
|
|
|
typedef struct XLogRecStats
|
|
{
|
|
uint64 count;
|
|
uint64 rec_len;
|
|
uint64 fpi_len;
|
|
} XLogRecStats;
|
|
|
|
typedef struct XLogStats
|
|
{
|
|
uint64 count;
|
|
#ifdef FRONTEND
|
|
XLogRecPtr startptr;
|
|
XLogRecPtr endptr;
|
|
#endif
|
|
XLogRecStats rmgr_stats[RM_MAX_ID + 1];
|
|
XLogRecStats record_stats[RM_MAX_ID + 1][MAX_XLINFO_TYPES];
|
|
} XLogStats;
|
|
|
|
extern void XLogRecGetLen(XLogReaderState *record, uint32 *rec_len,
|
|
uint32 *fpi_len);
|
|
extern void XLogRecStoreStats(XLogStats *stats, XLogReaderState *record);
|
|
|
|
#endif /* XLOGSTATS_H */
|