It devolved into a content-less wrapper over read_local_xlog_page, with
nothing to add, plus it's easily confused with walsender's
logical_read_xlog_page. There doesn't seem to be any reason for it to
stay.
src/include/replication/logicalfuncs.h becomes empty, so remove it too.
The prototypes it initially had were absorbed by generated fmgrprotos.h.
Discussion: https://postgr.es/m/
20191115214102.GA15616@alvherre.pgsql
#include "nodes/makefuncs.h"
#include "replication/decode.h"
#include "replication/logical.h"
-#include "replication/logicalfuncs.h"
#include "replication/message.h"
#include "storage/fd.h"
#include "utils/array.h"
errmsg("must be superuser or replication role to use replication slots")));
}
-int
-logical_read_local_xlog_page(XLogReaderState *state, XLogRecPtr targetPagePtr,
- int reqLen, XLogRecPtr targetRecPtr, char *cur_page)
-{
- return read_local_xlog_page(state, targetPagePtr, reqLen,
- targetRecPtr, cur_page);
-}
-
/*
* Helper function for the various SQL callable logical decoding functions.
*/
ctx = CreateDecodingContext(InvalidXLogRecPtr,
options,
false,
- logical_read_local_xlog_page,
+ read_local_xlog_page,
LogicalOutputPrepareWrite,
LogicalOutputWrite, NULL);
#include "access/htup_details.h"
#include "access/xlog_internal.h"
+#include "access/xlogutils.h"
#include "funcapi.h"
#include "miscadmin.h"
#include "replication/decode.h"
#include "replication/logical.h"
-#include "replication/logicalfuncs.h"
#include "replication/slot.h"
#include "utils/builtins.h"
#include "utils/inval.h"
ctx = CreateInitDecodingContext(plugin, NIL,
false, /* just catalogs is OK */
restart_lsn,
- logical_read_local_xlog_page, NULL, NULL,
+ read_local_xlog_page, NULL, NULL,
NULL);
/*
ctx = CreateDecodingContext(InvalidXLogRecPtr,
NIL,
true, /* fast_forward */
- logical_read_local_xlog_page,
+ read_local_xlog_page,
NULL, NULL, NULL);
/*
#include "replication/basebackup.h"
#include "replication/decode.h"
#include "replication/logical.h"
-#include "replication/logicalfuncs.h"
#include "replication/slot.h"
#include "replication/snapbuild.h"
#include "replication/syncrep.h"
/*
* read_page callback for logical decoding contexts, as a walsender process.
*
- * Inside the walsender we can do better than logical_read_local_xlog_page,
+ * Inside the walsender we can do better than read_local_xlog_page,
* which has to do a plain sleep/busy loop, because the walsender's latch gets
* set every time WAL is flushed.
*/
+++ /dev/null
-/*-------------------------------------------------------------------------
- * logicalfuncs.h
- * PostgreSQL WAL to logical transformation support functions
- *
- * Copyright (c) 2012-2020, PostgreSQL Global Development Group
- *
- *-------------------------------------------------------------------------
- */
-#ifndef LOGICALFUNCS_H
-#define LOGICALFUNCS_H
-
-#include "replication/logical.h"
-
-extern int logical_read_local_xlog_page(XLogReaderState *state,
- XLogRecPtr targetPagePtr,
- int reqLen, XLogRecPtr targetRecPtr,
- char *cur_page);
-
-#endif