YugabyteDB (2.13.1.0-b60, 21121d69985fbf76aa6958d8f04a9bfa936293b5)

Coverage Report

Created: 2022-03-22 16:43

/Users/deen/code/yugabyte-db/src/postgres/src/include/replication/message.h
Line
Count
Source (jump to first uncovered line)
1
/*-------------------------------------------------------------------------
2
 * message.h
3
 *     Exports from replication/logical/message.c
4
 *
5
 * Copyright (c) 2013-2018, PostgreSQL Global Development Group
6
 *
7
 * src/include/replication/message.h
8
 *-------------------------------------------------------------------------
9
 */
10
#ifndef PG_LOGICAL_MESSAGE_H
11
#define PG_LOGICAL_MESSAGE_H
12
13
#include "access/xlog.h"
14
#include "access/xlogdefs.h"
15
#include "access/xlogreader.h"
16
17
/*
18
 * Generic logical decoding message wal record.
19
 */
20
typedef struct xl_logical_message
21
{
22
  Oid     dbId;     /* database Oid emitted from */
23
  bool    transactional;  /* is message transactional? */
24
  Size    prefix_size;  /* length of prefix */
25
  Size    message_size; /* size of the message */
26
  char    message[FLEXIBLE_ARRAY_MEMBER]; /* message including the null
27
                         * terminated prefix of length
28
                         * prefix_size */
29
} xl_logical_message;
30
31
0
#define SizeOfLogicalMessage  (offsetof(xl_logical_message, message))
32
33
extern XLogRecPtr LogLogicalMessage(const char *prefix, const char *message,
34
          size_t size, bool transactional);
35
36
/* RMGR API*/
37
0
#define XLOG_LOGICAL_MESSAGE  0x00
38
void    logicalmsg_redo(XLogReaderState *record);
39
void    logicalmsg_desc(StringInfo buf, XLogReaderState *record);
40
const char *logicalmsg_identify(uint8 info);
41
42
#endif              /* PG_LOGICAL_MESSAGE_H */