Skip to content

Commit e9fbd2d

Browse files
enhance: Sync PyMilvus milvus-proto commit to v2.6.2 (#2995)
- enhance: Make milvus-lite an optional dependency (#2976) this PR is a possible implementation addressing this #2975 Signed-off-by: yangxuan <[email protected]> Co-authored-by: Jagath Jai Kumar <[email protected]> Co-authored-by: Jagath Jai Kumar <[email protected]>
1 parent 9d2556a commit e9fbd2d

File tree

11 files changed

+786
-453
lines changed

11 files changed

+786
-453
lines changed

pymilvus/grpc_gen/common_pb2.py

Lines changed: 53 additions & 33 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pymilvus/grpc_gen/common_pb2.pyi

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -375,6 +375,15 @@ class LoadPriority(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
375375
class FileResourceType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
376376
__slots__ = ()
377377
ANALYZER_DICTIONARY: _ClassVar[FileResourceType]
378+
379+
class WALName(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
380+
__slots__ = ()
381+
Unknown: _ClassVar[WALName]
382+
RocksMQ: _ClassVar[WALName]
383+
Pulsar: _ClassVar[WALName]
384+
Kafka: _ClassVar[WALName]
385+
WoodPecker: _ClassVar[WALName]
386+
Test: _ClassVar[WALName]
378387
Success: ErrorCode
379388
UnexpectedError: ErrorCode
380389
ConnectFailed: ErrorCode
@@ -696,6 +705,12 @@ LoadStateLoaded: LoadState
696705
HIGH: LoadPriority
697706
LOW: LoadPriority
698707
ANALYZER_DICTIONARY: FileResourceType
708+
Unknown: WALName
709+
RocksMQ: WALName
710+
Pulsar: WALName
711+
Kafka: WALName
712+
WoodPecker: WALName
713+
Test: WALName
699714
PRIVILEGE_EXT_OBJ_FIELD_NUMBER: _ClassVar[int]
700715
privilege_ext_obj: _descriptor.FieldDescriptor
701716

@@ -892,3 +907,74 @@ class NodeInfo(_message.Message):
892907
address: str
893908
hostname: str
894909
def __init__(self, node_id: _Optional[int] = ..., address: _Optional[str] = ..., hostname: _Optional[str] = ...) -> None: ...
910+
911+
class ReplicateConfiguration(_message.Message):
912+
__slots__ = ("clusters", "cross_cluster_topology")
913+
CLUSTERS_FIELD_NUMBER: _ClassVar[int]
914+
CROSS_CLUSTER_TOPOLOGY_FIELD_NUMBER: _ClassVar[int]
915+
clusters: _containers.RepeatedCompositeFieldContainer[MilvusCluster]
916+
cross_cluster_topology: _containers.RepeatedCompositeFieldContainer[CrossClusterTopology]
917+
def __init__(self, clusters: _Optional[_Iterable[_Union[MilvusCluster, _Mapping]]] = ..., cross_cluster_topology: _Optional[_Iterable[_Union[CrossClusterTopology, _Mapping]]] = ...) -> None: ...
918+
919+
class ConnectionParam(_message.Message):
920+
__slots__ = ("uri", "token")
921+
URI_FIELD_NUMBER: _ClassVar[int]
922+
TOKEN_FIELD_NUMBER: _ClassVar[int]
923+
uri: str
924+
token: str
925+
def __init__(self, uri: _Optional[str] = ..., token: _Optional[str] = ...) -> None: ...
926+
927+
class MilvusCluster(_message.Message):
928+
__slots__ = ("cluster_id", "connection_param", "pchannels")
929+
CLUSTER_ID_FIELD_NUMBER: _ClassVar[int]
930+
CONNECTION_PARAM_FIELD_NUMBER: _ClassVar[int]
931+
PCHANNELS_FIELD_NUMBER: _ClassVar[int]
932+
cluster_id: str
933+
connection_param: ConnectionParam
934+
pchannels: _containers.RepeatedScalarFieldContainer[str]
935+
def __init__(self, cluster_id: _Optional[str] = ..., connection_param: _Optional[_Union[ConnectionParam, _Mapping]] = ..., pchannels: _Optional[_Iterable[str]] = ...) -> None: ...
936+
937+
class CrossClusterTopology(_message.Message):
938+
__slots__ = ("source_cluster_id", "target_cluster_id")
939+
SOURCE_CLUSTER_ID_FIELD_NUMBER: _ClassVar[int]
940+
TARGET_CLUSTER_ID_FIELD_NUMBER: _ClassVar[int]
941+
source_cluster_id: str
942+
target_cluster_id: str
943+
def __init__(self, source_cluster_id: _Optional[str] = ..., target_cluster_id: _Optional[str] = ...) -> None: ...
944+
945+
class MessageID(_message.Message):
946+
__slots__ = ("id", "WAL_name")
947+
ID_FIELD_NUMBER: _ClassVar[int]
948+
WAL_NAME_FIELD_NUMBER: _ClassVar[int]
949+
id: str
950+
WAL_name: WALName
951+
def __init__(self, id: _Optional[str] = ..., WAL_name: _Optional[_Union[WALName, str]] = ...) -> None: ...
952+
953+
class ImmutableMessage(_message.Message):
954+
__slots__ = ("id", "payload", "properties")
955+
class PropertiesEntry(_message.Message):
956+
__slots__ = ("key", "value")
957+
KEY_FIELD_NUMBER: _ClassVar[int]
958+
VALUE_FIELD_NUMBER: _ClassVar[int]
959+
key: str
960+
value: str
961+
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
962+
ID_FIELD_NUMBER: _ClassVar[int]
963+
PAYLOAD_FIELD_NUMBER: _ClassVar[int]
964+
PROPERTIES_FIELD_NUMBER: _ClassVar[int]
965+
id: MessageID
966+
payload: bytes
967+
properties: _containers.ScalarMap[str, str]
968+
def __init__(self, id: _Optional[_Union[MessageID, _Mapping]] = ..., payload: _Optional[bytes] = ..., properties: _Optional[_Mapping[str, str]] = ...) -> None: ...
969+
970+
class ReplicateCheckpoint(_message.Message):
971+
__slots__ = ("cluster_id", "pchannel", "message_id", "time_tick")
972+
CLUSTER_ID_FIELD_NUMBER: _ClassVar[int]
973+
PCHANNEL_FIELD_NUMBER: _ClassVar[int]
974+
MESSAGE_ID_FIELD_NUMBER: _ClassVar[int]
975+
TIME_TICK_FIELD_NUMBER: _ClassVar[int]
976+
cluster_id: str
977+
pchannel: str
978+
message_id: MessageID
979+
time_tick: int
980+
def __init__(self, cluster_id: _Optional[str] = ..., pchannel: _Optional[str] = ..., message_id: _Optional[_Union[MessageID, _Mapping]] = ..., time_tick: _Optional[int] = ...) -> None: ...

pymilvus/grpc_gen/milvus_pb2.py

Lines changed: 368 additions & 354 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pymilvus/grpc_gen/milvus_pb2.pyi

Lines changed: 52 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -752,7 +752,7 @@ class DropIndexRequest(_message.Message):
752752
def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., field_name: _Optional[str] = ..., index_name: _Optional[str] = ...) -> None: ...
753753

754754
class InsertRequest(_message.Message):
755-
__slots__ = ("base", "db_name", "collection_name", "partition_name", "fields_data", "hash_keys", "num_rows", "schema_timestamp")
755+
__slots__ = ("base", "db_name", "collection_name", "partition_name", "fields_data", "hash_keys", "num_rows", "schema_timestamp", "namespace")
756756
BASE_FIELD_NUMBER: _ClassVar[int]
757757
DB_NAME_FIELD_NUMBER: _ClassVar[int]
758758
COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
@@ -761,6 +761,7 @@ class InsertRequest(_message.Message):
761761
HASH_KEYS_FIELD_NUMBER: _ClassVar[int]
762762
NUM_ROWS_FIELD_NUMBER: _ClassVar[int]
763763
SCHEMA_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
764+
NAMESPACE_FIELD_NUMBER: _ClassVar[int]
764765
base: _common_pb2.MsgBase
765766
db_name: str
766767
collection_name: str
@@ -769,7 +770,8 @@ class InsertRequest(_message.Message):
769770
hash_keys: _containers.RepeatedScalarFieldContainer[int]
770771
num_rows: int
771772
schema_timestamp: int
772-
def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ..., fields_data: _Optional[_Iterable[_Union[_schema_pb2.FieldData, _Mapping]]] = ..., hash_keys: _Optional[_Iterable[int]] = ..., num_rows: _Optional[int] = ..., schema_timestamp: _Optional[int] = ...) -> None: ...
773+
namespace: str
774+
def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ..., fields_data: _Optional[_Iterable[_Union[_schema_pb2.FieldData, _Mapping]]] = ..., hash_keys: _Optional[_Iterable[int]] = ..., num_rows: _Optional[int] = ..., schema_timestamp: _Optional[int] = ..., namespace: _Optional[str] = ...) -> None: ...
773775

774776
class AddCollectionFieldRequest(_message.Message):
775777
__slots__ = ("base", "db_name", "collection_name", "collectionID", "schema")
@@ -786,7 +788,7 @@ class AddCollectionFieldRequest(_message.Message):
786788
def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., collectionID: _Optional[int] = ..., schema: _Optional[bytes] = ...) -> None: ...
787789

