Age Owner Branch data TLA Line data Source code
1 : : /*-------------------------------------------------------------------------
2 : : *
3 : : * committsdesc.c
4 : : * rmgr descriptor routines for access/transam/commit_ts.c
5 : : *
6 : : * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
7 : : * Portions Copyright (c) 1994, Regents of the University of California
8 : : *
9 : : *
10 : : * IDENTIFICATION
11 : : * src/backend/access/rmgrdesc/committsdesc.c
12 : : *
13 : : *-------------------------------------------------------------------------
14 : : */
15 : : #include "postgres.h"
16 : :
17 : : #include "access/commit_ts.h"
18 : :
19 : :
20 : : void
3420 alvherre@alvh.no-ip. 21 :UBC 0 : commit_ts_desc(StringInfo buf, XLogReaderState *record)
22 : : {
23 : 0 : char *rec = XLogRecGetData(record);
24 : 0 : uint8 info = XLogRecGetInfo(record) & ~XLR_INFO_MASK;
25 : :
26 [ # # ]: 0 : if (info == COMMIT_TS_ZEROPAGE)
27 : : {
28 : : int64 pageno;
29 : :
137 akorotkov@postgresql 30 :UNC 0 : memcpy(&pageno, rec, sizeof(pageno));
31 : 0 : appendStringInfo(buf, "%lld", (long long) pageno);
32 : : }
3420 alvherre@alvh.no-ip. 33 [ # # ]:UBC 0 : else if (info == COMMIT_TS_TRUNCATE)
34 : : {
2642 35 : 0 : xl_commit_ts_truncate *trunc = (xl_commit_ts_truncate *) rec;
36 : :
137 akorotkov@postgresql 37 :UNC 0 : appendStringInfo(buf, "pageno %lld, oldestXid %u",
38 : 0 : (long long) trunc->pageno, trunc->oldestXid);
39 : : }
3420 alvherre@alvh.no-ip. 40 :UBC 0 : }
41 : :
42 : : const char *
43 : 0 : commit_ts_identify(uint8 info)
44 : : {
45 [ # # # ]: 0 : switch (info)
46 : : {
47 : 0 : case COMMIT_TS_ZEROPAGE:
48 : 0 : return "ZEROPAGE";
49 : 0 : case COMMIT_TS_TRUNCATE:
50 : 0 : return "TRUNCATE";
51 : 0 : default:
52 : 0 : return NULL;
53 : : }
54 : : }
|