v3-0002-poc-custom-wait-event-for-dblink.patch
text/x-diff
Filename: v3-0002-poc-custom-wait-event-for-dblink.patch
Type: text/x-diff
Part: 0
Patch
Format: format-patch
Series: patch v3-0002
Subject: poc: custom wait event for dblink
| File | + | − |
|---|---|---|
| contrib/dblink/dblink.c | 4 | 1 |
From 234cc7d852aebf78285ccde383f27ea35a27dad2 Mon Sep 17 00:00:00 2001
From: Masahiro Ikeda <mshr.ikeda@ntt.com>
Date: Thu, 10 Aug 2023 10:44:41 +0900
Subject: [PATCH 2/2] poc: custom wait event for dblink
---
contrib/dblink/dblink.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/contrib/dblink/dblink.c b/contrib/dblink/dblink.c
index 41e1f6c91d..b7158ecd4f 100644
--- a/contrib/dblink/dblink.c
+++ b/contrib/dblink/dblink.c
@@ -129,6 +129,7 @@ static void restoreLocalGucs(int nestlevel);
/* Global */
static remoteConn *pconn = NULL;
static HTAB *remoteConnHash = NULL;
+static uint32 wait_event_info = 0;
/*
* Following is list that holds multiple remote connections.
@@ -203,7 +204,9 @@ dblink_get_conn(char *conname_or_str,
dblink_connstr_check(connstr);
/* OK to make connection */
- conn = libpqsrv_connect(connstr, WAIT_EVENT_EXTENSION);
+ if (wait_event_info == 0)
+ wait_event_info = WaitEventExtensionNew("dblink_get_con");
+ conn = libpqsrv_connect(connstr, wait_event_info);
if (PQstatus(conn) == CONNECTION_BAD)
{
--
2.25.1