summaryrefslogtreecommitdiff
path: root/src/include/commands/sequence_xlog.h
blob: c8cf0112c382f768a2bc6aeeae7b2a411339f6ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/*-------------------------------------------------------------------------
 *
 * sequence_xlog.h
 *	  Sequence WAL definitions.
 *
 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
 * Portions Copyright (c) 1994, Regents of the University of California
 *
 * src/include/commands/sequence_xlog.h
 *
 *-------------------------------------------------------------------------
 */

#ifndef SEQUENCE_XLOG_H
#define SEQUENCE_XLOG_H

#include "access/xlogreader.h"
#include "lib/stringinfo.h"

/* Record identifier */
#define XLOG_SEQ_LOG			0x00

/*
 * The "special area" of a sequence's buffer page looks like this.
 */
#define SEQ_MAGIC		0x1717

typedef struct sequence_magic
{
	uint32		magic;
} sequence_magic;

/* Sequence WAL record */
typedef struct xl_seq_rec
{
	RelFileLocator locator;
	/* SEQUENCE TUPLE DATA FOLLOWS AT THE END */
} xl_seq_rec;

extern void seq_redo(XLogReaderState *record);
extern void seq_desc(StringInfo buf, XLogReaderState *record);
extern const char *seq_identify(uint8 info);
extern void seq_mask(char *page, BlockNumber blkno);

#endif							/* SEQUENCE_XLOG_H */