788790
class UpsertRequest(_message.Message):
789-
__slots__ = ("base", "db_name", "collection_name", "partition_name", "fields_data", "hash_keys", "num_rows", "schema_timestamp", "partial_update")
791+
__slots__ = ("base", "db_name", "collection_name", "partition_name", "fields_data", "hash_keys", "num_rows", "schema_timestamp", "partial_update", "namespace")
790792
BASE_FIELD_NUMBER: _ClassVar[int]
791793
DB_NAME_FIELD_NUMBER: _ClassVar[int]
792794
COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
@@ -796,6 +798,7 @@ class UpsertRequest(_message.Message):
796798
NUM_ROWS_FIELD_NUMBER: _ClassVar[int]
797799
SCHEMA_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
798800
PARTIAL_UPDATE_FIELD_NUMBER: _ClassVar[int]
801+
NAMESPACE_FIELD_NUMBER: _ClassVar[int]
799802
base: _common_pb2.MsgBase
800803
db_name: str
801804
collection_name: str
@@ -805,7 +808,8 @@ class UpsertRequest(_message.Message):
805808
num_rows: int
806809
schema_timestamp: int
807810
partial_update: bool
808-
def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ..., fields_data: _Optional[_Iterable[_Union[_schema_pb2.FieldData, _Mapping]]] = ..., hash_keys: _Optional[_Iterable[int]] = ..., num_rows: _Optional[int] = ..., schema_timestamp: _Optional[int] = ..., partial_update: bool = ...) -> None: ...
811+
namespace: str
812+
def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ..., fields_data: _Optional[_Iterable[_Union[_schema_pb2.FieldData, _Mapping]]] = ..., hash_keys: _Optional[_Iterable[int]] = ..., num_rows: _Optional[int] = ..., schema_timestamp: _Optional[int] = ..., partial_update: bool = ..., namespace: _Optional[str] = ...) -> None: ...
809813

