Repository navigation
sqlite3 journal-mode=WAL
Improved model concurrency by using the sqlite3 WAL (write-ahead logging) journal.
The WAL journal supports concurrent read/write among separate DB connections. As a result, the MUTEX used by the model.Client is no longer needed. Instead, the Client sets the WAL pragma and maintains a pool of DB Session which encapsulates a actual DB connection and provides DB connection reservation.
The model.Journal no longer maintains the list of staged events. Its interface has slimmed down accordingly.
Instead, each transaction (Tx) contains the list of staged events which are reported (to the journal) in Tx.Commit().