← Back to all sparks
O

OpenHouse

ANALYTICS
Velocity5.0

Control plane for managing tables in open-source data lakehouse deployments

OpenHouse locks down its column-defaults capability flag as default values near completion.

data lakehouseicebergtable catalogviewsgovernance
◆Current state
OpenHouse shipped eleven builds (v0.5.529 to v0.5.539) in a week. The substantive work is a pluggable pre-commit check framework inside doCommit, built so column-default rules run on every commit path, and the first wiring of OpenHouseCatalog to the Views service. v0.5.539 makes the required-capability.column-defaults property immutable, and earlier builds added a tableExists endpoint, opt-in Spark SQL ALTER TABLE ... UNLOCK, and validation that blocks RTAS combined with WAP or replication.
◆Where it's heading
LinkedIn's table catalog is moving business rules into the commit itself, so defaults, property rules and commit policies all reject the same way with clear 400s. Views and column default values are being built in parallel, and both are now past plumbing into user-facing guards. The team favors small, reversible steps.
◆Prediction
Expect column default values and the Views client API to become usable end to end within the next few builds, with more PreCommitCheck rules registered by the tables service.

◆Recent moves

  1. 1d ago

    v0.5.543: Add integration tests for snapshot expiration with refs (#492)

    Adds integration tests showing that Iceberg tags and branches protect snapshots from expiration, and that max-ref-age lets expiry drop them. Test coverage that documents a retention compliance gap rather than fixing it.

    View source ↗
  2. 1d ago

    v0.5.542: column-default checks enforced in doCommit

    Commit-time checks for column defaults move into doCommit, continuing the default-values series one guard at a time. No new user-facing option.

    View source ↗
  3. 1d ago

    v0.5.541: [default values] Gate tables on capabilities the client declares (#848)

    Tables can now require client capabilities: a table marked required-capability.column-defaults admits only clients that declare it, and others get a 422 before reading or committing. In practice that keeps engines like Trino, which would read NULL instead of defaults, away from tables that depend on them.

    View source ↗
  4. 2d ago

    v0.5.540: Spark integration test for column initial defaults

    Adds a Spark catalog integration test for the ReadBridge initial-default path. Test coverage for the column-defaults feature, with no user-visible change.

    View source ↗
  5. 2d ago

    v0.5.539: column-defaults capability property made immutable

    Makes the required-capability.column-defaults table property immutable, so a table opted into column defaults can't silently drop out. Another small guard in the default-values series that started with the pre-commit check framework.

    View source ↗
  6. 3d ago

    v0.5.538: Fix Gradle Git hook installation in worktrees (#858)

    A build fix so Gradle Git hooks install in linked worktrees. It only affects contributors.

    View source ↗