810814
class MutationResult(_message.Message):
811815
__slots__ = ("status", "IDs", "succ_index", "err_index", "acknowledged", "insert_cnt", "delete_cnt", "upsert_cnt", "timestamp")
@@ -2542,3 +2546,47 @@ class ListRowPoliciesResponse(_message.Message):
25422546
db_name: str
25432547
collection_name: str
25442548
def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., policies: _Optional[_Iterable[_Union[RowPolicy, _Mapping]]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ...) -> None: ...
2549+
2550+
class UpdateReplicateConfigurationRequest(_message.Message):
2551+
__slots__ = ("replicate_configuration",)
2552+
REPLICATE_CONFIGURATION_FIELD_NUMBER: _ClassVar[int]
2553+
replicate_configuration: _common_pb2.ReplicateConfiguration
2554+
def __init__(self, replicate_configuration: _Optional[_Union[_common_pb2.ReplicateConfiguration, _Mapping]] = ...) -> None: ...
2555+
2556+
class GetReplicateInfoRequest(_message.Message):
2557+
__slots__ = ("source_cluster_id",)
2558+
SOURCE_CLUSTER_ID_FIELD_NUMBER: _ClassVar[int]
2559+
source_cluster_id: str
2560+
def __init__(self, source_cluster_id: _Optional[str] = ...) -> None: ...
2561+
2562+
class GetReplicateInfoResponse(_message.Message):
2563+
__slots__ = ("checkpoints",)
2564+
CHECKPOINTS_FIELD_NUMBER: _ClassVar[int]
2565+
checkpoints: _containers.RepeatedCompositeFieldContainer[_common_pb2.ReplicateCheckpoint]
2566+
def __init__(self, checkpoints: _Optional[_Iterable[_Union[_common_pb2.ReplicateCheckpoint, _Mapping]]] = ...) -> None: ...
2567+
2568+
class ReplicateMessage(_message.Message):
2569+
__slots__ = ("source_cluster_id", "message")
2570+
SOURCE_CLUSTER_ID_FIELD_NUMBER: _ClassVar[int]
2571+
MESSAGE_FIELD_NUMBER: _ClassVar[int]
2572+
source_cluster_id: str
2573+
message: _common_pb2.ImmutableMessage
2574+
def __init__(self, source_cluster_id: _Optional[str] = ..., message: _Optional[_Union[_common_pb2.ImmutableMessage, _Mapping]] = ...) -> None: ...
2575+
2576+
class ReplicateRequest(_message.Message):
2577+
__slots__ = ("replicate_message",)
2578+
REPLICATE_MESSAGE_FIELD_NUMBER: _ClassVar[int]
2579+
replicate_message: ReplicateMessage
2580+
def __init__(self, replicate_message: _Optional[_Union[ReplicateMessage, _Mapping]] = ...) -> None: ...
2581+
2582+
class ReplicateConfirmedMessageInfo(_message.Message):
2583+
__slots__ = ("confirmed_time_tick",)
2584+
CONFIRMED_TIME_TICK_FIELD_NUMBER: _ClassVar[int]
2585+
confirmed_time_tick: int
2586+
def __init__(self, confirmed_time_tick: _Optional[int] = ...) -> None: ...
2587+
2588+
class ReplicateResponse(_message.Message):
2589+
__slots__ = ("replicate_confirmed_message_info",)
2590+
REPLICATE_CONFIRMED_MESSAGE_INFO_FIELD_NUMBER: _ClassVar[int]
2591+
replicate_confirmed_message_info: ReplicateConfirmedMessageInfo
2592+
def __init__(self, replicate_confirmed_message_info: _Optional[_Union[ReplicateConfirmedMessageInfo, _Mapping]] = ...) -> None: ...

