mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-06 17:18:35 +08:00
issue: https://github.com/milvus-io/milvus/issues/44123 Signed-off-by: bigsheeper <yihao.dai@zilliz.com>
55 lines
1.9 KiB
Go
55 lines
1.9 KiB
Go
package milvusclient
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/cockroachdb/errors"
|
|
"google.golang.org/grpc"
|
|
|
|
"github.com/milvus-io/milvus-proto/go-api/v2/commonpb"
|
|
"github.com/milvus-io/milvus-proto/go-api/v2/milvuspb"
|
|
"github.com/milvus-io/milvus/pkg/v2/util/merr"
|
|
)
|
|
|
|
// UpdateReplicateConfiguration updates the replicate configuration to the Milvus cluster.
|
|
// Use ReplicateConfigurationBuilder to build the configuration.
|
|
func (c *Client) UpdateReplicateConfiguration(ctx context.Context, config *commonpb.ReplicateConfiguration, opts ...grpc.CallOption) error {
|
|
req := &milvuspb.UpdateReplicateConfigurationRequest{
|
|
ReplicateConfiguration: config,
|
|
}
|
|
|
|
err := c.callService(func(milvusService milvuspb.MilvusServiceClient) error {
|
|
resp, err := milvusService.UpdateReplicateConfiguration(ctx, req, opts...)
|
|
return merr.CheckRPCCall(resp, err)
|
|
})
|
|
return err
|
|
}
|
|
|
|
// GetReplicateInfo gets replicate information from the Milvus cluster
|
|
func (c *Client) GetReplicateInfo(ctx context.Context, req *milvuspb.GetReplicateInfoRequest, opts ...grpc.CallOption) (*milvuspb.GetReplicateInfoResponse, error) {
|
|
var resp *milvuspb.GetReplicateInfoResponse
|
|
err := c.callService(func(milvusService milvuspb.MilvusServiceClient) error {
|
|
var err error
|
|
resp, err = milvusService.GetReplicateInfo(ctx, req, opts...)
|
|
return merr.CheckRPCCall(resp, err)
|
|
})
|
|
return resp, err
|
|
}
|
|
|
|
// CreateReplicateStream creates a replicate stream
|
|
func (c *Client) CreateReplicateStream(ctx context.Context, opts ...grpc.CallOption) (milvuspb.MilvusService_CreateReplicateStreamClient, error) {
|
|
var streamClient milvuspb.MilvusService_CreateReplicateStreamClient
|
|
err := c.callService(func(milvusService milvuspb.MilvusServiceClient) error {
|
|
var err error
|
|
streamClient, err = milvusService.CreateReplicateStream(ctx, opts...)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
if streamClient == nil {
|
|
return errors.New("stream client is nil")
|
|
}
|
|
return nil
|
|
})
|
|
return streamClient, err
|
|
}
|