tarekabouzeid commented on PR #291:
URL: https://github.com/apache/ranger/pull/291#issuecomment-1916909057

   Hi,
   
   Thanks so much for this contribution, It helped me a lot. I have tested it 
with Trino 433 and Trino server is up and running and there seems to be an 
issue in Trino ranger raudits initialization when using Elastic search, so 
audits are not sent to ranger.
   
   I am going to look more into this issue and will report my findings.
   
   Elastic search version used :  **7.16.2**
   Trino version: **433**
   Ranger: **2.4.0**
   
   Below is the error I am getting: 
   ```
   024-01-30T13:32:13.562Z    INFO    main    stdout  INFO  - Connecting to 
ElasticSearch: User:ranger, http://es-internal.infra:80/ranger_audits
   2024-01-30T13:32:13.895Z    INFO    main    stdout  WARN  - request [POST 
http://es-internal.infra:80/ranger_audits/_open?master_timeout=30s&ignore_throttled=false&ignore_unavailable=false&expand_wildcards=closed&allow_no_indices=true&timeout=30s]
 returned 1 warnings: [299 
Elasticsearch-7.17.16-2b23fa076334f8d4651aeebe458a955a2ae23218 
"[ignore_throttled] parameter is deprecated because frozen indices have been 
deprecated. Consider cold or frozen tiers in place of frozen indices."]
   2024-01-30T13:32:13.899Z    INFO    main    stdout  ERROR - Can't connect to 
ElasticSearch server: User:ranger, 
http://es-internal.infra:80/ranger_auditsjava.lang.BootstrapMethodError: 
bootstrap method initialization exception
       at 
java.base/java.lang.invoke.BootstrapMethodInvoker.invoke(BootstrapMethodInvoker.java:188)
       at java.base/java.lang.invoke.CallSite.makeSite(CallSite.java:316)
       at 
java.base/java.lang.invoke.MethodHandleNatives.linkCallSiteImpl(MethodHandleNatives.java:274)
       at 
java.base/java.lang.invoke.MethodHandleNatives.linkCallSite(MethodHandleNatives.java:264)
       at 
org.elasticsearch.client.RestClient.convertResponse(RestClient.java:312)
       at 
org.elasticsearch.client.RestClient.performRequest(RestClient.java:296)
       at 
org.elasticsearch.client.RestClient.performRequest(RestClient.java:270)
       at 
org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1632)
       at 
org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1602)
       at 
org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1572)
       at org.elasticsearch.client.IndicesClient.open(IndicesClient.java:614)
       at 
org.apache.ranger.audit.destination.ElasticSearchAuditDestination.newClient(ElasticSearchAuditDestination.java:267)
       at 
org.apache.ranger.audit.destination.ElasticSearchAuditDestination.getClient(ElasticSearchAuditDestination.java:187)
       at 
org.apache.ranger.audit.destination.ElasticSearchAuditDestination.init(ElasticSearchAuditDestination.java:101)
       at 
org.apache.ranger.audit.provider.AuditProviderFactory.init(AuditProviderFactory.java:183)
       at 
org.apache.ranger.plugin.service.RangerBasePlugin.init(RangerBasePlugin.java:234)
       at 
org.apache.ranger.authorization.trino.authorizer.RangerSystemAccessControl.<init>(RangerSystemAccessControl.java:120)
       at 
java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
       at 
java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502)
       at 
java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486)
       at 
org.apache.ranger.authorization.trino.authorizer.RangerSystemAccessControl.<init>(RangerSystemAccessControl.java:69)
       at 
org.apache.ranger.authorization.trino.authorizer.RangerSystemAccessControl$$FastClassByGuice$$1345336.GUICE$TRAMPOLINE(<generated>)
       at 
org.apache.ranger.authorization.trino.authorizer.RangerSystemAccessControl$$FastClassByGuice$$1345336.apply(<generated>)
       at 
com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:82)
       at 
com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:114)
       at 
com.google.inject.internal.ConstructorInjector.access$000(ConstructorInjector.java:33)
       at 
com.google.inject.internal.ConstructorInjector$1.call(ConstructorInjector.java:98)
       at 
com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:109)
       at 
io.airlift.bootstrap.LifeCycleModule.provision(LifeCycleModule.java:54)
       at 
com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:117)
       at 
com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:66)
       at 
com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:93)
       at 
com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:300)
       at 
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
       at 
com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:169)
       at 
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:45)
       at 
com.google.inject.internal.InternalInjectorCreator.loadEagerSingletons(InternalInjectorCreator.java:213)
       at 
com.google.inject.internal.InternalInjectorCreator.injectDynamically(InternalInjectorCreator.java:186)
       at 
com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:113)
       at com.google.inject.Guice.createInjector(Guice.java:87)
       at io.airlift.bootstrap.Bootstrap.initialize(Bootstrap.java:262)
       at 
org.apache.ranger.authorization.trino.authorizer.RangerSystemAccessControlFactory.create(RangerSystemAccessControlFactory.java:53)
       at 
io.trino.spi.security.SystemAccessControlFactory.create(SystemAccessControlFactory.java:30)
       at 
io.trino.security.AccessControlManager.createSystemAccessControl(AccessControlManager.java:198)
       at 
java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
       at java.base/java.util.Collections$2.tryAdvance(Collections.java:5073)
       at 
java.base/java.util.Collections$2.forEachRemaining(Collections.java:5081)
       at 
java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
       at 
java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
       at 
java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
       at 
java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
       at 
java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
       at 
io.trino.security.AccessControlManager.loadSystemAccessControl(AccessControlManager.java:167)
       at io.trino.server.Server.doStart(Server.java:162)
       at io.trino.server.Server.lambda$start$0(Server.java:91)
       at io.trino.$gen.Trino_433____20240130_133147_1.run(Unknown Source)
       at io.trino.server.Server.start(Server.java:91)
       at io.trino.server.TrinoServer.main(TrinoServer.java:38)
   Caused by: java.lang.invoke.LambdaConversionException: Invalid receiver type 
interface org.apache.http.Header; not a subtype of implementation type 
interface org.apache.http.NameValuePair
       at 
java.base/java.lang.invoke.AbstractValidatingLambdaMetafactory.validateMetafactoryArgs(AbstractValidatingLambdaMetafactory.java:273)
       at 
java.base/java.lang.invoke.LambdaMetafactory.metafactory(LambdaMetafactory.java:340)
       at 
java.base/java.lang.invoke.BootstrapMethodInvoker.invoke(BootstrapMethodInvoker.java:134)
       ... 57 common frames omitted
   ```


-- 
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: dev-unsubscr...@ranger.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to