Skip to content

[fix](iceberg) Decouple JDBC catalog metadata name#62806

Open
suxiaogang223 wants to merge 1 commit intoapache:masterfrom
suxiaogang223:codex/iceberg-jdbc-catalog-name
Open

[fix](iceberg) Decouple JDBC catalog metadata name#62806
suxiaogang223 wants to merge 1 commit intoapache:masterfrom
suxiaogang223:codex/iceberg-jdbc-catalog-name

Conversation

@suxiaogang223
Copy link
Copy Markdown
Contributor

@suxiaogang223 suxiaogang223 commented Apr 24, 2026

What problem does this PR solve?

Issue Number: close #xxx

Related PR: #59502

Problem Summary:

Doris initialized Iceberg JDBC Catalog with the Doris local catalog name. Iceberg JDBC Catalog uses the SDK catalog initialization name as the catalog_name isolation key in JDBC metadata tables, so a Doris catalog named differently from the writer catalog, such as Spark spark_catalog, could not list namespaces or tables written under that remote catalog_name.

This PR adds required iceberg.jdbc.catalog_name for Iceberg JDBC catalog and uses it as the Iceberg SDK catalog initialization name. The Doris local catalog name remains independent and continues to be used for Doris namespace/table identifier semantics.

Release note

Add required iceberg.jdbc.catalog_name for Iceberg JDBC catalog to specify the remote Iceberg JDBC metadata catalog_name.

Check List (For Author)

  • Test

    • Regression test
    • Unit Test
      • ./run-fe-ut.sh --run org.apache.doris.datasource.property.metastore.IcebergJdbcMetaStorePropertiesTest
    • Manual test (add detailed scripts or steps below)
    • No need to test or manual test. Explain why:
      • This is a refactor/code format and no logic has been changed.
      • Previous test can cover this change.
      • No code files have been changed.
      • Other reason
  • Behavior changed:

    • No.
    • Yes. Iceberg JDBC catalog now requires iceberg.jdbc.catalog_name, and Doris uses it as the Iceberg JDBC metadata catalog isolation name instead of reusing the Doris local catalog name.
  • Does this need documentation?

    • No.
    • Yes. Follow-up Doris website documentation should describe the new required Iceberg JDBC catalog property.

Check List (For Reviewer who merge this PR)

  • Confirm the release note
  • Confirm test cases
  • Confirm document
  • Add branch pick label

### What problem does this PR solve?

Issue Number: close #xxx

Related PR: #xxx

Problem Summary: Doris initialized Iceberg JDBC Catalog with the Doris local catalog name, which also controls the catalog_name isolation key in Iceberg JDBC metadata tables. This made Doris unable to read metadata written under a different Iceberg JDBC catalog_name, such as Spark's catalog name.

### Release note

Add required iceberg.jdbc.catalog_name for Iceberg JDBC catalog to decouple Doris local catalog name from the Iceberg JDBC metadata catalog_name.

### Check List (For Author)

- Test: Unit Test
    - ./run-fe-ut.sh --run org.apache.doris.datasource.property.metastore.IcebergJdbcMetaStorePropertiesTest
    - Regression test not run per request; updated test_iceberg_jdbc_catalog to use a custom Doris catalog name with iceberg.jdbc.catalog_name.
- Behavior changed: Yes. Iceberg JDBC catalog now requires iceberg.jdbc.catalog_name and uses it as the SDK catalog name while preserving the Doris local catalog name.
- Does this need documentation: Yes (follow-up docs can describe the new required catalog property).
@Thearas
Copy link
Copy Markdown
Contributor

Thearas commented Apr 24, 2026

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR.

Please clearly describe your PR:

  1. What problem was fixed (it's best to include specific error reporting information). How it was fixed.
  2. Which behaviors were modified. What was the previous behavior, what is it now, why was it modified, and what possible impacts might there be.
  3. What features were added. Why was this function added?
  4. Which code was refactored and why was this part of the code refactored?
  5. Which functions were optimized and what is the difference before and after the optimization?

@suxiaogang223 suxiaogang223 marked this pull request as ready for review April 24, 2026 08:29
@suxiaogang223
Copy link
Copy Markdown
Contributor Author

run buildall

@hello-stephen
Copy link
Copy Markdown
Contributor

FE Regression Coverage Report

Increment line coverage 5.26% (2/38) 🎉
Increment coverage report
Complete coverage report

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.

3 participants