| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| dolt-windows-amd64.msi | 2026-11-05 | 45.8 MB | |
| dolt-2.7.1-1.aarch64.rpm | 2026-11-05 | 40.8 MB | |
| dolt-2.7.1-1.x86_64.rpm | 2026-11-05 | 44.1 MB | |
| install.sh | 2026-11-05 | 3.2 kB | |
| dolt-windows-amd64.7z | 2026-11-05 | 23.3 MB | |
| dolt-windows-amd64.zip | 2026-11-05 | 40.1 MB | |
| dolt-darwin-arm64.tar.gz | 2026-11-05 | 41.2 MB | |
| dolt-darwin-amd64.tar.gz | 2026-11-05 | 43.7 MB | |
| dolt-linux-arm64.tar.gz | 2026-11-05 | 40.8 MB | |
| dolt-linux-amd64.tar.gz | 2026-11-05 | 44.1 MB | |
| 2.7.1 source code.tar.gz | 2026-11-05 | 12.6 MB | |
| 2.7.1 source code.zip | 2026-11-05 | 14.5 MB | |
| README.md | 2026-11-05 | 5.5 kB | |
| Totals: 13 Items | 390.9 MB | 14 | |
Merged PRs
dolt
- 12354: Fix merge-preview schema order when rekeying the ancestor
Preserve the
(base, ours, theirs)order returned byapplySchemaFallbackswhen binding and returning conflict schemas. This letsConflictBaseSchemarekey the actual ancestor and prevents shifted values fromdolt_preview_merge_conflictsafter both branches change the primary key. Existing normal/prepared regressions fail before and pass after; the original schema-layout regressions and the full Dolt engine suite also pass against GMS main. Follow-up to [#12333] and [#12334]. Addresses the inherited Dolt integration failures observed on GMS [#4117]. - 12348: Preserve inline indexes when writing temporary tables The first write to a temporary table could erase its inline indexes because the row editor still used the pre-index schema. Refresh the schema and write session after creating an index, with MySQL-only regressions for CTAS, subsequent writes, and UNIQUE enforcement.
go-mysql-server
- 4117: Report actual column collations in SHOW FULL COLUMNS
SHOW FULL COLUMNSreports the effective column collation instead of the default, including for ENUM and SET. Binary SQL types and binary-charset ENUM/SET retain NULL. Adds one compact shared regression covering 21 columns, inherited and alternate collations, views, aliases, and filtering. Collation, query, view, and modify-column engine suites pass; metadata was also checked against MySQL 8.4.11 and a locally built Dolt CLI. Fixes [#12344] - 4109: Resolve inherited defaults in indexed CREATE TABLE ... SELECT
Resolve inherited stored defaults before analyzing
CREATE TABLE ... SELECTwith inline indexes, avoidingplan is not resolvedwhile preserving the defaults. Adds a MySQL-specific regression verified against MySQL 8.4. - 4100: Preserve index lookups during join replanning
Preserve
IndexedTableAccessnodes during join replanning so indexed-only tables retain their lookup. This prevents a panic inDELETEqueries combiningIN,NOT EXISTS, andORDER BY ... LIMIT. Fixes https://github.com/dolthub/dolt/issues/12235 - 4099: sql/expression/function: unwrap out-of-band blob arguments at use Fix [#12263]
- 4098: sql: check generated SET target by table, not name Fix [#12238]
- 4094: Support unary bitwise complement
Support unary
~for numeric and binary operands, preserving full-width masks in mixed signed/unsigned bit operations. Related to [#12284].
vitess
- 505: sqlparser: left-recurse comparisons so chains group left Fix [#12345] Close [#504] Block dolthub/go-mysql-server#4118
- 502: fix(mysql): honor GTID payloads regardless of request flags
Debezium's MySQL binlog client sends
COM_BINLOG_DUMP_GTIDwith flags0and a valid binary SID block. The parser currently discards that checkpoint unlessBINLOG_THROUGH_GTIDis set; Dolt consequently replays historical transactions, which can fail Debezium when old DDL is applied to its current schema snapshot. See [#12241] for the wire-level reproduction and MySQL history. This backports [vitessio/vitess#17580](https://github.com/vitessio/vitess/issues/17580): - Read the GTID payload independently of the flag, before handling nonblocking EOF.
- Set
BINLOG_THROUGH_GTIDon outgoing requests. - Port the SID and request-flag test changes using this fork's existing test conventions.
The fork requires two adaptations: retain
NewMysql56GTIDSetFromSIDBlockinstead of upstream's historical textual decoder, and omit upstream's filename-dependent flag branch because this sender always uses an empty filename. The backport also bounds-checks the declared payload length and adds parser regressions covering flags0,2, and4, zero-length/empty SID payloads, nonblocking requests, and malformed/truncated payloads. Validation on Apple Silicon macOS: - Passed
go test ./go/mysql -run '^(TestComBinlogDump.*|TestSIDs|TestMysql56GTIDSet.*)$' -count=1with Go 1.27.3. - Built Dolt 2.6.1 with this patch and passed the issue's isolated wire-protocol reproduction for both flags
0and4; each excluded the checkpoint and delivered a new row. Stock 2.6.1 fails by replaying transaction 1. - The complete
go test ./go/mysql -count=1run failedTestServer,TestClearTextServer, andTestDialogServerbecauseVT_MYSQL_ROOTis unset andmysqldis unavailable. Native Linux and full Debezium startup were not tested. Dolt will need to update its Vitess dependency after this is merged.