milvus-logo
LFAI
< Docs
  • Java

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 the R template. The GetPersistentSegmentInfoResponse object contains a list of PersistentSegmentInfo, and you can use PersistentSegmentInfo.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());
}
Feedback

Was this page helpful?