Impala Public Jenkins has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/24682 )
Change subject: IMPALA-15310: Finalize REST catalog INSERT ...................................................................... IMPALA-15310: Finalize REST catalog INSERT Enable INSERT INTO for Iceberg tables loaded from named REST catalogs. Carry the catalog name through DML finalization and reload the target from the same provider. This keeps routing correct with CatalogD or multiple REST catalogs without exposing endpoints or credentials. Use a dedicated TIcebergDmlFinalizeRequest for coordinator-side finalization. TUpdateCatalogRequest remains on the CatalogD route. Keep OperationType on the READ/WRITE/ANY capability axis and pass the INSERT context through ensureTableWriteSupported(). The configured REST catalog name selects the provider that finalizes the write. Empty or duplicate names disable INSERT INTO instead of selecting an ambiguous provider. The planning-time table UUID protects the commit from finalizing against a replaced table. Create and drop the REST DML test tables through the REST API from the Python fixture. The Java REST test server remains a generic catalog server. Testing: - Focused Maven package for the Iceberg REST catalog test server - Python syntax checks for the REST fixture and its unit test Full Java/Thrift and C++ validation requires the Gerrit dry run. Change-Id: I7d17216fb8d12e5bd007b93cb9b3bc153438213b Assisted-by: gpt-6-astra (OpenAI Codex) Reviewed-on: http://gerrit.cloudera.org:8080/24682 Reviewed-by: Impala Public Jenkins <[email protected]> Tested-by: Impala Public Jenkins <[email protected]> --- M be/src/service/client-request-state.cc M be/src/service/frontend.cc M be/src/service/frontend.h M common/thrift/Frontend.thrift M common/thrift/Query.thrift M docs/topics/impala_iceberg_rest_catalog.xml M fe/src/main/java/org/apache/impala/analysis/Analyzer.java M fe/src/main/java/org/apache/impala/analysis/InsertStmt.java M fe/src/main/java/org/apache/impala/analysis/MergeStmt.java M fe/src/main/java/org/apache/impala/analysis/ModifyStmt.java M fe/src/main/java/org/apache/impala/analysis/OptimizeStmt.java M fe/src/main/java/org/apache/impala/catalog/FeIcebergTable.java M fe/src/main/java/org/apache/impala/catalog/iceberg/IcebergRESTCatalog.java M fe/src/main/java/org/apache/impala/catalog/local/IcebergMetaProvider.java M fe/src/main/java/org/apache/impala/catalog/local/LocalIcebergTable.java M fe/src/main/java/org/apache/impala/catalog/local/MetaProvider.java M fe/src/main/java/org/apache/impala/service/Frontend.java M fe/src/main/java/org/apache/impala/service/IcebergDmlFinalizer.java M fe/src/main/java/org/apache/impala/service/JniFrontend.java M fe/src/main/java/org/apache/impala/service/catalogmanager/FeCatalogManager.java M fe/src/main/java/org/apache/impala/service/catalogmanager/LocalImpl.java M fe/src/main/java/org/apache/impala/service/catalogmanager/TestImpl.java M fe/src/main/java/org/apache/impala/util/DebugUtils.java A fe/src/test/java/org/apache/impala/analysis/AnalyzerCapabilityTest.java A fe/src/test/java/org/apache/impala/service/IcebergRestDmlOperationTest.java A fe/src/test/java/org/apache/impala/service/catalogmanager/LocalImplTest.java M fe/src/test/java/org/apache/impala/util/DebugUtilsTest.java M java/iceberg-rest-catalog-test/src/main/java/org/apache/iceberg/rest/IcebergRestCatalogTest.java M testdata/bin/run-iceberg-rest-server.sh M testdata/configs/catalog_configs/iceberg_rest_config/rest.properties M testdata/configs/catalog_configs/multicatalog_rest_config/rest-1.properties M testdata/configs/catalog_configs/multicatalog_rest_config/rest-2.properties M testdata/workloads/functional-query/queries/QueryTest/iceberg-multicatalog.test M testdata/workloads/functional-query/queries/QueryTest/iceberg-multiple-rest-catalogs.test M tests/common/iceberg_rest_server.py M tests/custom_cluster/test_iceberg_rest_catalog.py M tests/query_test/test_iceberg.py A tests/unittests/test_iceberg_rest_catalog.py 38 files changed, 974 insertions(+), 60 deletions(-) Approvals: Impala Public Jenkins: Looks good to me, approved; Verified -- To view, visit http://gerrit.cloudera.org:8080/24682 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I7d17216fb8d12e5bd007b93cb9b3bc153438213b Gerrit-Change-Number: 24682 Gerrit-PatchSet: 16 Gerrit-Owner: Aleksandr Efimov <[email protected]> Gerrit-Reviewer: Aleksandr Efimov <[email protected]> Gerrit-Reviewer: Csaba Ringhofer <[email protected]> Gerrit-Reviewer: Daniel Becker <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Reviewer: Michael Smith <[email protected]> Gerrit-Reviewer: Noemi Pap-Takacs <[email protected]> Gerrit-Reviewer: Peter Rozsa <[email protected]> Gerrit-Reviewer: Zoltan Borok-Nagy <[email protected]>
