Releases: ClickHouse/pg_chdb
Releases · ClickHouse/pg_chdb
Release list
Release v0.1.2
This release makes binary-only changes. Once installed and loaded, any existing use of chdb and chdb_hook v0.1 will get the v0.1.2 benefits without needing to ALTER EXTENSION UPDATE.
⚡ Improvements
- Added mappings for additional chDB data types: * The Interval family maps to Postgres interval or bigint * A Map maps to a two-dimensional array of key/value pairs or a custom two-field composite type * A Tuple maps to an array of its values or composite type * An unflattened Nested column maps to a two-dimensional array or composite type array * All LowCardinality types now map to their Postgres equivalents, not just
LowCardinality(String)* Parameterized JSON (JSON(...)) now maps to jsonb or json - Added the
encoding_checkoption toCOPY. Valid values arefail,replace,remove, andtruncate. See the COPY docs for details (#96). - Linking to libchdb v26.9.0 fixes the CVS format with NULL geometric types.
🐞 Bug Fixes
- Reject
COPY FROMa URL with aWHEREclause, preventing imports from silently ignoring row filters (#86). - Fix
CREATE TABLEinference to usetext[]forTupleandtext[][]forMapandNestedinstead oftext. Reuse source types fromDESCRIBEwhen loading rows, keepingNestedfields in one column (#89). - The
installtarget no longer installslibchdb.awhen usingLIBCHDB_BUILD=static. Since we statically link it, we do not need to install it.
🏗️ Build Setup
- Added the
NO_FILE_SCHEMEoption tomake. When set, chd_hook will be built without support for thefile://scheme, which may be useful for Postgres hosting providers (#85). - The
installtarget no longer installslibchdb.awhen usingLIBCHDB_BUILD=static. Since we statically link it, we do not need to install it (#87). - Added the
MAX_CONCURRENT_TESTSvariable to minimize the number of concurrent tests in resource-constrained environments, such as CI runners (#91). - Added macOS testing to the CI workflow and adopted the PGXN actions for the CI and release workflows.
⬆️ Dependencies
- Added testing for chDB v26.7.3 and v26.9.0.
- Updated to support PostgreSQL 19 beta 4.
📚 Documentation
- Added missing links to the README and docs and simplified the list of files to load in a single command.
- Document manual enum and composite type mappings for
Enum,Tuple,Map, andNestedcolumns (#89).
Release v0.1.1
This release makes binary-only changes. Once installed and loaded, any
existing use of chdb and chdb_hook v0.1 will get the v0.1.1 benefits without
needing to ALTER EXTENSION UPDATE.
⚡ Improvements
- Support mapping
BFloat16to Postgresreal, andIntervaltypes to Postgresinterval(#76). - Added PostgreSQL 15 support.
- Map
UInt64,Int128,Int256,UInt128, andUInt256to Postgresnumeric, so values above thebigintrange no longer raise an error. A derived column carries the precision spanning its chDB type (#78).
🐞 Bug Fixes
DateTime64orTime64now defaults to millisecond precision (#76).- Reading a ClickHouse string into a text column validates its bytes against database encoding, raising an error instead of returning unreadable text. Use
byteato preserve raw bytes (#80). - Added the
date_time_output_format='iso'setting to each chDB query to always formattimestampandtimestamptzvalues in plain text formats with the ISO-8601 format in UTC, convertingtimestampvalues from the currenttimezonesetting.
💅🏻 Quality
- Added comprehensive tests for timestamp and timestamptz
COPYoutput and round-tripping, including the impact of thetimezonesetting ontimestampvalues.
📚 Documentation
- Added the "Timestamp Conversion" section to the chdb_hook docs to document the ISO-8601 format of plain text exports of
timestampandtimestamptzvalues, as well as the impact of thetimezonesetting on exported and imported values. - Added a benchmark and documented its results in the README.
🆚 For more detail compare changes since v0.1.0.
Release v0.1.0
The theme of this release is Shakedown.
⚡ Improvements
- New extension, everything fresh!
- Relies on a helper app,
chdb_helper, to encapsulate all interaction with chDB - chdb extension provides
chdb_query()to execute a single, stateless query. - chdb_hooks module hooks into the
COPYcommand to copy data from a remote URL in any of the formats supported by chDB - chdb_hooks also hooks into the
CREATE TABLEcommand to copy and or define the column structure for the table from a remote URL in any of the formats supported by chDB - The
COPYandCREATE TABLEhooks support a variety of URL schemes, including:filehttpandhttpss3for AWS S3gsfor Google Cloud Storageazfor Azure Blob Storageabfsfor Azure ABFS
- Data type mapping provided by the pg-clickhouse-c header-only library
🏗️ Build Setup
- Requires chDB v26.7.0
- PGXS build pipeline
- PGXN and GitHub release workflows
- Limited to macOS and Linux (only platforms supported by chDB)
- Dynamic linking to chDB by default
- Statically link chDB with
LIBCHDB_BUILD=static - Automatically download chDB with
BUNDLE_LIBCHDB=1
📚 Documentation
- chdb extension reference documentation in doc/chdb.md
- chdb_hook module reference documentation in doc/chdb_hook.md
🆚 For more detail compare changes since fca4dc1.