Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Iceberg-REST s3.path-style-access flag is not honored #50585

Open
c-thiel opened this issue Sep 2, 2024 · 1 comment
Open

Iceberg-REST s3.path-style-access flag is not honored #50585

c-thiel opened this issue Sep 2, 2024 · 1 comment
Labels
type/bug Something isn't working

Comments

@c-thiel
Copy link

c-thiel commented Sep 2, 2024

Steps to reproduce the behavior (Required)

Launch an iceberg-rest catalog and minio in a docker container. I created an example that can be run with docker-compose:

git clone https://github.com/hansetag/iceberg-catalog.git
git checkout ct/starrocks-integration
cd iceberg-catalog

docker build -t localhost/iceberg-catalog-local:latest -f docker/full.Dockerfile .
export ICEBERG_REST_TEST_SPARK_IMAGE=apache/spark:3.5.1-java17-python3
export ICEBERG_REST_TEST_SERVER_IMAGE=localhost/iceberg-catalog-local:latest
cd tests
docker compose run spark /opt/entrypoint.sh bash -c "cd /opt/tests && bash run_starrocks.sh"

In the example the following steps are run
1.

        CREATE EXTERNAL CATALOG rest_catalog
        PROPERTIES
        (
            "type" = "iceberg",
            "iceberg.catalog.type" = "rest",
            "iceberg.catalog.uri" = "{warehouse.server.catalog_url}",
            "iceberg.catalog.warehouse" = "{warehouse.project_id}/{warehouse.warehouse_name}",
            "header.x-iceberg-access-delegation" = "vended-credentials",
            "iceberg.catalog.oauth2-server-uri" = "{OPENID_PROVIDER_URL}",
            "iceberg.catalog.credential" = "{OPENID_CLIENT_ID}:{OPENID_CLIENT_SECRET}"
        )
  1. SET CATALOG rest_catalog
  2. CREATE DATABASE test_create_table_with_data_starrocks
  3. CREATE TABLE test_create_table_with_data_starrocks.my_table (my_ints INT, my_floats DOUBLE, strings VARCHAR)
  4. INSERT INTO test_create_table_with_data_starrocks.my_table VALUES (1, 1.0, 'a'), (2, 2.0, 'b')

Expected behavior (Required)

It works

Real behavior (Required)

2024-09-02 13:04:09.365Z WARN (thrift-server-pool-236|431) [DefaultCoordinator.updateFragmentExecStatus():948] exec state report failed status=errorCode IO_ERROR S3: Fail to create multipart upload for object tests/0191b2d5-2237-7293-809f-c62e91f11e83/0191b2d5-223d-7fa3-8346-c370eb206844/data/b91250cd-692b-11ef-8898-1a79bacc43a1_0_0_0.parquet: curlCode: 6, Couldn't resolve host name, query_id=b91250cd-692b-11ef-8898-1a79bacc43a1, instance_id=b91250cd-692b-11ef-8898-1a79bacc43a2, backend_id=10001
 2024-09-02 13:04:09.365Z WARN (thrift-server-pool-236|431) [DefaultCoordinator.updateStatus():762] one instance report fail throw updateStatus(), need cancel. job id: -1, query id: b91250cd-692b-11ef-8898-1a79bacc43a1, instance id: b91250cd-692b-11ef-8898-1a79bacc43a2
 2024-09-02 13:04:09.366Z WARN (starrocks-mysql-nio-pool-1|405) [StmtExecutor.handleDMLStmt():2146] insert failed: S3: Fail to create multipart upload for object tests/0191b2d5-2237-7293-809f-c62e91f11e83/0191b2d5-223d-7fa3-8346-c370eb206844/data/b91250cd-692b-11ef-8898-1a79bacc43a1_0_0_0.parquet: curlCode: 6, Couldn't resolve host name
 2024-09-02 13:04:09.366Z WARN (starrocks-mysql-nio-pool-1|405) [StmtExecutor.handleDMLStmt():2300] failed to handle stmt [INSERT INTO test_create_table_with_data_starrocks.my_table VALUES (1, 1.0, 'a'), (2, 2.0, 'b')] label: b91250cd-692b-11ef-8898-1a79bacc43a1
 com.starrocks.common.DdlException: S3: Fail to create multipart upload for object tests/0191b2d5-2237-7293-809f-c62e91f11e83/0191b2d5-223d-7fa3-8346-c370eb206844/data/b91250cd-692b-11ef-8898-1a79bacc43a1_0_0_0.parquet: curlCode: 6, Couldn't resolve host name
        at com.starrocks.common.ErrorReport.reportDdlException(ErrorReport.java:95)
        at com.starrocks.qe.StmtExecutor.handleDMLStmt(StmtExecutor.java:2147)
        at com.starrocks.qe.StmtExecutor.handleDMLStmtWithProfile(StmtExecutor.java:1926)
        at com.starrocks.qe.StmtExecutor.execute(StmtExecutor.java:673)
        at com.starrocks.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:355)
        at com.starrocks.qe.ConnectProcessor.dispatch(ConnectProcessor.java:550)
        at com.starrocks.qe.ConnectProcessor.processOnce(ConnectProcessor.java:884)
        at com.starrocks.mysql.nio.ReadListener.lambda$handleEvent$0(ReadListener.java:69)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
2024-09-02 13:04:09.367Z ERROR (starrocks-mysql-nio-pool-1|405) [MetadataMgr.getOptionalMetadata():181] Failed to get rest_catalog catalog
 2024-09-02 13:04:09.367Z WARN (starrocks-mysql-nio-pool-1|405) [StmtExecutor.handleDMLStmtWithProfile():1928] DML statement(INSERT INTO test_create_table_with_data_starrocks.my_table VALUES (1, 1.0, 'a'), (2, 2.0, 'b')) process failed.
 com.starrocks.common.UserException: S3: Fail to create multipart upload for object tests/0191b2d5-2237-7293-809f-c62e91f11e83/0191b2d5-223d-7fa3-8346-c370eb206844/data/b91250cd-692b-11ef-8898-1a79bacc43a1_0_0_0.parquet: curlCode: 6, Couldn't resolve host name
        at com.starrocks.qe.StmtExecutor.handleDMLStmt(StmtExecutor.java:2348)
        at com.starrocks.qe.StmtExecutor.handleDMLStmtWithProfile(StmtExecutor.java:1926)
        at com.starrocks.qe.StmtExecutor.execute(StmtExecutor.java:673)
        at com.starrocks.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:355)
        at com.starrocks.qe.ConnectProcessor.dispatch(ConnectProcessor.java:550)
        at com.starrocks.qe.ConnectProcessor.processOnce(ConnectProcessor.java:884)
        at com.starrocks.mysql.nio.ReadListener.lambda$handleEvent$0(ReadListener.java:69)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: com.starrocks.common.DdlException: S3: Fail to create multipart upload for object tests/0191b2d5-2237-7293-809f-c62e91f11e83/0191b2d5-223d-7fa3-8346-c370eb206844/data/b91250cd-692b-11ef-8898-1a79bacc43a1_0_0_0.parquet: curlCode: 6, Couldn't resolve host name
        at com.starrocks.common.ErrorReport.reportDdlException(ErrorReport.java:95)
        at com.starrocks.qe.StmtExecutor.handleDMLStmt(StmtExecutor.java:2147)
        ... 9 more

StarRocks version (Required)

3.3.2

@c-thiel c-thiel added the type/bug Something isn't working label Sep 2, 2024
@Smith-Cruise
Copy link
Contributor

get

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants