getPersistentSegmentInfo()
A MilvusClient interface. This method gets the information of persistent segments from data node, including row count, persistence state (growing or flushed), and more.
R<GetPersistentSegmentInfoResponse> getPersistentSegmentInfo(GetPersistentSegmentInfoParam requestParam);
GetPersistentSegmentInfoParam
Use the GetPersistentSegmentInfoParam.Builder
to construct a GetPersistentSegmentInfoParam
object.
import io.milvus.param.GetPersistentSegmentInfoParam;
GetPersistentSegmentInfoParam.Builder builder = GetPersistentSegmentInfoParam.newBuilder();
Methods of GetPersistentSegmentInfoParam.Builder
:
Method |
Description |
Parameters |
---|---|---|
withCollectionName(String collectionName) |
Sets the collection name. Collection name cannot be empty or null. |
collectionName: The name of the collection. |
build() |
Constructs a GetPersistentSegmentInfoParam object. |
N/A |
The GetPersistentSegmentInfoParam.Builder.build()
can throw the following exceptions:
- ParamException: error if the parameter is invalid.
Returns
This method catches all the exceptions and returns an R<GetPersistentSegmentInfoResponse>
object.
If the API fails on the server side, it returns the error code and message from the server.
If the API fails by RPC exception, it returns
R.Status.Unknown
and the error message of the exception.If the API succeeds, it returns a valid
GetPersistentSegmentInfoResponse
held by theR
template. TheGetPersistentSegmentInfoResponse
object contains a list ofPersistentSegmentInfo
, and you can usePersistentSegmentInfo.getState()
to get the state of the segment.
SegmentState
package io.milvus.grpc;
public enum SegmentState
Type |
Code |
Description |
---|---|---|
SegmentStateNone |
0 |
For internal usage. |
NotExist |
1 |
For internal usage. |
Growing |
2 |
A growing segment in query node. |
Sealed |
3 |
The segment is sealed and waiting to be flushed. |
Flushed |
4 |
The segment has been flushed to storage. |
Flushing |
5 |
The server is flushing this segment. |
Dropped |
6 |
The segment has been marked as deleted. |
Importing |
7 |
Reserved for bulkinsert interface. |
Example
import io.milvus.param.*;
import io.milvus.grpc.GetPersistentSegmentInfoResponse;
import io.milvus.grpc.PersistentSegmentInfo;
GetPersistentSegmentInfoParam param = GetPersistentSegmentInfoParam.newBuilder()
.withCollectionName(COLLECTION_NAME)
.build();
R<GetPersistentSegmentInfoResponse> response = client.getPersistentSegmentInfo(param);
if (response.getStatus() != R.Status.Success.getCode()) {
System.out.println(response.getMessage());
}
GetPersistentSegmentInfoResponse segmentInfo = response.getData();
for (int i = 0; i < segmentInfo.getInfosCount(); i++) {
PersistentSegmentInfo info = segmentInfo.getInfos(i);
System.out.println("Segment ID: " + info.getSegmentID() + ", state: " + info.getState() + ", rows: " + info.getNumRows());
}