public void queryAndCompareShards(SolrParams params) throws Exception {
  updateMappingsFromZk(jettys,clients);
  List<String> shards=new ArrayList<>(shardToJetty.keySet());
  for (  String shard : shards) {
    queryAndCompareReplicas(params,shard);
  }
}

public void queryAndCompareShards ( SolrParams params ) throws Exception { updateMappingsFromZk ( jettys , clients ) ; List < String > shards = new ArrayList < > ( shardToJetty . keySet ( ) ) ; for ( String shard : shards ) { queryAndCompareReplicas ( params , shard ) ; } }
for each shard , executes a query against each live and active replica of that shard and asserts that the results are identical for each replica of the same shard . because results are not compared between replicas of different shards , this method should be safe for comparing the results of any query , even if it contains " distrib = false " , because the replicas should all be identical .
