« All posts

pgColumnar 1.0-alpha2 Ships Read-Only Iceberg and S3 Object Storage

pgColumnar 1.0-alpha2 adds read-only Apache Iceberg support, S3-compatible object storage, a maintenance daemon, and six security fixes.

pgColumnar, a columnar table access method for PostgreSQL, has released its second alpha. The headline addition is read-only Apache Iceberg support, reachable via metadata path, REST catalog, or a new foreign-data wrapper, with position deletes, equality deletes, and format-version-3 deletion vectors applied under their sequence rules. Parquet readers, export functions, and the foreign-data wrapper now work over s3://, http://, and https:// URLs, with remote access isolated in a separate module, an empty-by-default endpoint allow-list, and link-local addresses refused.

The release also adds a maintenance daemon (pgcolumnar.autovacuum), parallel stripe flush across background workers, richer statistics collection, and better planner cost estimates—including row-count estimation for Iceberg scans drawn from manifests instead of constants. The Iceberg foreign-data wrapper can prune whole data files using query predicates before opening them.

On the security side, six memory-safety and denial-of-service fixes address issues found partly through an adversarial audit, each backed by a regression test. A correctness fix now serializes concurrent UPDATE/DELETE of the same columnar row on row identity, turning a lost update into a retryable serialization failure. The on-disk format (PGCN v1) is unchanged; existing tables continue to work, and the upgrade requires a single command.

This synthesis was produced from its source by AI; there is no human editor or manual review step. How we work