aboutsummaryrefslogtreecommitdiffstats
path: root/debug_toolbar/panels/sql.py
diff options
context:
space:
mode:
authorAlex Gaynor2009-03-21 12:17:05 -0400
committerAlex Gaynor2009-03-21 12:17:05 -0400
commit4ffe14db039981d06aa58f3ad3c2b3472824961b (patch)
treeb6a94348f2c20bfb6c29303227889d70f06c62c3 /debug_toolbar/panels/sql.py
parent0fea345f0d59ed0f17f29e59072f34d7d016abde (diff)
parent8c64bb0cc82c6129b4ab14ff4cc80880761680d4 (diff)
downloaddjango-debug-toolbar-4ffe14db039981d06aa58f3ad3c2b3472824961b.tar.bz2
resoled merge conflicts
Diffstat (limited to 'debug_toolbar/panels/sql.py')
-rw-r--r--debug_toolbar/panels/sql.py18
1 files changed, 11 insertions, 7 deletions
diff --git a/debug_toolbar/panels/sql.py b/debug_toolbar/panels/sql.py
index 7584bd7..b041bf8 100644
--- a/debug_toolbar/panels/sql.py
+++ b/debug_toolbar/panels/sql.py
@@ -19,7 +19,7 @@ class DatabaseStatTracker(util.CursorDebugWrapper):
return self.cursor.execute(sql, params)
finally:
stop = time.time()
- _params = None
+ _params = ''
try:
_params = simplejson.dumps([force_unicode(x) for x in params])
except TypeError:
@@ -27,7 +27,7 @@ class DatabaseStatTracker(util.CursorDebugWrapper):
# We keep `sql` to maintain backwards compatibility
self.db.queries.append({
'sql': self.db.ops.last_executed_query(self.cursor, sql, params),
- 'time': stop - start,
+ 'time': (stop - start) * 1000, # convert to ms
'raw_sql': sql,
'params': _params,
'hash': sha_constructor(settings.SECRET_KEY + sql + _params).hexdigest(),
@@ -47,10 +47,11 @@ class SQLDebugPanel(DebugPanel):
self._sql_time = 0
def title(self):
- self._sql_time = sum(map(lambda q: float(q['time']) * 1000, connection.queries))
+ self._sql_time = sum(map(lambda q: float(q['time']), connection.queries))
+ num_queries = len(connection.queries) - self._offset
return '%d SQL %s (%.2fms)' % (
- len(connection.queries),
- (len(connection.queries) == 1) and 'query' or 'queries',
+ num_queries,
+ (num_queries == 1) and 'query' or 'queries',
self._sql_time
)
@@ -65,6 +66,7 @@ class SQLDebugPanel(DebugPanel):
context = {
'queries': sql_queries,
'sql_time': self._sql_time,
+ 'is_mysql': settings.DATABASE_ENGINE == 'mysql',
}
return render_to_string('debug_toolbar/panels/sql.html', context)
@@ -73,9 +75,11 @@ def reformat_sql(sql):
sql = sql.replace('SELECT ', 'SELECT\n\t')
sql = sql.replace(' FROM ', '\nFROM\n\t')
sql = sql.replace(' WHERE ', '\nWHERE\n\t')
- sql = sql.replace(' INNER JOIN ', '\nINNER JOIN\n\t')
- sql = sql.replace(' OUTER JOIN ', '\nOUTER JOIN\n\t')
+ sql = sql.replace(' INNER JOIN', '\n\tINNER JOIN')
+ sql = sql.replace(' LEFT OUTER JOIN' , '\n\tLEFT OUTER JOIN')
sql = sql.replace(' ORDER BY ', '\nORDER BY\n\t')
+ sql = sql.replace(' HAVING ', '\nHAVING\n\t')
+ sql = sql.replace(' GROUP BY ', '\nGROUP BY\n\t')
# Use Pygments to highlight SQL if it's available
try:
from pygments import highlight