Skip to content

Commit

Permalink
[fix][dingo-executor] Fix disk ann index status issue (#1328)
Browse files Browse the repository at this point in the history
  • Loading branch information
githubgxll authored Jan 8, 2025
1 parent 1874910 commit a54de00
Showing 1 changed file with 22 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -598,7 +598,7 @@ public List<VectorSearchResponse> vectorSearch(
.search(search)
.build();
if (isDiskAnn) {
String diskAnnStatus = diskAnnStatus(requestTs, indexId);
String diskAnnStatus = diskAnnDetailStatus(requestTs, indexId);
if (diskAnnStatus != null && diskAnnStatus.equals("NODATA")) {
parameter.setUseBruteForce(true);
}
Expand Down Expand Up @@ -686,12 +686,16 @@ public String diskAnnBuild(long requestTs, CommonId indexId, long ts) {
);
Optional<VectorStateParameter> optionalState = Optional.ofNullable(vectorBuildResponse.getState());
return optionalState
.map(state -> ((StateDiskAnnParam) state.getState()).getState().toString())
.orElse("INITIALIZED");
.map(state -> ((StateDiskAnnParam) state.getState()).getDiskannState().toString())
.orElse("DISKANN_INITIALIZED");
}

@Override
public String diskAnnLoad(long requestTs, CommonId indexId, int nodesCacheNum, boolean warmup) {
String diskAnnStatus = diskAnnDetailStatus(requestTs, indexId);
if (diskAnnStatus != null && diskAnnStatus.equals("NODATA")) {
return "NODATA";
}
VectorLoadResponse vectorLoadResponse = indexService(indexId, regionId).vectorLoad(
requestTs,
VectorLoadRequest.builder()
Expand All @@ -708,12 +712,23 @@ public String diskAnnLoad(long requestTs, CommonId indexId, int nodesCacheNum, b
);
Optional<VectorStateParameter> optionalState = Optional.ofNullable(vectorLoadResponse.getState());
return optionalState
.map(state -> ((StateDiskAnnParam) state.getState()).getState().toString())
.orElse("INITIALIZED");
.map(state -> ((StateDiskAnnParam) state.getState()).getDiskannState().toString())
.orElse("DISKANN_INITIALIZED");
}

@Override
public String diskAnnStatus(long requestTs, CommonId indexId) {
VectorStatusResponse vectorStatusResponse = indexService(indexId, regionId).vectorStatus(
requestTs,
VectorStatusRequest.builder().build()
);
Optional<VectorStateParameter> optionalState = Optional.ofNullable(vectorStatusResponse.getState());
return optionalState
.map(state -> ((StateDiskAnnParam) state.getState()).getDiskannState().toString())
.orElse("DISKANN_INITIALIZED");
}

public String diskAnnDetailStatus(long requestTs, CommonId indexId) {
VectorStatusResponse vectorStatusResponse = indexService(indexId, regionId).vectorStatus(
requestTs,
VectorStatusRequest.builder().build()
Expand All @@ -732,8 +747,8 @@ public String diskAnnReset(long requestTs, CommonId indexId) {
);
Optional<VectorStateParameter> optionalState = Optional.ofNullable(vectorResetResponse.getState());
return optionalState
.map(state -> ((StateDiskAnnParam) state.getState()).getState().toString())
.orElse("INITIALIZED");
.map(state -> ((StateDiskAnnParam) state.getState()).getDiskannState().toString())
.orElse("DISKANN_INITIALIZED");
}

@Override
Expand Down

0 comments on commit a54de00

Please sign in to comment.