pymilvus/grpc_gen/milvus_pb2_grpc.py

Lines changed: 152 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -571,6 +571,21 @@ def __init__(self, channel):
571571
request_serializer=milvus__pb2.ListRowPoliciesRequest.SerializeToString,
572572
response_deserializer=milvus__pb2.ListRowPoliciesResponse.FromString,
573573
_registered_method=True)
574+
self.UpdateReplicateConfiguration = channel.unary_unary(
575+
'/milvus.proto.milvus.MilvusService/UpdateReplicateConfiguration',
576+
request_serializer=milvus__pb2.UpdateReplicateConfigurationRequest.SerializeToString,
577+
response_deserializer=common__pb2.Status.FromString,
578+
_registered_method=True)
579+
self.GetReplicateInfo = channel.unary_unary(
580+
'/milvus.proto.milvus.MilvusService/GetReplicateInfo',
581+
request_serializer=milvus__pb2.GetReplicateInfoRequest.SerializeToString,
582+
response_deserializer=milvus__pb2.GetReplicateInfoResponse.FromString,
583+
_registered_method=True)
584+
self.CreateReplicateStream = channel.stream_stream(
585+
'/milvus.proto.milvus.MilvusService/CreateReplicateStream',
586+
request_serializer=milvus__pb2.ReplicateRequest.SerializeToString,
587+
response_deserializer=milvus__pb2.ReplicateResponse.FromString,
588+
_registered_method=True)
574589

