MissaouiAhmed commented on issue #2552:
URL: https://github.com/apache/polaris/issues/2552#issuecomment-3285794103
@dimas-b
Thanks for help
below Docker Logs
```
minio-polaris-setup-1 | 15:38:23.540506 [0-0] == Info: [WRITE]
header_collect pushed(type=1, len=2) -> 0
minio-polaris-setup-1 | 15:38:23.540682 [0-0] == Info: [WRITE] [OUT] wrote
2 header bytes -> 2
minio-polaris-setup-1 | 15:38:23.540839 [0-0] == Info: [WRITE] [PAUSE]
writing 2/2 bytes of type 4 -> 0
minio-polaris-setup-1 | 15:38:23.541016 [0-0] == Info: [WRITE]
download_write header(type=4, blen=2) -> 0
minio-polaris-setup-1 | 15:38:23.541197 [0-0] == Info: [WRITE]
client_write(type=4, len=2) -> 0
minio-polaris-setup-1 | 15:38:23.541377 [0-0] <= Recv data, 152 bytes (0x98)
minio-polaris-setup-1 | 0000: {"error":{"message":"Cannot create Catalog
quickstart_catalog. C
minio-polaris-setup-1 | 0040: atalog already exists or resolution
failed","type":"AlreadyExist
minio-polaris-setup-1 | 0080: sException","code":409}}
minio-polaris-setup-1 | 15:38:23.541907 [0-0] == Info: [WRITE] [OUT] wrote
152 body bytes -> 152
minio-polaris-setup-1 | 15:38:23.542070 [0-0] == Info: [WRITE] [PAUSE]
writing 152/152 bytes of type 1 -> 0
minio-polaris-setup-1 | 15:38:23.542253 [0-0] == Info: [WRITE]
download_write body(type=1, blen=152) -> 0
minio-polaris-setup-1 | 15:38:23.542434 [0-0] == Info: [WRITE]
client_write(type=1, len=152) -> 0
minio-polaris-setup-1 | 15:38:23.542601 [0-0] == Info: [WRITE]
xfer_write_resp(len=230, eos=0) -> 0
minio-polaris-setup-1 | 15:38:23.542805 [0-0] == Info: [WRITE] [OUT] done
minio-polaris-setup-1 | 15:38:23.542937 [0-0] == Info: [READ] client_reset,
clear readers
minio-polaris-setup-1 | 15:38:23.543093 [0-0] == Info: Connection #0 to
host polaris left intact
minio-polaris-setup-1 | {"error":{"message":"Cannot create Catalog
quickstart_catalog. Catalog already exists or resolution
failed","type":"AlreadyExistsException","code":409}}Done.
minio-polaris-setup-1 | Extra grants...
minio-polaris-setup-1 | % Total % Received % Xferd Average Speed
Time Time Time Current
minio-polaris-setup-1 | Dload Upload
Total Spent Left Speed
minio-polaris-1 | 2025-09-12 15:38:23,556 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (vert.x-eventloop-thread-6) 172.21.0.5
- - [12/Sep/2025:15:38:23 +0000] "PUT
/api/management/v1/catalogs/quickstart_catalog/catalog-roles/catalog_admin/grants
HTTP/1.1" 401 -
100 56 0 0 100 56 0 6825 --:--:-- --:--:-- --:--:--
8000
minio-polaris-1 | 2025-09-12 15:41:23,925 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (executor-thread-1) 10.163.169.81 - -
[12/Sep/2025:15:41:23 +0000] "POST /api/catalog/v1/oauth/tokens HTTP/1.1" 200
753
minio-polaris-1 | 2025-09-12 15:41:24,007 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (executor-thread-1) 10.163.169.81 -
root [12/Sep/2025:15:41:24 +0000] "GET
/api/catalog/v1/config?warehouse=quickstart_catalog HTTP/1.1" 200 2122
minio-polaris-1 | 2025-09-12 15:41:25,881 INFO
[org.apa.pol.ser.cat.ice.IcebergCatalogHandler] [,POLARIS] [,,,]
(executor-thread-1) Initializing non-federated catalog
minio-polaris-1 | 2025-09-12 15:41:25,888 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (executor-thread-1) 10.163.169.81 -
root [12/Sep/2025:15:41:25 +0000] "GET
/api/catalog/v1/quickstart_catalog/namespaces/ns HTTP/1.1" 200 82
minio-polaris-1 | 2025-09-12 15:41:26,228 INFO
[org.apa.pol.ser.exc.IcebergExceptionMapper] [,POLARIS] [,,,]
(executor-thread-1) Handling runtimeException Table does not exist: ns.t1
minio-polaris-1 | 2025-09-12 15:41:26,230 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (executor-thread-1) 10.163.169.81 -
root [12/Sep/2025:15:41:26 +0000] "GET
/api/catalog/v1/quickstart_catalog/namespaces/ns/tables/t1?snapshots=all
HTTP/1.1" 404 92
minio-polaris-1 | 2025-09-12 15:41:26,404 INFO
[org.apa.pol.ser.exc.IcebergExceptionMapper] [,POLARIS] [,,,]
(executor-thread-1) Handling runtimeException Principal 'root' with activated
PrincipalRoles '[]' and activated grants via '[service_admin, catalog_admin]'
is not authorized for op CREATE_TABLE_STAGED_WITH_WRITE_DELEGATION
minio-polaris-1 | 2025-09-12 15:41:26,405 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (executor-thread-1) 10.163.169.81 -
root [12/Sep/2025:15:41:26 +0000] "POST
/api/catalog/v1/quickstart_catalog/namespaces/ns/tables HTTP/1.1" 403 239
minio-polaris-1 | 2025-09-12 15:41:26,498 INFO
[org.apa.pol.ser.exc.IcebergExceptionMapper] [,POLARIS] [,,,]
(executor-thread-1) Handling runtimeException Table does not exist: ns.t1
minio-polaris-1 | 2025-09-12 15:41:26,500 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (executor-thread-1) 10.163.169.81 -
root [12/Sep/2025:15:41:26 +0000] "GET
/api/catalog/v1/quickstart_catalog/namespaces/ns/tables/t1?snapshots=all
HTTP/1.1" 404 92
minio-polaris-1 | 2025-09-12 15:41:26,523 INFO
[org.apa.pol.ser.exc.IcebergExceptionMapper] [,POLARIS] [,,,]
(executor-thread-1) Handling runtimeException Table does not exist: ns.t1
minio-polaris-1 | 2025-09-12 15:41:26,524 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (executor-thread-1) 10.163.169.81 -
root [12/Sep/2025:15:41:26 +0000] "GET
/api/catalog/v1/quickstart_catalog/namespaces/ns/tables/t1?snapshots=all
HTTP/1.1" 404 92
minio-polaris-1 | 2025-09-12 15:41:28,889 INFO
[org.apa.pol.ser.exc.IcebergExceptionMapper] [,POLARIS] [,,,]
(executor-thread-1) Handling runtimeException Table does not exist: ns.t1
minio-polaris-1 | 2025-09-12 15:41:28,890 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (executor-thread-1) 10.163.169.81 -
root [12/Sep/2025:15:41:28 +0000] "GET
/api/catalog/v1/quickstart_catalog/namespaces/ns/tables/t1?snapshots=all
HTTP/1.1" 404 92
minio-polaris-1 | 2025-09-12 15:41:29,002 INFO
[org.apa.pol.ser.exc.IcebergExceptionMapper] [,POLARIS] [,,,]
(executor-thread-1) Handling runtimeException View does not exist: ns.t1
minio-polaris-1 | 2025-09-12 15:41:29,003 INFO
[io.qua.htt.access-log] [,POLARIS] [,,,] (executor-thread-1) 10.163.169.81 -
root [12/Sep/2025:15:41:29 +0000] "GET
/api/catalog/v1/quickstart_catalog/namespaces/ns/views/t1 HTTP/1.1" 404 90
```
and this is spark-sql logs
./spark-sql --master "local[2]" --jars
/jars/iceberg-aws-bundle-1.9.0.jar,/jars/iceberg-spark-runtime-3.5_2.12-1.9.0.jar
\
--conf
spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions
\
--conf spark.sql.catalog.polaris=org.apache.iceberg.spark.SparkCatalog \
--conf spark.sql.catalog.polaris.type=rest \
--conf spark.sql.catalog.polaris.uri=http://$POLARIS:8181/api/catalog \
--conf spark.sql.catalog.polaris.token-refresh-enabled=false \
--conf spark.sql.catalog.polaris.warehouse=quickstart_catalog \
--conf spark.sql.catalog.polaris.scope=PRINCIPAL_ROLE:ALL \
--conf
spark.sql.catalog.polaris.header.X-Iceberg-Access-Delegation=vended-credentials
\
--conf spark.sql.catalog.polaris.credential=root:s3cr3t
```
spark-sql ()> create table ns.t1 as select 'abc';
25/09/12 08:41:26 ERROR SparkSQLDriver: Failed in [create table ns.t1 as
select 'abc']
org.apache.iceberg.exceptions.ForbiddenException: Forbidden: Principal
'root' with activated PrincipalRoles '[]' and activated grants via
'[service_admin, catalog_admin]' is not authorized for op
CREATE_TABLE_STAGED_WITH_WRITE_DELEGATION
at
org.apache.iceberg.rest.ErrorHandlers$DefaultErrorHandler.accept(ErrorHandlers.java:236)
at
org.apache.iceberg.rest.ErrorHandlers$TableErrorHandler.accept(ErrorHandlers.java:123)
at
org.apache.iceberg.rest.ErrorHandlers$TableErrorHandler.accept(ErrorHandlers.java:107)
at
org.apache.iceberg.rest.HTTPClient.throwFailure(HTTPClient.java:215)
at org.apache.iceberg.rest.HTTPClient.execute(HTTPClient.java:299)
at
org.apache.iceberg.rest.BaseHTTPClient.post(BaseHTTPClient.java:88)
at
org.apache.iceberg.rest.RESTSessionCatalog$Builder.stageCreate(RESTSessionCatalog.java:921)
at
org.apache.iceberg.rest.RESTSessionCatalog$Builder.createTransaction(RESTSessionCatalog.java:799)
at
org.apache.iceberg.CachingCatalog$CachingTableBuilder.createTransaction(CachingCatalog.java:282)
at
org.apache.iceberg.spark.SparkCatalog.stageCreate(SparkCatalog.java:265)
at
org.apache.spark.sql.connector.catalog.StagingTableCatalog.stageCreate(StagingTableCatalog.java:93)
at
org.apache.spark.sql.execution.datasources.v2.AtomicCreateTableAsSelectExec.run(WriteToDataSourceV2Exec.scala:120)
at
org.apache.spark.sql.execution.datasources.v2.V2CommandExec.result$lzycompute(V2CommandExec.scala:43)
at
org.apache.spark.sql.execution.datasources.v2.V2CommandExec.result(V2CommandExec.scala:43)
at
org.apache.spark.sql.execution.datasources.v2.V2CommandExec.executeCollect(V2CommandExec.scala:49)
at
org.apache.spark.sql.execution.QueryExecution$$anonfun$eagerlyExecuteCommands$1.$anonfun$applyOrElse$1(QueryExecution.scala:107)
at
org.apache.spark.sql.execution.SQLExecution$.$anonfun$withNewExecutionId$6(SQLExecution.scala:125)
at
org.apache.spark.sql.execution.SQLExecution$.withSQLConfPropagated(SQLExecution.scala:201)
at
org.apache.spark.sql.execution.SQLExecution$.$anonfun$withNewExecutionId$1(SQLExecution.scala:108)
at
org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:900)
at
org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:66)
at
org.apache.spark.sql.execution.QueryExecution$$anonfun$eagerlyExecuteCommands$1.applyOrElse(QueryExecution.scala:107)
at
org.apache.spark.sql.execution.QueryExecution$$anonfun$eagerlyExecuteCommands$1.applyOrElse(QueryExecution.scala:98)
at
org.apache.spark.sql.catalyst.trees.TreeNode.$anonfun$transformDownWithPruning$1(TreeNode.scala:461)
at
org.apache.spark.sql.catalyst.trees.CurrentOrigin$.withOrigin(origin.scala:76)
at
org.apache.spark.sql.catalyst.trees.TreeNode.transformDownWithPruning(TreeNode.scala:461)
at
org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.org$apache$spark$sql$catalyst$plans$logical$AnalysisHelper$$super$transformDownWithPruning(LogicalPlan.scala:32)
at
org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper.transformDownWithPruning(AnalysisHelper.scala:267)
at
org.apache.spark.sql.catalyst.plans.logical.AnalysisHelper.transformDownWithPruning$(AnalysisHelper.scala:263)
at
org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.transformDownWithPruning(LogicalPlan.scala:32)
at
org.apache.spark.sql.catalyst.plans.logical.LogicalPlan.transformDownWithPruning(LogicalPlan.scala:32)
at
org.apache.spark.sql.catalyst.trees.TreeNode.transformDown(TreeNode.scala:437)
at
org.apache.spark.sql.execution.QueryExecution.eagerlyExecuteCommands(QueryExecution.scala:98)
at
org.apache.spark.sql.execution.QueryExecution.commandExecuted$lzycompute(QueryExecution.scala:85)
at
org.apache.spark.sql.execution.QueryExecution.commandExecuted(QueryExecution.scala:83)
at org.apache.spark.sql.Dataset.<init>(Dataset.scala:220)
at org.apache.spark.sql.Dataset$.$anonfun$ofRows$2(Dataset.scala:100)
at
org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:900)
at org.apache.spark.sql.Dataset$.ofRows(Dataset.scala:97)
at
org.apache.spark.sql.SparkSession.$anonfun$sql$4(SparkSession.scala:691)
at
org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:900)
at org.apache.spark.sql.SparkSession.sql(SparkSession.scala:682)
at org.apache.spark.sql.SparkSession.sql(SparkSession.scala:713)
at org.apache.spark.sql.SparkSession.sql(SparkSession.scala:744)
at org.apache.spark.sql.SQLContext.sql(SQLContext.scala:651)
at
org.apache.spark.sql.hive.thriftserver.SparkSQLDriver.run(SparkSQLDriver.scala:69)
at
org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver.processCmd(SparkSQLCLIDriver.scala:501)
at
org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver.$anonfun$processLine$1(SparkSQLCLIDriver.scala:619)
at
org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver.$anonfun$processLine$1$adapted(SparkSQLCLIDriver.scala:613)
at scala.collection.Iterator.foreach(Iterator.scala:943)
at scala.collection.Iterator.foreach$(Iterator.scala:943)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1431)
at scala.collection.IterableLike.foreach(IterableLike.scala:74)
at scala.collection.IterableLike.foreach$(IterableLike.scala:73)
at scala.collection.AbstractIterable.foreach(Iterable.scala:56)
at
org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver.processLine(SparkSQLCLIDriver.scala:613)
at
org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver$.main(SparkSQLCLIDriver.scala:310)
at
org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver.main(SparkSQLCLIDriver.scala)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at
org.apache.spark.deploy.JavaMainApplication.start(SparkApplication.scala:52)
at
org.apache.spark.deploy.SparkSubmit.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:1032)
at
org.apache.spark.deploy.SparkSubmit.doRunMain$1(SparkSubmit.scala:194)
at org.apache.spark.deploy.SparkSubmit.submit(SparkSubmit.scala:217)
at org.apache.spark.deploy.SparkSubmit.doSubmit(SparkSubmit.scala:91)
at
org.apache.spark.deploy.SparkSubmit$$anon$2.doSubmit(SparkSubmit.scala:1137)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:1146)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
Forbidden: Principal 'root' with activated PrincipalRoles '[]' and activated
grants via '[service_admin, catalog_admin]' is not authorized for op
CREATE_TABLE_STAGED_WITH_WRITE_DELEGATION
org.apache.iceberg.exceptions.ForbiddenException: Forbidden: Principal
'root' with activated PrincipalRoles '[]' and activated grants via
'[service_admin, catalog_admin]' is not authorized for op
CREATE_TABLE_STAGED_WITH_WRITE_DELEGATION
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]