Copilot commented on code in PR #530:
URL: https://github.com/apache/atlas/pull/530#discussion_r2815725405


##########
graphdb/janus/pom.xml:
##########
@@ -79,15 +79,26 @@
             <artifactId>commons-text</artifactId>
             <version>${commons-text.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.apache.hadoop</groupId>
+            <artifactId>hadoop-distcp</artifactId>
+            <version>${hadoop.version}</version>
+        </dependency>
         <dependency>
             <groupId>org.apache.hbase</groupId>
             <artifactId>hbase-shaded-client</artifactId>
-            <version>${hbase.version}</version>
+            <version>${hbase.version}-hadoop3</version>
         </dependency>

Review Comment:
   According to the PR description, the application fails to start with 
NoClassDefFoundError for 
org/apache/hadoop/hbase/shaded/com/sun/jersey/core/provider/jaxb/AbstractRootElementProvider.
 The description states that excluding 
META-INF/services/javax.ws.rs.ext.MessageBodyReader and 
META-INF/services/javax.ws.rs.ext.MessageBodyWriter from 
hbase-shaded-client-hadoop3 resolves the issue, but this exclusion has not been 
implemented. This PR cannot be merged until this critical startup failure is 
resolved.



##########
graphdb/janus/pom.xml:
##########
@@ -79,15 +79,26 @@
             <artifactId>commons-text</artifactId>
             <version>${commons-text.version}</version>
         </dependency>
+        <dependency>
+            <groupId>org.apache.hadoop</groupId>
+            <artifactId>hadoop-distcp</artifactId>
+            <version>${hadoop.version}</version>
+        </dependency>

Review Comment:
   The addition of the hadoop-distcp dependency appears to be a workaround for 
the hbase-shaded-mapreduce upgrade, but the PR description indicates there are 
still critical unresolved issues: quick_start.py fails with 
NoClassDefFoundError and the Atlas UI is unavailable due to server startup 
failures. These failures are caused by conflicting META-INF/services entries in 
hbase-shaded-client-hadoop3. This dependency addition should be verified as the 
correct solution, and the underlying issues should be resolved before merging.



##########
webapp/src/test/java/org/apache/atlas/web/service/AtlasDebugMetricsSinkTest.java:
##########
@@ -19,7 +19,7 @@
 package org.apache.atlas.web.service;
 
 import org.apache.atlas.web.model.DebugMetrics;
-import 
org.apache.hadoop.hbase.shaded.org.apache.commons.configuration.SubsetConfiguration;
+import 
org.apache.hadoop.hbase.shaded.org.apache.commons.configuration2.SubsetConfiguration;

Review Comment:
   The import change from commons-configuration to commons-configuration2 
(shaded from HBase) could cause runtime compatibility issues. The Hadoop 
metrics framework expects commons-configuration 1.x SubsetConfiguration, not 
commons-configuration2. This mismatch needs to be addressed and thoroughly 
tested to ensure the test correctly validates the behavior.
   ```suggestion
   import org.apache.commons.configuration.SubsetConfiguration;
   ```



##########
webapp/src/main/java/org/apache/atlas/web/service/AtlasDebugMetricsSink.java:
##########
@@ -19,7 +19,7 @@
 
 import org.apache.atlas.web.model.DebugMetrics;
 import org.apache.commons.lang3.StringUtils;
-import 
org.apache.hadoop.hbase.shaded.org.apache.commons.configuration.SubsetConfiguration;
+import 
org.apache.hadoop.hbase.shaded.org.apache.commons.configuration2.SubsetConfiguration;

Review Comment:
   Changing from 
org.apache.hadoop.hbase.shaded.org.apache.commons.configuration.SubsetConfiguration
 to 
org.apache.hadoop.hbase.shaded.org.apache.commons.configuration2.SubsetConfiguration
 could cause runtime compatibility issues. The MetricsSink interface from 
Hadoop expects the SubsetConfiguration from commons-configuration (version 
1.x), not commons-configuration2 (version 2.x). These two versions have 
significant API differences. While the init method currently has an empty 
implementation, this could fail at runtime if Hadoop's metrics framework passes 
a commons-configuration 1.x SubsetConfiguration to this method expecting 
commons-configuration2. This needs to be tested thoroughly.
   ```suggestion
   import 
org.apache.hadoop.hbase.shaded.org.apache.commons.configuration.SubsetConfiguration;
   ```



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