summaryrefslogtreecommitdiff
path: root/src/backend/access/transam
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/access/transam')
-rw-r--r--src/backend/access/transam/slru.c13
-rw-r--r--src/backend/access/transam/xlogrecovery.c6
2 files changed, 10 insertions, 9 deletions
diff --git a/src/backend/access/transam/slru.c b/src/backend/access/transam/slru.c
index ca69ee4d4f4..5d3fcd62c94 100644
--- a/src/backend/access/transam/slru.c
+++ b/src/backend/access/transam/slru.c
@@ -246,6 +246,7 @@ SimpleLruAutotuneBuffers(int divisor, int max)
* buffer_tranche_id: tranche ID to use for the SLRU's per-buffer LWLocks.
* bank_tranche_id: tranche ID to use for the bank LWLocks.
* sync_handler: which set of functions to use to handle sync requests
+ * long_segment_names: use short or long segment names
*/
void
SimpleLruInit(SlruCtl ctl, const char *name, int nslots, int nlsns,
@@ -400,10 +401,10 @@ SimpleLruZeroPage(SlruCtl ctl, int64 pageno)
/*
* Assume this page is now the latest active page.
*
- * Note that because both this routine and SlruSelectLRUPage run with
- * ControlLock held, it is not possible for this to be zeroing a page that
- * SlruSelectLRUPage is going to evict simultaneously. Therefore, there's
- * no memory barrier here.
+ * Note that because both this routine and SlruSelectLRUPage run with a
+ * SLRU bank lock held, it is not possible for this to be zeroing a page
+ * that SlruSelectLRUPage is going to evict simultaneously. Therefore,
+ * there's no memory barrier here.
*/
pg_atomic_write_u64(&shared->latest_page_number, pageno);
@@ -437,7 +438,7 @@ SimpleLruZeroLSNs(SlruCtl ctl, int slotno)
* This is a convenience wrapper for the common case of zeroing a page and
* immediately flushing it to disk.
*
- * Control lock is acquired and released here.
+ * SLRU bank lock is acquired and released here.
*/
void
SimpleLruZeroAndWritePage(SlruCtl ctl, int64 pageno)
@@ -644,7 +645,7 @@ SimpleLruReadPage_ReadOnly(SlruCtl ctl, int64 pageno, TransactionId xid)
shared->page_number[slotno] == pageno &&
shared->page_status[slotno] != SLRU_PAGE_READ_IN_PROGRESS)
{
- /* See comments for SlruRecentlyUsed macro */
+ /* See comments for SlruRecentlyUsed() */
SlruRecentlyUsed(shared, slotno);
/* update the stats counter of pages found in the SLRU */
diff --git a/src/backend/access/transam/xlogrecovery.c b/src/backend/access/transam/xlogrecovery.c
index f23ec8969c2..346319338a0 100644
--- a/src/backend/access/transam/xlogrecovery.c
+++ b/src/backend/access/transam/xlogrecovery.c
@@ -4834,10 +4834,10 @@ check_recovery_target_lsn(char **newval, void **extra, GucSource source)
{
XLogRecPtr lsn;
XLogRecPtr *myextra;
- bool have_error = false;
+ ErrorSaveContext escontext = {T_ErrorSaveContext};
- lsn = pg_lsn_in_internal(*newval, &have_error);
- if (have_error)
+ lsn = pg_lsn_in_safe(*newval, (Node *) &escontext);
+ if (escontext.error_occurred)
return false;
myextra = (XLogRecPtr *) guc_malloc(LOG, sizeof(XLogRecPtr));