diff --git a/solr/core/src/java/org/apache/solr/cloud/ZkController.java b/solr/core/src/java/org/apache/solr/cloud/ZkController.java index 2ffc89dd0ac..5210df4d6aa 100644 --- a/solr/core/src/java/org/apache/solr/cloud/ZkController.java +++ b/solr/core/src/java/org/apache/solr/cloud/ZkController.java @@ -794,7 +794,7 @@ public final class ZkController { if (!core.isReloaded() && ulog != null) { // disable recovery in case shard is in construction state (for shard splits) Slice slice = getClusterState().getSlice(collection, shardId); - if (!Slice.CONSTRUCTION.equals(slice.getState()) && !isLeader) { + if (!Slice.CONSTRUCTION.equals(slice.getState()) || !isLeader) { Future recoveryFuture = core.getUpdateHandler() .getUpdateLog().recoverFromLog(); if (recoveryFuture != null) {