Better cross platform support. There was some
complexity in getting this to work, namely that
you can't share connection across different threads
(even if you use your own locking). The sqlite3 python
lib raises an error.
This is also slightly slower than before because each __setitem__ call happens in a sqlite transaction. This is needed to ensure that the sqlite connection in the main thread (that runs the aws-shell loop) can actually see the doc index updates being added incrementally.
Better cross platform support. There was some complexity in getting this to work, namely that you can't share connection across different threads (even if you use your own locking). The sqlite3 python lib raises an error.
See https://docs.python.org/2/library/sqlite3.html#multithreading for more info.
This is also slightly slower than before because each
__setitem__
call happens in a sqlite transaction. This is needed to ensure that the sqlite connection in the main thread (that runs the aws-shell loop) can actually see the doc index updates being added incrementally.