diff options
author | Aviv Palivoda <palaviv@gmail.com> | 2018-03-18 00:48:55 (GMT) |
---|---|---|
committer | Berker Peksag <berker.peksag@gmail.com> | 2018-03-18 00:48:55 (GMT) |
commit | bbf7bb7a636b3112ef6f6b31df385606d52517ce (patch) | |
tree | 28583939db8808674798e6036bca419127ba6721 | |
parent | 7f81bb2addbbccfa45a2fc1aa6030f26dcf4bd78 (diff) | |
download | cpython-bbf7bb7a636b3112ef6f6b31df385606d52517ce.zip cpython-bbf7bb7a636b3112ef6f6b31df385606d52517ce.tar.gz cpython-bbf7bb7a636b3112ef6f6b31df385606d52517ce.tar.bz2 |
bpo-27645: Fix version number in 'database in transaction' fallback (GH-6131)
It was actually fixed in SQLite 3.8.8, not 3.8.7.
-rw-r--r-- | Lib/sqlite3/test/backup.py | 4 | ||||
-rw-r--r-- | Modules/_sqlite/connection.c | 4 |
2 files changed, 3 insertions, 5 deletions
diff --git a/Lib/sqlite3/test/backup.py b/Lib/sqlite3/test/backup.py index 2a21489..903bacf 100644 --- a/Lib/sqlite3/test/backup.py +++ b/Lib/sqlite3/test/backup.py @@ -37,14 +37,12 @@ class BackupTests(unittest.TestCase): self.cx.backup(bck) def test_bad_target_in_transaction(self): - if sqlite.sqlite_version_info == (3, 8, 7, 1): - self.skipTest('skip until we debug https://bugs.python.org/issue27645#msg313562') bck = sqlite.connect(':memory:') bck.execute('CREATE TABLE bar (key INTEGER)') bck.executemany('INSERT INTO bar (key) VALUES (?)', [(3,), (4,)]) with self.assertRaises(sqlite.OperationalError) as cm: self.cx.backup(bck) - if sqlite.sqlite_version_info < (3, 8, 7): + if sqlite.sqlite_version_info < (3, 8, 8): self.assertEqual(str(cm.exception), 'target is in transaction') def test_keyword_only_args(self): diff --git a/Modules/_sqlite/connection.c b/Modules/_sqlite/connection.c index 14b6a27..dc5061c 100644 --- a/Modules/_sqlite/connection.c +++ b/Modules/_sqlite/connection.c @@ -1481,8 +1481,8 @@ pysqlite_connection_backup(pysqlite_Connection *self, PyObject *args, PyObject * return NULL; } -#if SQLITE_VERSION_NUMBER < 3008007 - /* Since 3.8.7 this is already done, per commit +#if SQLITE_VERSION_NUMBER < 3008008 + /* Since 3.8.8 this is already done, per commit https://www.sqlite.org/src/info/169b5505498c0a7e */ if (!sqlite3_get_autocommit(((pysqlite_Connection *)target)->db)) { PyErr_SetString(pysqlite_OperationalError, "target is in transaction"); |