135{
136#define PG_GET_LOGICAL_SNAPSHOT_INFO_COLS 14
145
146
148 elog(
ERROR,
"return type must be a row type");
149
151
152
154
165
168 {
170
172
175
178 XIDOID));
179 }
180 else
182
185 {
187
189
192
195 XIDOID));
196 }
197 else
199
201
203
205
206#undef PG_GET_LOGICAL_SNAPSHOT_INFO_COLS
207}
ArrayType * construct_array_builtin(Datum *elems, int nelems, Oid elmtype)
static Datum values[MAXATTR]
#define CStringGetTextDatum(s)
#define PG_GETARG_TEXT_PP(n)
#define PG_RETURN_DATUM(x)
TypeFuncClass get_call_result_type(FunctionCallInfo fcinfo, Oid *resultTypeId, TupleDesc *resultTupleDesc)
static Datum HeapTupleGetDatum(const HeapTupleData *tuple)
Assert(PointerIsAligned(start, uint64))
HeapTuple heap_form_tuple(TupleDesc tupleDescriptor, const Datum *values, const bool *isnull)
MemoryContext CurrentMemoryContext
static const char * get_snapbuild_state_desc(SnapBuildState state)
#define PG_GET_LOGICAL_SNAPSHOT_INFO_COLS
static XLogRecPtr parse_snapshot_filename(const char *filename)
static Datum LSNGetDatum(XLogRecPtr X)
static Datum PointerGetDatum(const void *X)
static Datum TransactionIdGetDatum(TransactionId X)
static Datum BoolGetDatum(bool X)
static Datum UInt32GetDatum(uint32 X)
bool SnapBuildRestoreSnapshot(SnapBuildOnDisk *ondisk, XLogRecPtr lsn, MemoryContext context, bool missing_ok)
XLogRecPtr start_decoding_at
TransactionId initial_xmin_horizon
struct SnapBuild::@117 committed
bool building_full_snapshot
TransactionId next_phase_at
XLogRecPtr last_serialized_snapshot
struct SnapBuild::@118 catchange
char * text_to_cstring(const text *t)