lucene-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From romseyg...@apache.org
Subject svn commit: r1713601 - in /lucene/dev/trunk/solr: ./ core/src/java/org/apache/solr/client/solrj/embedded/ core/src/test/org/apache/solr/cloud/ core/src/test/org/apache/solr/cloud/hdfs/ core/src/test/org/apache/solr/handler/ core/src/test/org/apache/sol...
Date Tue, 10 Nov 2015 10:06:50 GMT
Author: romseygeek
Date: Tue Nov 10 10:06:49 2015
New Revision: 1713601

URL: http://svn.apache.org/viewvc?rev=1713601&view=rev
Log:
SOLR-8259: Add getCoreContainer() method to JettySolrRunner

Modified:
    lucene/dev/trunk/solr/CHANGES.txt
    lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/BaseCdcrDistributedZkTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CleanupOldIndexTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/ForceLeaderTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestLeaderInitiatedRecoveryThread.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestRandomRequestDistribution.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/component/TestTrackingShardHandlerFactory.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/update/SolrCmdDistributorTest.java
    lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractDistribZkTestBase.java
    lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
    lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/ChaosMonkey.java
    lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/handler/component/TrackingShardHandlerFactory.java

Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Tue Nov 10 10:06:49 2015
@@ -477,6 +477,9 @@ Other Changes
 
 * SOLR-8260: Use NIO2 APIs in core discovery (Alan Woodward)
 
+* SOLR-8259: Deprecate JettySolrRunner.getDispatchFilter(), add
+  .getSolrDispatchFilter() and .getCoreContainer() (Alan Woodward)
+
 ==================  5.3.1 ==================
 
 Bug Fixes

Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/client/solrj/embedded/JettySolrRunner.java Tue Nov 10 10:06:49 2015
@@ -17,6 +17,28 @@
 
 package org.apache.solr.client.solrj.embedded;
 
+import javax.servlet.DispatcherType;
+import javax.servlet.Filter;
+import javax.servlet.FilterChain;
+import javax.servlet.FilterConfig;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.EnumSet;
+import java.util.LinkedList;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Random;
+import java.util.SortedMap;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicLong;
+
 import org.apache.solr.core.CoreContainer;
 import org.apache.solr.servlet.SolrDispatchFilter;
 import org.eclipse.jetty.server.Connector;
@@ -40,28 +62,6 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.slf4j.MDC;
 
-import javax.servlet.DispatcherType;
-import javax.servlet.Filter;
-import javax.servlet.FilterChain;
-import javax.servlet.FilterConfig;
-import javax.servlet.ServletException;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
-import javax.servlet.http.HttpServlet;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.EnumSet;
-import java.util.LinkedList;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Random;
-import java.util.SortedMap;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.atomic.AtomicLong;
-
 /**
  * Run solr using jetty
  * 
@@ -353,10 +353,26 @@ public class JettySolrRunner {
 
   }
 
+  /**
+   * @deprecated Use {@link #getSolrDispatchFilter()} or {@link #getCoreContainer()}
+   */
+  @Deprecated
   public FilterHolder getDispatchFilter() {
     return dispatchFilter;
   }
 
+  /**
+   * @return the {@link SolrDispatchFilter} for this node
+   */
+  public SolrDispatchFilter getSolrDispatchFilter() { return (SolrDispatchFilter) dispatchFilter.getFilter(); }
+
+  /**
+   * @return the {@link CoreContainer} for this node
+   */
+  public CoreContainer getCoreContainer() {
+    return getSolrDispatchFilter().getCores();
+  }
+
   public boolean isRunning() {
     return server.isRunning();
   }

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/BaseCdcrDistributedZkTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/BaseCdcrDistributedZkTest.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/BaseCdcrDistributedZkTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/BaseCdcrDistributedZkTest.java Tue Nov 10 10:06:49 2015
@@ -17,6 +17,17 @@ package org.apache.solr.cloud;
  * limitations under the License.
  */
 
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Set;
+
 import org.apache.http.params.CoreConnectionPNames;
 import org.apache.solr.client.solrj.SolrClient;
 import org.apache.solr.client.solrj.SolrQuery;
@@ -28,7 +39,13 @@ import org.apache.solr.client.solrj.impl
 import org.apache.solr.client.solrj.request.QueryRequest;
 import org.apache.solr.client.solrj.response.CollectionAdminResponse;
 import org.apache.solr.common.SolrInputDocument;
-import org.apache.solr.common.cloud.*;
+import org.apache.solr.common.cloud.ClusterState;
+import org.apache.solr.common.cloud.DocCollection;
+import org.apache.solr.common.cloud.Replica;
+import org.apache.solr.common.cloud.Slice;
+import org.apache.solr.common.cloud.SolrZkClient;
+import org.apache.solr.common.cloud.ZkCoreNodeProps;
+import org.apache.solr.common.cloud.ZkStateReader;
 import org.apache.solr.common.params.CollectionParams;
 import org.apache.solr.common.params.CommonParams;
 import org.apache.solr.common.params.ModifiableSolrParams;
@@ -37,15 +54,15 @@ import org.apache.solr.common.util.StrUt
 import org.apache.solr.common.util.Utils;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.handler.CdcrParams;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.apache.zookeeper.CreateMode;
