10 releases (5 breaking)
0.5.0 | Aug 6, 2024 |
---|---|
0.4.0 | Feb 20, 2024 |
0.3.0 | Feb 10, 2024 |
0.2.0 | Jan 28, 2024 |
0.0.4 | Jan 19, 2024 |
#1749 in Database interfaces
Used in 2 crates
37KB
719 lines
sqlsrv
Utility functions for use in server applications that use an SQLite database.
lib.rs
:
A library for implementing an in-process SQLite database server.
Connection pooling
sqlsrv implements connection pooling that reflects the concurrency model of SQLite: It supports multiple parallel readers, but only one writer.
Thread pooling
In addition to pooling connections, the library supports optionally using a thread pool for diaptching database operations onto threads.
Incremental auto-clean
The connection pool has built-in support for setting up incremental autovacuum, and can be configured to implicitly run incremental vacuuming.
To use this feature, a "maximum dirt" value is configured on the connection pool. Whenever the writer connection performs changes to the database it can add "dirt" to the connection. When the writer connection is returned to the connection pool it checks to see if the amount of dirt is equal to or greater than the configured "maximum dirt" threshold. If the threshold has been reached, an incremental autovacuum is performed.
Features
Feature | Function |
---|---|
tpool |
Enable functions/methods that use a thread pool. |
Dependencies
~28MB
~442K SLoC