575590

576591
class MilvusServiceServicer(object):
@@ -1118,7 +1133,8 @@ def DescribeDatabase(self, request, context):
11181133
raise NotImplementedError('Method not implemented!')
11191134

11201135
def ReplicateMessage(self, request, context):
1121-
"""Missing associated documentation comment in .proto file."""
1136+
"""Deprecated CDC API
1137+
"""
11221138
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
11231139
context.set_details('Method not implemented!')
11241140
raise NotImplementedError('Method not implemented!')
@@ -1226,6 +1242,45 @@ def ListRowPolicies(self, request, context):
12261242
context.set_details('Method not implemented!')
12271243
raise NotImplementedError('Method not implemented!')
12281244

1245+
def UpdateReplicateConfiguration(self, request, context):
1246+
"""CDC v2 APIs
1247+
UpdateReplicateConfiguration applies a full replacement of the current
1248+
replication configuration across Milvus clusters.
1249+
1250+
Semantics:
1251+
- The provided ReplicateConfiguration completely replaces any existing
1252+
configuration persisted in the metadata store.
1253+
- Passing an empty ReplicateConfiguration is treated as a "clear"
1254+
operation, effectively removing all replication configuration.
1255+
- The RPC is expected to be idempotent: submitting the same configuration
1256+
multiple times must not cause side effects.
1257+
"""
1258+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
1259+
context.set_details('Method not implemented!')
1260+
raise NotImplementedError('Method not implemented!')
1261+
1262+
def GetReplicateInfo(self, request, context):
1263+
"""
1264+
GetReplicateInfo retrieves replication-related metadata from a target Milvus cluster.
1265+
"""
1266+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
1267+
context.set_details('Method not implemented!')
1268+
raise NotImplementedError('Method not implemented!')
1269+
1270+
def CreateReplicateStream(self, request_iterator, context):
1271+
"""
1272+
CreateReplicateStream establishes a replication stream on the target Milvus cluster.
1273+
1274+
Semantics:
1275+
- Sets up a continuous data stream that receives replicated messages
1276+
(DDL, insert, delete, etc.) from the source cluster via CDC.
1277+
- Once established, the target cluster persists incoming messages into
1278+
its WAL (Write-Ahead Log) ensuring durability and consistency.
1279+
"""
1280+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
1281+
context.set_details('Method not implemented!')
1282+
raise NotImplementedError('Method not implemented!')
1283+
12291284

