summaryrefslogtreecommitdiff
path: root/src/include/access/xlogprefetch.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/access/xlogprefetch.h')
-rw-r--r--src/include/access/xlogprefetch.h82
1 files changed, 0 insertions, 82 deletions
diff --git a/src/include/access/xlogprefetch.h b/src/include/access/xlogprefetch.h
deleted file mode 100644
index 0a7902ee470..00000000000
--- a/src/include/access/xlogprefetch.h
+++ /dev/null
@@ -1,82 +0,0 @@
-/*-------------------------------------------------------------------------
- *
- * xlogprefetch.h
- * Declarations for the recovery prefetching module.
- *
- * Portions Copyright (c) 2021, PostgreSQL Global Development Group
- * Portions Copyright (c) 1994, Regents of the University of California
- *
- * IDENTIFICATION
- * src/include/access/xlogprefetch.h
- *-------------------------------------------------------------------------
- */
-#ifndef XLOGPREFETCH_H
-#define XLOGPREFETCH_H
-
-#include "access/xlogreader.h"
-
-/* GUCs */
-extern bool recovery_prefetch;
-extern bool recovery_prefetch_fpw;
-
-struct XLogPrefetcher;
-typedef struct XLogPrefetcher XLogPrefetcher;
-
-extern int XLogPrefetchReconfigureCount;
-
-typedef struct XLogPrefetchState
-{
- XLogReaderState *reader;
- XLogPrefetcher *prefetcher;
- int reconfigure_count;
-} XLogPrefetchState;
-
-extern size_t XLogPrefetchShmemSize(void);
-extern void XLogPrefetchShmemInit(void);
-
-extern void XLogPrefetchReconfigure(void);
-extern void XLogPrefetchRequestResetStats(void);
-
-extern void XLogPrefetchBegin(XLogPrefetchState *state, XLogReaderState *reader);
-extern void XLogPrefetchEnd(XLogPrefetchState *state);
-
-/* Functions exposed only for the use of XLogPrefetch(). */
-extern XLogPrefetcher *XLogPrefetcherAllocate(XLogReaderState *reader);
-extern void XLogPrefetcherFree(XLogPrefetcher *prefetcher);
-extern bool XLogPrefetcherReadAhead(XLogPrefetcher *prefetch,
- XLogRecPtr replaying_lsn);
-
-/*
- * Tell the prefetching module that we are now replaying a given LSN, so that
- * it can decide how far ahead to read in the WAL, if configured. Return
- * true if more data is needed by the reader.
- */
-static inline bool
-XLogPrefetch(XLogPrefetchState *state, XLogRecPtr replaying_lsn)
-{
- /*
- * Handle any configuration changes. Rather than trying to deal with
- * various parameter changes, we just tear down and set up a new
- * prefetcher if anything we depend on changes.
- */
- if (unlikely(state->reconfigure_count != XLogPrefetchReconfigureCount))
- {
- /* If we had a prefetcher, tear it down. */
- if (state->prefetcher)
- {
- XLogPrefetcherFree(state->prefetcher);
- state->prefetcher = NULL;
- }
- /* If we want a prefetcher, set it up. */
- if (recovery_prefetch)
- state->prefetcher = XLogPrefetcherAllocate(state->reader);
- state->reconfigure_count = XLogPrefetchReconfigureCount;
- }
-
- if (state->prefetcher)
- return XLogPrefetcherReadAhead(state->prefetcher, replaying_lsn);
-
- return false;
-}
-
-#endif