Download Latest Version doltgresql-windows-amd64.7z (23.5 MB)
Email in envelope

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

Home / v0.51.0
Name Modified Size InfoDownloads / Week
Parent folder
doltgresql-windows-amd64.7z 2025-07-18 23.5 MB
doltgresql-windows-amd64.zip 2025-07-18 40.6 MB
doltgresql-darwin-arm64.tar.gz 2025-07-18 41.2 MB
doltgresql-darwin-amd64.tar.gz 2025-07-18 43.1 MB
doltgresql-linux-arm64.tar.gz 2025-07-18 40.3 MB
doltgresql-linux-amd64.tar.gz 2025-07-18 43.1 MB
0.51.0 source code.tar.gz 2025-07-18 8.7 MB
0.51.0 source code.zip 2025-07-18 10.2 MB
README.md 2025-07-18 10.7 kB
Totals: 9 Items   250.7 MB 2

Merged PRs

doltgresql

  • 1641: Fix binary encoded bind vars Bind vars can be specified in a string format or a binary format. The library Doltgres uses for decoding the bind vars (pgtype) errors out when converting some types in binary format to string format. The error looks like: cannot scan timestamp (OID 1114) in binary format into *string. As part of fixing timestamp, I also found that date and bool needed special handling, too, and I updated our prepared statement tests with more type coverage and to ensure we hit both the string format and binary format bind var code paths. Fixes: https://github.com/dolthub/doltgresql/issues/1419
  • 1639: Perf improvement for oid_eq OID equality is found very commonly in expensive joins on pg_catalog tables, and was revealed to be a major bottleneck in SQLAlchemy performance via profiling.
  • 1638: Remove duplicate type definitions Removes two duplicate type definitions. Original customer report also mentioned unused tokens, although those have been left in, since they are valid Postgres tokens and many will likely be used as we continue extending Doltgres support. Related to: https://github.com/dolthub/doltgresql/issues/1592
  • 1634: Named all anonymous callable funcs in binary func package
  • 1633: Removed wasteful engine instantiation This takes 30% or more off pg_catalog accesses. Before: image After: image
  • 1632: Remove error out for global parameters Erroring out is preventing gms from setting system variables when server starts (dolthub/go-mysql-server#3005) since AssignValues calls InitValue with global set to true.
  • 1630: Small bug fixes for SQLAlchemy compatibility
  • 1610: support for bool_and, bool_or Also unskipped a few formerly skipped tests for another aggregate function since it's now supported by the engine.
  • 1605: Added GCC and Clang building This extends the definitions build script to search for GCC and Clang too. These were all tested and confirmed to work locally.
  • 1604: Fix SET queries to expect OKResult companion pr: https://github.com/dolthub/dolt/pull/9441
  • 1601: parse MM DD HH:MM:SS YYYY format for timestamp type
  • 1595: scripts/build_binaries.sh: Windows builds: statically link libssp so that doltgres.exe does not have a dependency on MinGW at runtime. Also picks up newer versions of our crosstools toolchain and sets the platform_version metadata in the MacOS builds so that they will be more compatible with App Store release in the future if the Workbench ever supports Doltgres.
  • 1593: support timezone input in time and timetz types
  • 1589: Support for set-returning functions Depends on https://github.com/dolthub/go-mysql-server/pull/3054
  • 1573: Fix dolthub/dolt#483 - truncate expected err str due to auto-gen postfix Fixes dolthub/dolt#483 Removed Doltgres over specific expected error string on constraint check test
  • 1570: Fix dolthub/dolt#483 - add skip for remote tracking branch and table same name test Fixes dolthub/dolt#483 Add skip for test since doltgres harness does not create remote dir with h.UseLocalFileSystem()
  • 1562: support set returning function
  • 1555: Added partial support for CREATE EXTENSION Relies on:
  • https://github.com/dolthub/pg_extension/pull/4 This implements support for CREATE EXTENSION, in that only uuid-ossp is tested. This doesn't handle everything else that's needed for DROP EXTENSION, such as tracking the created artifacts. There are also some skipped tests where the results aren't quite what are expected, but besides that everything works assuming the environment requirements are satisfied.
  • 1544: Added generated system tables to pg_catalog tables Relies on https://github.com/dolthub/dolt/pull/9339 Also fixes a bug in NOT IN expressions
  • 1536: Add support for UPDATE ... FROM Adds support for using UPDATE ... FROM statements to update a table using data joined from other tables. The biggest gap I'm aware of is support for executing triggers on the updated table. GMS needs some additional changes to clean up the interface for plan.GetUpdatable() and needs to return implementations of sql.DatabaseSchemaTable in order for Doltgres triggers to work with UPDATE ... FROM statements. Depends on: https://github.com/dolthub/go-mysql-server/pull/3016
  • 1534: support char type with length for string input
  • 1522: Add support for SELECT statements with no expressions Resolves https://github.com/dolthub/doltgresql/issues/1470
  • 1520: Add support for IS NULL expression on records Postgres semantics for IS NULL and IS NOT NULL differ slightly from the the MySQL semantics implemented in GMS. For records and composites, IS NULL returns true if the record/composite itself is NULL or if all values in the record/composite are NULL. IS NOT NULL returns true only if all values in the record/composite are not NULL. Note that this means, for records and composites in Postgres, IS NOT NULL is not equivalent to NOT(IS NULL). This change adds custom implementations of IS NULL and IS NOT NULL to support Postgres' behavior with records and composites. Depends on: https://github.com/dolthub/go-mysql-server/pull/3064
  • 1515: Support for ORDER BY in array_agg Depends on https://github.com/dolthub/go-mysql-server/pull/3001 This invalidates the previous approach, but I want feedback on this technique before I remove it.
  • 1504: Implemented pg_type_is_visible Also added user types to pg_types table Partial fix for [#1465]
  • 1497: array_agg support and general framework for postgres aggregate functions Other aggregate functions will require type overload resolution logic that this first function, array_agg, does not. Also not yet supported: the ORDER BY clause in the function, e.g.: sql array_agg ( anyarray ORDER BY input_sort_columns ) Relies on https://github.com/dolthub/go-mysql-server/pull/2992
  • 1495: fix displaying correct column name for dolt_ tables This behavior was introduced in https://github.com/dolthub/doltgresql/pull/1408
  • 1489: set ReadyForQuery transaction indicator for in transaction query Depends on https://github.com/dolthub/go-mysql-server/pull/2986
  • 1473: Bug fixes for EXISTS, prepared statement typing
  • 1471: new gms and fix compile errors
  • 1467: Bug fix for name resolution This fixes the failing query in https://github.com/dolthub/doltgresql/issues/1464
  • 1458: Implemented support for various SHOW statements One of the new tests for SHOW SEQUENCES exposes a very bad bug: error running query: dangling ref: found dangling references to HashSet { a084r0i9e18t0gq6m3s6qmp86pfq4hos dq8tbqfe39u1hah2bs0ilg63rfk3vok2 } I'm worried this is something pretty nasty in session / context management in doltgres.
  • 1451: Add ROW() record constructor support Initial support for the ROW() constructor expression, which creates anonymous records. This PR adds support for basic uses of the ROW() constructor, such as creating records from groups of expressions, selecting records, comparing records, and using records in WHERE clauses. There are still several record features that don't work yet, such as using a table alias with the ROW() constructor. Fixes: https://github.com/dolthub/doltgresql/issues/1425 Depends on: https://github.com/dolthub/go-mysql-server/pull/2982
  • 1448: Added test for VALUES() select statements interacting with prepared statements Confirmed fix for https://github.com/dolthub/doltgresql/issues/1424

Closed Issues

  • 1464: SQLAlchemy Demo no work with Doltgres
  • 1419: Error for INSERT using prepared statement with timestamp column
  • 1430: OFFSET $1 errors with unsupported syntax: <nil>
  • 1470: SELECT FROM ... support
  • 1334: ORDER BY support in aggregate functions
  • 1425: ROW keyword for tuples not yet supported
  • 1424: unable to prepare query: unsupported syntax
Source: README.md, updated 2025-07-18