branch: elpa/pg
commit 040b5fcad8d16e8dfc712c8572a9d79dec636de1
Author: Eric Marsden <[email protected]>
Commit: Eric Marsden <[email protected]>
Update information on tested variant versions
---
README.md | 45 +++++++++++++++++++++------------------------
1 file changed, 21 insertions(+), 24 deletions(-)
diff --git a/README.md b/README.md
index 61662021b1..997f245375 100644
--- a/README.md
+++ b/README.md
@@ -72,7 +72,7 @@ The following PostgreSQL-compatible databases or extensions
have been tested:
extension rather than a distinct database implementation).
- [IvorySQL](https://www.ivorysql.org/) works perfectly (this Apache licensed
fork of PostgreSQL
- adds some features for compatibility with Oracle). Last tested 2026-06 with
version 5.3.
+ adds some features for compatibility with Oracle). Last tested 2026-06 with
version 5.4.
- The [Timescale DB](https://www.timescale.com/) extension for time series
data, source available
but non open source. This works perfectly (last tested 2026-06 with version
2.27).
@@ -118,8 +118,8 @@ The following PostgreSQL-compatible databases or extensions
have been tested:
- [Google AlloyDB Omni](https://cloud.google.com/alloydb/omni/docs/quickstart)
is a proprietary fork
of PostgreSQL with Google-developed extensions, including a columnar storage
extension, adaptive
- autovacuum, and an index advisor. It works perfectly with pg-el as of
2026-03 (version that
- reports itself as "17.5").
+ autovacuum, and an index advisor. It works perfectly with pg-el as of
2026-07 (version that
+ reports itself as "17.7").
- [PolarDB for PostgreSQL](https://github.com/ApsaraDB/PolarDB-for-PostgreSQL)
is free software
(Apache 2 licence) developed by Alibaba Cloud, also available as a
commercial hosted service with
@@ -143,7 +143,7 @@ The following PostgreSQL-compatible databases or extensions
have been tested:
- The [RisingWave](https://github.com/risingwavelabs/risingwave) event
streaming database (Apache
license) is mostly working. It does not support `GENERATED ALWAYS AS
IDENTITY` or `SERIAL`
- columns, nor `VACUUM ANALYZE`. Last tested 2026-06 with v2.8.4.
+ columns, nor `VACUUM ANALYZE`. Last tested 2026-07 with v3.0.1.
- The [CrateDB](https://crate.io/) distributed database (Apache licence).
CrateDB does not support
rows (e.g. `SELECT (1,2)`), does not support the `time`, `varbit`, `bytea`,
`jsonb` and `hstore`
@@ -158,47 +158,42 @@ The following PostgreSQL-compatible databases or
extensions have been tested:
functionality, and its interpretation of SQL occasionally differs from that
of PostgreSQL.
Currently fails with an internal error on the SQL generated by our query for
`pg-table-owner`, and
fails on the boolean vector syntax b'1001000'. Works with these limitations
with pg-el (last
- tested 2026-06 with CockroachDB CCL v26.2).
-
-- The [YDB by Yandex](https://ydb.tech/docs/en/postgresql/docker-connect)
distributed database
- (Apache licence). Has very limited PostgreSQL compatibility. For example, an
empty query string
- leads to a hung connection, and the `bit` type is returned as a string with
the wrong oid. Last
- tested 2026-06 with version 23-4.
+ tested 2026-07 with CockroachDB CCL v26.2).
- The [Apache Datafusion](https://datafusion.apache.org/) query engine,
designed primarily for
incremental processing applications (“streaming”), has quite good PostgreSQL
compatibility (using
the pgwire library). It does not support the `timetz` datatype, nor
`TRUNCATE TABLE`, nor
- `UPDATE`, nor `CREATE INDEX` statements. Last tested 2026-06 with version
53.1.
+ `UPDATE`, nor `CREATE INDEX` statements. Last tested 2026-07 with version
54.0.
-- The [Picodata](https://git.picodata.io/core/picodata) distributed in-memory
database engine (BSD
- licence) has reasonably good PostgreSQL compatibility and works well with
pg-el. Some SQL parsing
- incompatibilities, tables must have a primary key, no VACCUM, no SERIAL, no
arrays, no support for
- the PostgreSQL system tables (pg-el includes workarounds for this). Last
tested 2026-06 with
- version 26.2.
+- The [Picodata](https://git.picodata.io/core/picodata) distributed in-memory
shard-per-CPU-core
+ database engine (BSD licence) has reasonably good PostgreSQL compatibility
and works well with
+ pg-el. Some SQL parsing incompatibilities, tables must have a primary key,
no VACCUM, no SERIAL,
+ no arrays, no support for the PostgreSQL system tables (pg-el includes
workarounds for this). Last
+ tested 2026-07 with version 26.3.
- The [SereneDB](https://github.com/serenedb/serenedb) distributed real-time
search-oriented
database (Apache licence) has fairly good PostgreSQL compatibility. It uses
the PostgreSQL SQL
parser, but a fully reimplemented backend. No support for the `char` type,
no SERIAL, no support
for `DROP SEQUENCE`, no hstore, no XML functionality, some SQL
incompatibilities. Last tested
- 2026-06 with version 26.05.
+ 2026-07 with version 26.07.
- The [Doltgres](https://github.com/dolthub/doltgresql) version-controlled
database (Apache
licensed) has rapidly improving PostgreSQL compatibility. It does not
implement ownership-related
system tables, nor int4range functions. It works well, with these
limitations, with pg-el. Last
- tested 2026-05 with a version that is reported as 15.5.
+ tested 2026-06 with a version that is reported as 15.5.
- The [Materialize](https://materialize.com/) operational database (a
proprietary differential
dataflow database) has many limitations in its PostgreSQL compatibility: no
support for primary
keys, unique constraints, check constraints, for the `bit` type for example.
It works with these
- limitations with pg-el (last tested 2026-06 with Materialize v26.27).
+ limitations with pg-el (last tested 2026-07 with Materialize v26.33).
- The [CedarDB](https://cedardb.com/) database spun off from the Umbra
research database developed
at the University of Munich is fairly PostgreSQL compatible and works well
with pg-el. Last tested
- 2026-06 with CedarDB version v2026-05-26.
+ 2026-07 with CedarDB version v2026-07-10.
- The [QuestDB](https://questdb.io/) time series database (Apache licensed)
has very limited
PostgreSQL support, and does not support the `integer` type for example.
Last tested 2026-06 with
- version 9.4.1.
+ version 9.4.3.
- The proprietary [Yellowbrick](https://yellowbrick.com/) distributed database
does not implement
`SERIAL` columns, nor datatypes such as `text`, `bit` and `timetz`, nor
collation, nor enums, nor
@@ -230,8 +225,8 @@ The following PostgreSQL-compatible databases or extensions
have been tested:
- The [GreptimeDB](https://github.com/GrepTimeTeam/greptimedb) time series
database built on the
DataFusion query engine (Apache license) implements quite a lot of the
PostgreSQL wire protocol,
but has more restrictions on the use of identifiers than PostgreSQL (for
example, `id` is not
- accepted as a column name) and does not support data types such as `bit`.
Last tested v1.0.2
- in 2026-06.
+ accepted as a column name) and does not support data types such as `bit`.
Last tested v1.1.2
+ in 2026-07.
- The [H2](https://github.com/h2database/h2database) embeddable database
implements some aspects of
the PostgreSQL wire protocol (MPL/EPL dual license). It does not support the
`timestamptz`, `json`
@@ -261,7 +256,7 @@ The following PostgreSQL-compatible databases or extensions
have been tested:
PostgreSQL variants or proxies that **don’t work** with pg-el:
-- The ClickHouse database, whose PostgreSQL support is too limited. As of
version 26.3 in 2026-04,
+- The ClickHouse database, whose PostgreSQL support is too limited. As of
version 26.6 in 2026-07,
there is no implementation of the `pg_types` system table, no support for
basic PostgreSQL-flavoured
SQL commands such as `SET`, no support for the extended query mechanism.
@@ -272,6 +267,8 @@ PostgreSQL variants or proxies that **don’t work** with
pg-el:
- The [PgCat](https://github.com/postgresml/pgcat) sharding connection pooler
for PostgreSQL (MIT
license) does not work correctly with prepared statements (last tested
2025-11 with v0.2.5).
+- The [YDB by Yandex](https://ydb.tech/docs/en/postgresql/docker-connect)
distributed database
+ (Apache licence) had limited PostgreSQL compatibility until 2026-07.
Tested **Emacs versions**: mostly tested with versions 31 pre-release, 30.2
and 29.4. Emacs versions