-import org.junit.*;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.*;
-
-import static org.apache.solr.cloud.OverseerCollectionMessageHandler.*;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+
+import static org.apache.solr.cloud.OverseerCollectionMessageHandler.CREATE_NODE_SET;
+import static org.apache.solr.cloud.OverseerCollectionMessageHandler.NUM_SLICES;
+import static org.apache.solr.cloud.OverseerCollectionMessageHandler.SHARDS_PROP;
 import static org.apache.solr.common.cloud.ZkStateReader.MAX_SHARDS_PER_NODE;
 import static org.apache.solr.common.cloud.ZkStateReader.REPLICATION_FACTOR;
 
@@ -547,9 +564,7 @@ public class BaseCdcrDistributedZkTest e
       jettys.add(jetty);
     }
 
-    ZkStateReader zkStateReader = ((SolrDispatchFilter) jettys.get(0)
-        .getDispatchFilter().getFilter()).getCores().getZkController()
-        .getZkStateReader();
+    ZkStateReader zkStateReader = jettys.get(0).getCoreContainer().getZkController().getZkStateReader();
 
     // now wait till we see the leader for each shard
     for (int i = 1; i <= shardCount; i++) {
@@ -759,8 +774,7 @@ public class BaseCdcrDistributedZkTest e
     for (String shard : shardToJetty.get(collection).keySet()) {
       List<CloudJettyRunner> jettyRunners = shardToJetty.get(collection).get(shard);
       for (CloudJettyRunner jettyRunner : jettyRunners) {
-        SolrDispatchFilter filter = (SolrDispatchFilter) jettyRunner.jetty.getDispatchFilter().getFilter();
-        for (SolrCore core : filter.getCores().getCores()) {
+        for (SolrCore core : jettyRunner.jetty.getCoreContainer().getCores()) {
           info.addCore(core, shard, shardToLeaderJetty.get(collection).containsValue(jettyRunner));
         }
       }

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CleanupOldIndexTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CleanupOldIndexTest.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CleanupOldIndexTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CleanupOldIndexTest.java Tue Nov 10 10:06:49 2015
@@ -33,7 +33,6 @@ import org.apache.solr.common.cloud.ZkSt
 import org.apache.solr.core.CoreContainer;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.handler.SnapShooter;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -79,8 +78,7 @@ public class CleanupOldIndexTest extends
 
     // create some "old" index directories
     JettySolrRunner jetty = chaosMonkey.getShard("shard1", 1);
-    SolrDispatchFilter filter = (SolrDispatchFilter)jetty.getDispatchFilter().getFilter();
-    CoreContainer coreContainer = filter.getCores();
+    CoreContainer coreContainer = jetty.getCoreContainer();
     File dataDir = null;
     try (SolrCore solrCore = coreContainer.getCore("collection1")) {
       dataDir = new File(solrCore.getDataDir());

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/CollectionsAPIDistributedZkTest.java Tue Nov 10 10:06:49 2015
@@ -26,19 +26,8 @@ import java.lang.management.ManagementFa
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.Map.Entry;
-import java.util.Objects;
-import java.util.Properties;
-import java.util.Set;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.lucene.util.LuceneTestCase.Slow;
@@ -79,15 +68,14 @@ import org.apache.solr.common.util.StrUt
 import org.apache.solr.core.CoreContainer;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.core.SolrInfoMBean.Category;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.apache.solr.util.TimeOut;
 import org.junit.Test;
 
 import static org.apache.solr.cloud.OverseerCollectionMessageHandler.NUM_SLICES;
-import static org.apache.solr.common.util.Utils.makeMap;
 import static org.apache.solr.common.cloud.ZkStateReader.CORE_NAME_PROP;
 import static org.apache.solr.common.cloud.ZkStateReader.MAX_SHARDS_PER_NODE;
 import static org.apache.solr.common.cloud.ZkStateReader.REPLICATION_FACTOR;
+import static org.apache.solr.common.util.Utils.makeMap;
 
 /**
  * Tests the Cloud Collections API.
@@ -440,8 +428,8 @@ public class CollectionsAPIDistributedZk
       params.set("collection.configName", "conf1");
     }
     
-    String nn1 = ((SolrDispatchFilter) jettys.get(0).getDispatchFilter().getFilter()).getCores().getZkController().getNodeName();
-    String nn2 =  ((SolrDispatchFilter) jettys.get(1).getDispatchFilter().getFilter()).getCores().getZkController().getNodeName();
+    String nn1 = jettys.get(0).getCoreContainer().getZkController().getNodeName();
+    String nn2 =  jettys.get(1).getCoreContainer().getZkController().getNodeName();
     
     params.set(OverseerCollectionMessageHandler.CREATE_NODE_SET, nn1 + "," + nn2);
     request = new QueryRequest(params);
@@ -916,8 +904,7 @@ public class CollectionsAPIDistributedZk
   }
 
   private void checkInstanceDirs(JettySolrRunner jetty) throws IOException {
-    CoreContainer cores = ((SolrDispatchFilter) jetty.getDispatchFilter()
-        .getFilter()).getCores();
+    CoreContainer cores = jetty.getCoreContainer();
     Collection<SolrCore> theCores = cores.getCores();
     for (SolrCore core : theCores) {
 

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/ForceLeaderTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/ForceLeaderTest.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/ForceLeaderTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/ForceLeaderTest.java Tue Nov 10 10:06:49 2015
@@ -1,7 +1,5 @@
 package org.apache.solr.cloud;
 
-import static org.apache.solr.common.cloud.ZkStateReader.CORE_NAME_PROP;
-
 import java.io.IOException;
 import java.util.Collections;
 import java.util.List;
@@ -13,7 +11,6 @@ import org.apache.solr.client.solrj.Solr
 import org.apache.solr.client.solrj.embedded.JettySolrRunner;
 import org.apache.solr.client.solrj.impl.HttpSolrClient;
 import org.apache.solr.client.solrj.request.CollectionAdminRequest;
-import org.apache.solr.client.solrj.request.CollectionAdminRequest.ForceLeader;
 import org.apache.solr.client.solrj.request.GenericSolrRequest;
 import org.apache.solr.client.solrj.response.SimpleSolrResponse;
 import org.apache.solr.cloud.overseer.OverseerAction;
@@ -29,7 +26,6 @@ import org.apache.solr.common.params.Cor
 import org.apache.solr.common.params.ModifiableSolrParams;
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.common.util.Utils;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.apache.zookeeper.KeeperException;
 import org.apache.zookeeper.KeeperException.NoNodeException;
 import org.junit.Ignore;
@@ -37,6 +33,8 @@ import org.junit.Test;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import static org.apache.solr.common.cloud.ZkStateReader.CORE_NAME_PROP;
+
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -87,7 +85,7 @@ public class ForceLeaderTest extends Htt
 
       Replica leader = cloudClient.getZkStateReader().getLeaderRetry(testCollectionName, SHARD1);
       JettySolrRunner notLeader0 = getJettyOnPort(getReplicaPort(notLeaders.get(0)));
-      ZkController zkController = ((SolrDispatchFilter) notLeader0.getDispatchFilter().getFilter()).getCores().getZkController();
+      ZkController zkController = notLeader0.getCoreContainer().getZkController();
 
       putNonLeadersIntoLIR(testCollectionName, SHARD1, zkController, leader, notLeaders);
 
@@ -181,7 +179,7 @@ public class ForceLeaderTest extends Htt
 
       Replica leader = cloudClient.getZkStateReader().getLeaderRetry(testCollectionName, SHARD1);
       JettySolrRunner notLeader0 = getJettyOnPort(getReplicaPort(notLeaders.get(0)));
-      ZkController zkController = ((SolrDispatchFilter) notLeader0.getDispatchFilter().getFilter()).getCores().getZkController();
+      ZkController zkController = notLeader0.getCoreContainer().getZkController();
 
       // Mark all replicas down
       setReplicaState(testCollectionName, SHARD1, leader, State.DOWN);

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/HttpPartitionTest.java Tue Nov 10 10:06:49 2015
@@ -51,7 +51,6 @@ import org.apache.solr.common.cloud.ZkSt
 import org.apache.solr.common.util.NamedList;
 import org.apache.solr.core.CoreContainer;
 import org.apache.solr.core.SolrCore;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.apache.solr.update.UpdateLog;
 import org.apache.solr.util.MockCoreContainer.MockCoreDescriptor;
 import org.apache.solr.util.RTimer;
@@ -137,7 +136,7 @@ public class HttpPartitionTest extends A
     Replica leader = cloudClient.getZkStateReader().getLeaderRetry(testCollectionName, shardId);
     JettySolrRunner leaderJetty = getJettyOnPort(getReplicaPort(leader));
 
-    CoreContainer cores = ((SolrDispatchFilter)leaderJetty.getDispatchFilter().getFilter()).getCores();
+    CoreContainer cores = leaderJetty.getCoreContainer();
     ZkController zkController = cores.getZkController();
     assertNotNull("ZkController is null", zkController);
 
@@ -310,8 +309,7 @@ public class HttpPartitionTest extends A
 
     // Get the max version from the replica core to make sure it gets updated after recovery (see SOLR-7625)
     JettySolrRunner replicaJetty = getJettyOnPort(getReplicaPort(notLeader));
-    SolrDispatchFilter filter = (SolrDispatchFilter)replicaJetty.getDispatchFilter().getFilter();
-    CoreContainer coreContainer = filter.getCores();
+    CoreContainer coreContainer = replicaJetty.getCoreContainer();
     ZkCoreNodeProps replicaCoreNodeProps = new ZkCoreNodeProps(notLeader);
     String coreName = replicaCoreNodeProps.getCoreName();
     Long maxVersionBefore = null;

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestLeaderInitiatedRecoveryThread.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestLeaderInitiatedRecoveryThread.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestLeaderInitiatedRecoveryThread.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestLeaderInitiatedRecoveryThread.java Tue Nov 10 10:06:49 2015
@@ -1,6 +1,18 @@
 package org.apache.solr.cloud;
 
 import java.util.Properties;
+import java.util.concurrent.TimeUnit;
+
+import org.apache.solr.SolrTestCaseJ4;
+import org.apache.solr.common.SolrException;
+import org.apache.solr.common.cloud.Replica;
+import org.apache.solr.common.cloud.ZkCoreNodeProps;
+import org.apache.solr.common.cloud.ZkStateReader;
+import org.apache.solr.core.CoreContainer;
+import org.apache.solr.util.MockCoreContainer.MockCoreDescriptor;
+import org.apache.solr.util.TimeOut;
+import org.apache.zookeeper.KeeperException;
+import org.apache.zookeeper.data.Stat;
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
@@ -19,19 +31,6 @@ import java.util.Properties;
  * limitations under the License.
  */
 
-import java.util.concurrent.TimeUnit;
-
-import org.apache.solr.SolrTestCaseJ4;
-import org.apache.solr.common.SolrException;
-import org.apache.solr.common.cloud.Replica;
-import org.apache.solr.common.cloud.ZkCoreNodeProps;
-import org.apache.solr.common.cloud.ZkStateReader;
-import org.apache.solr.servlet.SolrDispatchFilter;
-import org.apache.solr.util.TimeOut;
-import org.apache.solr.util.MockCoreContainer.MockCoreDescriptor;
-import org.apache.zookeeper.KeeperException;
-import org.apache.zookeeper.data.Stat;
-
 /**
  * Test for {@link LeaderInitiatedRecoveryThread}
  */
@@ -48,8 +47,8 @@ public class TestLeaderInitiatedRecovery
 
     final String leaderCoreNodeName = shardToLeaderJetty.get(SHARD1).coreNodeName;
     final CloudJettyRunner leaderRunner = shardToLeaderJetty.get(SHARD1);
-    SolrDispatchFilter filter = (SolrDispatchFilter) leaderRunner.jetty.getDispatchFilter().getFilter();
-    ZkController zkController = filter.getCores().getZkController();
+    CoreContainer coreContainer = leaderRunner.jetty.getCoreContainer();
+    ZkController zkController = coreContainer.getZkController();
 
     CloudJettyRunner notLeader = null;
     for (CloudJettyRunner cloudJettyRunner : shardToJetty.get(SHARD1)) {
@@ -82,7 +81,7 @@ public class TestLeaderInitiatedRecovery
       */
     try {
       
-      LeaderInitiatedRecoveryThread thread = new LeaderInitiatedRecoveryThread(zkController, filter.getCores(),
+      LeaderInitiatedRecoveryThread thread = new LeaderInitiatedRecoveryThread(zkController, coreContainer,
           DEFAULT_COLLECTION, SHARD1, replicaCoreNodeProps, 1, cd);
       assertFalse(zkController.isReplicaInRecoveryHandling(replicaCoreNodeProps.getCoreUrl()));
       thread.run();
@@ -95,7 +94,7 @@ public class TestLeaderInitiatedRecovery
     /*
      2. Test that a non-live replica cannot be put into LIR or down state
       */
-    LeaderInitiatedRecoveryThread thread = new LeaderInitiatedRecoveryThread(zkController, filter.getCores(),
+    LeaderInitiatedRecoveryThread thread = new LeaderInitiatedRecoveryThread(zkController, coreContainer,
         DEFAULT_COLLECTION, SHARD1, replicaCoreNodeProps, 1, cd);
     // kill the replica
     int children = cloudClient.getZkStateReader().getZkClient().getChildren("/live_nodes", null, true).size();
@@ -126,7 +125,7 @@ public class TestLeaderInitiatedRecovery
     ChaosMonkey.start(notLeader.jetty);
     waitForRecoveriesToFinish(true);
 
-    thread = new LeaderInitiatedRecoveryThread(zkController, filter.getCores(),
+    thread = new LeaderInitiatedRecoveryThread(zkController, coreContainer,
         DEFAULT_COLLECTION, SHARD1, replicaCoreNodeProps, 1, cd) {
       @Override
       protected void updateLIRState(String replicaCoreNodeName) {
@@ -141,7 +140,7 @@ public class TestLeaderInitiatedRecovery
     /*
      4. Test that if ZK connection loss or session expired then thread should not attempt to publish down state even if forcePublish=true
       */
-    thread = new LeaderInitiatedRecoveryThread(zkController, filter.getCores(),
+    thread = new LeaderInitiatedRecoveryThread(zkController, coreContainer,
         DEFAULT_COLLECTION, SHARD1, replicaCoreNodeProps, 1, cd) {
       @Override
       protected void updateLIRState(String replicaCoreNodeName) {
@@ -156,7 +155,7 @@ public class TestLeaderInitiatedRecovery
     /*
      5. Test that any exception other then ZK connection loss or session expired should publish down state only if forcePublish=true
       */
-    thread = new LeaderInitiatedRecoveryThread(zkController, filter.getCores(),
+    thread = new LeaderInitiatedRecoveryThread(zkController, coreContainer,
         DEFAULT_COLLECTION, SHARD1, replicaCoreNodeProps, 1, cd) {
       @Override
       protected void updateLIRState(String replicaCoreNodeName) {
@@ -191,12 +190,12 @@ public class TestLeaderInitiatedRecovery
     /*
     6. Test that non-leader cannot set LIR nodes
      */
-    
-    filter = (SolrDispatchFilter) notLeader.jetty.getDispatchFilter().getFilter();
-    zkController = filter.getCores().getZkController();
 
-    thread = new LeaderInitiatedRecoveryThread(zkController, filter.getCores(),
-        DEFAULT_COLLECTION, SHARD1, replicaCoreNodeProps, 1, filter.getCores().getCores().iterator().next().getCoreDescriptor()) {
+    coreContainer = notLeader.jetty.getCoreContainer();
+    zkController = coreContainer.getZkController();
+
+    thread = new LeaderInitiatedRecoveryThread(zkController, coreContainer,
+        DEFAULT_COLLECTION, SHARD1, replicaCoreNodeProps, 1, coreContainer.getCores().iterator().next().getCoreDescriptor()) {
       @Override
       protected void updateLIRState(String replicaCoreNodeName) {
         try {
@@ -215,10 +214,10 @@ public class TestLeaderInitiatedRecovery
      7. assert that we can write a LIR state if everything else is fine
       */
     // reset the zkcontroller to the one from the leader
-    filter = (SolrDispatchFilter) leaderRunner.jetty.getDispatchFilter().getFilter();
-    zkController = filter.getCores().getZkController();
-    thread = new LeaderInitiatedRecoveryThread(zkController, filter.getCores(),
-        DEFAULT_COLLECTION, SHARD1, replicaCoreNodeProps, 1, filter.getCores().getCores().iterator().next().getCoreDescriptor());
+    coreContainer = leaderRunner.jetty.getCoreContainer();
+    zkController = coreContainer.getZkController();
+    thread = new LeaderInitiatedRecoveryThread(zkController, coreContainer,
+        DEFAULT_COLLECTION, SHARD1, replicaCoreNodeProps, 1, coreContainer.getCores().iterator().next().getCoreDescriptor());
     thread.publishDownState(replicaCoreNodeProps.getCoreName(), replica.getName(), replica.getNodeName(), replicaCoreNodeProps.getCoreUrl(), false);
     timeOut = new TimeOut(30, TimeUnit.SECONDS);
     while (!timeOut.hasTimedOut()) {

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestRandomRequestDistribution.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestRandomRequestDistribution.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestRandomRequestDistribution.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/TestRandomRequestDistribution.java Tue Nov 10 10:06:49 2015
@@ -33,14 +33,12 @@ import org.apache.solr.cloud.overseer.Ov
 import org.apache.solr.common.cloud.ClusterState;
 import org.apache.solr.common.cloud.DocCollection;
 import org.apache.solr.common.cloud.Replica;
-import org.apache.solr.common.cloud.Slice;
 import org.apache.solr.common.cloud.ZkNodeProps;
 import org.apache.solr.common.cloud.ZkStateReader;
 import org.apache.solr.common.util.Utils;
 import org.apache.solr.core.CoreContainer;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.request.SolrRequestHandler;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.junit.Test;
 
 
@@ -104,7 +102,7 @@ public class TestRandomRequestDistributi
 
     Map<String, Integer> shardVsCount = new HashMap<>();
     for (JettySolrRunner runner : jettys) {
-      CoreContainer container = ((SolrDispatchFilter) runner.getDispatchFilter().getFilter()).getCores();
+      CoreContainer container = runner.getCoreContainer();
       for (SolrCore core : container.getCores()) {
         SolrRequestHandler select = core.getRequestHandler("");
         long c = (long) select.getStatistics().get("requests");
@@ -179,7 +177,7 @@ public class TestRandomRequestDistributi
 
     //Test to see if the query got forwarded to the active replica or not.
     for (JettySolrRunner jetty : jettys) {
-      CoreContainer container = ((SolrDispatchFilter) jetty.getDispatchFilter().getFilter()).getCores();
+      CoreContainer container = jetty.getCoreContainer();
       for (SolrCore core : container.getCores()) {
         if (core.getName().equals(leader.getStr(ZkStateReader.CORE_NAME_PROP))) {
           SolrRequestHandler select = core.getRequestHandler("");

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/cloud/hdfs/HdfsWriteToMultipleCollectionsTest.java Tue Nov 10 10:06:49 2015
@@ -17,8 +17,12 @@
 
 package org.apache.solr.cloud.hdfs;
 
-import com.carrotsearch.randomizedtesting.annotations.ThreadLeakFilters;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
 
+import com.carrotsearch.randomizedtesting.annotations.ThreadLeakFilters;
 import org.apache.hadoop.hdfs.MiniDFSCluster;
 import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.store.NRTCachingDirectory;
@@ -33,7 +37,6 @@ import org.apache.solr.cloud.StoppableIn
 import org.apache.solr.core.CoreContainer;
 import org.apache.solr.core.HdfsDirectoryFactory;
 import org.apache.solr.core.SolrCore;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.apache.solr.store.blockcache.BlockCache;
 import org.apache.solr.store.blockcache.BlockDirectory;
 import org.apache.solr.store.blockcache.BlockDirectoryCache;
@@ -44,11 +47,6 @@ import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.Test;
 
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
 @Slow
 @Nightly
 @ThreadLeakFilters(defaultFilters = true, filters = {
@@ -127,8 +125,7 @@ public class HdfsWriteToMultipleCollecti
     BlockCache lastBlockCache = null;
     // assert that we are using the block directory and that write and read caching are being used
     for (JettySolrRunner jetty : jettys) {
-      CoreContainer cores = ((SolrDispatchFilter) jetty.getDispatchFilter()
-          .getFilter()).getCores();
+      CoreContainer cores = jetty.getCoreContainer();
       Collection<SolrCore> solrCores = cores.getCores();
       for (SolrCore core : solrCores) {
         if (core.getCoreDescriptor().getCloudDescriptor().getCollectionName()

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java Tue Nov 10 10:06:49 2015
@@ -16,6 +16,27 @@
  */
 package org.apache.solr.handler;
 
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Date;
+import java.util.Properties;
+import java.util.Set;
+import java.util.concurrent.TimeUnit;
+
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.FSDirectory;
 import org.apache.lucene.util.LuceneTestCase.Slow;
@@ -38,39 +59,16 @@ import org.apache.solr.common.SolrInputD
 import org.apache.solr.common.params.ModifiableSolrParams;
 import org.apache.solr.common.params.SolrParams;
 import org.apache.solr.common.util.NamedList;
-import org.apache.solr.common.util.SimpleOrderedMap;
 import org.apache.solr.core.CachingDirectoryFactory;
 import org.apache.solr.core.CoreContainer;
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.core.StandardDirectoryFactory;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.apache.solr.util.FileUtils;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Test;
 
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
-import java.io.Writer;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.nio.charset.StandardCharsets;
-import java.nio.file.Paths;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Date;
-import java.util.Properties;
-import java.util.Set;
-import java.util.concurrent.TimeUnit;
-
 /**
  * Test for ReplicationHandler
  *
@@ -802,7 +800,7 @@ public class TestReplicationHandler exte
   }
 
   private void checkForSingleIndex(JettySolrRunner jetty) {
-    CoreContainer cores = ((SolrDispatchFilter) jetty.getDispatchFilter().getFilter()).getCores();
+    CoreContainer cores = jetty.getCoreContainer();
     Collection<SolrCore> theCores = cores.getCores();
     for (SolrCore core : theCores) {
       String ddir = core.getDataDir();

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/component/TestTrackingShardHandlerFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/component/TestTrackingShardHandlerFactory.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/component/TestTrackingShardHandlerFactory.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/component/TestTrackingShardHandlerFactory.java Tue Nov 10 10:06:49 2015
@@ -29,7 +29,6 @@ import org.apache.solr.client.solrj.impl
 import org.apache.solr.cloud.AbstractFullDistribZkTestBase;
 import org.apache.solr.common.SolrInputDocument;
 import org.apache.solr.core.CoreContainer;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.junit.Test;
 
 /**
@@ -60,7 +59,7 @@ public class TestTrackingShardHandlerFac
     TrackingShardHandlerFactory.setTrackingQueue(runners, trackingQueue);
 
     for (JettySolrRunner runner : runners) {
-      CoreContainer container = ((SolrDispatchFilter) runner.getDispatchFilter().getFilter()).getCores();
+      CoreContainer container = runner.getCoreContainer();
       ShardHandlerFactory factory = container.getShardHandlerFactory();
       assert factory instanceof TrackingShardHandlerFactory;
       TrackingShardHandlerFactory trackingShardHandlerFactory = (TrackingShardHandlerFactory) factory;
@@ -115,7 +114,7 @@ public class TestTrackingShardHandlerFac
     TrackingShardHandlerFactory.setTrackingQueue(runners, null);
 
     for (JettySolrRunner runner : runners) {
-      CoreContainer container = ((SolrDispatchFilter) runner.getDispatchFilter().getFilter()).getCores();
+      CoreContainer container = runner.getCoreContainer();
       ShardHandlerFactory factory = container.getShardHandlerFactory();
       assert factory instanceof TrackingShardHandlerFactory;
       TrackingShardHandlerFactory trackingShardHandlerFactory = (TrackingShardHandlerFactory) factory;

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/update/SolrCmdDistributorTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/update/SolrCmdDistributorTest.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/update/SolrCmdDistributorTest.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/update/SolrCmdDistributorTest.java Tue Nov 10 10:06:49 2015
@@ -17,6 +17,15 @@ package org.apache.solr.update;
  * limitations under the License.
  */
 
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Path;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.concurrent.atomic.AtomicInteger;
+
 import org.apache.lucene.index.LogDocMergePolicy;
 import org.apache.solr.BaseDistributedSearchTestCase;
 import org.apache.solr.client.solrj.SolrClient;
@@ -37,7 +46,6 @@ import org.apache.solr.core.CoreContaine
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.core.SolrEventListener;
 import org.apache.solr.search.SolrIndexSearcher;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.apache.solr.update.MockStreamingSolrClients.Exp;
 import org.apache.solr.update.SolrCmdDistributor.Error;
 import org.apache.solr.update.SolrCmdDistributor.Node;
@@ -48,15 +56,6 @@ import org.junit.BeforeClass;
 import org.junit.Test;
 import org.xml.sax.SAXException;
 
-import javax.xml.parsers.ParserConfigurationException;
-import java.io.File;
-import java.io.IOException;
-import java.nio.file.Path;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.concurrent.atomic.AtomicInteger;
-
 public class SolrCmdDistributorTest extends BaseDistributedSearchTestCase {
   
   private AtomicInteger id = new AtomicInteger();
@@ -275,7 +274,7 @@ public class SolrCmdDistributorTest exte
     
     final AtomicInteger commits = new AtomicInteger();
     for(JettySolrRunner jetty : jettys) {
-      CoreContainer cores = ((SolrDispatchFilter) jetty.getDispatchFilter().getFilter()).getCores();
+      CoreContainer cores = jetty.getCoreContainer();
       try (SolrCore core = cores.getCore("collection1")) {
         core.getUpdateHandler().registerCommitCallback(new SolrEventListener() {
           @Override

Modified: lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractDistribZkTestBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractDistribZkTestBase.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractDistribZkTestBase.java (original)
+++ lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractDistribZkTestBase.java Tue Nov 10 10:06:49 2015
@@ -31,7 +31,6 @@ import org.apache.solr.common.cloud.Solr
 import org.apache.solr.common.cloud.ZkStateReader;
 import org.apache.solr.core.Diagnostics;
 import org.apache.solr.core.MockDirectoryFactory;
-import org.apache.solr.servlet.SolrDispatchFilter;
 import org.apache.zookeeper.KeeperException;
 import org.junit.BeforeClass;
 
@@ -116,8 +115,7 @@ public abstract class AbstractDistribZkT
     
     // now wait till we see the leader for each shard
     for (int i = 1; i <= numShards; i++) {
-      ZkStateReader zkStateReader = ((SolrDispatchFilter) jettys.get(0)
-          .getDispatchFilter().getFilter()).getCores().getZkController()
+      ZkStateReader zkStateReader = jettys.get(0).getCoreContainer().getZkController()
           .getZkStateReader();
       zkStateReader.getLeaderRetry("collection1", "shard" + (i + 2), 15000);
     }

Modified: lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java (original)
+++ lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/AbstractFullDistribZkTestBase.java Tue Nov 10 10:06:49 2015
@@ -1200,8 +1200,7 @@ public abstract class AbstractFullDistri
     log.info("Turning on auto soft commit: " + time);
     for (List<CloudJettyRunner> jettyList : shardToJetty.values()) {
       for (CloudJettyRunner jetty : jettyList) {
-        CoreContainer cores = ((SolrDispatchFilter) jetty.jetty
-            .getDispatchFilter().getFilter()).getCores();
+        CoreContainer cores = jetty.jetty.getCoreContainer();
         for (SolrCore core : cores.getCores()) {
           ((DirectUpdateHandler2) core.getUpdateHandler())
               .getSoftCommitTracker().setTimeUpperBound(time);

Modified: lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/ChaosMonkey.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/ChaosMonkey.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/ChaosMonkey.java (original)
+++ lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/cloud/ChaosMonkey.java Tue Nov 10 10:06:49 2015
@@ -17,6 +17,13 @@ package org.apache.solr.cloud;
  * limitations under the License.
  */
 
+import java.net.InetSocketAddress;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Random;
+import java.util.concurrent.atomic.AtomicInteger;
+
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.solr.client.solrj.SolrClient;
 import org.apache.solr.client.solrj.embedded.JettySolrRunner;
@@ -32,19 +39,9 @@ import org.apache.solr.servlet.SolrDispa
 import org.apache.solr.update.DirectUpdateHandler2;
 import org.apache.solr.util.RTimer;
 import org.apache.zookeeper.KeeperException;
-import org.eclipse.jetty.servlet.FilterHolder;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import javax.servlet.Filter;
-
-import java.net.InetSocketAddress;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Random;
-import java.util.concurrent.atomic.AtomicInteger;
-
 /**
  * The monkey can stop random or specific jetties used with SolrCloud.
  * 
@@ -120,18 +117,15 @@ public class ChaosMonkey {
   // TODO: expire all clients at once?
   public void expireSession(final JettySolrRunner jetty) {
     monkeyLog("expire session for " + jetty.getLocalPort() + " !");
-    
-    SolrDispatchFilter solrDispatchFilter = (SolrDispatchFilter) jetty
-        .getDispatchFilter().getFilter();
-    if (solrDispatchFilter != null) {
-      CoreContainer cores = solrDispatchFilter.getCores();
-      if (cores != null) {
-        causeConnectionLoss(jetty);
-        long sessionId = cores.getZkController().getZkClient()
-            .getSolrZooKeeper().getSessionId();
-        zkServer.expire(sessionId);
-      }
+
+    CoreContainer cores = jetty.getCoreContainer();
+    if (cores != null) {
+      causeConnectionLoss(jetty);
+      long sessionId = cores.getZkController().getZkClient()
+          .getSolrZooKeeper().getSessionId();
+      zkServer.expire(sessionId);
     }
+
   }
   
   public void expireRandomSession() throws KeeperException, InterruptedException {
@@ -156,14 +150,10 @@ public class ChaosMonkey {
   }
   
   public static void causeConnectionLoss(JettySolrRunner jetty) {
-    SolrDispatchFilter solrDispatchFilter = (SolrDispatchFilter) jetty
-        .getDispatchFilter().getFilter();
-    if (solrDispatchFilter != null) {
-      CoreContainer cores = solrDispatchFilter.getCores();
-      if (cores != null) {
-        SolrZkClient zkClient = cores.getZkController().getZkClient();
-        zkClient.getSolrZooKeeper().closeCnxn();
-      }
+    CoreContainer cores = jetty.getCoreContainer();
+    if (cores != null) {
+      SolrZkClient zkClient = cores.getZkController().getZkClient();
+      zkClient.getSolrZooKeeper().closeCnxn();
     }
   }
 
@@ -191,16 +181,11 @@ public class ChaosMonkey {
   private static void stopJettySolrRunner(JettySolrRunner jetty) throws Exception {
     assert(jetty != null);
     monkeyLog("stop shard! " + jetty.getLocalPort());
-    // get a clean close so that no dirs are left open...
-    FilterHolder fh = jetty.getDispatchFilter();
-    if (fh != null) {
-      SolrDispatchFilter sdf = (SolrDispatchFilter) fh.getFilter();
-      if (sdf != null) {
-        sdf.destroy();
-      }
-    }
+    SolrDispatchFilter sdf = jetty.getSolrDispatchFilter();
+    if (sdf != null)
+      sdf.destroy();
     jetty.stop();
-    
+
     if (!jetty.isStopped()) {
       throw new RuntimeException("could not stop jetty");
     }
@@ -214,18 +199,13 @@ public class ChaosMonkey {
   }
   
   public static void kill(JettySolrRunner jetty) throws Exception {
-    FilterHolder filterHolder = jetty.getDispatchFilter();
-    if (filterHolder != null) {
-      Filter filter = filterHolder.getFilter();
-      if (filter != null) {
-        CoreContainer cores = ((SolrDispatchFilter) filter).getCores();
-        if (cores != null) {
-          if (cores.isZooKeeperAware()) {
-            int zklocalport = ((InetSocketAddress) cores.getZkController()
-                .getZkClient().getSolrZooKeeper().getSocketAddress()).getPort();
-            IpTables.blockPort(zklocalport);
-          }
-        }
+
+    CoreContainer cores = jetty.getCoreContainer();
+    if (cores != null) {
+      if (cores.isZooKeeperAware()) {
+        int zklocalport = ((InetSocketAddress) cores.getZkController()
+            .getZkClient().getSolrZooKeeper().getSocketAddress()).getPort();
+        IpTables.blockPort(zklocalport);
       }
     }
 
@@ -352,26 +332,10 @@ public class ChaosMonkey {
         log.error("Could not get leader", t);
         return null;
       }
-      
-      FilterHolder fh = cjetty.jetty.getDispatchFilter();
-      if (fh == null) {
-        monkeyLog("selected jetty not running correctly - skip");
-        return null;
-      }
-      SolrDispatchFilter df = ((SolrDispatchFilter) fh.getFilter());
-      if (df == null) {
-        monkeyLog("selected jetty not running correctly - skip");
-        return null;
-      }
-      CoreContainer cores = df.getCores();
-      if (cores == null) {
-        monkeyLog("selected jetty not running correctly - skip");
-        return null;
-      }
 
       // cluster state can be stale - also go by our 'near real-time' is leader prop
       boolean rtIsLeader;
-      try (SolrCore core = cores.getCore(leader.getStr(ZkStateReader.CORE_NAME_PROP))) {
+      try (SolrCore core = cjetty.jetty.getCoreContainer().getCore(leader.getStr(ZkStateReader.CORE_NAME_PROP))) {
         if (core == null) {
           monkeyLog("selected jetty not running correctly - skip");
           return null;
@@ -589,20 +553,15 @@ public class ChaosMonkey {
         }
       }
     }
-    FilterHolder filterHolder = jetty.getDispatchFilter();
-    if (filterHolder != null) {
-      Filter filter = filterHolder.getFilter();
-      if (filter != null) {
-        CoreContainer cores = ((SolrDispatchFilter) filter).getCores();
-        if (cores != null) {
-          if (cores.isZooKeeperAware()) {
-            int zklocalport = ((InetSocketAddress) cores.getZkController()
-                .getZkClient().getSolrZooKeeper().getSocketAddress()).getPort();
-            IpTables.unblockPort(zklocalport);
-          }
-        }
+    CoreContainer cores = jetty.getCoreContainer();
+    if (cores != null) {
+      if (cores.isZooKeeperAware()) {
+        int zklocalport = ((InetSocketAddress) cores.getZkController()
+            .getZkClient().getSolrZooKeeper().getSocketAddress()).getPort();
+        IpTables.unblockPort(zklocalport);
       }
     }
+
     return true;
   }
 

Modified: lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/handler/component/TrackingShardHandlerFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/handler/component/TrackingShardHandlerFactory.java?rev=1713601&r1=1713600&r2=1713601&view=diff
==============================================================================
--- lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/handler/component/TrackingShardHandlerFactory.java (original)
+++ lucene/dev/trunk/solr/test-framework/src/java/org/apache/solr/handler/component/TrackingShardHandlerFactory.java Tue Nov 10 10:06:49 2015
@@ -35,7 +35,6 @@ import org.apache.solr.common.cloud.ZkSt
 import org.apache.solr.common.params.ModifiableSolrParams;
 import org.apache.solr.common.util.StrUtils;
 import org.apache.solr.core.CoreContainer;
-import org.apache.solr.servlet.SolrDispatchFilter;
 
 /**
  * A ShardHandlerFactory that extends HttpShardHandlerFactory and
@@ -153,7 +152,7 @@ public class TrackingShardHandlerFactory
    */
   public static void setTrackingQueue(List<JettySolrRunner> runners, Queue<ShardRequestAndParams> queue) {
     for (JettySolrRunner runner : runners) {
-      CoreContainer container = ((SolrDispatchFilter) runner.getDispatchFilter().getFilter()).getCores();
+      CoreContainer container = runner.getCoreContainer();
       ShardHandlerFactory factory = container.getShardHandlerFactory();
       assert factory instanceof TrackingShardHandlerFactory : "not a TrackingShardHandlerFactory: " + factory.getClass();
       TrackingShardHandlerFactory trackingShardHandlerFactory = (TrackingShardHandlerFactory) factory;



Mime
View raw message