classification
Title: Remove or change "Multithreading" section
Type: behavior Stage: resolved
Components: Documentation Versions: Python 3.10, Python 3.9, Python 3.8
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: docs@python Nosy List: Dima.Tisnek, Vladimir Ryabtsev, berker.peksag, docs@python, ghaering, miss-islington
Priority: normal Keywords: patch

Created on 2019-10-08 19:30 by Vladimir Ryabtsev, last changed 2021-01-06 20:58 by berker.peksag. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 23159 merged Vladimir Ryabtsev, 2020-11-05 02:00
PR 24134 merged miss-islington, 2021-01-06 00:19
PR 24145 merged Vladimir Ryabtsev, 2021-01-06 19:26
Messages (8)
msg354227 - (view) Author: Vladimir Ryabtsev (Vladimir Ryabtsev) * Date: 2019-10-08 19:30
This is regarding the page https://docs.python.org/3.7/library/sqlite3.html.

I believe this section on the very bottom of the page has been kept here for pretty long time, during that both SQLite and the sqlite3 module evolved and improved. Now the content contradicts to the description of function "connect()" in the part describing "check_same_thread" parameter. The function description says that using connections from multiple threads is allowed with serialization handled by the user (and it is true), while the bottom "Mutithreading" section says sharing connections is not allowed.

I think we can remove "Mutithreading" section entirely unless there is something important to add to what already mentioned.
msg354305 - (view) Author: Dima Tisnek (Dima.Tisnek) * Date: 2019-10-10 01:34
That would be nice; someone needs to figure out what exact sqlite version allows safe passing of connection between threads. Ideally other caveats would be covered (is passing open cursors to another thread allowed?, etc...)
msg379818 - (view) Author: Vladimir Ryabtsev (Vladimir Ryabtsev) * Date: 2020-10-28 07:05
I see no point in researching the version of sqlite, since Python does not allow user to specify it, you just use the compiled version that comes with Python distribution.

10 years now to the commit that introduced that piece of text: https://github.com/python/cpython/commit/c34d76cdc3212615f9a3c2c4b1c542592372b5f8

Let's just remove it, what it says is simply not true.
msg379820 - (view) Author: Vladimir Ryabtsev (Vladimir Ryabtsev) * Date: 2020-10-28 08:06
May by I was wrong above and it uses system's Sqlite... But anyway it does not cancel the fact that this section contradicts to another one.
msg379821 - (view) Author: Vladimir Ryabtsev (Vladimir Ryabtsev) * Date: 2020-10-28 08:12
Also the footnote requires some minor corrections (formatting and style). I suggest the following wording:

To get loadable extension support, your Python must be compiled with ``-–enable-loadable-sqlite-extensions`` option in ``PYTHON_CONFIGURE_OPTS``.

I believe otherwise it is basically not clear what is said here.
msg384453 - (view) Author: Berker Peksag (berker.peksag) * (Python committer) Date: 2021-01-06 00:18
New changeset f9949f82e17c88609adb53eff3a7d5cd63a645bd by Vladimir in branch 'master':
bpo-38413: Remove outdated section about multithreading in sqlite3 (GH-23159)
https://github.com/python/cpython/commit/f9949f82e17c88609adb53eff3a7d5cd63a645bd
msg384454 - (view) Author: Berker Peksag (berker.peksag) * (Python committer) Date: 2021-01-06 00:22
New changeset 03a079f7cf8eacc29ea616060916e8a63ba6e5ba by Miss Islington (bot) in branch '3.8':
bpo-38413: Remove outdated section about multithreading in sqlite3 (GH-23159)
https://github.com/python/cpython/commit/03a079f7cf8eacc29ea616060916e8a63ba6e5ba
msg384540 - (view) Author: Berker Peksag (berker.peksag) * (Python committer) Date: 2021-01-06 20:57
New changeset 49c150f1f16398a4e77e051244f27adc5ac7b47b by Vladimir in branch '3.9':
bpo-38413: Remove outdated section about multithreading in sqlite3 (GH-23159)
https://github.com/python/cpython/commit/49c150f1f16398a4e77e051244f27adc5ac7b47b
History
Date User Action Args
2021-01-06 20:58:40berker.peksagsettype: behavior
resolution: fixed
2021-01-06 20:57:43berker.peksagsetmessages: + msg384540
2021-01-06 19:32:20Vladimir Ryabtsevsetstatus: open -> closed
stage: patch review -> resolved
versions: + Python 3.10, - Python 3.7
2021-01-06 19:26:24Vladimir Ryabtsevsetpull_requests: + pull_request22974
2021-01-06 00:22:05berker.peksagsetmessages: + msg384454
2021-01-06 00:19:07miss-islingtonsetnosy: + miss-islington
pull_requests: + pull_request22964
2021-01-06 00:18:54berker.peksagsetnosy: + berker.peksag
messages: + msg384453
2020-11-05 02:00:12Vladimir Ryabtsevsetpull_requests: + pull_request22071
2020-10-28 08:12:34Vladimir Ryabtsevsetmessages: + msg379821
2020-10-28 08:06:59Vladimir Ryabtsevsetmessages: + msg379820
2020-10-28 07:05:12Vladimir Ryabtsevsetmessages: + msg379818
2019-10-10 01:34:39Dima.Tisneksetnosy: + Dima.Tisnek
messages: + msg354305
2019-10-09 17:19:40brett.cannonsetnosy: + ghaering
2019-10-09 13:37:21irishsmurfsetpull_requests: - pull_request16262
2019-10-09 13:36:58irishsmurfsetkeywords: + patch
stage: patch review
pull_requests: + pull_request16262
2019-10-08 19:30:42Vladimir Ryabtsevcreate