Download Latest Version doltgresql-windows-amd64.zip (45.3 MB)
Email in envelope

Get an email when there's a new version of DoltgreSQL

Home / v1.2.0
Name Modified Size InfoDownloads / Week
Parent folder
install.sh < 13 hours ago 3.4 kB
doltgresql-windows-amd64.7z < 13 hours ago 26.5 MB
doltgresql-windows-amd64.zip < 13 hours ago 45.3 MB
doltgresql-darwin-arm64.tar.gz < 13 hours ago 46.0 MB
doltgresql-darwin-amd64.tar.gz < 13 hours ago 48.8 MB
doltgresql-linux-arm64.tar.gz < 13 hours ago 45.6 MB
doltgresql-linux-amd64.tar.gz < 13 hours ago 49.4 MB
1.2.0 source code.tar.gz < 13 hours ago 12.6 MB
1.2.0 source code.zip < 13 hours ago 14.3 MB
README.md < 13 hours ago 10.4 kB
Totals: 10 Items   288.5 MB 0

1.2.0 is a minor version release containing potentially breaking behavioral changes:

  • Client error codes previous returned with the XX prefix are now more specific and match Postgres behavior, e.g. 44 prefix for write contention errors.
  • The auth.db file, containing users and grants, is not replicated to a secondary during cluster replication. Previously replicas always had the default user and password (postgres, password)

Clients relying on the old error codes may need to update application code. Replication customers should ensure that readers to replicas are configured with the correct user name and password.

Merged PRs

