use_guc_complaint_elevel_v1.patch
application/octet-stream
Filename: use_guc_complaint_elevel_v1.patch
Type: application/octet-stream
Part: 0
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: context
Series: patch v1
| File | + | − |
|---|---|---|
| src/backend/replication/syncrep.c | 2 | 0 |
| src/include/storage/proc.h | 1 | 0 |
*** a/src/backend/replication/syncrep.c
--- b/src/backend/replication/syncrep.c
***************
*** 223,229 **** SyncRepWaitForLSN(XLogRecPtr XactCommitLSN)
/*
* Insert MyProc into SyncRepQueue, maintaining sorted invariant.
*
! * Usually we will go at tail of queue, though its possible that we arrive
* here out of order, so start at tail and work back to insertion point.
*/
static void
--- 223,229 ----
/*
* Insert MyProc into SyncRepQueue, maintaining sorted invariant.
*
! * Usually we will go at tail of queue, though it's possible that we arrive
* here out of order, so start at tail and work back to insertion point.
*/
static void
***************
*** 561,567 **** assign_synchronous_standby_names(const char *newval, bool doit, GucSource source
/* syntax error in list */
pfree(rawstring);
list_free(elemlist);
! ereport(FATAL,
(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
errmsg("invalid list syntax for parameter \"synchronous_standby_names\"")));
return NULL;
--- 561,567 ----
/* syntax error in list */
pfree(rawstring);
list_free(elemlist);
! ereport(GUC_complaint_elevel(source),
(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
errmsg("invalid list syntax for parameter \"synchronous_standby_names\"")));
return NULL;
*** a/src/include/storage/proc.h
--- b/src/include/storage/proc.h
***************
*** 122,128 **** struct PGPROC
* Info to allow us to wait for synchronous replication, if needed.
* waitLSN is InvalidXLogRecPtr if not waiting; set only by user backend.
* syncRepState must not be touched except by owning process or WALSender.
! * syncRep_links used only while holding SyncRepLock.
*/
Latch waitLatch; /* allow us to wait for sync rep */
XLogRecPtr waitLSN; /* waiting for this LSN or higher */
--- 122,128 ----
* Info to allow us to wait for synchronous replication, if needed.
* waitLSN is InvalidXLogRecPtr if not waiting; set only by user backend.
* syncRepState must not be touched except by owning process or WALSender.
! * syncRepLinks used only while holding SyncRepLock.
*/
Latch waitLatch; /* allow us to wait for sync rep */
XLogRecPtr waitLSN; /* waiting for this LSN or higher */