Repository navigation
del sqlite3.Connection.autocommit crashes #156100
Copy link
Copy link
Closed
Labels
3.13only security fixesonly security fixes3.14bugs and security fixesbugs and security fixes3.15bugs and security fixesbugs and security fixes3.16new features, bugs and security fixesnew features, bugs and security fixesextension-modulesC modules in the Modules dirC modules in the Modules dirtopic-sqlite3type-crashA hard crash of the interpreter, possibly with a core dumpA hard crash of the interpreter, possibly with a core dump
Description
Activity
- addedextension-modulesC modules in the Modules dirC modules in the Modules dirtype-crashA hard crash of the interpreter, possibly with a core dumpA hard crash of the interpreter, possibly with a core dump3.13only security fixesonly security fixes3.14bugs and security fixesbugs and security fixes
on Aug 20, 2026 - added3.15bugs and security fixesbugs and security fixes3.16new features, bugs and security fixesnew features, bugs and security fixes
on Aug 20, 2026 The same converter has a second bug:
autocommit_converter()compares the result ofPyLong_AsLong()withLEGACY_TRANSACTION_CONTROL, which is -1, the value returned on error.cx.autocommit = 2**1000
is therefore accepted as
LEGACY_TRANSACTION_CONTROLwithOverflowErrorset, and the interpreter continues with a pending exception.
GH-156104 fixes both.- added a commit that references this issue
on Aug 21, 2026 - added a commit that references this issue
on Oct 10, 2026
Metadata
Metadata
Assignees
Labels
3.13only security fixesonly security fixes3.14bugs and security fixesbugs and security fixes3.15bugs and security fixesbugs and security fixes3.16new features, bugs and security fixesnew features, bugs and security fixesextension-modulesC modules in the Modules dirC modules in the Modules dirtopic-sqlite3type-crashA hard crash of the interpreter, possibly with a core dumpA hard crash of the interpreter, possibly with a core dump
Projects
- StatusShow more project fieldsDone
Crash report
set_autocommit()inModules/_sqlite/connection.cpasses the value toautocommit_converter(), which dereferences it inPy_IsTrue().Deleting
row_factoryandtext_factoryof a connection is already rejected with anAttributeError(gh-149738);autocommitshould be rejected too.The same code is in 3.13, 3.14 and 3.15.
Linked PRs