dimas-b commented on code in PR #3224:
URL: https://github.com/apache/polaris/pull/3224#discussion_r2594528821


##########
runtime/service/src/main/java/org/apache/polaris/service/catalog/io/StorageAccessConfigProvider.java:
##########
@@ -49,13 +50,16 @@ public class StorageAccessConfigProvider {
 
   private final StorageCredentialCache storageCredentialCache;
   private final StorageCredentialsVendor storageCredentialsVendor;
+  private final PolarisPrincipal polarisPrincipal;
 
   @Inject
   public StorageAccessConfigProvider(
       StorageCredentialCache storageCredentialCache,
-      StorageCredentialsVendor storageCredentialsVendor) {
+      StorageCredentialsVendor storageCredentialsVendor,
+      PolarisPrincipal polarisPrincipal) {

Review Comment:
   Indeed... CI results (a fragment):
   ```
   :polaris-runtime-service:test 
org.apache.polaris.service.catalog.iceberg.IcebergCatalogRelationalNoEntityCacheTest
   
   java.lang.IllegalStateException: No REST request in progress 
        at 
org.jboss.resteasy.reactive.server.injection.ContextProducers.getContext(ContextProducers.java:149)
  
                •••
        at 
org.apache.polaris.service.config.ServiceProducers.polarisPrincipal(ServiceProducers.java:197)
       
                •••
        at 
org.apache.polaris.core.storage.cache.StorageCredentialCacheKey.of(StorageCredentialCacheKey.java:77)
        
        at 
org.apache.polaris.core.storage.cache.StorageCredentialCache.getOrGenerateSubScopeCreds(StorageCredentialCache.java:122)
     
                •••
   ```
   ```
   :polaris-runtime-service:test 
org.apache.polaris.service.it.RestCatalogFileIntegrationTest
   
   java.lang.AssertionError:    
   Expecting code not to raise a throwable but caught   
     "java.util.concurrent.CompletionException: 
java.lang.IllegalStateException: No REST request in progress    
        at 
java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315)
 
        at 
java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320)
       
        at 
java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1807)
   
        at 
io.smallrye.context.impl.wrappers.SlowContextualRunnable.run(SlowContextualRunnable.java:19)
 
        at 
org.jboss.threads.EnhancedViewExecutor$EnhancedViewExecutorRunnable.run(EnhancedViewExecutor.java:496)
       
        at 
io.quarkus.vertx.core.runtime.VertxCoreRecorder$15.runWith(VertxCoreRecorder.java:645)
       
        at 
org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2651)
      
        at 
org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2630)
    
        at 
org.jboss.threads.EnhancedQueueExecutor.runThreadBody(EnhancedQueueExecutor.java:1622)
       
        at 
org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1589)
      
        at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:11) 
        at 
org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:11)
     
        at 
io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
        
        at java.base/java.lang.Thread.run(Thread.java:1583)     
   Caused by: java.lang.IllegalStateException: No REST request in progress      
        at 
org.jboss.resteasy.reactive.server.injection.ContextProducers.getContext(ContextProducers.java:149)
  
        at 
org.jboss.resteasy.reactive.server.injection.ContextProducers.securityContext(ContextProducers.java:143)
     
        at 
org.jboss.resteasy.reactive.server.injection.ContextProducers_ProducerMethod_securityContext_Te5N_EppHq79q8NJD1SHmgfMtgk_Bean.create(Unknown
 Source) 
        at 
org.jboss.resteasy.reactive.server.injection.ContextProducers_ProducerMethod_securityContext_Te5N_EppHq79q8NJD1SHmgfMtgk_Bean.create(Unknown
 Source) 
        at 
io.quarkus.arc.impl.CurrentManagedContext$1.get(CurrentManagedContext.java:111) 
     
        at 
io.quarkus.arc.impl.CurrentManagedContext$1.get(CurrentManagedContext.java:107) 
     
        at 
io.quarkus.arc.generator.Default_jakarta_enterprise_context_RequestScoped_ContextInstances.ch44(Unknown
 Source)      
        at 
io.quarkus.arc.generator.Default_jakarta_enterprise_context_RequestScoped_ContextInstances.computeIfAbsent(Unknown
 Source)   
        at 
io.quarkus.arc.impl.CurrentManagedContext.getIfActive(CurrentManagedContext.java:107)
        
        at 
io.quarkus.arc.impl.ClientProxies.getSingleContextDelegate(ClientProxies.java:30)
    
        at 
jakarta.ws.rs.core.ContextProducers_ProducerMethod_securityContext_Te5N_EppHq79q8NJD1SHmgfMtgk_ClientProxy.arc$delegate(Unknown
 Source)      
        at 
jakarta.ws.rs.core.ContextProducers_ProducerMethod_securityContext_Te5N_EppHq79q8NJD1SHmgfMtgk_ClientProxy.getUserPrincipal(Unknown
 Source)  
        at 
org.apache.polaris.service.config.ServiceProducers.polarisPrincipal(ServiceProducers.java:197)
       
        at 
org.apache.polaris.service.config.ServiceProducers_ProducerMethod_polarisPrincipal_zDmpifKRoFToLBmCZPPPdL3Hxns_Bean.create(Unknown
 Source)   
        at 
org.apache.polaris.service.config.ServiceProducers_ProducerMethod_polarisPrincipal_zDmpifKRoFToLBmCZPPPdL3Hxns_Bean.create(Unknown
 Source)   
        at 
io.quarkus.arc.impl.CurrentManagedContext$1.get(CurrentManagedContext.java:111) 
     
        at 
io.quarkus.arc.impl.CurrentManagedContext$1.get(CurrentManagedContext.java:107) 
     
        at 
io.quarkus.arc.generator.Default_jakarta_enterprise_context_RequestScoped_ContextInstances.ch8(Unknown
 Source)       
        at 
io.quarkus.arc.generator.Default_jakarta_enterprise_context_RequestScoped_ContextInstances.computeIfAbsent(Unknown
 Source)   
        at 
io.quarkus.arc.impl.CurrentManagedContext.getIfActive(CurrentManagedContext.java:107)
        
        at 
io.quarkus.arc.impl.ClientProxies.getSingleContextDelegate(ClientProxies.java:30)
    
        at 
org.apache.polaris.core.auth.ServiceProducers_ProducerMethod_polarisPrincipal_zDmpifKRoFToLBmCZPPPdL3Hxns_ClientProxy.arc$delegate(Unknown
 Source)   
        at 
org.apache.polaris.core.auth.ServiceProducers_ProducerMethod_polarisPrincipal_zDmpifKRoFToLBmCZPPPdL3Hxns_ClientProxy.getName(Unknown
 Source)        
        at 
org.apache.polaris.core.storage.cache.StorageCredentialCacheKey.of(StorageCredentialCacheKey.java:77)
        
        at 
org.apache.polaris.core.storage.cache.StorageCredentialCache.getOrGenerateSubScopeCreds(StorageCredentialCache.java:122)
     
        at 
org.apache.polaris.core.storage.cache.ServiceProducers_ProducerMethod_storageCredentialCache_hzAWPa00ffa2II6zBfUMmDXk9AQ_ClientProxy.getOrGenerateSubScopeCreds(Unknown
 Source)      
        at 
org.apache.polaris.service.catalog.io.StorageAccessConfigProvider.getStorageAccessConfig(StorageAccessConfigProvider.java:120)
       
        at 
org.apache.polaris.service.catalog.io.StorageAccessConfigProvider_ClientProxy.getStorageAccessConfig(Unknown
 Source) 
        at 
org.apache.polaris.service.task.TaskFileIOSupplier.apply(TaskFileIOSupplier.java:64)
 
        at 
org.apache.polaris.service.task.TaskFileIOSupplier_ClientProxy.apply(Unknown 
Source) 
        at 
org.apache.polaris.service.task.TableCleanupTaskHandler.handleTask(TableCleanupTaskHandler.java:96)
  
        at 
org.apache.polaris.service.task.TaskExecutorImpl.handleTask(TaskExecutorImpl.java:209)
       
        at 
org.apache.polaris.service.task.TaskExecutorImpl.handleTaskWithTracing(TaskExecutorImpl.java:256)
    
        at 
org.apache.polaris.service.task.TaskExecutorImpl_Subclass.handleTaskWithTracing$$superforward(Unknown
 Source)        
        at 
org.apache.polaris.service.task.TaskExecutorImpl_Subclass$0.apply(Unknown 
Source)    
        at 
io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:73)
     
        at 
io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:62)
     
        at 
io.quarkus.arc.impl.ActivateRequestContextInterceptor.invoke(ActivateRequestContextInterceptor.java:124)
     
        at io.quarkus.arc.impl.Activ
   
ateRequestContextInterceptor.aroundInvoke(ActivateRequestContextInterceptor.java:33)
 
        at 
io.quarkus.arc.impl.ActivateRequestContextInterceptor_Bean.intercept(Unknown 
Source) 
        at 
io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:42) 
     
        at 
io.quarkus.arc.impl.AroundInvokeInvocationContext.perform(AroundInvokeInvocationContext.java:30)
     
        at 
io.quarkus.arc.impl.InvocationContexts.performAroundInvoke(InvocationContexts.java:27)
       
        at 
org.apache.polaris.service.task.TaskExecutorImpl_Subclass.handleTaskWithTracing(Unknown
 Source)      
        at 
org.apache.polaris.service.task.TaskExecutorImpl.lambda$tryHandleTask$2(TaskExecutorImpl.java:165)
   
        at 
java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804)
   
        ... 11 more     
   "    
        at 
org.apache.polaris.service.task.TaskErrorHandler.assertNoTaskExceptions(TaskErrorHandler.java:65)
    
                •••
   ```



-- 
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]

Reply via email to