12301285
def add_MilvusServiceServicer_to_server(servicer, server):
12311286
rpc_method_handlers = {
@@ -1764,6 +1819,21 @@ def add_MilvusServiceServicer_to_server(servicer, server):
17641819
request_deserializer=milvus__pb2.ListRowPoliciesRequest.FromString,
17651820
response_serializer=milvus__pb2.ListRowPoliciesResponse.SerializeToString,
17661821
),
1822+
'UpdateReplicateConfiguration': grpc.unary_unary_rpc_method_handler(
1823+
servicer.UpdateReplicateConfiguration,
1824+
request_deserializer=milvus__pb2.UpdateReplicateConfigurationRequest.FromString,
1825+
response_serializer=common__pb2.Status.SerializeToString,
1826+
),
1827+
'GetReplicateInfo': grpc.unary_unary_rpc_method_handler(
1828+
servicer.GetReplicateInfo,
1829+
request_deserializer=milvus__pb2.GetReplicateInfoRequest.FromString,
1830+
response_serializer=milvus__pb2.GetReplicateInfoResponse.SerializeToString,
1831+
),
1832+
'CreateReplicateStream': grpc.stream_stream_rpc_method_handler(
1833+
servicer.CreateReplicateStream,
1834+
request_deserializer=milvus__pb2.ReplicateRequest.FromString,
1835+
response_serializer=milvus__pb2.ReplicateResponse.SerializeToString,
1836+
),
17671837
}
17681838
generic_handler = grpc.method_handlers_generic_handler(
17691839
'milvus.proto.milvus.MilvusService', rpc_method_handlers)
@@ -4664,6 +4734,87 @@ def ListRowPolicies(request,
46644734
metadata,
46654735
_registered_method=True)
46664736

4737+
@staticmethod
4738+
def UpdateReplicateConfiguration(request,
4739+
target,
4740+
options=(),
4741+
channel_credentials=None,
4742+
call_credentials=None,
4743+
insecure=False,
4744+
compression=None,
4745+
wait_for_ready=None,
4746+
timeout=None,
4747+
metadata=None):
4748+
return grpc.experimental.unary_unary(
4749+
request,
4750+
target,
4751+
'/milvus.proto.milvus.MilvusService/UpdateReplicateConfiguration',
4752+
milvus__pb2.UpdateReplicateConfigurationRequest.SerializeToString,
4753+
common__pb2.Status.FromString,
4754+
options,
4755+
channel_credentials,
4756+
insecure,
4757+
call_credentials,
4758+
compression,
4759+
wait_for_ready,
4760+
timeout,
4761+
metadata,
4762+
_registered_method=True)
4763+
4764+
@staticmethod
4765+
def GetReplicateInfo(request,
4766+
target,
4767+
options=(),
4768+
channel_credentials=None,
4769+
call_credentials=None,
4770+
insecure=False,
4771+
compression=None,
4772+
wait_for_ready=None,
4773+
timeout=None,
4774+
metadata=None):
4775+
return grpc.experimental.unary_unary(
4776+
request,
4777+
target,
4778+
'/milvus.proto.milvus.MilvusService/GetReplicateInfo',
4779+
milvus__pb2.GetReplicateInfoRequest.SerializeToString,
4780+
milvus__pb2.GetReplicateInfoResponse.FromString,
4781+
options,
4782+
channel_credentials,
4783+
insecure,
4784+
call_credentials,
4785+
compression,
4786+
wait_for_ready,
4787+
timeout,
4788+
metadata,
4789+
_registered_method=True)
4790+
4791+
@staticmethod
4792+
def CreateReplicateStream(request_iterator,
4793+
target,
4794+
options=(),
4795+
channel_credentials=None,
4796+
call_credentials=None,
4797+
insecure=False,
4798+
compression=None,
4799+
wait_for_ready=None,
4800+
timeout=None,
4801+
metadata=None):
4802+
return grpc.experimental.stream_stream(
4803+
request_iterator,
4804+
target,
4805+
'/milvus.proto.milvus.MilvusService/CreateReplicateStream',
4806+
milvus__pb2.ReplicateRequest.SerializeToString,
4807+
milvus__pb2.ReplicateResponse.FromString,
4808+
options,
4809+
channel_credentials,
4810+
insecure,
4811+
call_credentials,
4812+
compression,
4813+
wait_for_ready,
4814+
timeout,
4815+
metadata,
4816+
_registered_method=True)
4817+
46674818

46684819
class ProxyServiceStub(object):
46694820
"""Missing associated documentation comment in .proto file."""

0 commit comments

Comments
 (0)