greenplumn cdbappendonlyxlog 源码
greenplumn cdbappendonlyxlog 代码
文件路径:/src/include/cdb/cdbappendonlyxlog.h
/*-------------------------------------------------------------------------
*
* cdbappendonlyxlog.h
*
* Portions Copyright (c) 2009-2010, Greenplum inc
* Portions Copyright (c) 2012-Present VMware, Inc. or its affiliates.
*
*
* IDENTIFICATION
* src/include/cdb/cdbappendonlyxlog.h
*
*-------------------------------------------------------------------------
*/
#ifndef CDBAPPENDONLYXLOG_H
#define CDBAPPENDONLYXLOG_H
#include "access/xlogreader.h"
#include "lib/stringinfo.h"
#include "storage/fd.h"
#include "storage/relfilenode.h"
#include "storage/smgr.h"
#define XLOG_APPENDONLY_INSERT 0x00
#define XLOG_APPENDONLY_TRUNCATE 0x10
typedef struct
{
RelFileNode node;
uint32 segment_filenum;
int64 offset;
} xl_ao_target;
#define SizeOfAOTarget (offsetof(xl_ao_target, offset) + sizeof(int64))
typedef struct
{
/* meta data about the inserted block of AO data*/
xl_ao_target target;
/* BLOCK DATA FOLLOWS AT END OF STRUCT */
} xl_ao_insert;
#define SizeOfAOInsert (offsetof(xl_ao_insert, target) + SizeOfAOTarget)
typedef struct
{
/* meta data about the truncated AO/CO file*/
xl_ao_target target;
} xl_ao_truncate;
extern void xlog_ao_insert(RelFileNode relFileNode, int32 segmentFileNum,
int64 offset, void *buffer, int32 bufferLen);
extern void xlog_ao_truncate(RelFileNode relFileNode, int32 segmentFileNum, int64 offset);
extern void appendonly_redo(XLogReaderState *record);
/* in appendonlydesc.c */
extern void appendonly_desc(StringInfo buf, XLogReaderState *record);
extern const char *appendonly_identify(uint8 info);
#endif /* CDBAPPENDONLYXLOG_H */
相关信息
相关文章
greenplumn cdbappendonlyblockdirectory 源码
greenplumn cdbappendonlystorage 源码
greenplumn cdbappendonlystorage_int 源码
greenplumn cdbappendonlystorageformat 源码
greenplumn cdbappendonlystoragelayer 源码
greenplumn cdbappendonlystorageread 源码
0
赞
热门推荐
-
2、 - 优质文章
-
3、 gate.io
-
8、 golang
-
9、 openharmony
-
10、 Vue中input框自动聚焦