|
@@ -29,14 +29,14 @@ import org.elasticsearch.cluster.routing.RoutingNode;
|
|
import org.elasticsearch.cluster.routing.RoutingTable;
|
|
import org.elasticsearch.cluster.routing.RoutingTable;
|
|
import org.elasticsearch.cluster.routing.ShardRouting;
|
|
import org.elasticsearch.cluster.routing.ShardRouting;
|
|
import org.elasticsearch.cluster.service.ClusterService;
|
|
import org.elasticsearch.cluster.service.ClusterService;
|
|
-import org.elasticsearch.core.Nullable;
|
|
|
|
import org.elasticsearch.common.component.AbstractLifecycleComponent;
|
|
import org.elasticsearch.common.component.AbstractLifecycleComponent;
|
|
import org.elasticsearch.common.inject.Inject;
|
|
import org.elasticsearch.common.inject.Inject;
|
|
import org.elasticsearch.common.settings.Settings;
|
|
import org.elasticsearch.common.settings.Settings;
|
|
-import org.elasticsearch.core.TimeValue;
|
|
|
|
import org.elasticsearch.common.util.concurrent.AbstractRunnable;
|
|
import org.elasticsearch.common.util.concurrent.AbstractRunnable;
|
|
import org.elasticsearch.common.util.concurrent.ConcurrentCollections;
|
|
import org.elasticsearch.common.util.concurrent.ConcurrentCollections;
|
|
import org.elasticsearch.common.util.concurrent.ThreadContext;
|
|
import org.elasticsearch.common.util.concurrent.ThreadContext;
|
|
|
|
+import org.elasticsearch.core.Nullable;
|
|
|
|
+import org.elasticsearch.core.TimeValue;
|
|
import org.elasticsearch.env.ShardLockObtainFailedException;
|
|
import org.elasticsearch.env.ShardLockObtainFailedException;
|
|
import org.elasticsearch.gateway.GatewayService;
|
|
import org.elasticsearch.gateway.GatewayService;
|
|
import org.elasticsearch.index.Index;
|
|
import org.elasticsearch.index.Index;
|
|
@@ -76,7 +76,6 @@ import java.util.List;
|
|
import java.util.Map;
|
|
import java.util.Map;
|
|
import java.util.Set;
|
|
import java.util.Set;
|
|
import java.util.concurrent.ConcurrentMap;
|
|
import java.util.concurrent.ConcurrentMap;
|
|
-import java.util.concurrent.TimeUnit;
|
|
|
|
import java.util.function.BiConsumer;
|
|
import java.util.function.BiConsumer;
|
|
import java.util.function.Consumer;
|
|
import java.util.function.Consumer;
|
|
|
|
|
|
@@ -327,14 +326,15 @@ public class IndicesClusterStateService extends AbstractLifecycleComponent imple
|
|
|
|
|
|
@Override
|
|
@Override
|
|
protected void doRun() throws Exception {
|
|
protected void doRun() throws Exception {
|
|
|
|
+ final TimeValue timeout = TimeValue.timeValueMinutes(30);
|
|
try {
|
|
try {
|
|
// we are waiting until we can lock the index / all shards on the node and then we ack the delete of the store
|
|
// we are waiting until we can lock the index / all shards on the node and then we ack the delete of the store
|
|
// to the master. If we can't acquire the locks here immediately there might be a shard of this index still
|
|
// to the master. If we can't acquire the locks here immediately there might be a shard of this index still
|
|
// holding on to the lock due to a "currently canceled recovery" or so. The shard will delete itself BEFORE the
|
|
// holding on to the lock due to a "currently canceled recovery" or so. The shard will delete itself BEFORE the
|
|
// lock is released so it's guaranteed to be deleted by the time we get the lock
|
|
// lock is released so it's guaranteed to be deleted by the time we get the lock
|
|
- indicesService.processPendingDeletes(index, indexSettings, new TimeValue(30, TimeUnit.MINUTES));
|
|
|
|
|
|
+ indicesService.processPendingDeletes(index, indexSettings, timeout);
|
|
} catch (ShardLockObtainFailedException exc) {
|
|
} catch (ShardLockObtainFailedException exc) {
|
|
- logger.warn("[{}] failed to lock all shards for index - timed out after 30 seconds", index);
|
|
|
|
|
|
+ logger.warn("[{}] failed to lock all shards for index - timed out after [{}]]", index, timeout);
|
|
} catch (InterruptedException e) {
|
|
} catch (InterruptedException e) {
|
|
logger.warn("[{}] failed to lock all shards for index - interrupted", index);
|
|
logger.warn("[{}] failed to lock all shards for index - interrupted", index);
|
|
}
|
|
}
|