dolt

  • 11534: go: remotesrv: http: Authenticate incoming requests against the correct remote peer address. For authentication, this previously defaulted to localhost, while still applying authorization on the true remote peer address.
  • 11528: branch: fix -d when the upstream does not resolve Deleting a branch with dolt branch -d could fail with branch not found when deleted from a remote. Dolt now compares against the local snapshot of the upstream, not the remote repository, and falls back to the current branch when its copy is gone.
  • Add env.UpstreamRef to resolve a branch's upstream local ref from BranchConfig.
  • Add upstreamOrHead to decide when to use the upstream branch or switch to current working branch.
  • Upstream is searched by the configured merge ref in the BranchConfig to support different names.
  • Merged predicate reads the remote-tracking ref instead of the live remote state.
  • RemoteDbProvider parameter dropped because it goes unused. Fix dolthub/dolt#11450
  • 11486: Bug fixes for binlog replication with virtual columns Adds support for correctly handling virtual columns and functional indexes in binlog replication, both when Dolt is acting as the replication primary and when Dolt is acting as a replica. Fixes: https://github.com/dolthub/dolt/issues/11475
  • 11481: go: store/nbs,dprocedures_backup: Add dolt backup sync{,-url} --prune-with-grace-period. Backups into a destination store land new table files there before they update the manifest of the destination store to refer to the files. If the backup fails partially through, it can leave behind temporary files and unreferenced table files. --prune-with-grace-period is a new flag which can be used when calling backup sync and backup sync-url. It will cause all unreferenced table files in the destination store to be removed, before the sync starts, if no files in the destination store have an mtime more recent than the provided grace period. In general, --prune-with-grace-period should be larger than the amount of time it takes to land the backup, but smaller than the period of time between backup attempts. Fixes [#11361]
  • 11448: refactored auth replication to support doltgres This change generalizes auth persistence to allow doltgres to participate in it with its own file type. The GRPC methods are unchanged, since they already take an opaque blob payload. Doltgres side: https://github.com/dolthub/doltgresql/pull/3057

doltgresql

  • 3132: {go.mod,go.sum,utils}: update builder to match method signature
  • 3128: Fix array_to_string() panic on int2vector/oidvector values Caused by ArrayBaseType() returning the wrong element type. Fixes: https://github.com/dolthub/doltgresql/issues/3108
  • 3127: Fix IN clause failing on schema-qualified dolt system tables Dolt system tables without the dolt_ prefix were not getting wrapped with GMSCast elements correctly, which caused incorrect execution. Fixes: https://github.com/dolthub/doltgresql/issues/3115
  • 3104: new skipped test
  • 3089: automatically translate hard-coded oids in the regression tests Some regression tests use hard-coded OIDs for entities created during tests. Since doltgres assigns its own OIDs, these need to be translated for these tests to pass.
  • 3087: more function support Functionality required to stop special-casing psql commands, which now all work natively. In addition to some missing functions, this PR also implements a few other features / fixes required for full psql support:
  • Correctly report triggers from pg_class
  • Correctly compare OIDs when one is NULL
  • Support for WITH ORDINAL for table functions
  • 3081: Handle apd.Decimal types in limit clauses Depends on: https://github.com/dolthub/go-mysql-server/pull/3701
  • 3073: audited error codes This PR audits error code processing to ensure that all common error codes typically examined by clients are correctly returned by the server. In particular, some clients interpret an XX000 error code by terminating the connection to the server, so we need to be careful to only return that code on a catastrophic, unexpected error. Also adds new client library tests that ensure clients behave as expected in response to these codes.
  • 3059: Added CREATE OPERATOR and CREATE AGGREGATE This adds support for the CREATE OPERATOR and CREATE AGGREGATE statements, which we need to support additional emulated extensions.
  • 3057: replicate the auth.db file to secondaries This closes a significant gap in replication. See related changes in https://github.com/dolthub/dolt/pull/11448
  • 3055: bug fix for index miss on dolt_diff_* tables

go-mysql-server

  • 3703: Fix panic for LIKE expression with empty ESCAPE character Despite what MySQL documentation says, empty ESCAPE character actually escapes the NUL character (\0). fixes: https://github.com/dolthub/dolt/issues/11518
  • 3702: fix panic in format() fixes: https://github.com/dolthub/dolt/issues/11517
  • 3700: fix panic on rand(null) fixes: https://github.com/dolthub/dolt/issues/11494
  • 3697: fix inet6 type assertions fixes: https://github.com/dolthub/dolt/issues/11493
  • 3696: cap initial heapsize This PR adds a cap to the initial heap size of the maxRowHeap within TopNRowsIter, to prevent overflows. Additionally, unnecessarily large order by ... limit x clauses would result wasted time allocating space. heap.Push appends to the internal slice, so we'll rely on golang to manage the memory. fixes: https://github.com/dolthub/dolt/issues/11503
  • 3695: Allow NULL and other numerical swap flags for BIN_TO_UUID Fixes dolthub/dolt#11457
  • 3693: fix panic for GeometryFromWKT and various GeoSpatial bugs We added support for "pure empty geometry forms", which MySQL doesn't support, except for "GEOMETRYCOLLECTION EMPTY". Changes:
  • fix panics for pure empty geometry forms
  • fix panics for invalid axis-order options
  • fix ordering for axis-order options
  • expose st_latitude function
  • fix geospatial srid for st_x() and st_y() functions Fixes: https://github.com/dolthub/dolt/issues/11492
  • 3692: When serializing bytes for a MySQL client, correctly handle wrapped values, such as adaptive encoded columns Currently, when a sql.Value contains a wrapped value, but the value's type doesn't implement sql.ValueType, we fail to properly serialize it when sending the bytes to the MySQL client.

Closed Issues

  • 3108: array_to_string() panic with int2vector
  • 3115: IN clause fails with dolt_branches
  • 11517: Dolt panics on a numeric FORMAT locale from a window expression
  • 11518: Dolt panics on empty LIKE ... ESCAPE '' within window expressions
  • 11494: Dolt panics on RAND(NULL) on a nil seed.
  • 11493: Dolt panics on INET6_ATON on a non-string SQL argument
  • 11361: dolt backup sync: an interrupted sync leaves a complete, unreferenced archive in the destination forever — the archive is published before the manifest and there is no prune
  • 11024: Incorrect expression evaluation when NULL appears in a tuple
  • 11456: MySQL Binary Prepared Statement (COM_STMT_EXECUTE) truncates TCP packet payload on JSON columns containing multi-line formatted strings
  • 11475: INSERT INTO a table with functional index enabled panics when binlog replication is active on dolt sql-server
  • 11450: dolt branch -d does not find branch that exists when doing dolt branch [-a]
  • 11503: ORDER BY + huge LIMIT (≥ 2^62) panics
  • 11457: BIN_TO_UUID panics for a NULL swap flag
  • 11492: Dolt panics on empty POLYGON WKT
Source: README.md, updated 2026-08-18