You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by kr...@apache.org on 2019/12/14 03:09:14 UTC

[lucene-solr] branch master updated: SOLR-14077: Hadoop shouldn't need to look for metrics config in user home

This is an automated email from the ASF dual-hosted git repository.

krisden pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git


The following commit(s) were added to refs/heads/master by this push:
     new 7a9a6ef  SOLR-14077: Hadoop shouldn't need to look for metrics config in user home
7a9a6ef is described below

commit 7a9a6ef79e9eee98d5f20ab7256f01a20113e953
Author: Kevin Risden <kr...@apache.org>
AuthorDate: Fri Dec 13 16:39:47 2019 -0500

    SOLR-14077: Hadoop shouldn't need to look for metrics config in user home
    
    Signed-off-by: Kevin Risden <kr...@apache.org>
---
 lucene/tools/junit4/solr-tests.policy                    |  3 ---
 .../test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java    | 16 ++++++++++++++++
 2 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/lucene/tools/junit4/solr-tests.policy b/lucene/tools/junit4/solr-tests.policy
index faa9ecb..b178d6b 100644
--- a/lucene/tools/junit4/solr-tests.policy
+++ b/lucene/tools/junit4/solr-tests.policy
@@ -33,9 +33,6 @@ grant {
   permission java.io.FilePermission "${junit4.tempDir}${/}*", "read,write,delete";
   permission java.io.FilePermission "${clover.db.dir}${/}-", "read,write,delete";
   permission java.io.FilePermission "${tests.linedocsfile}", "read";
-  // hadoop
-  permission java.io.FilePermission "${user.home}${/}hadoop-metrics2.properties", "read";
-  permission java.io.FilePermission "${user.home}${/}hadoop-metrics2-namenode.properties", "read";
   // DirectoryFactoryTest messes with these (wtf?)
   permission java.io.FilePermission "/tmp/inst1/conf/solrcore.properties", "read";
   permission java.io.FilePermission "/path/to/myinst/conf/solrcore.properties", "read";
diff --git a/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java b/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java
index 98f8274..873fe17 100644
--- a/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java
+++ b/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsTestUtil.java
@@ -47,6 +47,9 @@ import org.apache.hadoop.hdfs.server.namenode.NameNodeResourceChecker;
 import org.apache.hadoop.hdfs.server.namenode.ha.HATestUtil;
 import org.apache.hadoop.http.HttpServer2;
 import org.apache.hadoop.io.nativeio.NativeIO;
+import org.apache.hadoop.metrics2.MetricsSystem;
+import org.apache.hadoop.metrics2.impl.MetricsSystemImpl;
+import org.apache.hadoop.metrics2.lib.DefaultMetricsSystem;
 import org.apache.hadoop.util.DiskChecker;
 import org.apache.lucene.util.Constants;
 import org.apache.lucene.util.LuceneTestCase;
@@ -159,6 +162,8 @@ public class HdfsTestUtil {
 
     if (!HA_TESTING_ENABLED) haTesting = false;
 
+    DefaultMetricsSystem.setInstance(new FakeMetricsSystem());
+
     Configuration conf = getBasicConfiguration(new Configuration());
     conf.set("hdfs.minidfs.basedir", dir + File.separator + "hdfsBaseDir");
     conf.set("dfs.namenode.name.dir", dir + File.separator + "nameNodeNameDir");
@@ -374,4 +379,15 @@ public class HdfsTestUtil {
       super(pool);
     }
   }
+
+  /**
+   * Ensures that we don't try to initialize metrics and read files outside
+   * the source tree.
+   */
+  public static class FakeMetricsSystem extends MetricsSystemImpl {
+    @Override
+    public synchronized MetricsSystem init(String prefix) {
+      return this;
+    }
+  }
 }