aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFujii Masao <fujii@postgresql.org>2024-10-22 23:56:37 +0900
committerFujii Masao <fujii@postgresql.org>2024-10-22 23:57:35 +0900
commit7c4d3fe272f3ab62b36f21e3fa6ae00751f00e31 (patch)
tree98b6b709369fbf0ee33ac2a20c257c9e1d7128a6 /src
parent53af9491a0439720094a11b72602952d79f59ac7 (diff)
downloadpostgresql-7c4d3fe272f3ab62b36f21e3fa6ae00751f00e31.tar.gz
postgresql-7c4d3fe272f3ab62b36f21e3fa6ae00751f00e31.zip
ecpg: Refactor ecpg_log() to skip unnecessary calls to ECPGget_sqlca().
Previously, ecpg_log() always called ECPGget_sqlca() to retrieve sqlca, even though it was only needed for debug logging. This commit updates ecpg_log() to call ECPGget_sqlca() only when debug logging is enabled. Author: Yuto Sasaki Reviewed-by: Alvaro Herrera, Tom Lane, Fujii Masao Discussion: https://postgr.es/m/TY2PR01MB3628A85689649BABC9A1C6C3C1782@TY2PR01MB3628.jpnprd01.prod.outlook.com
Diffstat (limited to 'src')
-rw-r--r--src/interfaces/ecpg/ecpglib/misc.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/interfaces/ecpg/ecpglib/misc.c b/src/interfaces/ecpg/ecpglib/misc.c
index 2ae989e3e5d..8b38c3eccfd 100644
--- a/src/interfaces/ecpg/ecpglib/misc.c
+++ b/src/interfaces/ecpg/ecpglib/misc.c
@@ -232,10 +232,10 @@ void
ecpg_log(const char *format,...)
{
va_list ap;
- struct sqlca_t *sqlca = ECPGget_sqlca();
const char *intl_format;
int bufsize;
char *fmt;
+ struct sqlca_t *sqlca;
/*
* For performance reasons, inspect simple_debug without taking the mutex.
@@ -262,6 +262,8 @@ ecpg_log(const char *format,...)
else
snprintf(fmt, bufsize, "[%d]: %s", (int) getpid(), intl_format);
+ sqlca = ECPGget_sqlca();
+
pthread_mutex_lock(&debug_mutex);
/* Now that we hold the mutex, recheck simple_debug */