Home / Companies / Turso / Blog / September 2026

September 2026 Summaries

6 posts from Turso

Filter
Month: Year:
Post Summaries Back to Blog
Turso 0.8 focuses on improving concurrent write performance, using the BEGIN CONCURRENT capability and MVCC architecture to address SQLite’s single-writer limitation. In benchmarks scheduling 1,000 transactions per second, Turso achieved substantially lower tail latency under contention, with 99.9th-percentile latency falling to 2.4 ms at 32 connections compared with SQLite’s 1.2 seconds, aided by independently executing transactions and grouped commits. In a separate write-throughput test using transactions that insert 100 rows on disjoint keys, Turso scaled from multiple connections to roughly 9,500 transactions per second at 64 connections, about seven times SQLite’s approximately 1,370 TPS, although SQLite remained faster with one connection. The release also adds complete window-function support, recursive common table expressions, MVCC-compatible and faster full-text search indexes, and query optimizer enhancements including broader subquery unnesting, hash joins, expanded index support, and JSON query-plan output.
Sep 29, 2026 1,343 words in the original blog post.
Turso v0.8 improves concurrent-write performance by adding group commit to its MVCC implementation, addressing a v0.7 bottleneck in which every transaction separately wrote to the logical log and waited for an expensive fsync operation while holding the commit lock. Turso’s MVCC keeps row versions in memory, validates write conflicts at commit time, records only changed rows in a logical log, and later checkpoints data into a standard SQLite-format database file. Under group commit, transactions enqueue their log records and receive tickets, while one leader writes a batch of queued records and performs a single fsync that makes the entire group durable without changing visibility or durability guarantees. Benchmarks at 1,000 transactions per second showed that v0.7 could develop multi-second or worse tail latencies because flushes accumulated, whereas v0.8 reduced median latency to roughly 1 ms and achieved substantially lower p99.9 latency than SQLite across tested connection counts. The improvement is strongest when concurrent transactions update mostly distinct rows, while workloads that repeatedly modify the same rows can still suffer from row-level contention and write-write conflicts, making SQLite’s single-writer approach potentially comparable for those cases.
Sep 29, 2026 3,177 words in the original blog post.
Turso has introduced Accident Protection, a feature that allows customers on any paid plan to restore databases deleted within the previous five days at no additional cost. Positioned as protection against accidental deletions by developers or AI coding agents, the feature enables database recovery through the Turso user interface and the Turso MCP server, allowing compatible AI tools to reverse mistakes during a session. The announcement also emphasizes Turso’s unlimited-database offering and encourages users to upgrade to a paid plan to access restoration protection.
Sep 16, 2026 295 words in the original blog post.
Production SQLite encryption depends primarily on secure key management, careful migration planning, and compliance evidence rather than cipher selection alone. The guidance recommends generating cryptographically random keys, storing them in dedicated secret managers or platform keystores rather than source code, logs, containers, or committed environment files, and retrieving them at runtime with tightly controlled access. Because Turso does not yet support native rekeying, rotations require exporting an encrypted database with its old key, importing it into a new database under a new key, validating it, and accepting a planned downtime window; per-tenant keys can reduce the impact of a single compromise. Migrations from SQLCipher, unencrypted SQLite, and SEE generally follow an export-and-re-encrypt process that should be tested on copies and verified for schema completeness, data counts, application behavior, performance, and key-retrieval failure handling. For regulated HIPAA and PCI-DSS workloads, AES-256-GCM is advised because it is NIST-approved, while SOC2, HIPAA, and PCI-DSS audits commonly require written policies and evidence covering generation, storage, access controls, rotation, and incident response. Encryption at rest protects database files, backups, storage media, and tampering through AEAD authentication, but it does not prevent SQL injection, memory extraction, compromised application code, transit exposure, or authorization failures, which require separate defenses such as parameterized queries, TLS, access control, and monitoring.
Sep 03, 2026 2,741 words in the original blog post.
Turso provides two SQLite encryption approaches: experimental native encryption in its open-source Rust-based local and edge database engine, and production-ready Bring Your Own Key (BYOK) encryption for Turso Cloud plans at the Pro tier and above. Local encryption uses hex-encoded keys, encrypts database and WAL pages transparently with AEGIS or AES-GCM ciphers, and reports mixed-workload overhead of roughly 0.5% to 2.8%, although write costs can reach about 14%; its experimental status reflects the absence of a formal third-party security audit. Cloud BYOK uses base64-encoded keys supplied on every connection, with keys held only in memory during processing rather than stored by Turso, adding customer-controlled encryption above the platform’s existing volume encryption. Supported cloud ciphers include AEGIS, AES-GCM, and Cloud-only ChaCha20-Poly1305, while AES-GCM is positioned for NIST-oriented compliance requirements and AEGIS for performance. The model can support per-customer encrypted databases with distinct keys for stronger tenant isolation, but native key rotation and in-place encryption of existing databases are not yet available, requiring export-and-import workflows instead.
Sep 02, 2026 2,481 words in the original blog post.
SQLite intentionally provides no built-in encryption because it treats databases as files and leaves protection to applications or operating systems, a design that led third-party extensions to rely on the unsupported SQLITE_HAS_CODEC hook until its removal in SQLite 3.32.0 in 2020. SQLCipher remains the established open-source option, particularly for mobile deployments, but can require difficult version migrations and uses AES-256-CBC with HMAC; the proprietary SQLite Encryption Extension (SEE) offers official SQLite-project maintenance and several cipher modes but limits source auditability, while SQLite3MultipleCiphers emerged after the codec-hook removal to support current SQLite releases and legacy SQLCipher compatibility. These tools generally encrypt databases page by page, leaving SQLite’s first 100-byte header readable while using unique nonces and authentication tags stored in reserved page space to provide authenticated encryption and detect tampering. The discussion compares AES-GCM for broad compliance recognition, AEGIS for high performance on hardware supporting AES instructions but without NIST approval, and ChaCha20-Poly1305 for devices without such hardware acceleration. It argues that traditional solutions remain suitable for single-user or embedded databases but were not designed for cloud-native bring-your-own-key systems, large-scale per-tenant key isolation, or newer cipher choices, making newer engines such as Turso worth evaluating for projects with those requirements.
Sep 01, 2026 2,326 words in the original blog post.