Before you begin reading this guide, we recommend you try running the Elasticsearch Error Check-Up which analyzes 2 JSON files to detect many configuration errors.
To easily locate the root cause and resolve this issue try AutoOps for Elasticsearch & OpenSearch. It diagnoses problems by analyzing hundreds of metrics collected by a lightweight agent and offers guidance for resolving them.
This guide will help you check for common problems that cause the log ” only allow store that can be opened or that throws a ShardLockObtainFailedException while being opened but got a ” to appear. To understand the issues related to this log, read the explanation below about the following Elasticsearch concepts: shard.
Log Context
Log “only allow store that can be opened or that throws a ShardLockObtainFailedException while being opened but got a”classname is PrimaryShardAllocator.java We extracted the following from Elasticsearch source code for those seeking an in-depth context :
} if (allocationId != null) { assert nodeShardState.storeException() == null || nodeShardState.storeException() instanceof ShardLockObtainFailedException : "only allow store that can be opened or that throws a ShardLockObtainFailedException while being opened but got a " + "store throwing " + nodeShardState.storeException(); numberOfAllocationsFound++; if (matchAnyShard || inSyncAllocationIds.contains(nodeShardState.allocationId())) { nodeShardStates.add(nodeShardState); }
See how you can use AutoOps to resolve issues
