From 354679e69b0591821e44a6294e7e175d078215e2 Mon Sep 17 00:00:00 2001 From: Dave Page Date: Wed, 20 Sep 2017 11:59:37 +0100 Subject: [PATCH] Fix an issue where we were executing SELECT statements in transactions in query tool which probably is not required because SELECT statements are already protected from dirty reads. Fixes #2683 --- web/pgadmin/tools/sqleditor/__init__.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/web/pgadmin/tools/sqleditor/__init__.py b/web/pgadmin/tools/sqleditor/__init__.py index 15ec8c4b9..ee7dc8c8a 100644 --- a/web/pgadmin/tools/sqleditor/__init__.py +++ b/web/pgadmin/tools/sqleditor/__init__.py @@ -1319,8 +1319,10 @@ def is_begin_required(query): return False if word_len == 5 and keyword.lower() == "start": return False - if word_len == 6 and keyword.lower() == "commit": - return False + if word_len == 6: + # SELECT is protected from dirty reads hence don't require transaction + if keyword.lower() in ["select", "commit"]: + return False if word_len == 3 and keyword.lower() == "end": return False if word_len == 8 and keyword.lower() == "rollback":