ctubbsii commented on code in PR #3136:
URL: https://github.com/apache/accumulo/pull/3136#discussion_r1052506732


##########
start/src/main/java/org/apache/accumulo/start/classloader/vfs/ContextManager.java:
##########
@@ -19,95 +19,96 @@
 package org.apache.accumulo.start.classloader.vfs;
 
 import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.net.URLClassLoader;
+import java.util.Arrays;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Set;
 import java.util.function.Supplier;
+import java.util.stream.Collectors;
 
-import org.apache.commons.vfs2.FileSystemException;
-import org.apache.commons.vfs2.FileSystemManager;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-@Deprecated
-class ContextManager {
+//@Deprecated
+public class ContextManager {

Review Comment:
   This class was deprecated with the expectation to remove it entirely. What 
do we still need it for?



##########
core/src/main/java/org/apache/accumulo/core/conf/Property.java:
##########
@@ -1092,21 +1079,8 @@ public enum Property {
           + "constraint.",
       "2.0.0"),
 
-  // VFS ClassLoader properties
-
-  // this property shouldn't be used directly; it exists solely to document 
the default value
-  // defined by its use in AccumuloVFSClassLoader when generating the property 
documentation
-  @Deprecated(since = "2.1.0", forRemoval = true)
-  VFS_CLASSLOADER_SYSTEM_CLASSPATH_PROPERTY(
-      
org.apache.accumulo.start.classloader.vfs.AccumuloVFSClassLoader.VFS_CLASSLOADER_SYSTEM_CLASSPATH_PROPERTY,
-      "", PropertyType.STRING,
-      "Configuration for a system level vfs classloader. Accumulo jar can be"
-          + " configured here and loaded out of HDFS.",
-      "1.5.0"),
-  @Deprecated(since = "2.1.0", forRemoval = true)
-  VFS_CONTEXT_CLASSPATH_PROPERTY(
-      
org.apache.accumulo.start.classloader.vfs.AccumuloVFSClassLoader.VFS_CONTEXT_CLASSPATH_PROPERTY,
-      null, PropertyType.PREFIX,
+  // ClassLoader properties
+  CONTEXT_CLASSPATH_PROPERTY(ContextManager.CONTEXT_CLASSPATH_PROPERTY, null, 
PropertyType.PREFIX,

Review Comment:
   This is a new property. I don't think we need this. We are removing this 
feature in favor of the system classloader, which is already configurable by 
Java. We never need to specify a classpath in properties, just a context name 
on a per-table basis, which is interpreted based on the implementation details 
of the classloader factory, which should be pluggable SPI.



##########
shell/src/main/java/org/apache/accumulo/shell/commands/ClasspathCommand.java:
##########
@@ -30,9 +30,9 @@ public class ClasspathCommand extends Command {
   public int execute(final String fullCommand, final CommandLine cl, final 
Shell shellState) {
 
     final PrintWriter writer = shellState.getWriter();
-    
org.apache.accumulo.start.classloader.vfs.AccumuloVFSClassLoader.printClassPath(s
 -> {
-      writer.print(s);
-    }, true);
+    // 
org.apache.accumulo.start.classloader.vfs.AccumuloVFSClassLoader.printClassPath(s
 -> {
+    // writer.print(s);
+    // }, true);

Review Comment:
   Showing the contents of the `java.class.path` system property is probably 
enough here. For a configured context classloader factory, we could extend the 
SPI to have a method to show information about each context and call that here 
also. But, since this is run on the client side in the shell, it would have to 
be set up on the client side, and not just the server-side... unless we had a 
new RPC to specifically ask a random server to give us that info. And, in any 
case, we wouldn't be able to have much insight into the user's configured 
system classloader, if they set that... because that could do anything.



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