Skip to content

refactor(hms): derive catalog configuration from properties - #3104

Draft
blackmwk wants to merge 1 commit into
apache:mainfrom
blackmwk:ir-3098-hms-properties
Draft

refactor(hms): derive catalog configuration from properties#3104
blackmwk wants to merge 1 commit into
apache:mainfrom
blackmwk:ir-3098-hms-properties

Conversation

@blackmwk

@blackmwk blackmwk commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

What changes are included in this PR?

  • Replace HmsCatalogConfig with crate-private HmsCatalogProperties derived through the shared Properties macro.
  • Store the catalog name and typed address, transport, and warehouse properties directly in HmsCatalog.
  • Preserve buffered fallback for unknown thrift transports and fail-fast validation for required address and warehouse properties.
  • Forward the complete raw property map to FileIO and KMS, matching the finalized Memory catalog pattern and Java-compatible behavior.
  • Add focused coverage for parsing, defaults, transport fallback, required-property validation, and downstream raw-property forwarding.

Are these changes tested?

  • cargo test -p iceberg-catalog-hms --lib (21 passed)
  • cargo clippy -p iceberg-catalog-hms --all-targets -- -D warnings
  • cargo public-api -p iceberg-catalog-hms --all-features -ss | diff - crates/catalog/hms/public-api.txt
  • cargo fmt --all -- --check
  • git diff --check

AI Disclosure

This change was developed with assistance from OpenAI Codex. The contributor reviewed the resulting diff and test output.

@blackmwk
blackmwk force-pushed the ir-3098-hms-properties branch from 52c318b to f2e5ef3 Compare September 4, 2026 03:09
Use the shared property derive for HMS settings while retaining address and warehouse validation and transport fallback behavior.

Tracks [apache#3098](apache#3098).

Generated-by: Codex
@blackmwk
blackmwk force-pushed the ir-3098-hms-properties branch from f2e5ef3 to 7bd5511 Compare September 4, 2026 03:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

refactor(hms): derive catalog configuration from properties

1 participant