DoltLite 0.11.51
Native serialization, broader backup support, custom collations, and
reliability fixes.
SQLite compatibility
-
Added native sqlite3_serialize() and sqlite3_deserialize(). Images preserve
schema, data, branches, history, refs, and working sets. -
sqlite3_backup_*() now supports attached and in-memory databases.
-
Custom collations work for expressions and unindexed columns. Custom-
collated indexes remain unsupported. -
All wal_checkpoint modes are accepted and mapped to chunk-store garbage
collection.
Reliability
-
Restored TLS 1.3 HTTPS support in released amalgamations while keeping TLS
stripped from remotes-disabled builds. -
Rebases can survive reopen on dirty branches without losing uncommitted
changes. -
Fixed exclusive range scans around extended numeric keys and pending
mutations.
Benchmark / int-keys (100K rows, Linux x64)
File-Backed
Reads
| Test | SQLite (us) | DoltLite (us) | Multiplier |
|---|---|---|---|
| oltp_point_select | 84,822 | 37,809 | 0.45 |
| oltp_range_select | 15,721 | 10,430 | 0.66 |
| oltp_sum_range | 15,003 | 10,266 | 0.68 |
| oltp_order_range | 2,950 | 2,488 | 0.84 |
| oltp_distinct_range | 3,776 | 3,317 | 0.88 |
| oltp_index_scan | 10,104 | 5,860 | 0.58 |
| select_random_points | 15,790 | 10,703 | 0.68 |
| select_random_ranges | 9,100 | 4,868 | 0.53 |
| covering_index_scan | 10,252 | 5,249 | 0.51 |
| groupby_scan | 25,940 | 26,738 | 1.03 |
| index_join | 8,414 | 7,624 | 0.91 |
| index_join_scan | 3,580 | 3,987 | 1.11 |
| types_table_scan | 866,856 | 923,986 | 1.07 |
| table_scan | 1,002,516 | 1,013,149 | 1.01 |
| oltp_read_only | 177,473 | 111,595 | 0.63 |
| Average | 0.77 |
Writes
| Test | SQLite (us) | DoltLite (us) | Multiplier |
|---|---|---|---|
| oltp_bulk_insert | 200,151 | 261,101 | 1.30 |
| oltp_insert | 176,210 | 35,188 | 0.20 |
| oltp_update_index | 258,791 | 140,827 | 0.54 |
| oltp_update_non_index | 198,501 | 123,421 | 0.62 |
| oltp_delete_insert | 121,589 | 109,752 | 0.90 |
| oltp_write_only | 232,404 | 77,138 | 0.33 |
| types_delete_insert | 139,389 | 199,747 | 1.43 |
| oltp_read_write | 126,907 | 133,369 | 1.05 |
| Average | 0.80 |
100000 rows, median of 5 paired invocations per test; autocommit writes use 9, workload-only timing via host monotonic clock when available.