What dolthub/dolt shipped
Written by FoxPlug from the repository's own releases; not affiliated with Dolthub. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/dolthub/dolt; Dolthub did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of October 5, 2026
What shipped
- Switched to fdatasync on Linux with a padded journal, which avoids unnecessary file system metadata updates. Pull request #12031
- Accelerated lookup joins with SQL row inputs using shared iteration and type-aware key conversion. Pull request #12034
- Fixed foreign keys referencing a renamed index by extending the index renaming logic to cover ALTER INDEX as well as RENAME INDEX. Pull request #12025
- Added a 3s HTTP timeout for the latest release fetch and cached failed checks so dolt version no longer hangs. Pull request #12027
- Made three performance changes: capturing the hash of an object instead of recalculating, allocating in one shot in ReadBytes, and reusing unchanged leaves in adaptive encoding. Pull request #12049
- Used a.bss allocated zeros slice for the write ahead in the journal file, avoiding allocation and GC interaction. Pull request #12047
- Initialized the git remote cache repository with the remote's object format. Pull request #12061
- Returned ErrTableAlreadyExists for existing nonlocal tables. Pull request #12041
- Quoted
dolt_blameview identifiers with the engine's schema formatter so Doltgres uses its own quotes. Pull request #12024 - Documented the NBS storage lock contract in the NBS README, including the lock path and the advisory file lock. Pull request #12023
Why it matters
This week brought a mix of performance work and compatibility fixes across storage, joins and version checks. Users should see faster writes on Linux with the padded journal and fdatasync change, faster lookup joins with SQL row inputs, and fewer hangs from dolt version. Fixes for renamed indexes, nonlocal tables and dolt_blame quoting also make behavior more consistent.
Changelog entry
- Use fdatasync on Linux with a padded journal, avoiding unnecessary file system metadata updates. Pull request #12031
- Accelerate lookup joins with SQL row inputs using shared iteration and type-aware key conversion. Pull request #12034
- Fix foreign keys referencing a renamed index by covering ALTER INDEX as well as RENAME INDEX. Pull request #12025
- Cache failed release checks and add a 3s HTTP timeout to prevent dolt version from hanging. Pull request #12027
- Capture the hash of an object instead of recalculating, allocate in one shot in ReadBytes, and reuse unchanged leaves in adaptive encoding. Pull request #12049
- Use a.bss allocated zeros slice for the write ahead in
journal_file.go. Pull request #12047 - Initialize the git remote cache repository with the remote's object format. Pull request #12061
- Return ErrTableAlreadyExists for existing nonlocal tables. Pull request #12041
- Quote
dolt_blameview identifiers with the engine's schema formatter. Pull request #12024 - Document the NBS storage lock contract in the NBS README. Pull request #12023
- Qualify the primary key in the
auto_increment_lock_modesbats check query. Pull request #12037 - Fix a TIME parsing test where a TIME type was incorrectly clipped. Pull request #12048
This week: fdatasync with a padded journal on Linux for faster writes, accelerated lookup joins with SQL row inputs, dolt version now times out and caches failed release checks, foreign keys referencing renamed indexes fixed, and dolt_blame identifiers quoted with the engine's sc
This week in Dolt: write performance improved by using fdatasync on Linux with a padded journal, lookup joins with SQL row inputs were accelerated with shared iteration and type-aware key conversion, and dolt version now uses a 3s HTTP timeout while caching failed release checks. Foreign keys referencing a renamed index are fixed by extending the index renaming logic to ALTER INDEX, nonlocal tables now return ErrTableAlreadyExists, dolt_blame view identifiers use the engine's schema formatter, and the NBS storage lock contract is documented. The git remote cache repository is initialized with the remote's object format.
Week of September 28, 2026
What shipped
- Released version 2.4.0 with a minor version bump due to breaking changes in INSERT INTO.. ON DUPLICATE KEY UPDATE privilege enforcement, which now correctly requires UPDATE privileges rather than only INSERT privileges. Release
- Optimized dolt log from O(N^2) to O(N) complexity by querying branch, tag, and log metadata once instead of per commit. Pull request #11990
- Fixed upsert authorization to require UPDATE privileges and added protocol regression coverage for denied and permitted upserts. Pull request #11956
- Nonlocal tables now retain their own schema when absent from schema-override commits while preserving existing overrides. Pull request #12018
- Git fetch anchor refs are now preserved during teardown to enable incremental transfers on subsequent pulls instead of full re-downloads. Pull request #11991
- Fixed redundant Git reads and decompression by spooling persisted Git-backed tables and reusing existing readers in conjoin operations. Pull request #11989
- Added git-remote.max-history-commits and git-remote.reset-history-on-prune configuration options for trading disk usage against transfer speed. Pull request #11993
- Fixed CREATE TABLE rejection on target branches of nonlocal table rules by adding table name validation during creation. Pull request #12002
- Improved database cache key specificity to include local database root, remote URL, and effective Git ref to prevent incorrect cache sharing. Pull request #12016
- Added CSV import regression test coverage for update triggers. Pull request #11980
Why it matters
Version 2.4.0 ships performance improvements to logging and Git operations alongside security fixes for upsert privileges. Improvements to nonlocal table schema handling and Git remote configuration give users more control over storage and transfer efficiency.
Changelog entry
- Version 2.4.0 released with breaking change: INSERT INTO.. ON DUPLICATE KEY UPDATE now correctly enforces UPDATE privileges Release
- Dolt log optimized from O(N^2) to O(N) by querying metadata once per operation Pull request #11990
- Upsert operations now require UPDATE authorization on target tables Pull request #11956
- Git fetch anchors preserved during teardown for incremental pull transfers Pull request #11991
- NBS spooling now handles persisted Git tables and conjoin reads to reduce redundant operations Pull request #11989
- New git-remote configuration options: max-history-commits and reset-history-on-prune Pull request #11993
- Nonlocal tables retain schema when absent from schema-override commits Pull request #12018
- CREATE TABLE allowed on nonlocal table rule targets Pull request #12002
- Database cache keys now include local root, remote URL, and effective Git ref Pull request #12016
- Added CSV import regression coverage for update triggers Pull request #11980
- Replaced fslock library with dolthub/file-locks Pull request #11935
- Fixed unescaping of % wildcards in check constraint merge tests Pull request #11937
Dolt 2.4.0 is out. We optimized dolt log to O(N), fixed upsert privilege checks, improved Git transfer performance with anchor refs, and made nonlocal table schema handling more flexible.
Dolt 2.4.0 is available. This release includes significant performance improvements: dolt log is now O(N) instead of O(N^2), Git operations preserve fetch anchors for incremental transfers, and NBS spooling eliminates redundant reads. We fixed upsert authorization to properly require UPDATE privileges and improved nonlocal table schema handling. Users can now configure Git remotes for disk/speed tradeoffs with new settings.
Week of September 21, 2026
What shipped
- Release 2.3.5 adds wildcard table filters for binlog replication, supporting REPLICATE_WILD_DO_TABLE and REPLICATE_WILD_IGNORE_TABLE with MySQL wildcard matching and precedence handling. Release
- Dynamic merge conflict handling allows flexible row merge behavior with the ability to detect conflicts on matching values and create rows based on caller requirements. Pull request #11643
- DoltgreSQL now supports transaction lifecycle hooks that expose transaction start, end reason (commit or rollback), and savepoint interaction. Pull request #11920
- DoltgreSQL can now override the effective user in search path $user substitution. Pull request #11933
- DoltgreSQL can now provide branch-control principal for access control. Pull request #11921
- TIME type precision changes have been implemented. Pull request #11943
Why it matters
The release brings improved MySQL replication capabilities with wildcard filtering support. DoltgreSQL gains important transaction lifecycle visibility and user context management features. The dynamic merge conflict handling opens new use cases for flexible row merge behavior.
Changelog entry
- Support wildcard table filters for binlog replication with REPLICATE_WILD_DO_TABLE and REPLICATE_WILD_IGNORE_TABLE Release
- Add dynamic merge conflict handling for flexible row merge behavior Pull request #11643
- Add DoltgreSQL transaction lifecycle hooks for transaction start, end, and savepoint events Pull request #11920
- Allow DoltgreSQL to override effective user in search path $user substitution Pull request #11933
- Allow DoltgreSQL to provide branch-control principal Pull request #11921
- Implement TIME type precision changes Pull request #11943
Dolt 2.3.5 ships wildcard table filters for binlog replication, matching MySQL's REPLICATE_WILD_DO_TABLE and REPLICATE_WILD_IGNORE_TABLE behavior. DoltgreSQL gains transaction lifecycle hooks and search path user override support.
Dolt 2.3.5 is out with significant improvements for MySQL-to-Dolt binlog replication. Wildcard table filters now support REPLICATE_WILD_DO_TABLE and REPLICATE_WILD_IGNORE_TABLE with full MySQL wildcard matching and precedence handling. DoltgreSQL adds transaction lifecycle hooks for visibility into transaction start, commit/rollback, and savepoint operations, plus enhanced search path user handling for better access control integration.
Week of September 14, 2026
What shipped
- Released version 2.3.4 with fixes for journal writer race conditions and session-only checkout warnings in noninteractive SQL. Release
- Fixed garbage collection bug where reads could access chunks that were being collected by draining outstanding reads before GC installs its keeper. Pull request #11891
- Fixed generation ordering on reads to prevent missing chunks that are being moved from new to old generation during garbage collection. Pull request #11892
- Improved keeper sampling in the read path by moving it into beginRead and registering all unlocked reads from a single locked section. Pull request #11889
- Added support for wildcard table filters in binlog replication with REPLICATE_WILD_DO_TABLE and REPLICATE_WILD_IGNORE_TABLE. Pull request #11842
- Added JSON Lines output format for SQL queries with one JSON object per row. Pull request #11849
- Enabled Dolt executable comments in SQL scripts. Pull request #11851
- Changed boolean SQL results to print as 1 and 0 in text and CSV output to match MySQL behavior. Pull request #11854
- Added validation of destination branch names before pushing to remotes. Pull request #11852
- Added validation and sanity checks on index data when NomsBlockStore opens table files. Pull request #11773
Why it matters
This week focused on critical garbage collection fixes that prevent data loss during collection cycles, along with improvements to replication, SQL output formatting, and branch validation. Several regression tests were added to prevent future issues with merges, procedures, and CSV handling.
Changelog entry
- Version 2.3.4 released Release
- Fixed GC race where reads could access chunks being collected Pull request #11891
- Fixed generation ordering on reads during chunk moves in GC Pull request #11892
- Improved keeper sampling in read path for consistency Pull request #11889
- Fixed lost cancellation wakeup in waitForGC Pull request #11888
- Fixed cache population before incoming Purge requests Pull request #11887
- Fixed nil-ghostGen bugs in GenerationalNBS Pull request #11893
- Added REPLICATE_WILD_DO_TABLE and REPLICATE_WILD_IGNORE_TABLE support Pull request #11842
- Added JSON Lines output format for SQL queries Pull request #11849
- Enabled Dolt executable comments in SQL scripts Pull request #11851
- Boolean SQL results now print as 1 and 0 in text and CSV output Pull request #11854
- Show ON UPDATE CURRENT_TIMESTAMP in EXTRA column Pull request #11844
- Validate destination branch names before pushing Pull request #11852
- Added index data validation and sanity checks in NomsBlockStore Pull request #11773
- Bumped Bazel to 9.2.0 and updated module versions Pull request #11618
V2.3.4 shipped with GC fixes preventing chunk collection races, wildcard replication filters, JSON Lines output, and improved branch validation.
Dolt 2.3.4 is out with important garbage collection fixes that prevent reads from accessing chunks being collected, plus new capabilities: wildcard filters for binlog replication, JSON Lines SQL output format, and better branch name validation before pushing.