Alexey Serbin has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/24167 )

Change subject: [ranger] fix ranger audit log write to hdfs
......................................................................


Patch Set 1:

(4 comments)

http://gerrit.cloudera.org:8080/#/c/24167/1//COMMIT_MSG
Commit Message:

http://gerrit.cloudera.org:8080/#/c/24167/1//COMMIT_MSG@12
PS1, Line 12: It has been
            : observed that without this patch, following error is hit while 
ranger
            : attempts to write audit logs to HDFS location:
There were also reports that KUDU-3359 was enough to address the underlying 
issue once adding the necessary classpaths via the run-time flags.

What has changed since then?


http://gerrit.cloudera.org:8080/#/c/24167/1//COMMIT_MSG@18
PS1, Line 18: The error is caused because no implementation for hdfs:// scheme 
is
            : found in the path due to absence of hadoop-hdfs-client inside the 
JAR.
I doubt the validity of this analysis.  As I mentioned, having the 
hadoop-client aggregator above was supposed to take care of bringing in the 
implementation of the hdfs:// scheme since it assumed to pull in the 
hadoop-hdfs-client dependency automatically, IIUC.

Also, there were reports of issues because of hadoop-common and 
hadoop-hdfs-client JARs overwriting each other's META-INF/services files, 
causing the error [1] to appear.

So, a couple of questions:
  * Isn't it exactly what was going on because recent updates in JAR shading?  
The hadoop-common is supposed to bring in the necessary dependencies already.
  * Aren't we risking to hit a new issue because of possible 
conflicts/overwriting of META-INFO/services files once adding 
hadoop-hdfs-common as in this patch?


http://gerrit.cloudera.org:8080/#/c/24167/1//COMMIT_MSG@24
PS1, Line 24: dds hadoop-hdfs-client.jar as a compile-time dependency
Why is it needed at compile time as well?  Wouldn't run-time only dependency be 
enough?


http://gerrit.cloudera.org:8080/#/c/24167/1/java/gradle/dependencies.gradle
File java/gradle/dependencies.gradle:

http://gerrit.cloudera.org:8080/#/c/24167/1/java/gradle/dependencies.gradle@111
PS1, Line 111:     hadoopClient         : 
"org.apache.hadoop:hadoop-client:$versions.hadoop",
Isn't the hadoop-client aggregator is supposed to include all the necessary 
pieces of the hdfs:// scheme implementation for the client side already?

I'm surprised to see adding hadoopHdfsClient explicitly below.



--
To view, visit http://gerrit.cloudera.org:8080/24167
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Ia788890ef55b44ba91c54e55a103d6aa6d306b25
Gerrit-Change-Number: 24167
Gerrit-PatchSet: 1
Gerrit-Owner: Ashwani Raina <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Attila Bukor <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Zoltan Chovan <[email protected]>
Gerrit-Comment-Date: Tue, 07 Apr 2026 01:59:44 +0000
Gerrit-HasComments: Yes

Reply via email to