Github user mikewalch commented on a diff in the pull request:

    https://github.com/apache/accumulo/pull/227#discussion_r104454813
  
    --- Diff: 
server/tserver/src/main/java/org/apache/accumulo/tserver/NativeMap.java ---
    @@ -60,39 +60,44 @@
      * would be a mistake for long lived NativeMaps. Long lived objects are 
not garbage collected quickly, therefore a process could easily use too much 
memory.
      *
      */
    -
     public class NativeMap implements Iterable<Map.Entry<Key,Value>> {
     
       private static final Logger log = 
LoggerFactory.getLogger(NativeMap.class);
       private static AtomicBoolean loadedNativeLibraries = new 
AtomicBoolean(false);
     
       // Load native library
       static {
    -    // Check standard directories
    -    List<File> directories = new ArrayList<>(Arrays.asList(new File[] {new 
File("/usr/lib64"), new File("/usr/lib")}));
    -    // Check in ACCUMULO_HOME location, too
    -    String accumuloHome = System.getenv("ACCUMULO_HOME");
    -    if (accumuloHome != null) {
    -      directories.add(new File(accumuloHome + "/lib/native"));
    -      directories.add(new File(accumuloHome + "/lib/native/map")); // old 
location, just in case somebody puts it here
    +    // Check in directories set by 'accumulo.native.lib.dirs' system 
property
    +    List<File> directories = new ArrayList<>();
    +    String accumuloNativeLibDirs = 
System.getProperty("accumulo.native.lib.dirs");
    +    if (accumuloNativeLibDirs != null) {
    +      for (String libDir : accumuloNativeLibDirs.split(":")) {
    +        directories.add(new File(libDir));
    +      }
         }
         // Attempt to load from these directories, using standard names
         loadNativeLib(directories);
     
         // Check LD_LIBRARY_PATH (DYLD_LIBRARY_PATH on Mac)
         if (!isLoaded()) {
    +      log.error("Tried and failed to load Accumulo native library from " + 
accumuloNativeLibDirs);
           String ldLibraryPath = System.getProperty("java.library.path");
    -      String errMsg = "Tried and failed to load native map library from " 
+ ldLibraryPath;
           try {
             System.loadLibrary("accumulo");
             loadedNativeLibraries.set(true);
    --- End diff --
    
    I think it can be removed too but it can't hurt to have it in


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to