Damien Elmes
ae06b9e446
add Collection struct, and get media check working again
...
- media check no longer needs collection to be closed
- use savepoints for operations initiated by Rust, so they are
atomic without forcing a commit
2020-03-20 21:15:23 +10:00
Damien Elmes
2cd7885ec0
add begin/commit/rollback, and support creating collections
...
all but one unit test is now passing
2020-03-20 21:15:23 +10:00
Damien Elmes
874ee80a68
add a temporary executemany()
2020-03-20 21:15:23 +10:00
Damien Elmes
b51e575a9d
drop the protobuf prototype
2020-03-20 21:15:23 +10:00
Damien Elmes
b876d97770
use (or)json for DB bridge
...
Some initial testing with orjson indicates performance varies from
slightly better than pysqlite to about 2x slower depending on the type
of query.
Performance could be improved by building the Python list in rspy
instead of sending back json that needs to be decoded, but it may make
more sense to rewrite the hotspots in Rust instead. More testing is
required in any case.
2020-03-20 21:15:23 +10:00
Damien Elmes
77cf7dd4b7
tweak db type hints
2020-03-20 21:15:23 +10:00
Damien Elmes
b5c6134d80
drop usage of pysqlite Cursor
2020-03-20 21:15:23 +10:00
Damien Elmes
0b1d96fce0
tweak layout of db methods
2020-03-20 21:15:23 +10:00
Damien Elmes
5778459d7c
drop .cursor()
2020-03-20 21:15:23 +10:00
Damien Elmes
87415c0d7f
use total_changes() sqlite func
2020-03-20 21:15:23 +10:00
Damien Elmes
527d269681
drop context manager
2020-03-20 21:15:23 +10:00
Damien Elmes
f4d4078537
drop named sql arguments
2020-03-20 21:15:23 +10:00
Damien Elmes
c8b9afac0c
drop progress handler and timeout arg
2020-03-20 21:15:23 +10:00
Damien Elmes
8ef28f8571
drop echo and text factory
2020-03-20 21:15:23 +10:00
Damien Elmes
c1252d68f0
clone db.py into dbproxy.py
2020-03-20 21:15:23 +10:00