Skip to content

Commit

Permalink
bpo-40810: Fix CheckTraceCallbackContent for SQLite pre 3.7.15 (GH-20530
Browse files Browse the repository at this point in the history
)

Ref. [SQLite 3.7.15 changelog](https://sqlite.org/changes.html#version_3_7_15):
_"Avoid invoking the sqlite3_trace() callback multiple times when a statement is automatically reprepared due to SQLITE_SCHEMA errors."_
  • Loading branch information
Erlend Egeberg Aasland authored Jan 4, 2021
1 parent 0b858cd commit f7f0ed5
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 0 deletions.
8 changes: 8 additions & 0 deletions Lib/sqlite3/test/hooks.py
Original file line number Diff line number Diff line change
Expand Up @@ -260,6 +260,14 @@ def trace(statement):
cur.execute(queries[0])
con2.execute("create table bar(x)")
cur.execute(queries[1])

# Extract from SQLite 3.7.15 changelog:
# Avoid invoking the sqlite3_trace() callback multiple times when a
# statement is automatically reprepared due to SQLITE_SCHEMA errors.
#
# See bpo-40810
if sqlite.sqlite_version_info < (3, 7, 15):
queries.append(queries[-1])
self.assertEqual(traced_statements, queries)


Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
In :mod:`sqlite3`, fix `CheckTraceCallbackContent` for SQLite pre 3.7.15.

0 comments on commit f7f0ed5

Please sign in to comment.