From 2b4729d92e2c214b98adcbc2fc1ef7ea6252f063 Mon Sep 17 00:00:00 2001 From: Evan Maicus Date: Tue, 16 Mar 2021 16:48:44 -0400 Subject: [PATCH 1/2] Make sql runner robust to failed queries --- .../18_postgres_database/config/test_input/sql_runner.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/18_postgres_database/config/test_input/sql_runner.py b/examples/18_postgres_database/config/test_input/sql_runner.py index e7cbc81..a2d47c5 100644 --- a/examples/18_postgres_database/config/test_input/sql_runner.py +++ b/examples/18_postgres_database/config/test_input/sql_runner.py @@ -84,15 +84,17 @@ def main(): query = load_query(input_file) result = run_query(curr, query) + conn.commit() cost, time = run_cost(curr, query) - log_query_metrics(f"Query {num:d} run in {time:.3f} sec with cost {cost:.2f}") - + log_query_metrics(f"Query {num:d} run in {time:.3f} sec with cost {cost:.2f}") + with open(output_file, 'w', newline='', encoding='utf-8') as result_file: writer = csv.writer(result_file, lineterminator='\n') writer.writerow([attr for attr in result[0].keys()]) for t in result: writer.writerow(t) except: + conn.rollback() err("Solution for %d raised exception %s" % (num, sys.exc_info())) From 4c2b1011bacdbbc7b429af365d98c24f158c0007 Mon Sep 17 00:00:00 2001 From: Evan Maicus Date: Tue, 16 Mar 2021 16:51:13 -0400 Subject: [PATCH 2/2] quick fix --- examples/18_postgres_database/config/test_input/sql_runner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/18_postgres_database/config/test_input/sql_runner.py b/examples/18_postgres_database/config/test_input/sql_runner.py index a2d47c5..0b85ebf 100644 --- a/examples/18_postgres_database/config/test_input/sql_runner.py +++ b/examples/18_postgres_database/config/test_input/sql_runner.py @@ -84,8 +84,8 @@ def main(): query = load_query(input_file) result = run_query(curr, query) - conn.commit() cost, time = run_cost(curr, query) + conn.commit() log_query_metrics(f"Query {num:d} run in {time:.3f} sec with cost {cost:.2f}") with open(output_file, 'w', newline='', encoding='utf-8') as result_file: