From f443258d4fd19d62dbd5a3b9a5fe8c7f317e237d Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Tue, 29 Aug 2006 02:32:41 +0000
Subject: [PATCH] Only call log_after_parse() if necessary.

---
 src/backend/tcop/postgres.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/backend/tcop/postgres.c b/src/backend/tcop/postgres.c
index 58ec9a2f7ba..3ad974d8e5d 100644
--- a/src/backend/tcop/postgres.c
+++ b/src/backend/tcop/postgres.c
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/backend/tcop/postgres.c,v 1.500 2006/08/29 02:11:29 momjian Exp $
+ *	  $PostgreSQL: pgsql/src/backend/tcop/postgres.c,v 1.501 2006/08/29 02:32:41 momjian Exp $
  *
  * NOTES
  *	  this is the "main" module of the postgres backend and
@@ -871,7 +871,9 @@ exec_simple_query(const char *query_string)
 	parsetree_list = pg_parse_query(query_string);
 
 	/* Log immediately if dictated by log_statement */
-	was_logged = log_after_parse(parsetree_list, query_string, &prepare_string);
+	if (log_statement != LOGSTMT_NONE || log_duration ||
+		log_min_duration_statement >= 0)
+		was_logged = log_after_parse(parsetree_list, query_string, &prepare_string);
 
 	/*
 	 * Switch back to transaction context to enter the loop.
-- 
GitLab