1/*
2 * subtrans.h
3 *
4 * PostgreSQL subtransaction-log manager
5 *
6 * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
8 *
9 * src/include/access/subtrans.h
10 */
11#ifndef SUBTRANS_H
12#define SUBTRANS_H
13
14/* Number of SLRU buffers to use for subtrans */
15#define NUM_SUBTRANS_BUFFERS 32
16
17extern void SubTransSetParent(TransactionId xid, TransactionId parent);
18extern TransactionId SubTransGetParent(TransactionId xid);
19extern TransactionId SubTransGetTopmostTransaction(TransactionId xid);
20
21extern Size SUBTRANSShmemSize(void);
22extern void SUBTRANSShmemInit(void);
23extern void BootStrapSUBTRANS(void);
24extern void StartupSUBTRANS(TransactionId oldestActiveXID);
25extern void ShutdownSUBTRANS(void);
26extern void CheckPointSUBTRANS(void);
27extern void ExtendSUBTRANS(TransactionId newestXact);
28extern void TruncateSUBTRANS(TransactionId oldestXact);
29
30#endif /* SUBTRANS_H */
31