3 ms·
> No parallel reads from multiple threads Sqlite supports parallel reads from multiple threads. It even supports parallel reads and writes from multiple threa
by cogman10 3y ago
> No parallel reads from multiple threads
Sqlite supports parallel reads from multiple threads.
It even supports parallel reads and writes from multiple threads.
What it doesn't really support is parallel reads and writes from multiple processes.
- raggi 3y agoNot when threading is disabled, as it is in this project.
- cogman10 3y agoSure, but single threading isn't an inherent part of sqlite as OP implies. > SQlite3 automatically means: ... > - No parallel reads from multiple threads
- OttoCoddo 3y agoIt is not disabled, as you think. It is secured by the internal code in Pack. Almost all parts of Pack are multithreaded.
- raggi 3y agoit’s not safe to disable SQLite’s thread safety as you do here: https://github.com/PackOrganization/Pack/blob/main/Libraries/SQLite3/Build/Build.sh https://github.com/PackOrganization/Pack/blob/main/Libraries... and then do your own locking. You attempt to pass the flag at open time to enable serialized mode, however quoting the SQLite docs for the build flag you set: Note that when SQLite is compiled with SQLITE_THREADSAFE=0, the code to make SQLite threadsafe is omitted from the build. When this occurs, it is impossible to change the threading mode at start-time or run-time. SQLite’s APIs are often hazardous in these ways, it really should be erroring rather than silently ignoring the fullmutex flag, but alas.