You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ma...@apache.org on 2017/02/02 16:25:00 UTC

lucene-solr:master: SOLR-10066: MetricsDirectoryFactory broke this test, need to unwrap.

Repository: lucene-solr
Updated Branches:
  refs/heads/master db987b810 -> f6e124eb5


SOLR-10066: MetricsDirectoryFactory broke this test, need to unwrap.


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/f6e124eb
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/f6e124eb
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/f6e124eb

Branch: refs/heads/master
Commit: f6e124eb57421b5d352608d77645a35e289b0471
Parents: db987b8
Author: markrmiller <ma...@apache.org>
Authored: Thu Feb 2 11:18:30 2017 -0500
Committer: markrmiller <ma...@apache.org>
Committed: Thu Feb 2 11:24:36 2017 -0500

----------------------------------------------------------------------
 .../hdfs/HdfsWriteToMultipleCollectionsTest.java    | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/f6e124eb/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java
----------------------------------------------------------------------
diff --git a/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java b/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java
index 2005978..b345342 100644
--- a/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java
+++ b/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java
@@ -39,7 +39,9 @@ import org.apache.solr.client.solrj.impl.CloudSolrClient;
 import org.apache.solr.cloud.BasicDistributedZkTest;
 import org.apache.solr.cloud.StoppableIndexingThread;
 import org.apache.solr.core.CoreContainer;
+import org.apache.solr.core.DirectoryFactory;
 import org.apache.solr.core.HdfsDirectoryFactory;
+import org.apache.solr.core.MetricsDirectoryFactory;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.store.blockcache.BlockCache;
 import org.apache.solr.store.blockcache.BlockDirectory;
@@ -134,10 +136,14 @@ public class HdfsWriteToMultipleCollectionsTest extends BasicDistributedZkTest {
       for (SolrCore core : solrCores) {
         if (core.getCoreDescriptor().getCloudDescriptor().getCollectionName()
             .startsWith(ACOLLECTION)) {
-          assertTrue(core.getDirectoryFactory() instanceof HdfsDirectoryFactory);
-          Directory dir = core.getDirectoryFactory().get(core.getDataDir(), null, null);
+          DirectoryFactory factory = core.getDirectoryFactory();
+          if (factory instanceof MetricsDirectoryFactory) {
+            factory = ((MetricsDirectoryFactory) factory).getDelegate();
+          }
+          assertTrue("Found: " + core.getDirectoryFactory().getClass().getName(), factory instanceof HdfsDirectoryFactory);
+          Directory dir = factory.get(core.getDataDir(), null, null);
           try {
-            long dataDirSize = core.getDirectoryFactory().size(dir);
+            long dataDirSize = factory.size(dir);
             FileSystem fileSystem = null;
             
             fileSystem = FileSystem.newInstance(
@@ -153,8 +159,8 @@ public class HdfsWriteToMultipleCollectionsTest extends BasicDistributedZkTest {
               .getSolrCoreState().getIndexWriter(core);
           try {
             IndexWriter iw = iwRef.get();
-            NRTCachingDirectory directory = (NRTCachingDirectory) iw
-                .getDirectory();
+            NRTCachingDirectory directory = (NRTCachingDirectory) ((MetricsDirectoryFactory.MetricsDirectory)iw
+                .getDirectory()).getDelegate();
             BlockDirectory blockDirectory = (BlockDirectory) directory
                 .getDelegate();
             assertTrue(blockDirectory.isBlockCacheReadEnabled());