YugabyteDB (2.13.1.0-b60, 21121d69985fbf76aa6958d8f04a9bfa936293b5)

Coverage Report

Created: 2022-03-22 16:43

/Users/deen/code/yugabyte-db/src/postgres/src/backend/access/rmgrdesc/smgrdesc.c
Line
Count
Source (jump to first uncovered line)
1
/*-------------------------------------------------------------------------
2
 *
3
 * smgrdesc.c
4
 *    rmgr descriptor routines for catalog/storage.c
5
 *
6
 * Portions Copyright (c) 1996-2018, PostgreSQL Global Development Group
7
 * Portions Copyright (c) 1994, Regents of the University of California
8
 *
9
 *
10
 * IDENTIFICATION
11
 *    src/backend/access/rmgrdesc/smgrdesc.c
12
 *
13
 *-------------------------------------------------------------------------
14
 */
15
#include "postgres.h"
16
17
#include "catalog/storage_xlog.h"
18
19
20
void
21
smgr_desc(StringInfo buf, XLogReaderState *record)
22
0
{
23
0
  char     *rec = XLogRecGetData(record);
24
0
  uint8   info = XLogRecGetInfo(record) & ~XLR_INFO_MASK;
25
26
0
  if (info == XLOG_SMGR_CREATE)
27
0
  {
28
0
    xl_smgr_create *xlrec = (xl_smgr_create *) rec;
29
0
    char     *path = relpathperm(xlrec->rnode, xlrec->forkNum);
30
31
0
    appendStringInfoString(buf, path);
32
0
    pfree(path);
33
0
  }
34
0
  else if (info == XLOG_SMGR_TRUNCATE)
35
0
  {
36
0
    xl_smgr_truncate *xlrec = (xl_smgr_truncate *) rec;
37
0
    char     *path = relpathperm(xlrec->rnode, MAIN_FORKNUM);
38
39
0
    appendStringInfo(buf, "%s to %u blocks flags %d", path,
40
0
             xlrec->blkno, xlrec->flags);
41
0
    pfree(path);
42
0
  }
43
0
}
44
45
const char *
46
smgr_identify(uint8 info)
47
0
{
48
0
  const char *id = NULL;
49
50
0
  switch (info & ~XLR_INFO_MASK)
51
0
  {
52
0
    case XLOG_SMGR_CREATE:
53
0
      id = "CREATE";
54
0
      break;
55
0
    case XLOG_SMGR_TRUNCATE:
56
0
      id = "TRUNCATE";
57
0
      break;
58
0
  }
59
60
0
  return id;
61
0
}