Skip to content

Releases: hydradatabase/hydra

v1.1.2

01 Apr 22:42
3cdf836
Compare
Choose a tag to compare
  • turn off column cache when building an index, vacuum, and analyze (#250)
  • fix memory leak when executing vectorized quals (#242)
  • do not release the chunk group state if there is data (#245)
  • fix case sensitivity bug in columnar.alter_table_set_access_method (#237)
  • fix a crash when chunk_group_row_limit is larger than 110000 (#235)
  • add extensions: wrappers, pgsodium, and supabase_vault (PG >=14) (#236)

Thanks to @japinli for multiple bug fixes in this release!

v1.1.1

26 Jan 19:22
dd0ef07
Compare
Choose a tag to compare
  • fix uncapped memory growth when importing data via logical replication (#226)
  • fix handling of large data columns (e.g. text or json) causing overflow of 1GB
    chunk size (#220)
  • restrict the maximum singular datum size to 256MB to ensure that the maximum
    datum size of 1GB is not exceeded in columnar metadata (#222)
  • do not insert vectorization node into the plan if columnar scan isn't being used
    (#228)

The corresponding docker images are:

  • PG 16: docker pull ghcr.io/hydradatabase/hydra:16-dd0ef07209dd23b9fca213a152ee3ee13249bb34
  • PG 15: docker pull ghcr.io/hydradatabase/hydra:15-dd0ef07209dd23b9fca213a152ee3ee13249bb34
  • PG 14: docker pull ghcr.io/hydradatabase/hydra:14-dd0ef07209dd23b9fca213a152ee3ee13249bb34
  • PG 13: docker pull ghcr.io/hydradatabase/hydra:13-dd0ef07209dd23b9fca213a152ee3ee13249bb34

v1.1.0

15 Dec 20:00
e810770
Compare
Choose a tag to compare
  • added support for upserts and other ON CONFLICT clauses for INSERT
    queries (#174)
  • added a custom index-backed scan (#205). This scan is disabled by default as it
    may adversely affect performance. To enable this scan, use:
    SET columnar.enable_columnar_index_scan = true;
  • added Postgres 16 support (#200)
    • parquet_s3_fdw and multicorn-based FDWs are not yet supported in PG 16. These
      extensions are included only on PG 13-15 builds.
  • update pg_ivm to 1.7.0 (#200)
  • update pgsql-http to 1.6.0 (#200)

The corresponding docker images are:

  • PG 16: docker pull ghcr.io/hydradatabase/hydra:16-e8107709cc62316da9b2cb8fe0d3cb22ba6e470f
  • PG 15: docker pull ghcr.io/hydradatabase/hydra:15-e8107709cc62316da9b2cb8fe0d3cb22ba6e470f
  • PG 14: docker pull ghcr.io/hydradatabase/hydra:14-e8107709cc62316da9b2cb8fe0d3cb22ba6e470f
  • PG 13: docker pull ghcr.io/hydradatabase/hydra:13-e8107709cc62316da9b2cb8fe0d3cb22ba6e470f

v1.0.2

07 Nov 16:53
d0087c3
Compare
Choose a tag to compare

This version of Hydra Columnar requires ALTER EXTENSION columnar UPDATE after installation.

  • fix incorrect results when using an aggregate FILTER by not vectorizing these aggregates (#181)
  • fix possible bypass of table constraints by forcing constraints to be checked during multi-insert (#182)
  • fix possible table corruption when running columnar.vacuum (#190)
  • support chunk filtering for types that have a family comparator, namely varchar (#184)
  • allow higher values (up to 10M) for chunk_group_row_limit and stripe_row_limit (#186)
  • fix txid wraparound (#190)

The corresponding Docker tags are:

v1.0.1

20 Oct 21:49
22e7434
Compare
Choose a tag to compare
  • updated pgvector to 0.5.1, allowing use of HNSW indexes.
    Users of pgvector should run ALTER EXTENSION vector UPDATE in any
    database where the extension is installed. (#171)
  • stop resetting to default columnar on Hydra Cloud (spilo). This will allow
    the user to change the default. (#173)
  • improve handling of stripe assignment to workers to reduce spinlock
    contention, which can cause a crash (#170)
  • change default qual_pushdown_correlation_threshold from 0.9 to 0.4. This
    addresses a performance regression we observed in some clickbench queries.
    (#159)

The corresponding Docker tags are:

v1.0.0

19 Sep 16:08
0456f8a
Compare
Choose a tag to compare

Today we are pleased to announce Hydra 1.0 is GA. 🎉 You can learn more about the release and everything included in 1.0.0 on our web site.

There are no changes since v1.0.0-rc2.

The corresponding docker images are:

v1.0.0-rc2

14 Sep 22:06
6c246e9
Compare
Choose a tag to compare

This is a bugfix release for a bug we found in RC1:

  • bugfix: disable custom vectorization on non-column arguments (#147)

v1.0.0-rc

13 Sep 17:53
d099b1c
Compare
Choose a tag to compare

In addition to bug fixes, this release includes significant vectorization optimization for aggregates (eg.g COUNT and SUM), enabled new index types, and added pg_hint_plan.

  • vectorization of direct aggregates (#143)
  • fix an inefficiency with vacuum if there is only one stripe (#143)
  • enable O3 compilation optimizations (#143)
  • disable parallelism for CREATE TABLE ... AS queries (#138)
  • allow gin, gist, spgist, and rum indexes on columnar tables (#133)
  • add pg_hint_plan extension (#134)
  • extensions are now installed during the build process using pgxman (#137)
  • bugfix: columnar.alter_table_set_access_method should correctly disallow conversion of heap tables that have foreign keys (#136)
  • bugfix: crash when using explain when cache is enabled (#125)
  • bugfix: cache could evict a chunk currently in use (#142)

The corresponding Docker tags are:

v1.0.0-beta

02 Aug 16:54
c2daa1e
Compare
Choose a tag to compare

Columnar-optimized vacuuming allows columnar tables to be compacted after updates and deletes without full rewrite, which will also improve peformance after vacuum. Auto-vacuum support combines recent inserts into a single stripe. A new column cache makes JOIN queries more efficient. Vector similarity search and data types are now available via pgvector.

  • default table access method is now columnar (#107)
  • add pgvector extension (#106)
  • add vacuum_full UDF (#93)
  • bugfix: vacuum udf could get into a look and overwrite stripes (#92)
  • add columnar decompressed chunk cache (#86)
  • bugfix: vacuum hanging indefinitely in some cases (#80)
  • bugfix: release memory during long sequential scans (#78)
  • add user function to allow for incremental vacuum and space reclamation (#71)
  • add support for postgres 15 (#75)
  • add columnar vacuum to combine latest stripe into 1 stripe (#51, #74)

The corresponding docker tags for this release are: