From 6faed218ba2f19a630cf4e1bb0ef8d2d2d187b4a Mon Sep 17 00:00:00 2001 From: Miguel Gonzalez Date: Wed, 18 Apr 2018 13:06:57 +0200 Subject: [PATCH] feature: Add trace information to SQL statement --- taiga/base/utils/db.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/taiga/base/utils/db.py b/taiga/base/utils/db.py index 24d386ed..457b8cf7 100644 --- a/taiga/base/utils/db.py +++ b/taiga/base/utils/db.py @@ -151,9 +151,14 @@ def update_attr_in_bulk_for_ids(values, attr, model): # We can have deadlocks with multiple updates over the same object # In that situation we just retry + import time + ts = time.time() + def trace_info(retries): + return '/* query=update_attr_in_bulk id={ts} retries={retries} */'.format(retries=retries, ts=ts) + def _run_sql(retries=0, max_retries=3): try: - cursor.execute(sql) + cursor.execute(trace_info(retries) + sql) except DatabaseError: if retries < max_retries: _run_sql(retries + 1)