Skip to content

Commit 51a6e67

Browse files
committed
Handle version during repository registration for prefix mode verification
Signed-off-by: Ashish Singh <[email protected]>
1 parent 5aa6509 commit 51a6e67

File tree

3 files changed

+20
-1
lines changed

3 files changed

+20
-1
lines changed

server/src/main/java/org/opensearch/cluster/service/ClusterApplierService.java

+7
Original file line numberDiff line numberDiff line change
@@ -233,6 +233,13 @@ public ClusterState state() {
233233
return clusterState;
234234
}
235235

236+
/**
237+
* Returns true if the appliedClusterState is not null
238+
*/
239+
public boolean isStateInitialised() {
240+
return this.state.get() != null;
241+
}
242+
236243
/**
237244
* Returns true if the appliedClusterState is not null
238245
*/

server/src/main/java/org/opensearch/cluster/service/ClusterService.java

+7
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,13 @@ public ClusterState state() {
183183
return clusterApplierService.state();
184184
}
185185

186+
/**
187+
* Returns true if the state in appliedClusterState is not null
188+
*/
189+
public boolean isStateInitialised() {
190+
return clusterApplierService.isStateInitialised();
191+
}
192+
186193
/**
187194
* The state that is persisted to store but may not be applied to cluster.
188195
* @return ClusterState

server/src/main/java/org/opensearch/repositories/blobstore/BlobStoreRepository.java

+6-1
Original file line numberDiff line numberDiff line change
@@ -2994,7 +2994,12 @@ public String startVerification() {
29942994
*/
29952995
private BlobContainer testContainer(String seed) {
29962996
BlobPath testBlobPath;
2997-
if (prefixModeVerification == true) {
2997+
2998+
if (prefixModeVerification == true
2999+
&& (clusterService.isStateInitialised() == false
3000+
|| clusterService.state().nodes().getMinNodeVersion().onOrAfter(Version.V_2_17_0))) {
3001+
// During the remote store node bootstrap, the cluster state is not initialised
3002+
// Otherwise, the cluster state is initialised and available with the min node version information
29983003
PathInput pathInput = PathInput.builder().basePath(basePath()).indexUUID(seed).build();
29993004
testBlobPath = PathType.HASHED_PREFIX.path(pathInput, FNV_1A_COMPOSITE_1);
30003005
} else {

0 commit comments

Comments
 (0)