Repository: milvus-io/pymilvus (language: python)

Issue:
[FEATURE]: remove support for python3.6
### Is there an existing issue for this?

- [X] I have searched the existing issues

### Is your feature request related to a problem? Please describe.

According to [PEP 494 – Python 3.6 Release Schedule](https://peps.python.org/pep-0494/#lifespan)

> As of 2021-12-23, 3.6 has reached the [end-of-life phase](https://devguide.python.org/devcycle/#end-of-life-branches) of its release cycle. 3.6.15 was the final security release. The code base for 3.6 is now frozen and no further updates will be provided nor issues of any kind will be accepted on the bug tracker.

We'll stop supporting python3.6 on pymilvus from **pymilvus==2.3.0**

### Describe the solution you'd like

_No response_

### Describe alternatives you've considered

_No response_

### Anything else?

_No response_


Discussion / hints:

Fix patch:
diff --git a/.github/workflows/code_checker.yml b/.github/workflows/code_checker.yml
index ecf3552f2..56b193189 100644
--- a/.github/workflows/code_checker.yml
+++ b/.github/workflows/code_checker.yml
@@ -11,7 +11,7 @@ jobs:
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        python-version: [3.8]
+        python-version: [3.8, 3.11]
     steps:
       - name: Checkout code
         uses: actions/checkout@v2
@@ -19,6 +19,9 @@ jobs:
         uses: actions/setup-python@v2
         with:
           python-version: ${{ matrix.python-version }}
+      - name: check setup.py install
+        run: |
+          python setup.py install
       - name: Install requirements
         run: |
           pip install -r requirements.txt
diff --git a/pymilvus/client/constants.py b/pymilvus/client/constants.py
index f7a4f0c52..d9454ab89 100644
--- a/pymilvus/client/constants.py
+++ b/pymilvus/client/constants.py
@@ -1,4 +1,6 @@
-from ..grpc_gen.common_pb2 import ConsistencyLevel
+from ..grpc_gen import common_pb2
+
+ConsistencyLevel = common_pb2.ConsistencyLevel
 
 LOGICAL_BITS = 18
 LOGICAL_BITS_MASK = (1 << LOGICAL_BITS) - 1
diff --git a/pymilvus/client/ts_utils.py b/pymilvus/client/ts_utils.py
index 87a3eaa80..142a217d3 100644
--- a/pymilvus/client/ts_utils.py
+++ b/pymilvus/client/ts_utils.py
@@ -5,7 +5,9 @@
 from .utils import hybridts_to_unixtime
 from .constants import EVENTUALLY_TS, BOUNDED_TS
 
-from ..grpc_gen.common_pb2 import ConsistencyLevel
+from ..grpc_gen import common_pb2
+
+ConsistencyLevel = common_pb2.ConsistencyLevel
 
 
 class GTsDict(metaclass=Singleton):
diff --git a/pymilvus/client/types.py b/pymilvus/client/types.py
index e9f49092e..55036372c 100644
--- a/pymilvus/client/types.py
+++ b/pymilvus/client/types.py
@@ -1,6 +1,5 @@
 import time
 from enum import IntEnum
-from ..grpc_gen.common_pb2 import ConsistencyLevel
 from ..grpc_gen import common_pb2
 from ..exceptions import (
     AutoIDException,
@@ -10,6 +9,8 @@
 from ..grpc_gen import milvus_pb2 as milvus_types
 
 
+ConsistencyLevel = common_pb2.ConsistencyLevel
+
 class Status:
     """
     :attribute code: int (optional) default as ok
@@ -697,12 +698,12 @@ def __init__(self, resource_group):
 
     def __repr__(self) -> str:
         s = f"""ResourceGroupInfo:
-        <name:{self.name}>, 
-        <capacity:{self.capacity}>, 
-        <num_available_node:{self.num_available_node}>, 
-        <num_loaded_replica:{self.num_loaded_replica}>, 
-        <num_outgoing_node:{self.num_outgoing_node}>, 
-        <num_incoming_node:{self.num_incoming_node}>"""
+<name:{self.name}>,
+<capacity:{self.capacity}>,
+<num_available_node:{self.num_available_node}>,
+<num_loaded_replica:{self.num_loaded_replica}>,
+<num_outgoing_node:{self.num_outgoing_node}>,
+<num_incoming_node:{self.num_incoming_node}>"""
         return s
 
 
diff --git a/pymilvus/grpc_gen/common_pb2.py b/pymilvus/grpc_gen/common_pb2.py
index 38428c5c4..f10ba1fcd 100644
--- a/pymilvus/grpc_gen/common_pb2.py
+++ b/pymilvus/grpc_gen/common_pb2.py
@@ -2,11 +2,9 @@
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: common.proto
 """Generated protocol buffer code."""
-from google.protobuf.internal import enum_type_wrapper
+from google.protobuf.internal import builder as _builder
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import descriptor_pool as _descriptor_pool
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
 from google.protobuf import symbol_database as _symbol_database
 # @@protoc_insertion_point(imports)
 
@@ -18,350 +16,8 @@
 
 DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0c\x63ommon.proto\x12\x13milvus.proto.common\x1a google/protobuf/descriptor.proto\"L\n\x06Status\x12\x32\n\nerror_code\x18\x01 \x01(\x0e\x32\x1e.milvus.proto.common.ErrorCode\x12\x0e\n\x06reason\x18\x02 \x01(\t\"*\n\x0cKeyValuePair\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\"(\n\x0bKeyDataPair\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\"\x15\n\x04\x42lob\x12\r\n\x05value\x18\x01 \x01(\x0c\"c\n\x10PlaceholderValue\x12\x0b\n\x03tag\x18\x01 \x01(\t\x12\x32\n\x04type\x18\x02 \x01(\x0e\x32$.milvus.proto.common.PlaceholderType\x12\x0e\n\x06values\x18\x03 \x03(\x0c\"O\n\x10PlaceholderGroup\x12;\n\x0cplaceholders\x18\x01 \x03(\x0b\x32%.milvus.proto.common.PlaceholderValue\"#\n\x07\x41\x64\x64ress\x12\n\n\x02ip\x18\x01 \x01(\t\x12\x0c\n\x04port\x18\x02 \x01(\x03\"\x7f\n\x07MsgBase\x12.\n\x08msg_type\x18\x01 \x01(\x0e\x32\x1c.milvus.proto.common.MsgType\x12\r\n\x05msgID\x18\x02 \x01(\x03\x12\x11\n\ttimestamp\x18\x03 \x01(\x04\x12\x10\n\x08sourceID\x18\x04 \x01(\x03\x12\x10\n\x08targetID\x18\x05 \x01(\x03\"7\n\tMsgHeader\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\"M\n\x0c\x44MLMsgHeader\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x11\n\tshardName\x18\x02 \x01(\t\"\xbb\x01\n\x0cPrivilegeExt\x12\x34\n\x0bobject_type\x18\x01 \x01(\x0e\x32\x1f.milvus.proto.common.ObjectType\x12>\n\x10object_privilege\x18\x02 \x01(\x0e\x32$.milvus.proto.common.ObjectPrivilege\x12\x19\n\x11object_name_index\x18\x03 \x01(\x05\x12\x1a\n\x12object_name_indexs\x18\x04 \x01(\x05*\xd7\n\n\tErrorCode\x12\x0b\n\x07Success\x10\x00\x12\x13\n\x0fUnexpectedError\x10\x01\x12\x11\n\rConnectFailed\x10\x02\x12\x14\n\x10PermissionDenied\x10\x03\x12\x17\n\x13\x43ollectionNotExists\x10\x04\x12\x13\n\x0fIllegalArgument\x10\x05\x12\x14\n\x10IllegalDimension\x10\x07\x12\x14\n\x10IllegalIndexType\x10\x08\x12\x19\n\x15IllegalCollectionName\x10\t\x12\x0f\n\x0bIllegalTOPK\x10\n\x12\x14\n\x10IllegalRowRecord\x10\x0b\x12\x13\n\x0fIllegalVectorID\x10\x0c\x12\x17\n\x13IllegalSearchResult\x10\r\x12\x10\n\x0c\x46ileNotFound\x10\x0e\x12\x0e\n\nMetaFailed\x10\x0f\x12\x0f\n\x0b\x43\x61\x63heFailed\x10\x10\x12\x16\n\x12\x43\x61nnotCreateFolder\x10\x11\x12\x14\n\x10\x43\x61nnotCreateFile\x10\x12\x12\x16\n\x12\x43\x61nnotDeleteFolder\x10\x13\x12\x14\n\x10\x43\x61nnotDeleteFile\x10\x14\x12\x13\n\x0f\x42uildIndexError\x10\x15\x12\x10\n\x0cIllegalNLIST\x10\x16\x12\x15\n\x11IllegalMetricType\x10\x17\x12\x0f\n\x0bOutOfMemory\x10\x18\x12\x11\n\rIndexNotExist\x10\x19\x12\x13\n\x0f\x45mptyCollection\x10\x1a\x12\x1b\n\x17UpdateImportTaskFailure\x10\x1b\x12\x1a\n\x16\x43ollectionNameNotFound\x10\x1c\x12\x1b\n\x17\x43reateCredentialFailure\x10\x1d\x12\x1b\n\x17UpdateCredentialFailure\x10\x1e\x12\x1b\n\x17\x44\x65leteCredentialFailure\x10\x1f\x12\x18\n\x14GetCredentialFailure\x10 \x12\x18\n\x14ListCredUsersFailure\x10!\x12\x12\n\x0eGetUserFailure\x10\"\x12\x15\n\x11\x43reateRoleFailure\x10#\x12\x13\n\x0f\x44ropRoleFailure\x10$\x12\x1a\n\x16OperateUserRoleFailure\x10%\x12\x15\n\x11SelectRoleFailure\x10&\x12\x15\n\x11SelectUserFailure\x10\'\x12\x19\n\x15SelectResourceFailure\x10(\x12\x1b\n\x17OperatePrivilegeFailure\x10)\x12\x16\n\x12SelectGrantFailure\x10*\x12!\n\x1dRefreshPolicyInfoCacheFailure\x10+\x12\x15\n\x11ListPolicyFailure\x10,\x12\x12\n\x0eNotShardLeader\x10-\x12\x16\n\x12NoReplicaAvailable\x10.\x12\x13\n\x0fSegmentNotFound\x10/\x12\r\n\tForceDeny\x10\x30\x12\r\n\tRateLimit\x10\x31\x12\x12\n\x0eNodeIDNotMatch\x10\x32\x12\x14\n\x10UpsertAutoIDTrue\x10\x33\x12\x1c\n\x18InsufficientMemoryToLoad\x10\x34\x12\x18\n\x14MemoryQuotaExhausted\x10\x35\x12\x16\n\x12\x44iskQuotaExhausted\x10\x36\x12\x15\n\x11TimeTickLongDelay\x10\x37\x12\x11\n\rNotReadyServe\x10\x38\x12\x1b\n\x17NotReadyCoordActivating\x10\x39\x12\x12\n\x0eNotFoundTSafer\x10:\x12\x0f\n\x0b\x44\x61taCoordNA\x10\x64\x12\x12\n\rDDRequestRace\x10\xe8\x07*c\n\nIndexState\x12\x12\n\x0eIndexStateNone\x10\x00\x12\x0c\n\x08Unissued\x10\x01\x12\x0e\n\nInProgress\x10\x02\x12\x0c\n\x08\x46inished\x10\x03\x12\n\n\x06\x46\x61iled\x10\x04\x12\t\n\x05Retry\x10\x05*\x82\x01\n\x0cSegmentState\x12\x14\n\x10SegmentStateNone\x10\x00\x12\x0c\n\x08NotExist\x10\x01\x12\x0b\n\x07Growing\x10\x02\x12\n\n\x06Sealed\x10\x03\x12\x0b\n\x07\x46lushed\x10\x04\x12\x0c\n\x08\x46lushing\x10\x05\x12\x0b\n\x07\x44ropped\x10\x06\x12\r\n\tImporting\x10\x07*>\n\x0fPlaceholderType\x12\x08\n\x04None\x10\x00\x12\x10\n\x0c\x42inaryVector\x10\x64\x12\x0f\n\x0b\x46loatVector\x10\x65*\xb3\x0e\n\x07MsgType\x12\r\n\tUndefined\x10\x00\x12\x14\n\x10\x43reateCollection\x10\x64\x12\x12\n\x0e\x44ropCollection\x10\x65\x12\x11\n\rHasCollection\x10\x66\x12\x16\n\x12\x44\x65scribeCollection\x10g\x12\x13\n\x0fShowCollections\x10h\x12\x14\n\x10GetSystemConfigs\x10i\x12\x12\n\x0eLoadCollection\x10j\x12\x15\n\x11ReleaseCollection\x10k\x12\x0f\n\x0b\x43reateAlias\x10l\x12\r\n\tDropAlias\x10m\x12\x0e\n\nAlterAlias\x10n\x12\x13\n\x0f\x41lterCollection\x10o\x12\x14\n\x10RenameCollection\x10p\x12\x14\n\x0f\x43reatePartition\x10\xc8\x01\x12\x12\n\rDropPartition\x10\xc9\x01\x12\x11\n\x0cHasPartition\x10\xca\x01\x12\x16\n\x11\x44\x65scribePartition\x10\xcb\x01\x12\x13\n\x0eShowPartitions\x10\xcc\x01\x12\x13\n\x0eLoadPartitions\x10\xcd\x01\x12\x16\n\x11ReleasePartitions\x10\xce\x01\x12\x11\n\x0cShowSegments\x10\xfa\x01\x12\x14\n\x0f\x44\x65scribeSegment\x10\xfb\x01\x12\x11\n\x0cLoadSegments\x10\xfc\x01\x12\x14\n\x0fReleaseSegments\x10\xfd\x01\x12\x14\n\x0fHandoffSegments\x10\xfe\x01\x12\x18\n\x13LoadBalanceSegments\x10\xff\x01\x12\x15\n\x10\x44\x65scribeSegments\x10\x80\x02\x12\x10\n\x0b\x43reateIndex\x10\xac\x02\x12\x12\n\rDescribeIndex\x10\xad\x02\x12\x0e\n\tDropIndex\x10\xae\x02\x12\x0b\n\x06Insert\x10\x90\x03\x12\x0b\n\x06\x44\x65lete\x10\x91\x03\x12\n\n\x05\x46lush\x10\x92\x03\x12\x17\n\x12ResendSegmentStats\x10\x93\x03\x12\x0b\n\x06Search\x10\xf4\x03\x12\x11\n\x0cSearchResult\x10\xf5\x03\x12\x12\n\rGetIndexState\x10\xf6\x03\x12\x1a\n\x15GetIndexBuildProgress\x10\xf7\x03\x12\x1c\n\x17GetCollectionStatistics\x10\xf8\x03\x12\x1b\n\x16GetPartitionStatistics\x10\xf9\x03\x12\r\n\x08Retrieve\x10\xfa\x03\x12\x13\n\x0eRetrieveResult\x10\xfb\x03\x12\x14\n\x0fWatchDmChannels\x10\xfc\x03\x12\x15\n\x10RemoveDmChannels\x10\xfd\x03\x12\x17\n\x12WatchQueryChannels\x10\xfe\x03\x12\x18\n\x13RemoveQueryChannels\x10\xff\x03\x12\x1d\n\x18SealedSegmentsChangeInfo\x10\x80\x04\x12\x17\n\x12WatchDeltaChannels\x10\x81\x04\x12\x14\n\x0fGetShardLeaders\x10\x82\x04\x12\x10\n\x0bGetReplicas\x10\x83\x04\x12\x13\n\x0eUnsubDmChannel\x10\x84\x04\x12\x14\n\x0fGetDistribution\x10\x85\x04\x12\x15\n\x10SyncDistribution\x10\x86\x04\x12\x10\n\x0bSegmentInfo\x10\xd8\x04\x12\x0f\n\nSystemInfo\x10\xd9\x04\x12\x14\n\x0fGetRecoveryInfo\x10\xda\x04\x12\x14\n\x0fGetSegmentState\x10\xdb\x04\x12\r\n\x08TimeTick\x10\xb0\t\x12\x13\n\x0eQueryNodeStats\x10\xb1\t\x12\x0e\n\tLoadIndex\x10\xb2\t\x12\x0e\n\tRequestID\x10\xb3\t\x12\x0f\n\nRequestTSO\x10\xb4\t\x12\x14\n\x0f\x41llocateSegment\x10\xb5\t\x12\x16\n\x11SegmentStatistics\x10\xb6\t\x12\x15\n\x10SegmentFlushDone\x10\xb7\t\x12\x0f\n\nDataNodeTt\x10\xb8\t\x12\x15\n\x10\x43reateCredential\x10\xdc\x0b\x12\x12\n\rGetCredential\x10\xdd\x0b\x12\x15\n\x10\x44\x65leteCredential\x10\xde\x0b\x12\x15\n\x10UpdateCredential\x10\xdf\x0b\x12\x16\n\x11ListCredUsernames\x10\xe0\x0b\x12\x0f\n\nCreateRole\x10\xc0\x0c\x12\r\n\x08\x44ropRole\x10\xc1\x0c\x12\x14\n\x0fOperateUserRole\x10\xc2\x0c\x12\x0f\n\nSelectRole\x10\xc3\x0c\x12\x0f\n\nSelectUser\x10\xc4\x0c\x12\x13\n\x0eSelectResource\x10\xc5\x0c\x12\x15\n\x10OperatePrivilege\x10\xc6\x0c\x12\x10\n\x0bSelectGrant\x10\xc7\x0c\x12\x1b\n\x16RefreshPolicyInfoCache\x10\xc8\x0c\x12\x0f\n\nListPolicy\x10\xc9\x0c\x12\x18\n\x13\x43reateResourceGroup\x10\xa4\r\x12\x16\n\x11\x44ropResourceGroup\x10\xa5\r\x12\x17\n\x12ListResourceGroups\x10\xa6\r\x12\x1a\n\x15\x44\x65scribeResourceGroup\x10\xa7\r\x12\x11\n\x0cTransferNode\x10\xa8\r\x12\x14\n\x0fTransferReplica\x10\xa9\r*\"\n\x07\x44slType\x12\x07\n\x03\x44sl\x10\x00\x12\x0e\n\nBoolExprV1\x10\x01*B\n\x0f\x43ompactionState\x12\x11\n\rUndefiedState\x10\x00\x12\r\n\tExecuting\x10\x01\x12\r\n\tCompleted\x10\x02*X\n\x10\x43onsistencyLevel\x12\n\n\x06Strong\x10\x00\x12\x0b\n\x07Session\x10\x01\x12\x0b\n\x07\x42ounded\x10\x02\x12\x0e\n\nEventually\x10\x03\x12\x0e\n\nCustomized\x10\x04*\x8b\x01\n\x0bImportState\x12\x11\n\rImportPending\x10\x00\x12\x10\n\x0cImportFailed\x10\x01\x12\x11\n\rImportStarted\x10\x02\x12\x13\n\x0fImportPersisted\x10\x05\x12\x13\n\x0fImportCompleted\x10\x06\x12\x1a\n\x16ImportFailedAndCleaned\x10\x07*2\n\nObjectType\x12\x0e\n\nCollection\x10\x00\x12\n\n\x06Global\x10\x01\x12\x08\n\x04User\x10\x02*\x82\x07\n\x0fObjectPrivilege\x12\x10\n\x0cPrivilegeAll\x10\x00\x12\x1d\n\x19PrivilegeCreateCollection\x10\x01\x12\x1b\n\x17PrivilegeDropCollection\x10\x02\x12\x1f\n\x1bPrivilegeDescribeCollection\x10\x03\x12\x1c\n\x18PrivilegeShowCollections\x10\x04\x12\x11\n\rPrivilegeLoad\x10\x05\x12\x14\n\x10PrivilegeRelease\x10\x06\x12\x17\n\x13PrivilegeCompaction\x10\x07\x12\x13\n\x0fPrivilegeInsert\x10\x08\x12\x13\n\x0fPrivilegeDelete\x10\t\x12\x1a\n\x16PrivilegeGetStatistics\x10\n\x12\x18\n\x14PrivilegeCreateIndex\x10\x0b\x12\x18\n\x14PrivilegeIndexDetail\x10\x0c\x12\x16\n\x12PrivilegeDropIndex\x10\r\x12\x13\n\x0fPrivilegeSearch\x10\x0e\x12\x12\n\x0ePrivilegeFlush\x10\x0f\x12\x12\n\x0ePrivilegeQuery\x10\x10\x12\x18\n\x14PrivilegeLoadBalance\x10\x11\x12\x13\n\x0fPrivilegeImport\x10\x12\x12\x1c\n\x18PrivilegeCreateOwnership\x10\x13\x12\x17\n\x13PrivilegeUpdateUser\x10\x14\x12\x1a\n\x16PrivilegeDropOwnership\x10\x15\x12\x1c\n\x18PrivilegeSelectOwnership\x10\x16\x12\x1c\n\x18PrivilegeManageOwnership\x10\x17\x12\x17\n\x13PrivilegeSelectUser\x10\x18\x12 \n\x1cPrivilegeCreateResourceGroup\x10\x1a\x12\x1e\n\x1aPrivilegeDropResourceGroup\x10\x1b\x12\"\n\x1ePrivilegeDescribeResourceGroup\x10\x1c\x12\x1f\n\x1bPrivilegeListResourceGroups\x10\x1d\x12\x19\n\x15PrivilegeTransferNode\x10\x1e\x12\x1c\n\x18PrivilegeTransferReplica\x10\x1f\x12\x1f\n\x1bPrivilegeGetLoadingProgress\x10 \x12\x19\n\x15PrivilegeGetLoadState\x10!*S\n\tStateCode\x12\x10\n\x0cInitializing\x10\x00\x12\x0b\n\x07Healthy\x10\x01\x12\x0c\n\x08\x41\x62normal\x10\x02\x12\x0b\n\x07StandBy\x10\x03\x12\x0c\n\x08Stopping\x10\x04*c\n\tLoadState\x12\x15\n\x11LoadStateNotExist\x10\x00\x12\x14\n\x10LoadStateNotLoad\x10\x01\x12\x14\n\x10LoadStateLoading\x10\x02\x12\x13\n\x0fLoadStateLoaded\x10\x03:^\n\x11privilege_ext_obj\x12\x1f.google.protobuf.MessageOptions\x18\xe9\x07 \x01(\x0b\x32!.milvus.proto.common.PrivilegeExtBU\n\x0eio.milvus.grpcB\x0b\x43ommonProtoP\x01Z1github.com/milvus-io/milvus-proto/go-api/commonpb\xa0\x01\x01\x62\x06proto3')
 
-_ERRORCODE = DESCRIPTOR.enum_types_by_name['ErrorCode']
-ErrorCode = enum_type_wrapper.EnumTypeWrapper(_ERRORCODE)
-_INDEXSTATE = DESCRIPTOR.enum_types_by_name['IndexState']
-IndexState = enum_type_wrapper.EnumTypeWrapper(_INDEXSTATE)
-_SEGMENTSTATE = DESCRIPTOR.enum_types_by_name['SegmentState']
-SegmentState = enum_type_wrapper.EnumTypeWrapper(_SEGMENTSTATE)
-_PLACEHOLDERTYPE = DESCRIPTOR.enum_types_by_name['PlaceholderType']
-PlaceholderType = enum_type_wrapper.EnumTypeWrapper(_PLACEHOLDERTYPE)
-_MSGTYPE = DESCRIPTOR.enum_types_by_name['MsgType']
-MsgType = enum_type_wrapper.EnumTypeWrapper(_MSGTYPE)
-_DSLTYPE = DESCRIPTOR.enum_types_by_name['DslType']
-DslType = enum_type_wrapper.EnumTypeWrapper(_DSLTYPE)
-_COMPACTIONSTATE = DESCRIPTOR.enum_types_by_name['CompactionState']
-CompactionState = enum_type_wrapper.EnumTypeWrapper(_COMPACTIONSTATE)
-_CONSISTENCYLEVEL = DESCRIPTOR.enum_types_by_name['ConsistencyLevel']
-ConsistencyLevel = enum_type_wrapper.EnumTypeWrapper(_CONSISTENCYLEVEL)
-_IMPORTSTATE = DESCRIPTOR.enum_types_by_name['ImportState']
-ImportState = enum_type_wrapper.EnumTypeWrapper(_IMPORTSTATE)
-_OBJECTTYPE = DESCRIPTOR.enum_types_by_name['ObjectType']
-ObjectType = enum_type_wrapper.EnumTypeWrapper(_OBJECTTYPE)
-_OBJECTPRIVILEGE = DESCRIPTOR.enum_types_by_name['ObjectPrivilege']
-ObjectPrivilege = enum_type_wrapper.EnumTypeWrapper(_OBJECTPRIVILEGE)
-_STATECODE = DESCRIPTOR.enum_types_by_name['StateCode']
-StateCode = enum_type_wrapper.EnumTypeWrapper(_STATECODE)
-_LOADSTATE = DESCRIPTOR.enum_types_by_name['LoadState']
-LoadState = enum_type_wrapper.EnumTypeWrapper(_LOADSTATE)
-Success = 0
-UnexpectedError = 1
-ConnectFailed = 2
-PermissionDenied = 3
-CollectionNotExists = 4
-IllegalArgument = 5
-IllegalDimension = 7
-IllegalIndexType = 8
-IllegalCollectionName = 9
-IllegalTOPK = 10
-IllegalRowRecord = 11
-IllegalVectorID = 12
-IllegalSearchResult = 13
-FileNotFound = 14
-MetaFailed = 15
-CacheFailed = 16
-CannotCreateFolder = 17
-CannotCreateFile = 18
-CannotDeleteFolder = 19
-CannotDeleteFile = 20
-BuildIndexError = 21
-IllegalNLIST = 22
-IllegalMetricType = 23
-OutOfMemory = 24
-IndexNotExist = 25
-EmptyCollection = 26
-UpdateImportTaskFailure = 27
-CollectionNameNotFound = 28
-CreateCredentialFailure = 29
-UpdateCredentialFailure = 30
-DeleteCredentialFailure = 31
-GetCredentialFailure = 32
-ListCredUsersFailure = 33
-GetUserFailure = 34
-CreateRoleFailure = 35
-DropRoleFailure = 36
-OperateUserRoleFailure = 37
-SelectRoleFailure = 38
-SelectUserFailure = 39
-SelectResourceFailure = 40
-OperatePrivilegeFailure = 41
-SelectGrantFailure = 42
-RefreshPolicyInfoCacheFailure = 43
-ListPolicyFailure = 44
-NotShardLeader = 45
-NoReplicaAvailable = 46
-SegmentNotFound = 47
-ForceDeny = 48
-RateLimit = 49
-NodeIDNotMatch = 50
-UpsertAutoIDTrue = 51
-InsufficientMemoryToLoad = 52
-MemoryQuotaExhausted = 53
-DiskQuotaExhausted = 54
-TimeTickLongDelay = 55
-NotReadyServe = 56
-NotReadyCoordActivating = 57
-NotFoundTSafer = 58
-DataCoordNA = 100
-DDRequestRace = 1000
-IndexStateNone = 0
-Unissued = 1
-InProgress = 2
-Finished = 3
-Failed = 4
-Retry = 5
-SegmentStateNone = 0
-NotExist = 1
-Growing = 2
-Sealed = 3
-Flushed = 4
-Flushing = 5
-Dropped = 6
-Importing = 7
-globals()['None'] = 0
-BinaryVector = 100
-FloatVector = 101
-Undefined = 0
-CreateCollection = 100
-DropCollection = 101
-HasCollection = 102
-DescribeCollection = 103
-ShowCollections = 104
-GetSystemConfigs = 105
-LoadCollection = 106
-ReleaseCollection = 107
-CreateAlias = 108
-DropAlias = 109
-AlterAlias = 110
-AlterCollection = 111
-RenameCollection = 112
-CreatePartition = 200
-DropPartition = 201
-HasPartition = 202
-DescribePartition = 203
-ShowPartitions = 204
-LoadPartitions = 205
-ReleasePartitions = 206
-ShowSegments = 250
-DescribeSegment = 251
-LoadSegments = 252
-ReleaseSegments = 253
-HandoffSegments = 254
-LoadBalanceSegments = 255
-DescribeSegments = 256
-CreateIndex = 300
-DescribeIndex = 301
-DropIndex = 302
-Insert = 400
-Delete = 401
-Flush = 402
-ResendSegmentStats = 403
-Search = 500
-SearchResult = 501
-GetIndexState = 502
-GetIndexBuildProgress = 503
-GetCollectionStatistics = 504
-GetPartitionStatistics = 505
-Retrieve = 506
-RetrieveResult = 507
-WatchDmChannels = 508
-RemoveDmChannels = 509
-WatchQueryChannels = 510
-RemoveQueryChannels = 511
-SealedSegmentsChangeInfo = 512
-WatchDeltaChannels = 513
-GetShardLeaders = 514
-GetReplicas = 515
-UnsubDmChannel = 516
-GetDistribution = 517
-SyncDistribution = 518
-SegmentInfo = 600
-SystemInfo = 601
-GetRecoveryInfo = 602
-GetSegmentState = 603
-TimeTick = 1200
-QueryNodeStats = 1201
-LoadIndex = 1202
-RequestID = 1203
-RequestTSO = 1204
-AllocateSegment = 1205
-SegmentStatistics = 1206
-SegmentFlushDone = 1207
-DataNodeTt = 1208
-CreateCredential = 1500
-GetCredential = 1501
-DeleteCredential = 1502
-UpdateCredential = 1503
-ListCredUsernames = 1504
-CreateRole = 1600
-DropRole = 1601
-OperateUserRole = 1602
-SelectRole = 1603
-SelectUser = 1604
-SelectResource = 1605
-OperatePrivilege = 1606
-SelectGrant = 1607
-RefreshPolicyInfoCache = 1608
-ListPolicy = 1609
-CreateResourceGroup = 1700
-DropResourceGroup = 1701
-ListResourceGroups = 1702
-DescribeResourceGroup = 1703
-TransferNode = 1704
-TransferReplica = 1705
-Dsl = 0
-BoolExprV1 = 1
-UndefiedState = 0
-Executing = 1
-Completed = 2
-Strong = 0
-Session = 1
-Bounded = 2
-Eventually = 3
-Customized = 4
-ImportPending = 0
-ImportFailed = 1
-ImportStarted = 2
-ImportPersisted = 5
-ImportCompleted = 6
-ImportFailedAndCleaned = 7
-Collection = 0
-Global = 1
-User = 2
-PrivilegeAll = 0
-PrivilegeCreateCollection = 1
-PrivilegeDropCollection = 2
-PrivilegeDescribeCollection = 3
-PrivilegeShowCollections = 4
-PrivilegeLoad = 5
-PrivilegeRelease = 6
-PrivilegeCompaction = 7
-PrivilegeInsert = 8
-PrivilegeDelete = 9
-PrivilegeGetStatistics = 10
-PrivilegeCreateIndex = 11
-PrivilegeIndexDetail = 12
-PrivilegeDropIndex = 13
-PrivilegeSearch = 14
-PrivilegeFlush = 15
-PrivilegeQuery = 16
-PrivilegeLoadBalance = 17
-PrivilegeImport = 18
-PrivilegeCreateOwnership = 19
-PrivilegeUpdateUser = 20
-PrivilegeDropOwnership = 21
-PrivilegeSelectOwnership = 22
-PrivilegeManageOwnership = 23
-PrivilegeSelectUser = 24
-PrivilegeCreateResourceGroup = 26
-PrivilegeDropResourceGroup = 27
-PrivilegeDescribeResourceGroup = 28
-PrivilegeListResourceGroups = 29
-PrivilegeTransferNode = 30
-PrivilegeTransferReplica = 31
-PrivilegeGetLoadingProgress = 32
-PrivilegeGetLoadState = 33
-Initializing = 0
-Healthy = 1
-Abnormal = 2
-StandBy = 3
-Stopping = 4
-LoadStateNotExist = 0
-LoadStateNotLoad = 1
-LoadStateLoading = 2
-LoadStateLoaded = 3
-
-PRIVILEGE_EXT_OBJ_FIELD_NUMBER = 1001
-privilege_ext_obj = DESCRIPTOR.extensions_by_name['privilege_ext_obj']
-
-_STATUS = DESCRIPTOR.message_types_by_name['Status']
-_KEYVALUEPAIR = DESCRIPTOR.message_types_by_name['KeyValuePair']
-_KEYDATAPAIR = DESCRIPTOR.message_types_by_name['KeyDataPair']
-_BLOB = DESCRIPTOR.message_types_by_name['Blob']
-_PLACEHOLDERVALUE = DESCRIPTOR.message_types_by_name['PlaceholderValue']
-_PLACEHOLDERGROUP = DESCRIPTOR.message_types_by_name['PlaceholderGroup']
-_ADDRESS = DESCRIPTOR.message_types_by_name['Address']
-_MSGBASE = DESCRIPTOR.message_types_by_name['MsgBase']
-_MSGHEADER = DESCRIPTOR.message_types_by_name['MsgHeader']
-_DMLMSGHEADER = DESCRIPTOR.message_types_by_name['DMLMsgHeader']
-_PRIVILEGEEXT = DESCRIPTOR.message_types_by_name['PrivilegeExt']
-Status = _reflection.GeneratedProtocolMessageType('Status', (_message.Message,), {
-  'DESCRIPTOR' : _STATUS,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.Status)
-  })
-_sym_db.RegisterMessage(Status)
-
-KeyValuePair = _reflection.GeneratedProtocolMessageType('KeyValuePair', (_message.Message,), {
-  'DESCRIPTOR' : _KEYVALUEPAIR,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.KeyValuePair)
-  })
-_sym_db.RegisterMessage(KeyValuePair)
-
-KeyDataPair = _reflection.GeneratedProtocolMessageType('KeyDataPair', (_message.Message,), {
-  'DESCRIPTOR' : _KEYDATAPAIR,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.KeyDataPair)
-  })
-_sym_db.RegisterMessage(KeyDataPair)
-
-Blob = _reflection.GeneratedProtocolMessageType('Blob', (_message.Message,), {
-  'DESCRIPTOR' : _BLOB,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.Blob)
-  })
-_sym_db.RegisterMessage(Blob)
-
-PlaceholderValue = _reflection.GeneratedProtocolMessageType('PlaceholderValue', (_message.Message,), {
-  'DESCRIPTOR' : _PLACEHOLDERVALUE,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.PlaceholderValue)
-  })
-_sym_db.RegisterMessage(PlaceholderValue)
-
-PlaceholderGroup = _reflection.GeneratedProtocolMessageType('PlaceholderGroup', (_message.Message,), {
-  'DESCRIPTOR' : _PLACEHOLDERGROUP,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.PlaceholderGroup)
-  })
-_sym_db.RegisterMessage(PlaceholderGroup)
-
-Address = _reflection.GeneratedProtocolMessageType('Address', (_message.Message,), {
-  'DESCRIPTOR' : _ADDRESS,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.Address)
-  })
-_sym_db.RegisterMessage(Address)
-
-MsgBase = _reflection.GeneratedProtocolMessageType('MsgBase', (_message.Message,), {
-  'DESCRIPTOR' : _MSGBASE,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.MsgBase)
-  })
-_sym_db.RegisterMessage(MsgBase)
-
-MsgHeader = _reflection.GeneratedProtocolMessageType('MsgHeader', (_message.Message,), {
-  'DESCRIPTOR' : _MSGHEADER,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.MsgHeader)
-  })
-_sym_db.RegisterMessage(MsgHeader)
-
-DMLMsgHeader = _reflection.GeneratedProtocolMessageType('DMLMsgHeader', (_message.Message,), {
-  'DESCRIPTOR' : _DMLMSGHEADER,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.DMLMsgHeader)
-  })
-_sym_db.RegisterMessage(DMLMsgHeader)
-
-PrivilegeExt = _reflection.GeneratedProtocolMessageType('PrivilegeExt', (_message.Message,), {
-  'DESCRIPTOR' : _PRIVILEGEEXT,
-  '__module__' : 'common_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.common.PrivilegeExt)
-  })
-_sym_db.RegisterMessage(PrivilegeExt)
-
+_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
+_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common_pb2', globals())
 if _descriptor._USE_C_DESCRIPTORS == False:
   google_dot_protobuf_dot_descriptor__pb2.MessageOptions.RegisterExtension(privilege_ext_obj)
 
diff --git a/pymilvus/grpc_gen/common_pb2.pyi b/pymilvus/grpc_gen/common_pb2.pyi
new file mode 100644
index 000000000..b95cf3db3
--- /dev/null
+++ b/pymilvus/grpc_gen/common_pb2.pyi
@@ -0,0 +1,369 @@
+from google.protobuf import descriptor_pb2 as _descriptor_pb2
+from google.protobuf.internal import containers as _containers
+from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
+
+Abnormal: StateCode
+AllocateSegment: MsgType
+AlterAlias: MsgType
+AlterCollection: MsgType
+BinaryVector: PlaceholderType
+BoolExprV1: DslType
+Bounded: ConsistencyLevel
+BuildIndexError: ErrorCode
+CacheFailed: ErrorCode
+CannotCreateFile: ErrorCode
+CannotCreateFolder: ErrorCode
+CannotDeleteFile: ErrorCode
+CannotDeleteFolder: ErrorCode
+Collection: ObjectType
+CollectionNameNotFound: ErrorCode
+CollectionNotExists: ErrorCode
+Completed: CompactionState
+ConnectFailed: ErrorCode
+CreateAlias: MsgType
+CreateCollection: MsgType
+CreateCredential: MsgType
+CreateCredentialFailure: ErrorCode
+CreateIndex: MsgType
+CreatePartition: MsgType
+CreateResourceGroup: MsgType
+CreateRole: MsgType
+CreateRoleFailure: ErrorCode
+Customized: ConsistencyLevel
+DDRequestRace: ErrorCode
+DESCRIPTOR: _descriptor.FileDescriptor
+DataCoordNA: ErrorCode
+DataNodeTt: MsgType
+Delete: MsgType
+DeleteCredential: MsgType
+DeleteCredentialFailure: ErrorCode
+DescribeCollection: MsgType
+DescribeIndex: MsgType
+DescribePartition: MsgType
+DescribeResourceGroup: MsgType
+DescribeSegment: MsgType
+DescribeSegments: MsgType
+DiskQuotaExhausted: ErrorCode
+DropAlias: MsgType
+DropCollection: MsgType
+DropIndex: MsgType
+DropPartition: MsgType
+DropResourceGroup: MsgType
+DropRole: MsgType
+DropRoleFailure: ErrorCode
+Dropped: SegmentState
+Dsl: DslType
+EmptyCollection: ErrorCode
+Eventually: ConsistencyLevel
+Executing: CompactionState
+Failed: IndexState
+FileNotFound: ErrorCode
+Finished: IndexState
+FloatVector: PlaceholderType
+Flush: MsgType
+Flushed: SegmentState
+Flushing: SegmentState
+ForceDeny: ErrorCode
+GetCollectionStatistics: MsgType
+GetCredential: MsgType
+GetCredentialFailure: ErrorCode
+GetDistribution: MsgType
+GetIndexBuildProgress: MsgType
+GetIndexState: MsgType
+GetPartitionStatistics: MsgType
+GetRecoveryInfo: MsgType
+GetReplicas: MsgType
+GetSegmentState: MsgType
+GetShardLeaders: MsgType
+GetSystemConfigs: MsgType
+GetUserFailure: ErrorCode
+Global: ObjectType
+Growing: SegmentState
+HandoffSegments: MsgType
+HasCollection: MsgType
+HasPartition: MsgType
+Healthy: StateCode
+IllegalArgument: ErrorCode
+IllegalCollectionName: ErrorCode
+IllegalDimension: ErrorCode
+IllegalIndexType: ErrorCode
+IllegalMetricType: ErrorCode
+IllegalNLIST: ErrorCode
+IllegalRowRecord: ErrorCode
+IllegalSearchResult: ErrorCode
+IllegalTOPK: ErrorCode
+IllegalVectorID: ErrorCode
+ImportCompleted: ImportState
+ImportFailed: ImportState
+ImportFailedAndCleaned: ImportState
+ImportPending: ImportState
+ImportPersisted: ImportState
+ImportStarted: ImportState
+Importing: SegmentState
+InProgress: IndexState
+IndexNotExist: ErrorCode
+IndexStateNone: IndexState
+Initializing: StateCode
+Insert: MsgType
+InsufficientMemoryToLoad: ErrorCode
+ListCredUsernames: MsgType
+ListCredUsersFailure: ErrorCode
+ListPolicy: MsgType
+ListPolicyFailure: ErrorCode
+ListResourceGroups: MsgType
+LoadBalanceSegments: MsgType
+LoadCollection: MsgType
+LoadIndex: MsgType
+LoadPartitions: MsgType
+LoadSegments: MsgType
+LoadStateLoaded: LoadState
+LoadStateLoading: LoadState
+LoadStateNotExist: LoadState
+LoadStateNotLoad: LoadState
+MemoryQuotaExhausted: ErrorCode
+MetaFailed: ErrorCode
+NoReplicaAvailable: ErrorCode
+NodeIDNotMatch: ErrorCode
+None: PlaceholderType
+NotExist: SegmentState
+NotFoundTSafer: ErrorCode
+NotReadyCoordActivating: ErrorCode
+NotReadyServe: ErrorCode
+NotShardLeader: ErrorCode
+OperatePrivilege: MsgType
+OperatePrivilegeFailure: ErrorCode
+OperateUserRole: MsgType
+OperateUserRoleFailure: ErrorCode
+OutOfMemory: ErrorCode
+PRIVILEGE_EXT_OBJ_FIELD_NUMBER: _ClassVar[int]
+PermissionDenied: ErrorCode
+PrivilegeAll: ObjectPrivilege
+PrivilegeCompaction: ObjectPrivilege
+PrivilegeCreateCollection: ObjectPrivilege
+PrivilegeCreateIndex: ObjectPrivilege
+PrivilegeCreateOwnership: ObjectPrivilege
+PrivilegeCreateResourceGroup: ObjectPrivilege
+PrivilegeDelete: ObjectPrivilege
+PrivilegeDescribeCollection: ObjectPrivilege
+PrivilegeDescribeResourceGroup: ObjectPrivilege
+PrivilegeDropCollection: ObjectPrivilege
+PrivilegeDropIndex: ObjectPrivilege
+PrivilegeDropOwnership: ObjectPrivilege
+PrivilegeDropResourceGroup: ObjectPrivilege
+PrivilegeFlush: ObjectPrivilege
+PrivilegeGetLoadState: ObjectPrivilege
+PrivilegeGetLoadingProgress: ObjectPrivilege
+PrivilegeGetStatistics: ObjectPrivilege
+PrivilegeImport: ObjectPrivilege
+PrivilegeIndexDetail: ObjectPrivilege
+PrivilegeInsert: ObjectPrivilege
+PrivilegeListResourceGroups: ObjectPrivilege
+PrivilegeLoad: ObjectPrivilege
+PrivilegeLoadBalance: ObjectPrivilege
+PrivilegeManageOwnership: ObjectPrivilege
+PrivilegeQuery: ObjectPrivilege
+PrivilegeRelease: ObjectPrivilege
+PrivilegeSearch: ObjectPrivilege
+PrivilegeSelectOwnership: ObjectPrivilege
+PrivilegeSelectUser: ObjectPrivilege
+PrivilegeShowCollections: ObjectPrivilege
+PrivilegeTransferNode: ObjectPrivilege
+PrivilegeTransferReplica: ObjectPrivilege
+PrivilegeUpdateUser: ObjectPrivilege
+QueryNodeStats: MsgType
+RateLimit: ErrorCode
+RefreshPolicyInfoCache: MsgType
+RefreshPolicyInfoCacheFailure: ErrorCode
+ReleaseCollection: MsgType
+ReleasePartitions: MsgType
+ReleaseSegments: MsgType
+RemoveDmChannels: MsgType
+RemoveQueryChannels: MsgType
+RenameCollection: MsgType
+RequestID: MsgType
+RequestTSO: MsgType
+ResendSegmentStats: MsgType
+Retrieve: MsgType
+RetrieveResult: MsgType
+Retry: IndexState
+Sealed: SegmentState
+SealedSegmentsChangeInfo: MsgType
+Search: MsgType
+SearchResult: MsgType
+SegmentFlushDone: MsgType
+SegmentInfo: MsgType
+SegmentNotFound: ErrorCode
+SegmentStateNone: SegmentState
+SegmentStatistics: MsgType
+SelectGrant: MsgType
+SelectGrantFailure: ErrorCode
+SelectResource: MsgType
+SelectResourceFailure: ErrorCode
+SelectRole: MsgType
+SelectRoleFailure: ErrorCode
+SelectUser: MsgType
+SelectUserFailure: ErrorCode
+Session: ConsistencyLevel
+ShowCollections: MsgType
+ShowPartitions: MsgType
+ShowSegments: MsgType
+StandBy: StateCode
+Stopping: StateCode
+Strong: ConsistencyLevel
+Success: ErrorCode
+SyncDistribution: MsgType
+SystemInfo: MsgType
+TimeTick: MsgType
+TimeTickLongDelay: ErrorCode
+TransferNode: MsgType
+TransferReplica: MsgType
+UndefiedState: CompactionState
+Undefined: MsgType
+UnexpectedError: ErrorCode
+Unissued: IndexState
+UnsubDmChannel: MsgType
+UpdateCredential: MsgType
+UpdateCredentialFailure: ErrorCode
+UpdateImportTaskFailure: ErrorCode
+UpsertAutoIDTrue: ErrorCode
+User: ObjectType
+WatchDeltaChannels: MsgType
+WatchDmChannels: MsgType
+WatchQueryChannels: MsgType
+privilege_ext_obj: _descriptor.FieldDescriptor
+
+class Address(_message.Message):
+    __slots__ = ["ip", "port"]
+    IP_FIELD_NUMBER: _ClassVar[int]
+    PORT_FIELD_NUMBER: _ClassVar[int]
+    ip: str
+    port: int
+    def __init__(self, ip: _Optional[str] = ..., port: _Optional[int] = ...) -> None: ...
+
+class Blob(_message.Message):
+    __slots__ = ["value"]
+    VALUE_FIELD_NUMBER: _ClassVar[int]
+    value: bytes
+    def __init__(self, value: _Optional[bytes] = ...) -> None: ...
+
+class DMLMsgHeader(_message.Message):
+    __slots__ = ["base", "shardName"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    SHARDNAME_FIELD_NUMBER: _ClassVar[int]
+    base: MsgBase
+    shardName: str
+    def __init__(self, base: _Optional[_Union[MsgBase, _Mapping]] = ..., shardName: _Optional[str] = ...) -> None: ...
+
+class KeyDataPair(_message.Message):
+    __slots__ = ["data", "key"]
+    DATA_FIELD_NUMBER: _ClassVar[int]
+    KEY_FIELD_NUMBER: _ClassVar[int]
+    data: bytes
+    key: str
+    def __init__(self, key: _Optional[str] = ..., data: _Optional[bytes] = ...) -> None: ...
+
+class KeyValuePair(_message.Message):
+    __slots__ = ["key", "value"]
+    KEY_FIELD_NUMBER: _ClassVar[int]
+    VALUE_FIELD_NUMBER: _ClassVar[int]
+    key: str
+    value: str
+    def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
+
+class MsgBase(_message.Message):
+    __slots__ = ["msgID", "msg_type", "sourceID", "targetID", "timestamp"]
+    MSGID_FIELD_NUMBER: _ClassVar[int]
+    MSG_TYPE_FIELD_NUMBER: _ClassVar[int]
+    SOURCEID_FIELD_NUMBER: _ClassVar[int]
+    TARGETID_FIELD_NUMBER: _ClassVar[int]
+    TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
+    msgID: int
+    msg_type: MsgType
+    sourceID: int
+    targetID: int
+    timestamp: int
+    def __init__(self, msg_type: _Optional[_Union[MsgType, str]] = ..., msgID: _Optional[int] = ..., timestamp: _Optional[int] = ..., sourceID: _Optional[int] = ..., targetID: _Optional[int] = ...) -> None: ...
+
+class MsgHeader(_message.Message):
+    __slots__ = ["base"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    base: MsgBase
+    def __init__(self, base: _Optional[_Union[MsgBase, _Mapping]] = ...) -> None: ...
+
+class PlaceholderGroup(_message.Message):
+    __slots__ = ["placeholders"]
+    PLACEHOLDERS_FIELD_NUMBER: _ClassVar[int]
+    placeholders: _containers.RepeatedCompositeFieldContainer[PlaceholderValue]
+    def __init__(self, placeholders: _Optional[_Iterable[_Union[PlaceholderValue, _Mapping]]] = ...) -> None: ...
+
+class PlaceholderValue(_message.Message):
+    __slots__ = ["tag", "type", "values"]
+    TAG_FIELD_NUMBER: _ClassVar[int]
+    TYPE_FIELD_NUMBER: _ClassVar[int]
+    VALUES_FIELD_NUMBER: _ClassVar[int]
+    tag: str
+    type: PlaceholderType
+    values: _containers.RepeatedScalarFieldContainer[bytes]
+    def __init__(self, tag: _Optional[str] = ..., type: _Optional[_Union[PlaceholderType, str]] = ..., values: _Optional[_Iterable[bytes]] = ...) -> None: ...
+
+class PrivilegeExt(_message.Message):
+    __slots__ = ["object_name_index", "object_name_indexs", "object_privilege", "object_type"]
+    OBJECT_NAME_INDEXS_FIELD_NUMBER: _ClassVar[int]
+    OBJECT_NAME_INDEX_FIELD_NUMBER: _ClassVar[int]
+    OBJECT_PRIVILEGE_FIELD_NUMBER: _ClassVar[int]
+    OBJECT_TYPE_FIELD_NUMBER: _ClassVar[int]
+    object_name_index: int
+    object_name_indexs: int
+    object_privilege: ObjectPrivilege
+    object_type: ObjectType
+    def __init__(self, object_type: _Optional[_Union[ObjectType, str]] = ..., object_privilege: _Optional[_Union[ObjectPrivilege, str]] = ..., object_name_index: _Optional[int] = ..., object_name_indexs: _Optional[int] = ...) -> None: ...
+
+class Status(_message.Message):
+    __slots__ = ["error_code", "reason"]
+    ERROR_CODE_FIELD_NUMBER: _ClassVar[int]
+    REASON_FIELD_NUMBER: _ClassVar[int]
+    error_code: ErrorCode
+    reason: str
+    def __init__(self, error_code: _Optional[_Union[ErrorCode, str]] = ..., reason: _Optional[str] = ...) -> None: ...
+
+class ErrorCode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class IndexState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class SegmentState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class PlaceholderType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class MsgType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class DslType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class CompactionState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class ConsistencyLevel(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class ImportState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class ObjectType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class ObjectPrivilege(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class StateCode(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class LoadState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
diff --git a/pymilvus/grpc_gen/milvus_pb2.py b/pymilvus/grpc_gen/milvus_pb2.py
index 45365da37..a68c7c0b5 100644
--- a/pymilvus/grpc_gen/milvus_pb2.py
+++ b/pymilvus/grpc_gen/milvus_pb2.py
@@ -2,11 +2,9 @@
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: milvus.proto
 """Generated protocol buffer code."""
-from google.protobuf.internal import enum_type_wrapper
+from google.protobuf.internal import builder as _builder
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import descriptor_pool as _descriptor_pool
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
 from google.protobuf import symbol_database as _symbol_database
 # @@protoc_insertion_point(imports)
 
@@ -20,1190 +18,8 @@
 
 DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0cmilvus.proto\x12\x13milvus.proto.milvus\x1a\x0c\x63ommon.proto\x1a\x0cschema.proto\x1a google/protobuf/descriptor.proto\"y\n\x12\x43reateAliasRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\r\n\x05\x61lias\x18\x04 \x01(\t\"^\n\x10\x44ropAliasRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\r\n\x05\x61lias\x18\x03 \x01(\t\"x\n\x11\x41lterAliasRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\r\n\x05\x61lias\x18\x04 \x01(\t\"\xa0\x02\n\x17\x43reateCollectionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x0e\n\x06schema\x18\x04 \x01(\x0c\x12\x12\n\nshards_num\x18\x05 \x01(\x05\x12@\n\x11\x63onsistency_level\x18\x06 \x01(\x0e\x32%.milvus.proto.common.ConsistencyLevel\x12\x35\n\nproperties\x18\x07 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair:\x12\xca>\x0f\x08\x01\x10\x01\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\x81\x01\n\x15\x44ropCollectionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t:\x12\xca>\x0f\x08\x01\x10\x02\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\xcf\x01\n\x16\x41lterCollectionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x14\n\x0c\x63ollectionID\x18\x04 \x01(\x03\x12\x35\n\nproperties\x18\x05 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair:\x12\xca>\x0f\x08\x01\x10\x01\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\x80\x01\n\x14HasCollectionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x12\n\ntime_stamp\x18\x04 \x01(\x04\"J\n\x0c\x42oolResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\r\n\x05value\x18\x02 \x01(\x08\"L\n\x0eStringResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\r\n\x05value\x18\x02 \x01(\t\"\xaf\x01\n\x19\x44\x65scribeCollectionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x14\n\x0c\x63ollectionID\x18\x04 \x01(\x03\x12\x12\n\ntime_stamp\x18\x05 \x01(\x04:\x12\xca>\x0f\x08\x01\x10\x03\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\x81\x04\n\x1a\x44\x65scribeCollectionResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x35\n\x06schema\x18\x02 \x01(\x0b\x32%.milvus.proto.schema.CollectionSchema\x12\x14\n\x0c\x63ollectionID\x18\x03 \x01(\x03\x12\x1d\n\x15virtual_channel_names\x18\x04 \x03(\t\x12\x1e\n\x16physical_channel_names\x18\x05 \x03(\t\x12\x19\n\x11\x63reated_timestamp\x18\x06 \x01(\x04\x12\x1d\n\x15\x63reated_utc_timestamp\x18\x07 \x01(\x04\x12\x12\n\nshards_num\x18\x08 \x01(\x05\x12\x0f\n\x07\x61liases\x18\t \x03(\t\x12\x39\n\x0fstart_positions\x18\n \x03(\x0b\x32 .milvus.proto.common.KeyDataPair\x12@\n\x11\x63onsistency_level\x18\x0b \x01(\x0e\x32%.milvus.proto.common.ConsistencyLevel\x12\x17\n\x0f\x63ollection_name\x18\x0c \x01(\t\x12\x35\n\nproperties\x18\r \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\"\xb8\x01\n\x15LoadCollectionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x16\n\x0ereplica_number\x18\x04 \x01(\x05\x12\x17\n\x0fresource_groups\x18\x05 \x03(\t\x12\x0f\n\x07refresh\x18\x06 \x01(\x08:\x07\xca>\x04\x10\x05\x18\x03\"y\n\x18ReleaseCollectionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t:\x07\xca>\x04\x10\x06\x18\x03\"\xab\x01\n\x14GetStatisticsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x17\n\x0fpartition_names\x18\x04 \x03(\t\x12\x1b\n\x13guarantee_timestamp\x18\x05 \x01(\x04:\x07\xca>\x04\x10\n\x18\x03\"v\n\x15GetStatisticsResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x30\n\x05stats\x18\x02 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\"\x7f\n\x1eGetCollectionStatisticsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t:\x07\xca>\x04\x10\n\x18\x03\"\x80\x01\n\x1fGetCollectionStatisticsResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x30\n\x05stats\x18\x02 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\"\xc4\x01\n\x16ShowCollectionsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x12\n\ntime_stamp\x18\x03 \x01(\x04\x12+\n\x04type\x18\x04 \x01(\x0e\x32\x1d.milvus.proto.milvus.ShowType\x12\x18\n\x10\x63ollection_names\x18\x05 \x03(\t:\x12\xca>\x0f\x08\x01\x10\x04\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\xf3\x01\n\x17ShowCollectionsResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x18\n\x10\x63ollection_names\x18\x02 \x03(\t\x12\x16\n\x0e\x63ollection_ids\x18\x03 \x03(\x03\x12\x1a\n\x12\x63reated_timestamps\x18\x04 \x03(\x04\x12\x1e\n\x16\x63reated_utc_timestamps\x18\x05 \x03(\x04\x12\x1c\n\x14inMemory_percentages\x18\x06 \x03(\x03\x12\x1f\n\x17query_service_available\x18\x07 \x03(\x08\"\x86\x01\n\x16\x43reatePartitionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x16\n\x0epartition_name\x18\x04 \x01(\t\"\x84\x01\n\x14\x44ropPartitionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x16\n\x0epartition_name\x18\x04 \x01(\t\"\x83\x01\n\x13HasPartitionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x16\n\x0epartition_name\x18\x04 \x01(\t\"\xc8\x01\n\x15LoadPartitionsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x17\n\x0fpartition_names\x18\x04 \x03(\t\x12\x16\n\x0ereplica_number\x18\x05 \x01(\x05\x12\x17\n\x0fresource_groups\x18\x06 \x03(\t\x12\x0f\n\x07refresh\x18\x07 \x01(\x08\"\x89\x01\n\x18ReleasePartitionsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x17\n\x0fpartition_names\x18\x04 \x03(\t\"\x8d\x01\n\x1dGetPartitionStatisticsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x16\n\x0epartition_name\x18\x04 \x01(\t\"\x7f\n\x1eGetPartitionStatisticsResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x30\n\x05stats\x18\x02 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\"\xc9\x01\n\x15ShowPartitionsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x14\n\x0c\x63ollectionID\x18\x04 \x01(\x03\x12\x17\n\x0fpartition_names\x18\x05 \x03(\t\x12+\n\x04type\x18\x06 \x01(\x0e\x32\x1d.milvus.proto.milvus.ShowType\"\xce\x01\n\x16ShowPartitionsResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x17\n\x0fpartition_names\x18\x02 \x03(\t\x12\x14\n\x0cpartitionIDs\x18\x03 \x03(\x03\x12\x1a\n\x12\x63reated_timestamps\x18\x04 \x03(\x04\x12\x1e\n\x16\x63reated_utc_timestamps\x18\x05 \x03(\x04\x12\x1c\n\x14inMemory_percentages\x18\x06 \x03(\x03\"m\n\x16\x44\x65scribeSegmentRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x14\n\x0c\x63ollectionID\x18\x02 \x01(\x03\x12\x11\n\tsegmentID\x18\x03 \x01(\x03\"\x8f\x01\n\x17\x44\x65scribeSegmentResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x0f\n\x07indexID\x18\x02 \x01(\x03\x12\x0f\n\x07\x62uildID\x18\x03 \x01(\x03\x12\x14\n\x0c\x65nable_index\x18\x04 \x01(\x08\x12\x0f\n\x07\x66ieldID\x18\x05 \x01(\x03\"l\n\x13ShowSegmentsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x14\n\x0c\x63ollectionID\x18\x02 \x01(\x03\x12\x13\n\x0bpartitionID\x18\x03 \x01(\x03\"W\n\x14ShowSegmentsResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x12\n\nsegmentIDs\x18\x02 \x03(\x03\"\xd4\x01\n\x12\x43reateIndexRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x12\n\nfield_name\x18\x04 \x01(\t\x12\x37\n\x0c\x65xtra_params\x18\x05 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\x12\x12\n\nindex_name\x18\x06 \x01(\t:\x07\xca>\x04\x10\x0b\x18\x03\"\x9d\x01\n\x14\x44\x65scribeIndexRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x12\n\nfield_name\x18\x04 \x01(\t\x12\x12\n\nindex_name\x18\x05 \x01(\t:\x07\xca>\x04\x10\x0c\x18\x03\"\xf9\x01\n\x10IndexDescription\x12\x12\n\nindex_name\x18\x01 \x01(\t\x12\x0f\n\x07indexID\x18\x02 \x01(\x03\x12\x31\n\x06params\x18\x03 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\x12\x12\n\nfield_name\x18\x04 \x01(\t\x12\x14\n\x0cindexed_rows\x18\x05 \x01(\x03\x12\x12\n\ntotal_rows\x18\x06 \x01(\x03\x12.\n\x05state\x18\x07 \x01(\x0e\x32\x1f.milvus.proto.common.IndexState\x12\x1f\n\x17index_state_fail_reason\x18\x08 \x01(\t\"\x87\x01\n\x15\x44\x65scribeIndexResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x41\n\x12index_descriptions\x18\x02 \x03(\x0b\x32%.milvus.proto.milvus.IndexDescription\"\xa5\x01\n\x1cGetIndexBuildProgressRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x12\n\nfield_name\x18\x04 \x01(\t\x12\x12\n\nindex_name\x18\x05 \x01(\t:\x07\xca>\x04\x10\x0c\x18\x03\"v\n\x1dGetIndexBuildProgressResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x14\n\x0cindexed_rows\x18\x02 \x01(\x03\x12\x12\n\ntotal_rows\x18\x03 \x01(\x03\"\x9d\x01\n\x14GetIndexStateRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x12\n\nfield_name\x18\x04 \x01(\t\x12\x12\n\nindex_name\x18\x05 \x01(\t:\x07\xca>\x04\x10\x0c\x18\x03\"\x89\x01\n\x15GetIndexStateResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12.\n\x05state\x18\x02 \x01(\x0e\x32\x1f.milvus.proto.common.IndexState\x12\x13\n\x0b\x66\x61il_reason\x18\x03 \x01(\t\"\x99\x01\n\x10\x44ropIndexRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x12\n\nfield_name\x18\x04 \x01(\t\x12\x12\n\nindex_name\x18\x05 \x01(\t:\x07\xca>\x04\x10\r\x18\x03\"\xe0\x01\n\rInsertRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x16\n\x0epartition_name\x18\x04 \x01(\t\x12\x33\n\x0b\x66ields_data\x18\x05 \x03(\x0b\x32\x1e.milvus.proto.schema.FieldData\x12\x11\n\thash_keys\x18\x06 \x03(\r\x12\x10\n\x08num_rows\x18\x07 \x01(\r:\x07\xca>\x04\x10\x08\x18\x03\"\xf0\x01\n\x0eMutationResult\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12%\n\x03IDs\x18\x02 \x01(\x0b\x32\x18.milvus.proto.schema.IDs\x12\x12\n\nsucc_index\x18\x03 \x03(\r\x12\x11\n\terr_index\x18\x04 \x03(\r\x12\x14\n\x0c\x61\x63knowledged\x18\x05 \x01(\x08\x12\x12\n\ninsert_cnt\x18\x06 \x01(\x03\x12\x12\n\ndelete_cnt\x18\x07 \x01(\x03\x12\x12\n\nupsert_cnt\x18\x08 \x01(\x03\x12\x11\n\ttimestamp\x18\t \x01(\x04\"\xa7\x01\n\rDeleteRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x16\n\x0epartition_name\x18\x04 \x01(\t\x12\x0c\n\x04\x65xpr\x18\x05 \x01(\t\x12\x11\n\thash_keys\x18\x06 \x03(\r:\x07\xca>\x04\x10\t\x18\x03\"\xf3\x02\n\rSearchRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x17\n\x0fpartition_names\x18\x04 \x03(\t\x12\x0b\n\x03\x64sl\x18\x05 \x01(\t\x12\x19\n\x11placeholder_group\x18\x06 \x01(\x0c\x12.\n\x08\x64sl_type\x18\x07 \x01(\x0e\x32\x1c.milvus.proto.common.DslType\x12\x15\n\routput_fields\x18\x08 \x03(\t\x12\x38\n\rsearch_params\x18\t \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\x12\x18\n\x10travel_timestamp\x18\n \x01(\x04\x12\x1b\n\x13guarantee_timestamp\x18\x0b \x01(\x04\x12\n\n\x02nq\x18\x0c \x01(\x03:\x07\xca>\x04\x10\x0e\x18\x03\"5\n\x04Hits\x12\x0b\n\x03IDs\x18\x01 \x03(\x03\x12\x10\n\x08row_data\x18\x02 \x03(\x0c\x12\x0e\n\x06scores\x18\x03 \x03(\x02\"\x8d\x01\n\rSearchResults\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x36\n\x07results\x18\x02 \x01(\x0b\x32%.milvus.proto.schema.SearchResultData\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\"n\n\x0c\x46lushRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x18\n\x10\x63ollection_names\x18\x03 \x03(\t:\x07\xca>\x04\x10\x0f \x03\"\x9b\x04\n\rFlushResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12G\n\x0b\x63oll_segIDs\x18\x03 \x03(\x0b\x32\x32.milvus.proto.milvus.FlushResponse.CollSegIDsEntry\x12R\n\x11\x66lush_coll_segIDs\x18\x04 \x03(\x0b\x32\x37.milvus.proto.milvus.FlushResponse.FlushCollSegIDsEntry\x12N\n\x0f\x63oll_seal_times\x18\x05 \x03(\x0b\x32\x35.milvus.proto.milvus.FlushResponse.CollSealTimesEntry\x1aQ\n\x0f\x43ollSegIDsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.milvus.proto.schema.LongArray:\x02\x38\x01\x1aV\n\x14\x46lushCollSegIDsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12-\n\x05value\x18\x02 \x01(\x0b\x32\x1e.milvus.proto.schema.LongArray:\x02\x38\x01\x1a\x34\n\x12\x43ollSealTimesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01\"\x9b\x02\n\x0cQueryRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07\x64\x62_name\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x0c\n\x04\x65xpr\x18\x04 \x01(\t\x12\x15\n\routput_fields\x18\x05 \x03(\t\x12\x17\n\x0fpartition_names\x18\x06 \x03(\t\x12\x18\n\x10travel_timestamp\x18\x07 \x01(\x04\x12\x1b\n\x13guarantee_timestamp\x18\x08 \x01(\x04\x12\x37\n\x0cquery_params\x18\t \x03(\x0b\x32!.milvus.proto.common.KeyValuePair:\x07\xca>\x04\x10\x10\x18\x03\"\x89\x01\n\x0cQueryResults\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x33\n\x0b\x66ields_data\x18\x02 \x03(\x0b\x32\x1e.milvus.proto.schema.FieldData\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\"}\n\tVectorIDs\x12\x17\n\x0f\x63ollection_name\x18\x01 \x01(\t\x12\x12\n\nfield_name\x18\x02 \x01(\t\x12*\n\x08id_array\x18\x03 \x01(\x0b\x32\x18.milvus.proto.schema.IDs\x12\x17\n\x0fpartition_names\x18\x04 \x03(\t\"\x83\x01\n\x0cVectorsArray\x12\x32\n\x08id_array\x18\x01 \x01(\x0b\x32\x1e.milvus.proto.milvus.VectorIDsH\x00\x12\x36\n\ndata_array\x18\x02 \x01(\x0b\x32 .milvus.proto.schema.VectorFieldH\x00\x42\x07\n\x05\x61rray\"\xdd\x01\n\x13\x43\x61lcDistanceRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x32\n\x07op_left\x18\x02 \x01(\x0b\x32!.milvus.proto.milvus.VectorsArray\x12\x33\n\x08op_right\x18\x03 \x01(\x0b\x32!.milvus.proto.milvus.VectorsArray\x12\x31\n\x06params\x18\x04 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\"\xb5\x01\n\x13\x43\x61lcDistanceResults\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x31\n\x08int_dist\x18\x02 \x01(\x0b\x32\x1d.milvus.proto.schema.IntArrayH\x00\x12\x35\n\nfloat_dist\x18\x03 \x01(\x0b\x32\x1f.milvus.proto.schema.FloatArrayH\x00\x42\x07\n\x05\x61rray\"\x11\n\x0f\x46lushAllRequest\"U\n\x10\x46lushAllResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x14\n\x0c\x66lush_all_ts\x18\x02 \x01(\x04\"\x99\x01\n\x15PersistentSegmentInfo\x12\x11\n\tsegmentID\x18\x01 \x01(\x03\x12\x14\n\x0c\x63ollectionID\x18\x02 \x01(\x03\x12\x13\n\x0bpartitionID\x18\x03 \x01(\x03\x12\x10\n\x08num_rows\x18\x04 \x01(\x03\x12\x30\n\x05state\x18\x05 \x01(\x0e\x32!.milvus.proto.common.SegmentState\"u\n\x1fGetPersistentSegmentInfoRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0e\n\x06\x64\x62Name\x18\x02 \x01(\t\x12\x16\n\x0e\x63ollectionName\x18\x03 \x01(\t\"\x8a\x01\n GetPersistentSegmentInfoResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x39\n\x05infos\x18\x02 \x03(\x0b\x32*.milvus.proto.milvus.PersistentSegmentInfo\"\xec\x01\n\x10QuerySegmentInfo\x12\x11\n\tsegmentID\x18\x01 \x01(\x03\x12\x14\n\x0c\x63ollectionID\x18\x02 \x01(\x03\x12\x13\n\x0bpartitionID\x18\x03 \x01(\x03\x12\x10\n\x08mem_size\x18\x04 \x01(\x03\x12\x10\n\x08num_rows\x18\x05 \x01(\x03\x12\x12\n\nindex_name\x18\x06 \x01(\t\x12\x0f\n\x07indexID\x18\x07 \x01(\x03\x12\x0e\n\x06nodeID\x18\x08 \x01(\x03\x12\x30\n\x05state\x18\t \x01(\x0e\x32!.milvus.proto.common.SegmentState\x12\x0f\n\x07nodeIds\x18\n \x03(\x03\"p\n\x1aGetQuerySegmentInfoRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0e\n\x06\x64\x62Name\x18\x02 \x01(\t\x12\x16\n\x0e\x63ollectionName\x18\x03 \x01(\t\"\x80\x01\n\x1bGetQuerySegmentInfoResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x34\n\x05infos\x18\x02 \x03(\x0b\x32%.milvus.proto.milvus.QuerySegmentInfo\"$\n\x0c\x44ummyRequest\x12\x14\n\x0crequest_type\x18\x01 \x01(\t\"!\n\rDummyResponse\x12\x10\n\x08response\x18\x01 \x01(\t\"\x15\n\x13RegisterLinkRequest\"r\n\x14RegisterLinkResponse\x12-\n\x07\x61\x64\x64ress\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.Address\x12+\n\x06status\x18\x02 \x01(\x0b\x32\x1b.milvus.proto.common.Status\"P\n\x11GetMetricsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x0f\n\x07request\x18\x02 \x01(\t\"k\n\x12GetMetricsResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x10\n\x08response\x18\x02 \x01(\t\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\"\x98\x01\n\rComponentInfo\x12\x0e\n\x06nodeID\x18\x01 \x01(\x03\x12\x0c\n\x04role\x18\x02 \x01(\t\x12\x32\n\nstate_code\x18\x03 \x01(\x0e\x32\x1e.milvus.proto.common.StateCode\x12\x35\n\nextra_info\x18\x04 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\"\xb2\x01\n\x0f\x43omponentStates\x12\x31\n\x05state\x18\x01 \x01(\x0b\x32\".milvus.proto.milvus.ComponentInfo\x12?\n\x13subcomponent_states\x18\x02 \x03(\x0b\x32\".milvus.proto.milvus.ComponentInfo\x12+\n\x06status\x18\x03 \x01(\x0b\x32\x1b.milvus.proto.common.Status\"\x1b\n\x19GetComponentStatesRequest\"\xa5\x01\n\x12LoadBalanceRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x12\n\nsrc_nodeID\x18\x02 \x01(\x03\x12\x13\n\x0b\x64st_nodeIDs\x18\x03 \x03(\x03\x12\x19\n\x11sealed_segmentIDs\x18\x04 \x03(\x03\x12\x16\n\x0e\x63ollectionName\x18\x05 \x01(\t:\x07\xca>\x04\x10\x11\x18\x05\"L\n\x17ManualCompactionRequest\x12\x14\n\x0c\x63ollectionID\x18\x01 \x01(\x03\x12\x12\n\ntimetravel\x18\x02 \x01(\x04:\x07\xca>\x04\x10\x07\x18\x01\"]\n\x18ManualCompactionResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x14\n\x0c\x63ompactionID\x18\x02 \x01(\x03\"1\n\x19GetCompactionStateRequest\x12\x14\n\x0c\x63ompactionID\x18\x01 \x01(\x03\"\xdd\x01\n\x1aGetCompactionStateResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x33\n\x05state\x18\x02 \x01(\x0e\x32$.milvus.proto.common.CompactionState\x12\x17\n\x0f\x65xecutingPlanNo\x18\x03 \x01(\x03\x12\x15\n\rtimeoutPlanNo\x18\x04 \x01(\x03\x12\x17\n\x0f\x63ompletedPlanNo\x18\x05 \x01(\x03\x12\x14\n\x0c\x66\x61iledPlanNo\x18\x06 \x01(\x03\"1\n\x19GetCompactionPlansRequest\x12\x14\n\x0c\x63ompactionID\x18\x01 \x01(\x03\"\xbc\x01\n\x1aGetCompactionPlansResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x33\n\x05state\x18\x02 \x01(\x0e\x32$.milvus.proto.common.CompactionState\x12<\n\nmergeInfos\x18\x03 \x03(\x0b\x32(.milvus.proto.milvus.CompactionMergeInfo\"6\n\x13\x43ompactionMergeInfo\x12\x0f\n\x07sources\x18\x01 \x03(\x03\x12\x0e\n\x06target\x18\x02 \x01(\x03\"*\n\x14GetFlushStateRequest\x12\x12\n\nsegmentIDs\x18\x01 \x03(\x03\"U\n\x15GetFlushStateResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x0f\n\x07\x66lushed\x18\x02 \x01(\x08\"[\n\x17GetFlushAllStateRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x14\n\x0c\x66lush_all_ts\x18\x02 \x01(\x04\"X\n\x18GetFlushAllStateResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x0f\n\x07\x66lushed\x18\x02 \x01(\x08\"\xb6\x01\n\rImportRequest\x12\x17\n\x0f\x63ollection_name\x18\x01 \x01(\t\x12\x16\n\x0epartition_name\x18\x02 \x01(\t\x12\x15\n\rchannel_names\x18\x03 \x03(\t\x12\x11\n\trow_based\x18\x04 \x01(\x08\x12\r\n\x05\x66iles\x18\x05 \x03(\t\x12\x32\n\x07options\x18\x06 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair:\x07\xca>\x04\x10\x12\x18\x01\"L\n\x0eImportResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\r\n\x05tasks\x18\x02 \x03(\x03\"%\n\x15GetImportStateRequest\x12\x0c\n\x04task\x18\x01 \x01(\x03\"\x97\x02\n\x16GetImportStateResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12/\n\x05state\x18\x02 \x01(\x0e\x32 .milvus.proto.common.ImportState\x12\x11\n\trow_count\x18\x03 \x01(\x03\x12\x0f\n\x07id_list\x18\x04 \x03(\x03\x12\x30\n\x05infos\x18\x05 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\x12\n\n\x02id\x18\x06 \x01(\x03\x12\x15\n\rcollection_id\x18\x07 \x01(\x03\x12\x13\n\x0bsegment_ids\x18\x08 \x03(\x03\x12\x11\n\tcreate_ts\x18\t \x01(\x03\"@\n\x16ListImportTasksRequest\x12\x17\n\x0f\x63ollection_name\x18\x01 \x01(\t\x12\r\n\x05limit\x18\x02 \x01(\x03\"\x82\x01\n\x17ListImportTasksResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12:\n\x05tasks\x18\x02 \x03(\x0b\x32+.milvus.proto.milvus.GetImportStateResponse\"\x89\x01\n\x12GetReplicasRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x14\n\x0c\x63ollectionID\x18\x02 \x01(\x03\x12\x18\n\x10with_shard_nodes\x18\x03 \x01(\x08\x12\x17\n\x0f\x63ollection_name\x18\x04 \x01(\t\"v\n\x13GetReplicasResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x32\n\x08replicas\x18\x02 \x03(\x0b\x32 .milvus.proto.milvus.ReplicaInfo\"\xc1\x02\n\x0bReplicaInfo\x12\x11\n\treplicaID\x18\x01 \x01(\x03\x12\x14\n\x0c\x63ollectionID\x18\x02 \x01(\x03\x12\x15\n\rpartition_ids\x18\x03 \x03(\x03\x12\x39\n\x0eshard_replicas\x18\x04 \x03(\x0b\x32!.milvus.proto.milvus.ShardReplica\x12\x10\n\x08node_ids\x18\x05 \x03(\x03\x12\x1b\n\x13resource_group_name\x18\x06 \x01(\t\x12P\n\x11num_outbound_node\x18\x07 \x03(\x0b\x32\x35.milvus.proto.milvus.ReplicaInfo.NumOutboundNodeEntry\x1a\x36\n\x14NumOutboundNodeEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05:\x02\x38\x01\"`\n\x0cShardReplica\x12\x10\n\x08leaderID\x18\x01 \x01(\x03\x12\x13\n\x0bleader_addr\x18\x02 \x01(\t\x12\x17\n\x0f\x64m_channel_name\x18\x03 \x01(\t\x12\x10\n\x08node_ids\x18\x04 \x03(\x03\"\xbe\x01\n\x17\x43reateCredentialRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x10\n\x08username\x18\x02 \x01(\t\x12\x10\n\x08password\x18\x03 \x01(\t\x12\x1e\n\x16\x63reated_utc_timestamps\x18\x04 \x01(\x04\x12\x1f\n\x17modified_utc_timestamps\x18\x05 \x01(\x04:\x12\xca>\x0f\x08\x01\x10\x13\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\xcd\x01\n\x17UpdateCredentialRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x10\n\x08username\x18\x02 \x01(\t\x12\x13\n\x0boldPassword\x18\x03 \x01(\t\x12\x13\n\x0bnewPassword\x18\x04 \x01(\t\x12\x1e\n\x16\x63reated_utc_timestamps\x18\x05 \x01(\x04\x12\x1f\n\x17modified_utc_timestamps\x18\x06 \x01(\x04:\t\xca>\x06\x08\x02\x10\x14\x18\x02\"k\n\x17\x44\x65leteCredentialRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x10\n\x08username\x18\x02 \x01(\t:\x12\xca>\x0f\x08\x01\x10\x15\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"W\n\x15ListCredUsersResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x11\n\tusernames\x18\x02 \x03(\t\"V\n\x14ListCredUsersRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase:\x12\xca>\x0f\x08\x01\x10\x16\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\x1a\n\nRoleEntity\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x1a\n\nUserEntity\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x84\x01\n\x11\x43reateRoleRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12/\n\x06\x65ntity\x18\x02 \x01(\x0b\x32\x1f.milvus.proto.milvus.RoleEntity:\x12\xca>\x0f\x08\x01\x10\x13\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"d\n\x0f\x44ropRoleRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x11\n\trole_name\x18\x02 \x01(\t:\x12\xca>\x0f\x08\x01\x10\x15\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\xb5\x01\n\x16OperateUserRoleRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x10\n\x08username\x18\x02 \x01(\t\x12\x11\n\trole_name\x18\x03 \x01(\t\x12\x36\n\x04type\x18\x04 \x01(\x0e\x32(.milvus.proto.milvus.OperateUserRoleType:\x12\xca>\x0f\x08\x01\x10\x17\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\x9d\x01\n\x11SelectRoleRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12-\n\x04role\x18\x02 \x01(\x0b\x32\x1f.milvus.proto.milvus.RoleEntity\x12\x19\n\x11include_user_info\x18\x03 \x01(\x08:\x12\xca>\x0f\x08\x01\x10\x16\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"k\n\nRoleResult\x12-\n\x04role\x18\x01 \x01(\x0b\x32\x1f.milvus.proto.milvus.RoleEntity\x12.\n\x05users\x18\x02 \x03(\x0b\x32\x1f.milvus.proto.milvus.UserEntity\"s\n\x12SelectRoleResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x30\n\x07results\x18\x02 \x03(\x0b\x32\x1f.milvus.proto.milvus.RoleResult\"\x94\x01\n\x11SelectUserRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12-\n\x04user\x18\x02 \x01(\x0b\x32\x1f.milvus.proto.milvus.UserEntity\x12\x19\n\x11include_role_info\x18\x03 \x01(\x08:\t\xca>\x06\x08\x02\x10\x18\x18\x02\"k\n\nUserResult\x12-\n\x04user\x18\x01 \x01(\x0b\x32\x1f.milvus.proto.milvus.UserEntity\x12.\n\x05roles\x18\x02 \x03(\x0b\x32\x1f.milvus.proto.milvus.RoleEntity\"s\n\x12SelectUserResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x30\n\x07results\x18\x02 \x03(\x0b\x32\x1f.milvus.proto.milvus.UserResult\"\x1c\n\x0cObjectEntity\x12\x0c\n\x04name\x18\x01 \x01(\t\"\x1f\n\x0fPrivilegeEntity\x12\x0c\n\x04name\x18\x01 \x01(\t\"w\n\rGrantorEntity\x12-\n\x04user\x18\x01 \x01(\x0b\x32\x1f.milvus.proto.milvus.UserEntity\x12\x37\n\tprivilege\x18\x02 \x01(\x0b\x32$.milvus.proto.milvus.PrivilegeEntity\"L\n\x14GrantPrivilegeEntity\x12\x34\n\x08\x65ntities\x18\x01 \x03(\x0b\x32\".milvus.proto.milvus.GrantorEntity\"\xb9\x01\n\x0bGrantEntity\x12-\n\x04role\x18\x01 \x01(\x0b\x32\x1f.milvus.proto.milvus.RoleEntity\x12\x31\n\x06object\x18\x02 \x01(\x0b\x32!.milvus.proto.milvus.ObjectEntity\x12\x13\n\x0bobject_name\x18\x03 \x01(\t\x12\x33\n\x07grantor\x18\x04 \x01(\x0b\x32\".milvus.proto.milvus.GrantorEntity\"\x86\x01\n\x12SelectGrantRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x30\n\x06\x65ntity\x18\x02 \x01(\x0b\x32 .milvus.proto.milvus.GrantEntity:\x12\xca>\x0f\x08\x01\x10\x16\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"v\n\x13SelectGrantResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x32\n\x08\x65ntities\x18\x02 \x03(\x0b\x32 .milvus.proto.milvus.GrantEntity\"\xc4\x01\n\x17OperatePrivilegeRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x30\n\x06\x65ntity\x18\x02 \x01(\x0b\x32 .milvus.proto.milvus.GrantEntity\x12\x37\n\x04type\x18\x03 \x01(\x0e\x32).milvus.proto.milvus.OperatePrivilegeType:\x12\xca>\x0f\x08\x01\x10\x17\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\x82\x01\n\x19GetLoadingProgressRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x17\n\x0f\x63ollection_name\x18\x02 \x01(\t\x12\x17\n\x0fpartition_names\x18\x03 \x03(\t:\x07\xca>\x04\x10 \x18\x02\"[\n\x1aGetLoadingProgressResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x10\n\x08progress\x18\x02 \x01(\x03\"|\n\x13GetLoadStateRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x17\n\x0f\x63ollection_name\x18\x02 \x01(\t\x12\x17\n\x0fpartition_names\x18\x03 \x03(\t:\x07\xca>\x04\x10!\x18\x02\"r\n\x14GetLoadStateResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12-\n\x05state\x18\x02 \x01(\x0e\x32\x1e.milvus.proto.common.LoadState\"\x1c\n\tMilvusExt\x12\x0f\n\x07version\x18\x01 \x01(\t\"\x13\n\x11GetVersionRequest\"R\n\x12GetVersionResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x0f\n\x07version\x18\x02 \x01(\t\"\x14\n\x12\x43heckHealthRequest\"\x9d\x01\n\x13\x43heckHealthResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x11\n\tisHealthy\x18\x02 \x01(\x08\x12\x0f\n\x07reasons\x18\x03 \x03(\t\x12\x35\n\x0cquota_states\x18\x04 \x03(\x0e\x32\x1f.milvus.proto.milvus.QuotaState\"t\n\x1a\x43reateResourceGroupRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x16\n\x0eresource_group\x18\x02 \x01(\t:\x12\xca>\x0f\x08\x01\x10\x1a\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"r\n\x18\x44ropResourceGroupRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x16\n\x0eresource_group\x18\x02 \x01(\t:\x12\xca>\x0f\x08\x01\x10\x1b\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\xa5\x01\n\x13TransferNodeRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x1d\n\x15source_resource_group\x18\x02 \x01(\t\x12\x1d\n\x15target_resource_group\x18\x03 \x01(\t\x12\x10\n\x08num_node\x18\x04 \x01(\x05:\x12\xca>\x0f\x08\x01\x10\x1e\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\xc4\x01\n\x16TransferReplicaRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x1d\n\x15source_resource_group\x18\x02 \x01(\t\x12\x1d\n\x15target_resource_group\x18\x03 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x04 \x01(\t\x12\x13\n\x0bnum_replica\x18\x05 \x01(\x03:\x12\xca>\x0f\x08\x01\x10\x1f\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"[\n\x19ListResourceGroupsRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase:\x12\xca>\x0f\x08\x01\x10\x1d\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"b\n\x1aListResourceGroupsResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12\x17\n\x0fresource_groups\x18\x02 \x03(\t\"v\n\x1c\x44\x65scribeResourceGroupRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\x16\n\x0eresource_group\x18\x02 \x01(\t:\x12\xca>\x0f\x08\x01\x10\x1c\x18\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\"\x88\x01\n\x1d\x44\x65scribeResourceGroupResponse\x12+\n\x06status\x18\x01 \x01(\x0b\x32\x1b.milvus.proto.common.Status\x12:\n\x0eresource_group\x18\x02 \x01(\x0b\x32\".milvus.proto.milvus.ResourceGroup\"\xf2\x03\n\rResourceGroup\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x10\n\x08\x63\x61pacity\x18\x02 \x01(\x05\x12\x1a\n\x12num_available_node\x18\x03 \x01(\x05\x12T\n\x12num_loaded_replica\x18\x04 \x03(\x0b\x32\x38.milvus.proto.milvus.ResourceGroup.NumLoadedReplicaEntry\x12R\n\x11num_outgoing_node\x18\x05 \x03(\x0b\x32\x37.milvus.proto.milvus.ResourceGroup.NumOutgoingNodeEntry\x12R\n\x11num_incoming_node\x18\x06 \x03(\x0b\x32\x37.milvus.proto.milvus.ResourceGroup.NumIncomingNodeEntry\x1a\x37\n\x15NumLoadedReplicaEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05:\x02\x38\x01\x1a\x36\n\x14NumOutgoingNodeEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05:\x02\x38\x01\x1a\x36\n\x14NumIncomingNodeEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05:\x02\x38\x01\"s\n\x17RenameCollectionRequest\x12*\n\x04\x62\x61se\x18\x01 \x01(\x0b\x32\x1c.milvus.proto.common.MsgBase\x12\n\n\x02\x64\x62\x18\x02 \x01(\t\x12\x0f\n\x07oldName\x18\x03 \x01(\t\x12\x0f\n\x07newName\x18\x04 \x01(\t*!\n\x08ShowType\x12\x07\n\x03\x41ll\x10\x00\x12\x0c\n\x08InMemory\x10\x01*@\n\x13OperateUserRoleType\x12\x11\n\rAddUserToRole\x10\x00\x12\x16\n\x12RemoveUserFromRole\x10\x01*-\n\x14OperatePrivilegeType\x12\t\n\x05Grant\x10\x00\x12\n\n\x06Revoke\x10\x01*]\n\nQuotaState\x12\x0b\n\x07Unknown\x10\x00\x12\x0f\n\x0bReadLimited\x10\x02\x12\x10\n\x0cWriteLimited\x10\x03\x12\x0e\n\nDenyToRead\x10\x04\x12\x0f\n\x0b\x44\x65nyToWrite\x10\x05\x32\xd3\x36\n\rMilvusService\x12_\n\x10\x43reateCollection\x12,.milvus.proto.milvus.CreateCollectionRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12[\n\x0e\x44ropCollection\x12*.milvus.proto.milvus.DropCollectionRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12_\n\rHasCollection\x12).milvus.proto.milvus.HasCollectionRequest\x1a!.milvus.proto.milvus.BoolResponse\"\x00\x12[\n\x0eLoadCollection\x12*.milvus.proto.milvus.LoadCollectionRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12\x61\n\x11ReleaseCollection\x12-.milvus.proto.milvus.ReleaseCollectionRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12w\n\x12\x44\x65scribeCollection\x12..milvus.proto.milvus.DescribeCollectionRequest\x1a/.milvus.proto.milvus.DescribeCollectionResponse\"\x00\x12\x86\x01\n\x17GetCollectionStatistics\x12\x33.milvus.proto.milvus.GetCollectionStatisticsRequest\x1a\x34.milvus.proto.milvus.GetCollectionStatisticsResponse\"\x00\x12n\n\x0fShowCollections\x12+.milvus.proto.milvus.ShowCollectionsRequest\x1a,.milvus.proto.milvus.ShowCollectionsResponse\"\x00\x12]\n\x0f\x41lterCollection\x12+.milvus.proto.milvus.AlterCollectionRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12]\n\x0f\x43reatePartition\x12+.milvus.proto.milvus.CreatePartitionRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12Y\n\rDropPartition\x12).milvus.proto.milvus.DropPartitionRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12]\n\x0cHasPartition\x12(.milvus.proto.milvus.HasPartitionRequest\x1a!.milvus.proto.milvus.BoolResponse\"\x00\x12[\n\x0eLoadPartitions\x12*.milvus.proto.milvus.LoadPartitionsRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12\x61\n\x11ReleasePartitions\x12-.milvus.proto.milvus.ReleasePartitionsRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12\x83\x01\n\x16GetPartitionStatistics\x12\x32.milvus.proto.milvus.GetPartitionStatisticsRequest\x1a\x33.milvus.proto.milvus.GetPartitionStatisticsResponse\"\x00\x12k\n\x0eShowPartitions\x12*.milvus.proto.milvus.ShowPartitionsRequest\x1a+.milvus.proto.milvus.ShowPartitionsResponse\"\x00\x12w\n\x12GetLoadingProgress\x12..milvus.proto.milvus.GetLoadingProgressRequest\x1a/.milvus.proto.milvus.GetLoadingProgressResponse\"\x00\x12\x65\n\x0cGetLoadState\x12(.milvus.proto.milvus.GetLoadStateRequest\x1a).milvus.proto.milvus.GetLoadStateResponse\"\x00\x12U\n\x0b\x43reateAlias\x12\'.milvus.proto.milvus.CreateAliasRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12Q\n\tDropAlias\x12%.milvus.proto.milvus.DropAliasRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12S\n\nAlterAlias\x12&.milvus.proto.milvus.AlterAliasRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12U\n\x0b\x43reateIndex\x12\'.milvus.proto.milvus.CreateIndexRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12h\n\rDescribeIndex\x12).milvus.proto.milvus.DescribeIndexRequest\x1a*.milvus.proto.milvus.DescribeIndexResponse\"\x00\x12h\n\rGetIndexState\x12).milvus.proto.milvus.GetIndexStateRequest\x1a*.milvus.proto.milvus.GetIndexStateResponse\"\x00\x12\x80\x01\n\x15GetIndexBuildProgress\x12\x31.milvus.proto.milvus.GetIndexBuildProgressRequest\x1a\x32.milvus.proto.milvus.GetIndexBuildProgressResponse\"\x00\x12Q\n\tDropIndex\x12%.milvus.proto.milvus.DropIndexRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12S\n\x06Insert\x12\".milvus.proto.milvus.InsertRequest\x1a#.milvus.proto.milvus.MutationResult\"\x00\x12S\n\x06\x44\x65lete\x12\".milvus.proto.milvus.DeleteRequest\x1a#.milvus.proto.milvus.MutationResult\"\x00\x12R\n\x06Search\x12\".milvus.proto.milvus.SearchRequest\x1a\".milvus.proto.milvus.SearchResults\"\x00\x12P\n\x05\x46lush\x12!.milvus.proto.milvus.FlushRequest\x1a\".milvus.proto.milvus.FlushResponse\"\x00\x12O\n\x05Query\x12!.milvus.proto.milvus.QueryRequest\x1a!.milvus.proto.milvus.QueryResults\"\x00\x12\x64\n\x0c\x43\x61lcDistance\x12(.milvus.proto.milvus.CalcDistanceRequest\x1a(.milvus.proto.milvus.CalcDistanceResults\"\x00\x12Y\n\x08\x46lushAll\x12$.milvus.proto.milvus.FlushAllRequest\x1a%.milvus.proto.milvus.FlushAllResponse\"\x00\x12h\n\rGetFlushState\x12).milvus.proto.milvus.GetFlushStateRequest\x1a*.milvus.proto.milvus.GetFlushStateResponse\"\x00\x12q\n\x10GetFlushAllState\x12,.milvus.proto.milvus.GetFlushAllStateRequest\x1a-.milvus.proto.milvus.GetFlushAllStateResponse\"\x00\x12\x89\x01\n\x18GetPersistentSegmentInfo\x12\x34.milvus.proto.milvus.GetPersistentSegmentInfoRequest\x1a\x35.milvus.proto.milvus.GetPersistentSegmentInfoResponse\"\x00\x12z\n\x13GetQuerySegmentInfo\x12/.milvus.proto.milvus.GetQuerySegmentInfoRequest\x1a\x30.milvus.proto.milvus.GetQuerySegmentInfoResponse\"\x00\x12\x62\n\x0bGetReplicas\x12\'.milvus.proto.milvus.GetReplicasRequest\x1a(.milvus.proto.milvus.GetReplicasResponse\"\x00\x12P\n\x05\x44ummy\x12!.milvus.proto.milvus.DummyRequest\x1a\".milvus.proto.milvus.DummyResponse\"\x00\x12\x65\n\x0cRegisterLink\x12(.milvus.proto.milvus.RegisterLinkRequest\x1a).milvus.proto.milvus.RegisterLinkResponse\"\x00\x12_\n\nGetMetrics\x12&.milvus.proto.milvus.GetMetricsRequest\x1a\'.milvus.proto.milvus.GetMetricsResponse\"\x00\x12l\n\x12GetComponentStates\x12..milvus.proto.milvus.GetComponentStatesRequest\x1a$.milvus.proto.milvus.ComponentStates\"\x00\x12U\n\x0bLoadBalance\x12\'.milvus.proto.milvus.LoadBalanceRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12w\n\x12GetCompactionState\x12..milvus.proto.milvus.GetCompactionStateRequest\x1a/.milvus.proto.milvus.GetCompactionStateResponse\"\x00\x12q\n\x10ManualCompaction\x12,.milvus.proto.milvus.ManualCompactionRequest\x1a-.milvus.proto.milvus.ManualCompactionResponse\"\x00\x12\x80\x01\n\x1bGetCompactionStateWithPlans\x12..milvus.proto.milvus.GetCompactionPlansRequest\x1a/.milvus.proto.milvus.GetCompactionPlansResponse\"\x00\x12S\n\x06Import\x12\".milvus.proto.milvus.ImportRequest\x1a#.milvus.proto.milvus.ImportResponse\"\x00\x12k\n\x0eGetImportState\x12*.milvus.proto.milvus.GetImportStateRequest\x1a+.milvus.proto.milvus.GetImportStateResponse\"\x00\x12n\n\x0fListImportTasks\x12+.milvus.proto.milvus.ListImportTasksRequest\x1a,.milvus.proto.milvus.ListImportTasksResponse\"\x00\x12_\n\x10\x43reateCredential\x12,.milvus.proto.milvus.CreateCredentialRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12_\n\x10UpdateCredential\x12,.milvus.proto.milvus.UpdateCredentialRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12_\n\x10\x44\x65leteCredential\x12,.milvus.proto.milvus.DeleteCredentialRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12h\n\rListCredUsers\x12).milvus.proto.milvus.ListCredUsersRequest\x1a*.milvus.proto.milvus.ListCredUsersResponse\"\x00\x12S\n\nCreateRole\x12&.milvus.proto.milvus.CreateRoleRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12O\n\x08\x44ropRole\x12$.milvus.proto.milvus.DropRoleRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12]\n\x0fOperateUserRole\x12+.milvus.proto.milvus.OperateUserRoleRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12_\n\nSelectRole\x12&.milvus.proto.milvus.SelectRoleRequest\x1a\'.milvus.proto.milvus.SelectRoleResponse\"\x00\x12_\n\nSelectUser\x12&.milvus.proto.milvus.SelectUserRequest\x1a\'.milvus.proto.milvus.SelectUserResponse\"\x00\x12_\n\x10OperatePrivilege\x12,.milvus.proto.milvus.OperatePrivilegeRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12\x62\n\x0bSelectGrant\x12\'.milvus.proto.milvus.SelectGrantRequest\x1a(.milvus.proto.milvus.SelectGrantResponse\"\x00\x12_\n\nGetVersion\x12&.milvus.proto.milvus.GetVersionRequest\x1a\'.milvus.proto.milvus.GetVersionResponse\"\x00\x12\x62\n\x0b\x43heckHealth\x12\'.milvus.proto.milvus.CheckHealthRequest\x1a(.milvus.proto.milvus.CheckHealthResponse\"\x00\x12\x65\n\x13\x43reateResourceGroup\x12/.milvus.proto.milvus.CreateResourceGroupRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12\x61\n\x11\x44ropResourceGroup\x12-.milvus.proto.milvus.DropResourceGroupRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12W\n\x0cTransferNode\x12(.milvus.proto.milvus.TransferNodeRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12]\n\x0fTransferReplica\x12+.milvus.proto.milvus.TransferReplicaRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x12w\n\x12ListResourceGroups\x12..milvus.proto.milvus.ListResourceGroupsRequest\x1a/.milvus.proto.milvus.ListResourceGroupsResponse\"\x00\x12\x80\x01\n\x15\x44\x65scribeResourceGroup\x12\x31.milvus.proto.milvus.DescribeResourceGroupRequest\x1a\x32.milvus.proto.milvus.DescribeResourceGroupResponse\"\x00\x12_\n\x10RenameCollection\x12,.milvus.proto.milvus.RenameCollectionRequest\x1a\x1b.milvus.proto.common.Status\"\x00\x32u\n\x0cProxyService\x12\x65\n\x0cRegisterLink\x12(.milvus.proto.milvus.RegisterLinkRequest\x1a).milvus.proto.milvus.RegisterLinkResponse\"\x00:U\n\x0emilvus_ext_obj\x12\x1c.google.protobuf.FileOptions\x18\xe9\x07 \x01(\x0b\x32\x1e.milvus.proto.milvus.MilvusExtBU\n\x0eio.milvus.grpcB\x0bMilvusProtoP\x01Z1github.com/milvus-io/milvus-proto/go-api/milvuspb\xa0\x01\x01\x62\x06proto3')
 
-_SHOWTYPE = DESCRIPTOR.enum_types_by_name['ShowType']
-ShowType = enum_type_wrapper.EnumTypeWrapper(_SHOWTYPE)
-_OPERATEUSERROLETYPE = DESCRIPTOR.enum_types_by_name['OperateUserRoleType']
-OperateUserRoleType = enum_type_wrapper.EnumTypeWrapper(_OPERATEUSERROLETYPE)
-_OPERATEPRIVILEGETYPE = DESCRIPTOR.enum_types_by_name['OperatePrivilegeType']
-OperatePrivilegeType = enum_type_wrapper.EnumTypeWrapper(_OPERATEPRIVILEGETYPE)
-_QUOTASTATE = DESCRIPTOR.enum_types_by_name['QuotaState']
-QuotaState = enum_type_wrapper.EnumTypeWrapper(_QUOTASTATE)
-All = 0
-InMemory = 1
-AddUserToRole = 0
-RemoveUserFromRole = 1
-Grant = 0
-Revoke = 1
-Unknown = 0
-ReadLimited = 2
-WriteLimited = 3
-DenyToRead = 4
-DenyToWrite = 5
-
-MILVUS_EXT_OBJ_FIELD_NUMBER = 1001
-milvus_ext_obj = DESCRIPTOR.extensions_by_name['milvus_ext_obj']
-
-_CREATEALIASREQUEST = DESCRIPTOR.message_types_by_name['CreateAliasRequest']
-_DROPALIASREQUEST = DESCRIPTOR.message_types_by_name['DropAliasRequest']
-_ALTERALIASREQUEST = DESCRIPTOR.message_types_by_name['AlterAliasRequest']
-_CREATECOLLECTIONREQUEST = DESCRIPTOR.message_types_by_name['CreateCollectionRequest']
-_DROPCOLLECTIONREQUEST = DESCRIPTOR.message_types_by_name['DropCollectionRequest']
-_ALTERCOLLECTIONREQUEST = DESCRIPTOR.message_types_by_name['AlterCollectionRequest']
-_HASCOLLECTIONREQUEST = DESCRIPTOR.message_types_by_name['HasCollectionRequest']
-_BOOLRESPONSE = DESCRIPTOR.message_types_by_name['BoolResponse']
-_STRINGRESPONSE = DESCRIPTOR.message_types_by_name['StringResponse']
-_DESCRIBECOLLECTIONREQUEST = DESCRIPTOR.message_types_by_name['DescribeCollectionRequest']
-_DESCRIBECOLLECTIONRESPONSE = DESCRIPTOR.message_types_by_name['DescribeCollectionResponse']
-_LOADCOLLECTIONREQUEST = DESCRIPTOR.message_types_by_name['LoadCollectionRequest']
-_RELEASECOLLECTIONREQUEST = DESCRIPTOR.message_types_by_name['ReleaseCollectionRequest']
-_GETSTATISTICSREQUEST = DESCRIPTOR.message_types_by_name['GetStatisticsRequest']
-_GETSTATISTICSRESPONSE = DESCRIPTOR.message_types_by_name['GetStatisticsResponse']
-_GETCOLLECTIONSTATISTICSREQUEST = DESCRIPTOR.message_types_by_name['GetCollectionStatisticsRequest']
-_GETCOLLECTIONSTATISTICSRESPONSE = DESCRIPTOR.message_types_by_name['GetCollectionStatisticsResponse']
-_SHOWCOLLECTIONSREQUEST = DESCRIPTOR.message_types_by_name['ShowCollectionsRequest']
-_SHOWCOLLECTIONSRESPONSE = DESCRIPTOR.message_types_by_name['ShowCollectionsResponse']
-_CREATEPARTITIONREQUEST = DESCRIPTOR.message_types_by_name['CreatePartitionRequest']
-_DROPPARTITIONREQUEST = DESCRIPTOR.message_types_by_name['DropPartitionRequest']
-_HASPARTITIONREQUEST = DESCRIPTOR.message_types_by_name['HasPartitionRequest']
-_LOADPARTITIONSREQUEST = DESCRIPTOR.message_types_by_name['LoadPartitionsRequest']
-_RELEASEPARTITIONSREQUEST = DESCRIPTOR.message_types_by_name['ReleasePartitionsRequest']
-_GETPARTITIONSTATISTICSREQUEST = DESCRIPTOR.message_types_by_name['GetPartitionStatisticsRequest']
-_GETPARTITIONSTATISTICSRESPONSE = DESCRIPTOR.message_types_by_name['GetPartitionStatisticsResponse']
-_SHOWPARTITIONSREQUEST = DESCRIPTOR.message_types_by_name['ShowPartitionsRequest']
-_SHOWPARTITIONSRESPONSE = DESCRIPTOR.message_types_by_name['ShowPartitionsResponse']
-_DESCRIBESEGMENTREQUEST = DESCRIPTOR.message_types_by_name['DescribeSegmentRequest']
-_DESCRIBESEGMENTRESPONSE = DESCRIPTOR.message_types_by_name['DescribeSegmentResponse']
-_SHOWSEGMENTSREQUEST = DESCRIPTOR.message_types_by_name['ShowSegmentsRequest']
-_SHOWSEGMENTSRESPONSE = DESCRIPTOR.message_types_by_name['ShowSegmentsResponse']
-_CREATEINDEXREQUEST = DESCRIPTOR.message_types_by_name['CreateIndexRequest']
-_DESCRIBEINDEXREQUEST = DESCRIPTOR.message_types_by_name['DescribeIndexRequest']
-_INDEXDESCRIPTION = DESCRIPTOR.message_types_by_name['IndexDescription']
-_DESCRIBEINDEXRESPONSE = DESCRIPTOR.message_types_by_name['DescribeIndexResponse']
-_GETINDEXBUILDPROGRESSREQUEST = DESCRIPTOR.message_types_by_name['GetIndexBuildProgressRequest']
-_GETINDEXBUILDPROGRESSRESPONSE = DESCRIPTOR.message_types_by_name['GetIndexBuildProgressResponse']
-_GETINDEXSTATEREQUEST = DESCRIPTOR.message_types_by_name['GetIndexStateRequest']
-_GETINDEXSTATERESPONSE = DESCRIPTOR.message_types_by_name['GetIndexStateResponse']
-_DROPINDEXREQUEST = DESCRIPTOR.message_types_by_name['DropIndexRequest']
-_INSERTREQUEST = DESCRIPTOR.message_types_by_name['InsertRequest']
-_MUTATIONRESULT = DESCRIPTOR.message_types_by_name['MutationResult']
-_DELETEREQUEST = DESCRIPTOR.message_types_by_name['DeleteRequest']
-_SEARCHREQUEST = DESCRIPTOR.message_types_by_name['SearchRequest']
-_HITS = DESCRIPTOR.message_types_by_name['Hits']
-_SEARCHRESULTS = DESCRIPTOR.message_types_by_name['SearchResults']
-_FLUSHREQUEST = DESCRIPTOR.message_types_by_name['FlushRequest']
-_FLUSHRESPONSE = DESCRIPTOR.message_types_by_name['FlushResponse']
-_FLUSHRESPONSE_COLLSEGIDSENTRY = _FLUSHRESPONSE.nested_types_by_name['CollSegIDsEntry']
-_FLUSHRESPONSE_FLUSHCOLLSEGIDSENTRY = _FLUSHRESPONSE.nested_types_by_name['FlushCollSegIDsEntry']
-_FLUSHRESPONSE_COLLSEALTIMESENTRY = _FLUSHRESPONSE.nested_types_by_name['CollSealTimesEntry']
-_QUERYREQUEST = DESCRIPTOR.message_types_by_name['QueryRequest']
-_QUERYRESULTS = DESCRIPTOR.message_types_by_name['QueryResults']
-_VECTORIDS = DESCRIPTOR.message_types_by_name['VectorIDs']
-_VECTORSARRAY = DESCRIPTOR.message_types_by_name['VectorsArray']
-_CALCDISTANCEREQUEST = DESCRIPTOR.message_types_by_name['CalcDistanceRequest']
-_CALCDISTANCERESULTS = DESCRIPTOR.message_types_by_name['CalcDistanceResults']
-_FLUSHALLREQUEST = DESCRIPTOR.message_types_by_name['FlushAllRequest']
-_FLUSHALLRESPONSE = DESCRIPTOR.message_types_by_name['FlushAllResponse']
-_PERSISTENTSEGMENTINFO = DESCRIPTOR.message_types_by_name['PersistentSegmentInfo']
-_GETPERSISTENTSEGMENTINFOREQUEST = DESCRIPTOR.message_types_by_name['GetPersistentSegmentInfoRequest']
-_GETPERSISTENTSEGMENTINFORESPONSE = DESCRIPTOR.message_types_by_name['GetPersistentSegmentInfoResponse']
-_QUERYSEGMENTINFO = DESCRIPTOR.message_types_by_name['QuerySegmentInfo']
-_GETQUERYSEGMENTINFOREQUEST = DESCRIPTOR.message_types_by_name['GetQuerySegmentInfoRequest']
-_GETQUERYSEGMENTINFORESPONSE = DESCRIPTOR.message_types_by_name['GetQuerySegmentInfoResponse']
-_DUMMYREQUEST = DESCRIPTOR.message_types_by_name['DummyRequest']
-_DUMMYRESPONSE = DESCRIPTOR.message_types_by_name['DummyResponse']
-_REGISTERLINKREQUEST = DESCRIPTOR.message_types_by_name['RegisterLinkRequest']
-_REGISTERLINKRESPONSE = DESCRIPTOR.message_types_by_name['RegisterLinkResponse']
-_GETMETRICSREQUEST = DESCRIPTOR.message_types_by_name['GetMetricsRequest']
-_GETMETRICSRESPONSE = DESCRIPTOR.message_types_by_name['GetMetricsResponse']
-_COMPONENTINFO = DESCRIPTOR.message_types_by_name['ComponentInfo']
-_COMPONENTSTATES = DESCRIPTOR.message_types_by_name['ComponentStates']
-_GETCOMPONENTSTATESREQUEST = DESCRIPTOR.message_types_by_name['GetComponentStatesRequest']
-_LOADBALANCEREQUEST = DESCRIPTOR.message_types_by_name['LoadBalanceRequest']
-_MANUALCOMPACTIONREQUEST = DESCRIPTOR.message_types_by_name['ManualCompactionRequest']
-_MANUALCOMPACTIONRESPONSE = DESCRIPTOR.message_types_by_name['ManualCompactionResponse']
-_GETCOMPACTIONSTATEREQUEST = DESCRIPTOR.message_types_by_name['GetCompactionStateRequest']
-_GETCOMPACTIONSTATERESPONSE = DESCRIPTOR.message_types_by_name['GetCompactionStateResponse']
-_GETCOMPACTIONPLANSREQUEST = DESCRIPTOR.message_types_by_name['GetCompactionPlansRequest']
-_GETCOMPACTIONPLANSRESPONSE = DESCRIPTOR.message_types_by_name['GetCompactionPlansResponse']
-_COMPACTIONMERGEINFO = DESCRIPTOR.message_types_by_name['CompactionMergeInfo']
-_GETFLUSHSTATEREQUEST = DESCRIPTOR.message_types_by_name['GetFlushStateRequest']
-_GETFLUSHSTATERESPONSE = DESCRIPTOR.message_types_by_name['GetFlushStateResponse']
-_GETFLUSHALLSTATEREQUEST = DESCRIPTOR.message_types_by_name['GetFlushAllStateRequest']
-_GETFLUSHALLSTATERESPONSE = DESCRIPTOR.message_types_by_name['GetFlushAllStateResponse']
-_IMPORTREQUEST = DESCRIPTOR.message_types_by_name['ImportRequest']
-_IMPORTRESPONSE = DESCRIPTOR.message_types_by_name['ImportResponse']
-_GETIMPORTSTATEREQUEST = DESCRIPTOR.message_types_by_name['GetImportStateRequest']
-_GETIMPORTSTATERESPONSE = DESCRIPTOR.message_types_by_name['GetImportStateResponse']
-_LISTIMPORTTASKSREQUEST = DESCRIPTOR.message_types_by_name['ListImportTasksRequest']
-_LISTIMPORTTASKSRESPONSE = DESCRIPTOR.message_types_by_name['ListImportTasksResponse']
-_GETREPLICASREQUEST = DESCRIPTOR.message_types_by_name['GetReplicasRequest']
-_GETREPLICASRESPONSE = DESCRIPTOR.message_types_by_name['GetReplicasResponse']
-_REPLICAINFO = DESCRIPTOR.message_types_by_name['ReplicaInfo']
-_REPLICAINFO_NUMOUTBOUNDNODEENTRY = _REPLICAINFO.nested_types_by_name['NumOutboundNodeEntry']
-_SHARDREPLICA = DESCRIPTOR.message_types_by_name['ShardReplica']
-_CREATECREDENTIALREQUEST = DESCRIPTOR.message_types_by_name['CreateCredentialRequest']
-_UPDATECREDENTIALREQUEST = DESCRIPTOR.message_types_by_name['UpdateCredentialRequest']
-_DELETECREDENTIALREQUEST = DESCRIPTOR.message_types_by_name['DeleteCredentialRequest']
-_LISTCREDUSERSRESPONSE = DESCRIPTOR.message_types_by_name['ListCredUsersResponse']
-_LISTCREDUSERSREQUEST = DESCRIPTOR.message_types_by_name['ListCredUsersRequest']
-_ROLEENTITY = DESCRIPTOR.message_types_by_name['RoleEntity']
-_USERENTITY = DESCRIPTOR.message_types_by_name['UserEntity']
-_CREATEROLEREQUEST = DESCRIPTOR.message_types_by_name['CreateRoleRequest']
-_DROPROLEREQUEST = DESCRIPTOR.message_types_by_name['DropRoleRequest']
-_OPERATEUSERROLEREQUEST = DESCRIPTOR.message_types_by_name['OperateUserRoleRequest']
-_SELECTROLEREQUEST = DESCRIPTOR.message_types_by_name['SelectRoleRequest']
-_ROLERESULT = DESCRIPTOR.message_types_by_name['RoleResult']
-_SELECTROLERESPONSE = DESCRIPTOR.message_types_by_name['SelectRoleResponse']
-_SELECTUSERREQUEST = DESCRIPTOR.message_types_by_name['SelectUserRequest']
-_USERRESULT = DESCRIPTOR.message_types_by_name['UserResult']
-_SELECTUSERRESPONSE = DESCRIPTOR.message_types_by_name['SelectUserResponse']
-_OBJECTENTITY = DESCRIPTOR.message_types_by_name['ObjectEntity']
-_PRIVILEGEENTITY = DESCRIPTOR.message_types_by_name['PrivilegeEntity']
-_GRANTORENTITY = DESCRIPTOR.message_types_by_name['GrantorEntity']
-_GRANTPRIVILEGEENTITY = DESCRIPTOR.message_types_by_name['GrantPrivilegeEntity']
-_GRANTENTITY = DESCRIPTOR.message_types_by_name['GrantEntity']
-_SELECTGRANTREQUEST = DESCRIPTOR.message_types_by_name['SelectGrantRequest']
-_SELECTGRANTRESPONSE = DESCRIPTOR.message_types_by_name['SelectGrantResponse']
-_OPERATEPRIVILEGEREQUEST = DESCRIPTOR.message_types_by_name['OperatePrivilegeRequest']
-_GETLOADINGPROGRESSREQUEST = DESCRIPTOR.message_types_by_name['GetLoadingProgressRequest']
-_GETLOADINGPROGRESSRESPONSE = DESCRIPTOR.message_types_by_name['GetLoadingProgressResponse']
-_GETLOADSTATEREQUEST = DESCRIPTOR.message_types_by_name['GetLoadStateRequest']
-_GETLOADSTATERESPONSE = DESCRIPTOR.message_types_by_name['GetLoadStateResponse']
-_MILVUSEXT = DESCRIPTOR.message_types_by_name['MilvusExt']
-_GETVERSIONREQUEST = DESCRIPTOR.message_types_by_name['GetVersionRequest']
-_GETVERSIONRESPONSE = DESCRIPTOR.message_types_by_name['GetVersionResponse']
-_CHECKHEALTHREQUEST = DESCRIPTOR.message_types_by_name['CheckHealthRequest']
-_CHECKHEALTHRESPONSE = DESCRIPTOR.message_types_by_name['CheckHealthResponse']
-_CREATERESOURCEGROUPREQUEST = DESCRIPTOR.message_types_by_name['CreateResourceGroupRequest']
-_DROPRESOURCEGROUPREQUEST = DESCRIPTOR.message_types_by_name['DropResourceGroupRequest']
-_TRANSFERNODEREQUEST = DESCRIPTOR.message_types_by_name['TransferNodeRequest']
-_TRANSFERREPLICAREQUEST = DESCRIPTOR.message_types_by_name['TransferReplicaRequest']
-_LISTRESOURCEGROUPSREQUEST = DESCRIPTOR.message_types_by_name['ListResourceGroupsRequest']
-_LISTRESOURCEGROUPSRESPONSE = DESCRIPTOR.message_types_by_name['ListResourceGroupsResponse']
-_DESCRIBERESOURCEGROUPREQUEST = DESCRIPTOR.message_types_by_name['DescribeResourceGroupRequest']
-_DESCRIBERESOURCEGROUPRESPONSE = DESCRIPTOR.message_types_by_name['DescribeResourceGroupResponse']
-_RESOURCEGROUP = DESCRIPTOR.message_types_by_name['ResourceGroup']
-_RESOURCEGROUP_NUMLOADEDREPLICAENTRY = _RESOURCEGROUP.nested_types_by_name['NumLoadedReplicaEntry']
-_RESOURCEGROUP_NUMOUTGOINGNODEENTRY = _RESOURCEGROUP.nested_types_by_name['NumOutgoingNodeEntry']
-_RESOURCEGROUP_NUMINCOMINGNODEENTRY = _RESOURCEGROUP.nested_types_by_name['NumIncomingNodeEntry']
-_RENAMECOLLECTIONREQUEST = DESCRIPTOR.message_types_by_name['RenameCollectionRequest']
-CreateAliasRequest = _reflection.GeneratedProtocolMessageType('CreateAliasRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATEALIASREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CreateAliasRequest)
-  })
-_sym_db.RegisterMessage(CreateAliasRequest)
-
-DropAliasRequest = _reflection.GeneratedProtocolMessageType('DropAliasRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DROPALIASREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DropAliasRequest)
-  })
-_sym_db.RegisterMessage(DropAliasRequest)
-
-AlterAliasRequest = _reflection.GeneratedProtocolMessageType('AlterAliasRequest', (_message.Message,), {
-  'DESCRIPTOR' : _ALTERALIASREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.AlterAliasRequest)
-  })
-_sym_db.RegisterMessage(AlterAliasRequest)
-
-CreateCollectionRequest = _reflection.GeneratedProtocolMessageType('CreateCollectionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATECOLLECTIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CreateCollectionRequest)
-  })
-_sym_db.RegisterMessage(CreateCollectionRequest)
-
-DropCollectionRequest = _reflection.GeneratedProtocolMessageType('DropCollectionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DROPCOLLECTIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DropCollectionRequest)
-  })
-_sym_db.RegisterMessage(DropCollectionRequest)
-
-AlterCollectionRequest = _reflection.GeneratedProtocolMessageType('AlterCollectionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _ALTERCOLLECTIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.AlterCollectionRequest)
-  })
-_sym_db.RegisterMessage(AlterCollectionRequest)
-
-HasCollectionRequest = _reflection.GeneratedProtocolMessageType('HasCollectionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _HASCOLLECTIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.HasCollectionRequest)
-  })
-_sym_db.RegisterMessage(HasCollectionRequest)
-
-BoolResponse = _reflection.GeneratedProtocolMessageType('BoolResponse', (_message.Message,), {
-  'DESCRIPTOR' : _BOOLRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.BoolResponse)
-  })
-_sym_db.RegisterMessage(BoolResponse)
-
-StringResponse = _reflection.GeneratedProtocolMessageType('StringResponse', (_message.Message,), {
-  'DESCRIPTOR' : _STRINGRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.StringResponse)
-  })
-_sym_db.RegisterMessage(StringResponse)
-
-DescribeCollectionRequest = _reflection.GeneratedProtocolMessageType('DescribeCollectionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DESCRIBECOLLECTIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DescribeCollectionRequest)
-  })
-_sym_db.RegisterMessage(DescribeCollectionRequest)
-
-DescribeCollectionResponse = _reflection.GeneratedProtocolMessageType('DescribeCollectionResponse', (_message.Message,), {
-  'DESCRIPTOR' : _DESCRIBECOLLECTIONRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DescribeCollectionResponse)
-  })
-_sym_db.RegisterMessage(DescribeCollectionResponse)
-
-LoadCollectionRequest = _reflection.GeneratedProtocolMessageType('LoadCollectionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LOADCOLLECTIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.LoadCollectionRequest)
-  })
-_sym_db.RegisterMessage(LoadCollectionRequest)
-
-ReleaseCollectionRequest = _reflection.GeneratedProtocolMessageType('ReleaseCollectionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _RELEASECOLLECTIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ReleaseCollectionRequest)
-  })
-_sym_db.RegisterMessage(ReleaseCollectionRequest)
-
-GetStatisticsRequest = _reflection.GeneratedProtocolMessageType('GetStatisticsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETSTATISTICSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetStatisticsRequest)
-  })
-_sym_db.RegisterMessage(GetStatisticsRequest)
-
-GetStatisticsResponse = _reflection.GeneratedProtocolMessageType('GetStatisticsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETSTATISTICSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetStatisticsResponse)
-  })
-_sym_db.RegisterMessage(GetStatisticsResponse)
-
-GetCollectionStatisticsRequest = _reflection.GeneratedProtocolMessageType('GetCollectionStatisticsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETCOLLECTIONSTATISTICSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetCollectionStatisticsRequest)
-  })
-_sym_db.RegisterMessage(GetCollectionStatisticsRequest)
-
-GetCollectionStatisticsResponse = _reflection.GeneratedProtocolMessageType('GetCollectionStatisticsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETCOLLECTIONSTATISTICSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetCollectionStatisticsResponse)
-  })
-_sym_db.RegisterMessage(GetCollectionStatisticsResponse)
-
-ShowCollectionsRequest = _reflection.GeneratedProtocolMessageType('ShowCollectionsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _SHOWCOLLECTIONSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ShowCollectionsRequest)
-  })
-_sym_db.RegisterMessage(ShowCollectionsRequest)
-
-ShowCollectionsResponse = _reflection.GeneratedProtocolMessageType('ShowCollectionsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _SHOWCOLLECTIONSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ShowCollectionsResponse)
-  })
-_sym_db.RegisterMessage(ShowCollectionsResponse)
-
-CreatePartitionRequest = _reflection.GeneratedProtocolMessageType('CreatePartitionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATEPARTITIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CreatePartitionRequest)
-  })
-_sym_db.RegisterMessage(CreatePartitionRequest)
-
-DropPartitionRequest = _reflection.GeneratedProtocolMessageType('DropPartitionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DROPPARTITIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DropPartitionRequest)
-  })
-_sym_db.RegisterMessage(DropPartitionRequest)
-
-HasPartitionRequest = _reflection.GeneratedProtocolMessageType('HasPartitionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _HASPARTITIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.HasPartitionRequest)
-  })
-_sym_db.RegisterMessage(HasPartitionRequest)
-
-LoadPartitionsRequest = _reflection.GeneratedProtocolMessageType('LoadPartitionsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LOADPARTITIONSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.LoadPartitionsRequest)
-  })
-_sym_db.RegisterMessage(LoadPartitionsRequest)
-
-ReleasePartitionsRequest = _reflection.GeneratedProtocolMessageType('ReleasePartitionsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _RELEASEPARTITIONSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ReleasePartitionsRequest)
-  })
-_sym_db.RegisterMessage(ReleasePartitionsRequest)
-
-GetPartitionStatisticsRequest = _reflection.GeneratedProtocolMessageType('GetPartitionStatisticsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETPARTITIONSTATISTICSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetPartitionStatisticsRequest)
-  })
-_sym_db.RegisterMessage(GetPartitionStatisticsRequest)
-
-GetPartitionStatisticsResponse = _reflection.GeneratedProtocolMessageType('GetPartitionStatisticsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETPARTITIONSTATISTICSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetPartitionStatisticsResponse)
-  })
-_sym_db.RegisterMessage(GetPartitionStatisticsResponse)
-
-ShowPartitionsRequest = _reflection.GeneratedProtocolMessageType('ShowPartitionsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _SHOWPARTITIONSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ShowPartitionsRequest)
-  })
-_sym_db.RegisterMessage(ShowPartitionsRequest)
-
-ShowPartitionsResponse = _reflection.GeneratedProtocolMessageType('ShowPartitionsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _SHOWPARTITIONSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ShowPartitionsResponse)
-  })
-_sym_db.RegisterMessage(ShowPartitionsResponse)
-
-DescribeSegmentRequest = _reflection.GeneratedProtocolMessageType('DescribeSegmentRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DESCRIBESEGMENTREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DescribeSegmentRequest)
-  })
-_sym_db.RegisterMessage(DescribeSegmentRequest)
-
-DescribeSegmentResponse = _reflection.GeneratedProtocolMessageType('DescribeSegmentResponse', (_message.Message,), {
-  'DESCRIPTOR' : _DESCRIBESEGMENTRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DescribeSegmentResponse)
-  })
-_sym_db.RegisterMessage(DescribeSegmentResponse)
-
-ShowSegmentsRequest = _reflection.GeneratedProtocolMessageType('ShowSegmentsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _SHOWSEGMENTSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ShowSegmentsRequest)
-  })
-_sym_db.RegisterMessage(ShowSegmentsRequest)
-
-ShowSegmentsResponse = _reflection.GeneratedProtocolMessageType('ShowSegmentsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _SHOWSEGMENTSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ShowSegmentsResponse)
-  })
-_sym_db.RegisterMessage(ShowSegmentsResponse)
-
-CreateIndexRequest = _reflection.GeneratedProtocolMessageType('CreateIndexRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATEINDEXREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CreateIndexRequest)
-  })
-_sym_db.RegisterMessage(CreateIndexRequest)
-
-DescribeIndexRequest = _reflection.GeneratedProtocolMessageType('DescribeIndexRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DESCRIBEINDEXREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DescribeIndexRequest)
-  })
-_sym_db.RegisterMessage(DescribeIndexRequest)
-
-IndexDescription = _reflection.GeneratedProtocolMessageType('IndexDescription', (_message.Message,), {
-  'DESCRIPTOR' : _INDEXDESCRIPTION,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.IndexDescription)
-  })
-_sym_db.RegisterMessage(IndexDescription)
-
-DescribeIndexResponse = _reflection.GeneratedProtocolMessageType('DescribeIndexResponse', (_message.Message,), {
-  'DESCRIPTOR' : _DESCRIBEINDEXRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DescribeIndexResponse)
-  })
-_sym_db.RegisterMessage(DescribeIndexResponse)
-
-GetIndexBuildProgressRequest = _reflection.GeneratedProtocolMessageType('GetIndexBuildProgressRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETINDEXBUILDPROGRESSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetIndexBuildProgressRequest)
-  })
-_sym_db.RegisterMessage(GetIndexBuildProgressRequest)
-
-GetIndexBuildProgressResponse = _reflection.GeneratedProtocolMessageType('GetIndexBuildProgressResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETINDEXBUILDPROGRESSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetIndexBuildProgressResponse)
-  })
-_sym_db.RegisterMessage(GetIndexBuildProgressResponse)
-
-GetIndexStateRequest = _reflection.GeneratedProtocolMessageType('GetIndexStateRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETINDEXSTATEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetIndexStateRequest)
-  })
-_sym_db.RegisterMessage(GetIndexStateRequest)
-
-GetIndexStateResponse = _reflection.GeneratedProtocolMessageType('GetIndexStateResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETINDEXSTATERESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetIndexStateResponse)
-  })
-_sym_db.RegisterMessage(GetIndexStateResponse)
-
-DropIndexRequest = _reflection.GeneratedProtocolMessageType('DropIndexRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DROPINDEXREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DropIndexRequest)
-  })
-_sym_db.RegisterMessage(DropIndexRequest)
-
-InsertRequest = _reflection.GeneratedProtocolMessageType('InsertRequest', (_message.Message,), {
-  'DESCRIPTOR' : _INSERTREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.InsertRequest)
-  })
-_sym_db.RegisterMessage(InsertRequest)
-
-MutationResult = _reflection.GeneratedProtocolMessageType('MutationResult', (_message.Message,), {
-  'DESCRIPTOR' : _MUTATIONRESULT,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.MutationResult)
-  })
-_sym_db.RegisterMessage(MutationResult)
-
-DeleteRequest = _reflection.GeneratedProtocolMessageType('DeleteRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DeleteRequest)
-  })
-_sym_db.RegisterMessage(DeleteRequest)
-
-SearchRequest = _reflection.GeneratedProtocolMessageType('SearchRequest', (_message.Message,), {
-  'DESCRIPTOR' : _SEARCHREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.SearchRequest)
-  })
-_sym_db.RegisterMessage(SearchRequest)
-
-Hits = _reflection.GeneratedProtocolMessageType('Hits', (_message.Message,), {
-  'DESCRIPTOR' : _HITS,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.Hits)
-  })
-_sym_db.RegisterMessage(Hits)
-
-SearchResults = _reflection.GeneratedProtocolMessageType('SearchResults', (_message.Message,), {
-  'DESCRIPTOR' : _SEARCHRESULTS,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.SearchResults)
-  })
-_sym_db.RegisterMessage(SearchResults)
-
-FlushRequest = _reflection.GeneratedProtocolMessageType('FlushRequest', (_message.Message,), {
-  'DESCRIPTOR' : _FLUSHREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.FlushRequest)
-  })
-_sym_db.RegisterMessage(FlushRequest)
-
-FlushResponse = _reflection.GeneratedProtocolMessageType('FlushResponse', (_message.Message,), {
-
-  'CollSegIDsEntry' : _reflection.GeneratedProtocolMessageType('CollSegIDsEntry', (_message.Message,), {
-    'DESCRIPTOR' : _FLUSHRESPONSE_COLLSEGIDSENTRY,
-    '__module__' : 'milvus_pb2'
-    # @@protoc_insertion_point(class_scope:milvus.proto.milvus.FlushResponse.CollSegIDsEntry)
-    })
-  ,
-
-  'FlushCollSegIDsEntry' : _reflection.GeneratedProtocolMessageType('FlushCollSegIDsEntry', (_message.Message,), {
-    'DESCRIPTOR' : _FLUSHRESPONSE_FLUSHCOLLSEGIDSENTRY,
-    '__module__' : 'milvus_pb2'
-    # @@protoc_insertion_point(class_scope:milvus.proto.milvus.FlushResponse.FlushCollSegIDsEntry)
-    })
-  ,
-
-  'CollSealTimesEntry' : _reflection.GeneratedProtocolMessageType('CollSealTimesEntry', (_message.Message,), {
-    'DESCRIPTOR' : _FLUSHRESPONSE_COLLSEALTIMESENTRY,
-    '__module__' : 'milvus_pb2'
-    # @@protoc_insertion_point(class_scope:milvus.proto.milvus.FlushResponse.CollSealTimesEntry)
-    })
-  ,
-  'DESCRIPTOR' : _FLUSHRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.FlushResponse)
-  })
-_sym_db.RegisterMessage(FlushResponse)
-_sym_db.RegisterMessage(FlushResponse.CollSegIDsEntry)
-_sym_db.RegisterMessage(FlushResponse.FlushCollSegIDsEntry)
-_sym_db.RegisterMessage(FlushResponse.CollSealTimesEntry)
-
-QueryRequest = _reflection.GeneratedProtocolMessageType('QueryRequest', (_message.Message,), {
-  'DESCRIPTOR' : _QUERYREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.QueryRequest)
-  })
-_sym_db.RegisterMessage(QueryRequest)
-
-QueryResults = _reflection.GeneratedProtocolMessageType('QueryResults', (_message.Message,), {
-  'DESCRIPTOR' : _QUERYRESULTS,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.QueryResults)
-  })
-_sym_db.RegisterMessage(QueryResults)
-
-VectorIDs = _reflection.GeneratedProtocolMessageType('VectorIDs', (_message.Message,), {
-  'DESCRIPTOR' : _VECTORIDS,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.VectorIDs)
-  })
-_sym_db.RegisterMessage(VectorIDs)
-
-VectorsArray = _reflection.GeneratedProtocolMessageType('VectorsArray', (_message.Message,), {
-  'DESCRIPTOR' : _VECTORSARRAY,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.VectorsArray)
-  })
-_sym_db.RegisterMessage(VectorsArray)
-
-CalcDistanceRequest = _reflection.GeneratedProtocolMessageType('CalcDistanceRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CALCDISTANCEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CalcDistanceRequest)
-  })
-_sym_db.RegisterMessage(CalcDistanceRequest)
-
-CalcDistanceResults = _reflection.GeneratedProtocolMessageType('CalcDistanceResults', (_message.Message,), {
-  'DESCRIPTOR' : _CALCDISTANCERESULTS,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CalcDistanceResults)
-  })
-_sym_db.RegisterMessage(CalcDistanceResults)
-
-FlushAllRequest = _reflection.GeneratedProtocolMessageType('FlushAllRequest', (_message.Message,), {
-  'DESCRIPTOR' : _FLUSHALLREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.FlushAllRequest)
-  })
-_sym_db.RegisterMessage(FlushAllRequest)
-
-FlushAllResponse = _reflection.GeneratedProtocolMessageType('FlushAllResponse', (_message.Message,), {
-  'DESCRIPTOR' : _FLUSHALLRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.FlushAllResponse)
-  })
-_sym_db.RegisterMessage(FlushAllResponse)
-
-PersistentSegmentInfo = _reflection.GeneratedProtocolMessageType('PersistentSegmentInfo', (_message.Message,), {
-  'DESCRIPTOR' : _PERSISTENTSEGMENTINFO,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.PersistentSegmentInfo)
-  })
-_sym_db.RegisterMessage(PersistentSegmentInfo)
-
-GetPersistentSegmentInfoRequest = _reflection.GeneratedProtocolMessageType('GetPersistentSegmentInfoRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETPERSISTENTSEGMENTINFOREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetPersistentSegmentInfoRequest)
-  })
-_sym_db.RegisterMessage(GetPersistentSegmentInfoRequest)
-
-GetPersistentSegmentInfoResponse = _reflection.GeneratedProtocolMessageType('GetPersistentSegmentInfoResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETPERSISTENTSEGMENTINFORESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetPersistentSegmentInfoResponse)
-  })
-_sym_db.RegisterMessage(GetPersistentSegmentInfoResponse)
-
-QuerySegmentInfo = _reflection.GeneratedProtocolMessageType('QuerySegmentInfo', (_message.Message,), {
-  'DESCRIPTOR' : _QUERYSEGMENTINFO,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.QuerySegmentInfo)
-  })
-_sym_db.RegisterMessage(QuerySegmentInfo)
-
-GetQuerySegmentInfoRequest = _reflection.GeneratedProtocolMessageType('GetQuerySegmentInfoRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETQUERYSEGMENTINFOREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetQuerySegmentInfoRequest)
-  })
-_sym_db.RegisterMessage(GetQuerySegmentInfoRequest)
-
-GetQuerySegmentInfoResponse = _reflection.GeneratedProtocolMessageType('GetQuerySegmentInfoResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETQUERYSEGMENTINFORESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetQuerySegmentInfoResponse)
-  })
-_sym_db.RegisterMessage(GetQuerySegmentInfoResponse)
-
-DummyRequest = _reflection.GeneratedProtocolMessageType('DummyRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DUMMYREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DummyRequest)
-  })
-_sym_db.RegisterMessage(DummyRequest)
-
-DummyResponse = _reflection.GeneratedProtocolMessageType('DummyResponse', (_message.Message,), {
-  'DESCRIPTOR' : _DUMMYRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DummyResponse)
-  })
-_sym_db.RegisterMessage(DummyResponse)
-
-RegisterLinkRequest = _reflection.GeneratedProtocolMessageType('RegisterLinkRequest', (_message.Message,), {
-  'DESCRIPTOR' : _REGISTERLINKREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.RegisterLinkRequest)
-  })
-_sym_db.RegisterMessage(RegisterLinkRequest)
-
-RegisterLinkResponse = _reflection.GeneratedProtocolMessageType('RegisterLinkResponse', (_message.Message,), {
-  'DESCRIPTOR' : _REGISTERLINKRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.RegisterLinkResponse)
-  })
-_sym_db.RegisterMessage(RegisterLinkResponse)
-
-GetMetricsRequest = _reflection.GeneratedProtocolMessageType('GetMetricsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETMETRICSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetMetricsRequest)
-  })
-_sym_db.RegisterMessage(GetMetricsRequest)
-
-GetMetricsResponse = _reflection.GeneratedProtocolMessageType('GetMetricsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETMETRICSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetMetricsResponse)
-  })
-_sym_db.RegisterMessage(GetMetricsResponse)
-
-ComponentInfo = _reflection.GeneratedProtocolMessageType('ComponentInfo', (_message.Message,), {
-  'DESCRIPTOR' : _COMPONENTINFO,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ComponentInfo)
-  })
-_sym_db.RegisterMessage(ComponentInfo)
-
-ComponentStates = _reflection.GeneratedProtocolMessageType('ComponentStates', (_message.Message,), {
-  'DESCRIPTOR' : _COMPONENTSTATES,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ComponentStates)
-  })
-_sym_db.RegisterMessage(ComponentStates)
-
-GetComponentStatesRequest = _reflection.GeneratedProtocolMessageType('GetComponentStatesRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETCOMPONENTSTATESREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetComponentStatesRequest)
-  })
-_sym_db.RegisterMessage(GetComponentStatesRequest)
-
-LoadBalanceRequest = _reflection.GeneratedProtocolMessageType('LoadBalanceRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LOADBALANCEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.LoadBalanceRequest)
-  })
-_sym_db.RegisterMessage(LoadBalanceRequest)
-
-ManualCompactionRequest = _reflection.GeneratedProtocolMessageType('ManualCompactionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _MANUALCOMPACTIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ManualCompactionRequest)
-  })
-_sym_db.RegisterMessage(ManualCompactionRequest)
-
-ManualCompactionResponse = _reflection.GeneratedProtocolMessageType('ManualCompactionResponse', (_message.Message,), {
-  'DESCRIPTOR' : _MANUALCOMPACTIONRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ManualCompactionResponse)
-  })
-_sym_db.RegisterMessage(ManualCompactionResponse)
-
-GetCompactionStateRequest = _reflection.GeneratedProtocolMessageType('GetCompactionStateRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETCOMPACTIONSTATEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetCompactionStateRequest)
-  })
-_sym_db.RegisterMessage(GetCompactionStateRequest)
-
-GetCompactionStateResponse = _reflection.GeneratedProtocolMessageType('GetCompactionStateResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETCOMPACTIONSTATERESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetCompactionStateResponse)
-  })
-_sym_db.RegisterMessage(GetCompactionStateResponse)
-
-GetCompactionPlansRequest = _reflection.GeneratedProtocolMessageType('GetCompactionPlansRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETCOMPACTIONPLANSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetCompactionPlansRequest)
-  })
-_sym_db.RegisterMessage(GetCompactionPlansRequest)
-
-GetCompactionPlansResponse = _reflection.GeneratedProtocolMessageType('GetCompactionPlansResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETCOMPACTIONPLANSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetCompactionPlansResponse)
-  })
-_sym_db.RegisterMessage(GetCompactionPlansResponse)
-
-CompactionMergeInfo = _reflection.GeneratedProtocolMessageType('CompactionMergeInfo', (_message.Message,), {
-  'DESCRIPTOR' : _COMPACTIONMERGEINFO,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CompactionMergeInfo)
-  })
-_sym_db.RegisterMessage(CompactionMergeInfo)
-
-GetFlushStateRequest = _reflection.GeneratedProtocolMessageType('GetFlushStateRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETFLUSHSTATEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetFlushStateRequest)
-  })
-_sym_db.RegisterMessage(GetFlushStateRequest)
-
-GetFlushStateResponse = _reflection.GeneratedProtocolMessageType('GetFlushStateResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETFLUSHSTATERESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetFlushStateResponse)
-  })
-_sym_db.RegisterMessage(GetFlushStateResponse)
-
-GetFlushAllStateRequest = _reflection.GeneratedProtocolMessageType('GetFlushAllStateRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETFLUSHALLSTATEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetFlushAllStateRequest)
-  })
-_sym_db.RegisterMessage(GetFlushAllStateRequest)
-
-GetFlushAllStateResponse = _reflection.GeneratedProtocolMessageType('GetFlushAllStateResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETFLUSHALLSTATERESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetFlushAllStateResponse)
-  })
-_sym_db.RegisterMessage(GetFlushAllStateResponse)
-
-ImportRequest = _reflection.GeneratedProtocolMessageType('ImportRequest', (_message.Message,), {
-  'DESCRIPTOR' : _IMPORTREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ImportRequest)
-  })
-_sym_db.RegisterMessage(ImportRequest)
-
-ImportResponse = _reflection.GeneratedProtocolMessageType('ImportResponse', (_message.Message,), {
-  'DESCRIPTOR' : _IMPORTRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ImportResponse)
-  })
-_sym_db.RegisterMessage(ImportResponse)
-
-GetImportStateRequest = _reflection.GeneratedProtocolMessageType('GetImportStateRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETIMPORTSTATEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetImportStateRequest)
-  })
-_sym_db.RegisterMessage(GetImportStateRequest)
-
-GetImportStateResponse = _reflection.GeneratedProtocolMessageType('GetImportStateResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETIMPORTSTATERESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetImportStateResponse)
-  })
-_sym_db.RegisterMessage(GetImportStateResponse)
-
-ListImportTasksRequest = _reflection.GeneratedProtocolMessageType('ListImportTasksRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTIMPORTTASKSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ListImportTasksRequest)
-  })
-_sym_db.RegisterMessage(ListImportTasksRequest)
-
-ListImportTasksResponse = _reflection.GeneratedProtocolMessageType('ListImportTasksResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTIMPORTTASKSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ListImportTasksResponse)
-  })
-_sym_db.RegisterMessage(ListImportTasksResponse)
-
-GetReplicasRequest = _reflection.GeneratedProtocolMessageType('GetReplicasRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETREPLICASREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetReplicasRequest)
-  })
-_sym_db.RegisterMessage(GetReplicasRequest)
-
-GetReplicasResponse = _reflection.GeneratedProtocolMessageType('GetReplicasResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETREPLICASRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetReplicasResponse)
-  })
-_sym_db.RegisterMessage(GetReplicasResponse)
-
-ReplicaInfo = _reflection.GeneratedProtocolMessageType('ReplicaInfo', (_message.Message,), {
-
-  'NumOutboundNodeEntry' : _reflection.GeneratedProtocolMessageType('NumOutboundNodeEntry', (_message.Message,), {
-    'DESCRIPTOR' : _REPLICAINFO_NUMOUTBOUNDNODEENTRY,
-    '__module__' : 'milvus_pb2'
-    # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ReplicaInfo.NumOutboundNodeEntry)
-    })
-  ,
-  'DESCRIPTOR' : _REPLICAINFO,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ReplicaInfo)
-  })
-_sym_db.RegisterMessage(ReplicaInfo)
-_sym_db.RegisterMessage(ReplicaInfo.NumOutboundNodeEntry)
-
-ShardReplica = _reflection.GeneratedProtocolMessageType('ShardReplica', (_message.Message,), {
-  'DESCRIPTOR' : _SHARDREPLICA,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ShardReplica)
-  })
-_sym_db.RegisterMessage(ShardReplica)
-
-CreateCredentialRequest = _reflection.GeneratedProtocolMessageType('CreateCredentialRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATECREDENTIALREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CreateCredentialRequest)
-  })
-_sym_db.RegisterMessage(CreateCredentialRequest)
-
-UpdateCredentialRequest = _reflection.GeneratedProtocolMessageType('UpdateCredentialRequest', (_message.Message,), {
-  'DESCRIPTOR' : _UPDATECREDENTIALREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.UpdateCredentialRequest)
-  })
-_sym_db.RegisterMessage(UpdateCredentialRequest)
-
-DeleteCredentialRequest = _reflection.GeneratedProtocolMessageType('DeleteCredentialRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DELETECREDENTIALREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DeleteCredentialRequest)
-  })
-_sym_db.RegisterMessage(DeleteCredentialRequest)
-
-ListCredUsersResponse = _reflection.GeneratedProtocolMessageType('ListCredUsersResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTCREDUSERSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ListCredUsersResponse)
-  })
-_sym_db.RegisterMessage(ListCredUsersResponse)
-
-ListCredUsersRequest = _reflection.GeneratedProtocolMessageType('ListCredUsersRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTCREDUSERSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ListCredUsersRequest)
-  })
-_sym_db.RegisterMessage(ListCredUsersRequest)
-
-RoleEntity = _reflection.GeneratedProtocolMessageType('RoleEntity', (_message.Message,), {
-  'DESCRIPTOR' : _ROLEENTITY,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.RoleEntity)
-  })
-_sym_db.RegisterMessage(RoleEntity)
-
-UserEntity = _reflection.GeneratedProtocolMessageType('UserEntity', (_message.Message,), {
-  'DESCRIPTOR' : _USERENTITY,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.UserEntity)
-  })
-_sym_db.RegisterMessage(UserEntity)
-
-CreateRoleRequest = _reflection.GeneratedProtocolMessageType('CreateRoleRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATEROLEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CreateRoleRequest)
-  })
-_sym_db.RegisterMessage(CreateRoleRequest)
-
-DropRoleRequest = _reflection.GeneratedProtocolMessageType('DropRoleRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DROPROLEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DropRoleRequest)
-  })
-_sym_db.RegisterMessage(DropRoleRequest)
-
-OperateUserRoleRequest = _reflection.GeneratedProtocolMessageType('OperateUserRoleRequest', (_message.Message,), {
-  'DESCRIPTOR' : _OPERATEUSERROLEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.OperateUserRoleRequest)
-  })
-_sym_db.RegisterMessage(OperateUserRoleRequest)
-
-SelectRoleRequest = _reflection.GeneratedProtocolMessageType('SelectRoleRequest', (_message.Message,), {
-  'DESCRIPTOR' : _SELECTROLEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.SelectRoleRequest)
-  })
-_sym_db.RegisterMessage(SelectRoleRequest)
-
-RoleResult = _reflection.GeneratedProtocolMessageType('RoleResult', (_message.Message,), {
-  'DESCRIPTOR' : _ROLERESULT,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.RoleResult)
-  })
-_sym_db.RegisterMessage(RoleResult)
-
-SelectRoleResponse = _reflection.GeneratedProtocolMessageType('SelectRoleResponse', (_message.Message,), {
-  'DESCRIPTOR' : _SELECTROLERESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.SelectRoleResponse)
-  })
-_sym_db.RegisterMessage(SelectRoleResponse)
-
-SelectUserRequest = _reflection.GeneratedProtocolMessageType('SelectUserRequest', (_message.Message,), {
-  'DESCRIPTOR' : _SELECTUSERREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.SelectUserRequest)
-  })
-_sym_db.RegisterMessage(SelectUserRequest)
-
-UserResult = _reflection.GeneratedProtocolMessageType('UserResult', (_message.Message,), {
-  'DESCRIPTOR' : _USERRESULT,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.UserResult)
-  })
-_sym_db.RegisterMessage(UserResult)
-
-SelectUserResponse = _reflection.GeneratedProtocolMessageType('SelectUserResponse', (_message.Message,), {
-  'DESCRIPTOR' : _SELECTUSERRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.SelectUserResponse)
-  })
-_sym_db.RegisterMessage(SelectUserResponse)
-
-ObjectEntity = _reflection.GeneratedProtocolMessageType('ObjectEntity', (_message.Message,), {
-  'DESCRIPTOR' : _OBJECTENTITY,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ObjectEntity)
-  })
-_sym_db.RegisterMessage(ObjectEntity)
-
-PrivilegeEntity = _reflection.GeneratedProtocolMessageType('PrivilegeEntity', (_message.Message,), {
-  'DESCRIPTOR' : _PRIVILEGEENTITY,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.PrivilegeEntity)
-  })
-_sym_db.RegisterMessage(PrivilegeEntity)
-
-GrantorEntity = _reflection.GeneratedProtocolMessageType('GrantorEntity', (_message.Message,), {
-  'DESCRIPTOR' : _GRANTORENTITY,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GrantorEntity)
-  })
-_sym_db.RegisterMessage(GrantorEntity)
-
-GrantPrivilegeEntity = _reflection.GeneratedProtocolMessageType('GrantPrivilegeEntity', (_message.Message,), {
-  'DESCRIPTOR' : _GRANTPRIVILEGEENTITY,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GrantPrivilegeEntity)
-  })
-_sym_db.RegisterMessage(GrantPrivilegeEntity)
-
-GrantEntity = _reflection.GeneratedProtocolMessageType('GrantEntity', (_message.Message,), {
-  'DESCRIPTOR' : _GRANTENTITY,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GrantEntity)
-  })
-_sym_db.RegisterMessage(GrantEntity)
-
-SelectGrantRequest = _reflection.GeneratedProtocolMessageType('SelectGrantRequest', (_message.Message,), {
-  'DESCRIPTOR' : _SELECTGRANTREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.SelectGrantRequest)
-  })
-_sym_db.RegisterMessage(SelectGrantRequest)
-
-SelectGrantResponse = _reflection.GeneratedProtocolMessageType('SelectGrantResponse', (_message.Message,), {
-  'DESCRIPTOR' : _SELECTGRANTRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.SelectGrantResponse)
-  })
-_sym_db.RegisterMessage(SelectGrantResponse)
-
-OperatePrivilegeRequest = _reflection.GeneratedProtocolMessageType('OperatePrivilegeRequest', (_message.Message,), {
-  'DESCRIPTOR' : _OPERATEPRIVILEGEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.OperatePrivilegeRequest)
-  })
-_sym_db.RegisterMessage(OperatePrivilegeRequest)
-
-GetLoadingProgressRequest = _reflection.GeneratedProtocolMessageType('GetLoadingProgressRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETLOADINGPROGRESSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetLoadingProgressRequest)
-  })
-_sym_db.RegisterMessage(GetLoadingProgressRequest)
-
-GetLoadingProgressResponse = _reflection.GeneratedProtocolMessageType('GetLoadingProgressResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETLOADINGPROGRESSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetLoadingProgressResponse)
-  })
-_sym_db.RegisterMessage(GetLoadingProgressResponse)
-
-GetLoadStateRequest = _reflection.GeneratedProtocolMessageType('GetLoadStateRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETLOADSTATEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetLoadStateRequest)
-  })
-_sym_db.RegisterMessage(GetLoadStateRequest)
-
-GetLoadStateResponse = _reflection.GeneratedProtocolMessageType('GetLoadStateResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETLOADSTATERESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetLoadStateResponse)
-  })
-_sym_db.RegisterMessage(GetLoadStateResponse)
-
-MilvusExt = _reflection.GeneratedProtocolMessageType('MilvusExt', (_message.Message,), {
-  'DESCRIPTOR' : _MILVUSEXT,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.MilvusExt)
-  })
-_sym_db.RegisterMessage(MilvusExt)
-
-GetVersionRequest = _reflection.GeneratedProtocolMessageType('GetVersionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _GETVERSIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetVersionRequest)
-  })
-_sym_db.RegisterMessage(GetVersionRequest)
-
-GetVersionResponse = _reflection.GeneratedProtocolMessageType('GetVersionResponse', (_message.Message,), {
-  'DESCRIPTOR' : _GETVERSIONRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.GetVersionResponse)
-  })
-_sym_db.RegisterMessage(GetVersionResponse)
-
-CheckHealthRequest = _reflection.GeneratedProtocolMessageType('CheckHealthRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CHECKHEALTHREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CheckHealthRequest)
-  })
-_sym_db.RegisterMessage(CheckHealthRequest)
-
-CheckHealthResponse = _reflection.GeneratedProtocolMessageType('CheckHealthResponse', (_message.Message,), {
-  'DESCRIPTOR' : _CHECKHEALTHRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CheckHealthResponse)
-  })
-_sym_db.RegisterMessage(CheckHealthResponse)
-
-CreateResourceGroupRequest = _reflection.GeneratedProtocolMessageType('CreateResourceGroupRequest', (_message.Message,), {
-  'DESCRIPTOR' : _CREATERESOURCEGROUPREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.CreateResourceGroupRequest)
-  })
-_sym_db.RegisterMessage(CreateResourceGroupRequest)
-
-DropResourceGroupRequest = _reflection.GeneratedProtocolMessageType('DropResourceGroupRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DROPRESOURCEGROUPREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DropResourceGroupRequest)
-  })
-_sym_db.RegisterMessage(DropResourceGroupRequest)
-
-TransferNodeRequest = _reflection.GeneratedProtocolMessageType('TransferNodeRequest', (_message.Message,), {
-  'DESCRIPTOR' : _TRANSFERNODEREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.TransferNodeRequest)
-  })
-_sym_db.RegisterMessage(TransferNodeRequest)
-
-TransferReplicaRequest = _reflection.GeneratedProtocolMessageType('TransferReplicaRequest', (_message.Message,), {
-  'DESCRIPTOR' : _TRANSFERREPLICAREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.TransferReplicaRequest)
-  })
-_sym_db.RegisterMessage(TransferReplicaRequest)
-
-ListResourceGroupsRequest = _reflection.GeneratedProtocolMessageType('ListResourceGroupsRequest', (_message.Message,), {
-  'DESCRIPTOR' : _LISTRESOURCEGROUPSREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ListResourceGroupsRequest)
-  })
-_sym_db.RegisterMessage(ListResourceGroupsRequest)
-
-ListResourceGroupsResponse = _reflection.GeneratedProtocolMessageType('ListResourceGroupsResponse', (_message.Message,), {
-  'DESCRIPTOR' : _LISTRESOURCEGROUPSRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ListResourceGroupsResponse)
-  })
-_sym_db.RegisterMessage(ListResourceGroupsResponse)
-
-DescribeResourceGroupRequest = _reflection.GeneratedProtocolMessageType('DescribeResourceGroupRequest', (_message.Message,), {
-  'DESCRIPTOR' : _DESCRIBERESOURCEGROUPREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DescribeResourceGroupRequest)
-  })
-_sym_db.RegisterMessage(DescribeResourceGroupRequest)
-
-DescribeResourceGroupResponse = _reflection.GeneratedProtocolMessageType('DescribeResourceGroupResponse', (_message.Message,), {
-  'DESCRIPTOR' : _DESCRIBERESOURCEGROUPRESPONSE,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.DescribeResourceGroupResponse)
-  })
-_sym_db.RegisterMessage(DescribeResourceGroupResponse)
-
-ResourceGroup = _reflection.GeneratedProtocolMessageType('ResourceGroup', (_message.Message,), {
-
-  'NumLoadedReplicaEntry' : _reflection.GeneratedProtocolMessageType('NumLoadedReplicaEntry', (_message.Message,), {
-    'DESCRIPTOR' : _RESOURCEGROUP_NUMLOADEDREPLICAENTRY,
-    '__module__' : 'milvus_pb2'
-    # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ResourceGroup.NumLoadedReplicaEntry)
-    })
-  ,
-
-  'NumOutgoingNodeEntry' : _reflection.GeneratedProtocolMessageType('NumOutgoingNodeEntry', (_message.Message,), {
-    'DESCRIPTOR' : _RESOURCEGROUP_NUMOUTGOINGNODEENTRY,
-    '__module__' : 'milvus_pb2'
-    # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ResourceGroup.NumOutgoingNodeEntry)
-    })
-  ,
-
-  'NumIncomingNodeEntry' : _reflection.GeneratedProtocolMessageType('NumIncomingNodeEntry', (_message.Message,), {
-    'DESCRIPTOR' : _RESOURCEGROUP_NUMINCOMINGNODEENTRY,
-    '__module__' : 'milvus_pb2'
-    # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ResourceGroup.NumIncomingNodeEntry)
-    })
-  ,
-  'DESCRIPTOR' : _RESOURCEGROUP,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.ResourceGroup)
-  })
-_sym_db.RegisterMessage(ResourceGroup)
-_sym_db.RegisterMessage(ResourceGroup.NumLoadedReplicaEntry)
-_sym_db.RegisterMessage(ResourceGroup.NumOutgoingNodeEntry)
-_sym_db.RegisterMessage(ResourceGroup.NumIncomingNodeEntry)
-
-RenameCollectionRequest = _reflection.GeneratedProtocolMessageType('RenameCollectionRequest', (_message.Message,), {
-  'DESCRIPTOR' : _RENAMECOLLECTIONREQUEST,
-  '__module__' : 'milvus_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.milvus.RenameCollectionRequest)
-  })
-_sym_db.RegisterMessage(RenameCollectionRequest)
-
-_MILVUSSERVICE = DESCRIPTOR.services_by_name['MilvusService']
-_PROXYSERVICE = DESCRIPTOR.services_by_name['ProxyService']
+_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
+_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'milvus_pb2', globals())
 if _descriptor._USE_C_DESCRIPTORS == False:
   google_dot_protobuf_dot_descriptor__pb2.FileOptions.RegisterExtension(milvus_ext_obj)
 
diff --git a/pymilvus/grpc_gen/milvus_pb2.pyi b/pymilvus/grpc_gen/milvus_pb2.pyi
new file mode 100644
index 000000000..5a964d064
--- /dev/null
+++ b/pymilvus/grpc_gen/milvus_pb2.pyi
@@ -0,0 +1,1568 @@
+from . import common_pb2 as _common_pb2
+from . import schema_pb2 as _schema_pb2
+from google.protobuf import descriptor_pb2 as _descriptor_pb2
+from google.protobuf.internal import containers as _containers
+from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
+
+AddUserToRole: OperateUserRoleType
+All: ShowType
+DESCRIPTOR: _descriptor.FileDescriptor
+DenyToRead: QuotaState
+DenyToWrite: QuotaState
+Grant: OperatePrivilegeType
+InMemory: ShowType
+MILVUS_EXT_OBJ_FIELD_NUMBER: _ClassVar[int]
+ReadLimited: QuotaState
+RemoveUserFromRole: OperateUserRoleType
+Revoke: OperatePrivilegeType
+Unknown: QuotaState
+WriteLimited: QuotaState
+milvus_ext_obj: _descriptor.FieldDescriptor
+
+class AlterAliasRequest(_message.Message):
+    __slots__ = ["alias", "base", "collection_name", "db_name"]
+    ALIAS_FIELD_NUMBER: _ClassVar[int]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    alias: str
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., alias: _Optional[str] = ...) -> None: ...
+
+class AlterCollectionRequest(_message.Message):
+    __slots__ = ["base", "collectionID", "collection_name", "db_name", "properties"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    PROPERTIES_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collectionID: int
+    collection_name: str
+    db_name: str
+    properties: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., collectionID: _Optional[int] = ..., properties: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class BoolResponse(_message.Message):
+    __slots__ = ["status", "value"]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    VALUE_FIELD_NUMBER: _ClassVar[int]
+    status: _common_pb2.Status
+    value: bool
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., value: bool = ...) -> None: ...
+
+class CalcDistanceRequest(_message.Message):
+    __slots__ = ["base", "op_left", "op_right", "params"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    OP_LEFT_FIELD_NUMBER: _ClassVar[int]
+    OP_RIGHT_FIELD_NUMBER: _ClassVar[int]
+    PARAMS_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    op_left: VectorsArray
+    op_right: VectorsArray
+    params: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., op_left: _Optional[_Union[VectorsArray, _Mapping]] = ..., op_right: _Optional[_Union[VectorsArray, _Mapping]] = ..., params: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class CalcDistanceResults(_message.Message):
+    __slots__ = ["float_dist", "int_dist", "status"]
+    FLOAT_DIST_FIELD_NUMBER: _ClassVar[int]
+    INT_DIST_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    float_dist: _schema_pb2.FloatArray
+    int_dist: _schema_pb2.IntArray
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., int_dist: _Optional[_Union[_schema_pb2.IntArray, _Mapping]] = ..., float_dist: _Optional[_Union[_schema_pb2.FloatArray, _Mapping]] = ...) -> None: ...
+
+class CheckHealthRequest(_message.Message):
+    __slots__ = []
+    def __init__(self) -> None: ...
+
+class CheckHealthResponse(_message.Message):
+    __slots__ = ["isHealthy", "quota_states", "reasons", "status"]
+    ISHEALTHY_FIELD_NUMBER: _ClassVar[int]
+    QUOTA_STATES_FIELD_NUMBER: _ClassVar[int]
+    REASONS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    isHealthy: bool
+    quota_states: _containers.RepeatedScalarFieldContainer[QuotaState]
+    reasons: _containers.RepeatedScalarFieldContainer[str]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., isHealthy: bool = ..., reasons: _Optional[_Iterable[str]] = ..., quota_states: _Optional[_Iterable[_Union[QuotaState, str]]] = ...) -> None: ...
+
+class CompactionMergeInfo(_message.Message):
+    __slots__ = ["sources", "target"]
+    SOURCES_FIELD_NUMBER: _ClassVar[int]
+    TARGET_FIELD_NUMBER: _ClassVar[int]
+    sources: _containers.RepeatedScalarFieldContainer[int]
+    target: int
+    def __init__(self, sources: _Optional[_Iterable[int]] = ..., target: _Optional[int] = ...) -> None: ...
+
+class ComponentInfo(_message.Message):
+    __slots__ = ["extra_info", "nodeID", "role", "state_code"]
+    EXTRA_INFO_FIELD_NUMBER: _ClassVar[int]
+    NODEID_FIELD_NUMBER: _ClassVar[int]
+    ROLE_FIELD_NUMBER: _ClassVar[int]
+    STATE_CODE_FIELD_NUMBER: _ClassVar[int]
+    extra_info: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    nodeID: int
+    role: str
+    state_code: _common_pb2.StateCode
+    def __init__(self, nodeID: _Optional[int] = ..., role: _Optional[str] = ..., state_code: _Optional[_Union[_common_pb2.StateCode, str]] = ..., extra_info: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class ComponentStates(_message.Message):
+    __slots__ = ["state", "status", "subcomponent_states"]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    SUBCOMPONENT_STATES_FIELD_NUMBER: _ClassVar[int]
+    state: ComponentInfo
+    status: _common_pb2.Status
+    subcomponent_states: _containers.RepeatedCompositeFieldContainer[ComponentInfo]
+    def __init__(self, state: _Optional[_Union[ComponentInfo, _Mapping]] = ..., subcomponent_states: _Optional[_Iterable[_Union[ComponentInfo, _Mapping]]] = ..., status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ...) -> None: ...
+
+class CreateAliasRequest(_message.Message):
+    __slots__ = ["alias", "base", "collection_name", "db_name"]
+    ALIAS_FIELD_NUMBER: _ClassVar[int]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    alias: str
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., alias: _Optional[str] = ...) -> None: ...
+
+class CreateCollectionRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "consistency_level", "db_name", "properties", "schema", "shards_num"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    CONSISTENCY_LEVEL_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    PROPERTIES_FIELD_NUMBER: _ClassVar[int]
+    SCHEMA_FIELD_NUMBER: _ClassVar[int]
+    SHARDS_NUM_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    consistency_level: _common_pb2.ConsistencyLevel
+    db_name: str
+    properties: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    schema: bytes
+    shards_num: int
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., schema: _Optional[bytes] = ..., shards_num: _Optional[int] = ..., consistency_level: _Optional[_Union[_common_pb2.ConsistencyLevel, str]] = ..., properties: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class CreateCredentialRequest(_message.Message):
+    __slots__ = ["base", "created_utc_timestamps", "modified_utc_timestamps", "password", "username"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    CREATED_UTC_TIMESTAMPS_FIELD_NUMBER: _ClassVar[int]
+    MODIFIED_UTC_TIMESTAMPS_FIELD_NUMBER: _ClassVar[int]
+    PASSWORD_FIELD_NUMBER: _ClassVar[int]
+    USERNAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    created_utc_timestamps: int
+    modified_utc_timestamps: int
+    password: str
+    username: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., username: _Optional[str] = ..., password: _Optional[str] = ..., created_utc_timestamps: _Optional[int] = ..., modified_utc_timestamps: _Optional[int] = ...) -> None: ...
+
+class CreateIndexRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "extra_params", "field_name", "index_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    EXTRA_PARAMS_FIELD_NUMBER: _ClassVar[int]
+    FIELD_NAME_FIELD_NUMBER: _ClassVar[int]
+    INDEX_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    extra_params: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    field_name: str
+    index_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., field_name: _Optional[str] = ..., extra_params: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ..., index_name: _Optional[str] = ...) -> None: ...
+
+class CreatePartitionRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "partition_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    partition_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ...) -> None: ...
+
+class CreateResourceGroupRequest(_message.Message):
+    __slots__ = ["base", "resource_group"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    RESOURCE_GROUP_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    resource_group: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., resource_group: _Optional[str] = ...) -> None: ...
+
+class CreateRoleRequest(_message.Message):
+    __slots__ = ["base", "entity"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    ENTITY_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    entity: RoleEntity
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., entity: _Optional[_Union[RoleEntity, _Mapping]] = ...) -> None: ...
+
+class DeleteCredentialRequest(_message.Message):
+    __slots__ = ["base", "username"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    USERNAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    username: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., username: _Optional[str] = ...) -> None: ...
+
+class DeleteRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "expr", "hash_keys", "partition_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    EXPR_FIELD_NUMBER: _ClassVar[int]
+    HASH_KEYS_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    expr: str
+    hash_keys: _containers.RepeatedScalarFieldContainer[int]
+    partition_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ..., expr: _Optional[str] = ..., hash_keys: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class DescribeCollectionRequest(_message.Message):
+    __slots__ = ["base", "collectionID", "collection_name", "db_name", "time_stamp"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    TIME_STAMP_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collectionID: int
+    collection_name: str
+    db_name: str
+    time_stamp: int
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., collectionID: _Optional[int] = ..., time_stamp: _Optional[int] = ...) -> None: ...
+
+class DescribeCollectionResponse(_message.Message):
+    __slots__ = ["aliases", "collectionID", "collection_name", "consistency_level", "created_timestamp", "created_utc_timestamp", "physical_channel_names", "properties", "schema", "shards_num", "start_positions", "status", "virtual_channel_names"]
+    ALIASES_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    CONSISTENCY_LEVEL_FIELD_NUMBER: _ClassVar[int]
+    CREATED_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
+    CREATED_UTC_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
+    PHYSICAL_CHANNEL_NAMES_FIELD_NUMBER: _ClassVar[int]
+    PROPERTIES_FIELD_NUMBER: _ClassVar[int]
+    SCHEMA_FIELD_NUMBER: _ClassVar[int]
+    SHARDS_NUM_FIELD_NUMBER: _ClassVar[int]
+    START_POSITIONS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    VIRTUAL_CHANNEL_NAMES_FIELD_NUMBER: _ClassVar[int]
+    aliases: _containers.RepeatedScalarFieldContainer[str]
+    collectionID: int
+    collection_name: str
+    consistency_level: _common_pb2.ConsistencyLevel
+    created_timestamp: int
+    created_utc_timestamp: int
+    physical_channel_names: _containers.RepeatedScalarFieldContainer[str]
+    properties: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    schema: _schema_pb2.CollectionSchema
+    shards_num: int
+    start_positions: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyDataPair]
+    status: _common_pb2.Status
+    virtual_channel_names: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., schema: _Optional[_Union[_schema_pb2.CollectionSchema, _Mapping]] = ..., collectionID: _Optional[int] = ..., virtual_channel_names: _Optional[_Iterable[str]] = ..., physical_channel_names: _Optional[_Iterable[str]] = ..., created_timestamp: _Optional[int] = ..., created_utc_timestamp: _Optional[int] = ..., shards_num: _Optional[int] = ..., aliases: _Optional[_Iterable[str]] = ..., start_positions: _Optional[_Iterable[_Union[_common_pb2.KeyDataPair, _Mapping]]] = ..., consistency_level: _Optional[_Union[_common_pb2.ConsistencyLevel, str]] = ..., collection_name: _Optional[str] = ..., properties: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class DescribeIndexRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "field_name", "index_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    FIELD_NAME_FIELD_NUMBER: _ClassVar[int]
+    INDEX_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    field_name: str
+    index_name: str
+    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: ...
+
+class DescribeIndexResponse(_message.Message):
+    __slots__ = ["index_descriptions", "status"]
+    INDEX_DESCRIPTIONS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    index_descriptions: _containers.RepeatedCompositeFieldContainer[IndexDescription]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., index_descriptions: _Optional[_Iterable[_Union[IndexDescription, _Mapping]]] = ...) -> None: ...
+
+class DescribeResourceGroupRequest(_message.Message):
+    __slots__ = ["base", "resource_group"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    RESOURCE_GROUP_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    resource_group: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., resource_group: _Optional[str] = ...) -> None: ...
+
+class DescribeResourceGroupResponse(_message.Message):
+    __slots__ = ["resource_group", "status"]
+    RESOURCE_GROUP_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    resource_group: ResourceGroup
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., resource_group: _Optional[_Union[ResourceGroup, _Mapping]] = ...) -> None: ...
+
+class DescribeSegmentRequest(_message.Message):
+    __slots__ = ["base", "collectionID", "segmentID"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    SEGMENTID_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collectionID: int
+    segmentID: int
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., collectionID: _Optional[int] = ..., segmentID: _Optional[int] = ...) -> None: ...
+
+class DescribeSegmentResponse(_message.Message):
+    __slots__ = ["buildID", "enable_index", "fieldID", "indexID", "status"]
+    BUILDID_FIELD_NUMBER: _ClassVar[int]
+    ENABLE_INDEX_FIELD_NUMBER: _ClassVar[int]
+    FIELDID_FIELD_NUMBER: _ClassVar[int]
+    INDEXID_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    buildID: int
+    enable_index: bool
+    fieldID: int
+    indexID: int
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., indexID: _Optional[int] = ..., buildID: _Optional[int] = ..., enable_index: bool = ..., fieldID: _Optional[int] = ...) -> None: ...
+
+class DropAliasRequest(_message.Message):
+    __slots__ = ["alias", "base", "db_name"]
+    ALIAS_FIELD_NUMBER: _ClassVar[int]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    alias: str
+    base: _common_pb2.MsgBase
+    db_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., alias: _Optional[str] = ...) -> None: ...
+
+class DropCollectionRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ...) -> None: ...
+
+class DropIndexRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "field_name", "index_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    FIELD_NAME_FIELD_NUMBER: _ClassVar[int]
+    INDEX_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    field_name: str
+    index_name: str
+    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: ...
+
+class DropPartitionRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "partition_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    partition_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ...) -> None: ...
+
+class DropResourceGroupRequest(_message.Message):
+    __slots__ = ["base", "resource_group"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    RESOURCE_GROUP_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    resource_group: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., resource_group: _Optional[str] = ...) -> None: ...
+
+class DropRoleRequest(_message.Message):
+    __slots__ = ["base", "role_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    ROLE_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    role_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., role_name: _Optional[str] = ...) -> None: ...
+
+class DummyRequest(_message.Message):
+    __slots__ = ["request_type"]
+    REQUEST_TYPE_FIELD_NUMBER: _ClassVar[int]
+    request_type: str
+    def __init__(self, request_type: _Optional[str] = ...) -> None: ...
+
+class DummyResponse(_message.Message):
+    __slots__ = ["response"]
+    RESPONSE_FIELD_NUMBER: _ClassVar[int]
+    response: str
+    def __init__(self, response: _Optional[str] = ...) -> None: ...
+
+class FlushAllRequest(_message.Message):
+    __slots__ = []
+    def __init__(self) -> None: ...
+
+class FlushAllResponse(_message.Message):
+    __slots__ = ["flush_all_ts", "status"]
+    FLUSH_ALL_TS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    flush_all_ts: int
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., flush_all_ts: _Optional[int] = ...) -> None: ...
+
+class FlushRequest(_message.Message):
+    __slots__ = ["base", "collection_names", "db_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_names: _containers.RepeatedScalarFieldContainer[str]
+    db_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_names: _Optional[_Iterable[str]] = ...) -> None: ...
+
+class FlushResponse(_message.Message):
+    __slots__ = ["coll_seal_times", "coll_segIDs", "db_name", "flush_coll_segIDs", "status"]
+    class CollSealTimesEntry(_message.Message):
+        __slots__ = ["key", "value"]
+        KEY_FIELD_NUMBER: _ClassVar[int]
+        VALUE_FIELD_NUMBER: _ClassVar[int]
+        key: str
+        value: int
+        def __init__(self, key: _Optional[str] = ..., value: _Optional[int] = ...) -> None: ...
+    class CollSegIDsEntry(_message.Message):
+        __slots__ = ["key", "value"]
+        KEY_FIELD_NUMBER: _ClassVar[int]
+        VALUE_FIELD_NUMBER: _ClassVar[int]
+        key: str
+        value: _schema_pb2.LongArray
+        def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[_schema_pb2.LongArray, _Mapping]] = ...) -> None: ...
+    class FlushCollSegIDsEntry(_message.Message):
+        __slots__ = ["key", "value"]
+        KEY_FIELD_NUMBER: _ClassVar[int]
+        VALUE_FIELD_NUMBER: _ClassVar[int]
+        key: str
+        value: _schema_pb2.LongArray
+        def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[_schema_pb2.LongArray, _Mapping]] = ...) -> None: ...
+    COLL_SEAL_TIMES_FIELD_NUMBER: _ClassVar[int]
+    COLL_SEGIDS_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    FLUSH_COLL_SEGIDS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    coll_seal_times: _containers.ScalarMap[str, int]
+    coll_segIDs: _containers.MessageMap[str, _schema_pb2.LongArray]
+    db_name: str
+    flush_coll_segIDs: _containers.MessageMap[str, _schema_pb2.LongArray]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., db_name: _Optional[str] = ..., coll_segIDs: _Optional[_Mapping[str, _schema_pb2.LongArray]] = ..., flush_coll_segIDs: _Optional[_Mapping[str, _schema_pb2.LongArray]] = ..., coll_seal_times: _Optional[_Mapping[str, int]] = ...) -> None: ...
+
+class GetCollectionStatisticsRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ...) -> None: ...
+
+class GetCollectionStatisticsResponse(_message.Message):
+    __slots__ = ["stats", "status"]
+    STATS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    stats: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., stats: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class GetCompactionPlansRequest(_message.Message):
+    __slots__ = ["compactionID"]
+    COMPACTIONID_FIELD_NUMBER: _ClassVar[int]
+    compactionID: int
+    def __init__(self, compactionID: _Optional[int] = ...) -> None: ...
+
+class GetCompactionPlansResponse(_message.Message):
+    __slots__ = ["mergeInfos", "state", "status"]
+    MERGEINFOS_FIELD_NUMBER: _ClassVar[int]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    mergeInfos: _containers.RepeatedCompositeFieldContainer[CompactionMergeInfo]
+    state: _common_pb2.CompactionState
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., state: _Optional[_Union[_common_pb2.CompactionState, str]] = ..., mergeInfos: _Optional[_Iterable[_Union[CompactionMergeInfo, _Mapping]]] = ...) -> None: ...
+
+class GetCompactionStateRequest(_message.Message):
+    __slots__ = ["compactionID"]
+    COMPACTIONID_FIELD_NUMBER: _ClassVar[int]
+    compactionID: int
+    def __init__(self, compactionID: _Optional[int] = ...) -> None: ...
+
+class GetCompactionStateResponse(_message.Message):
+    __slots__ = ["completedPlanNo", "executingPlanNo", "failedPlanNo", "state", "status", "timeoutPlanNo"]
+    COMPLETEDPLANNO_FIELD_NUMBER: _ClassVar[int]
+    EXECUTINGPLANNO_FIELD_NUMBER: _ClassVar[int]
+    FAILEDPLANNO_FIELD_NUMBER: _ClassVar[int]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    TIMEOUTPLANNO_FIELD_NUMBER: _ClassVar[int]
+    completedPlanNo: int
+    executingPlanNo: int
+    failedPlanNo: int
+    state: _common_pb2.CompactionState
+    status: _common_pb2.Status
+    timeoutPlanNo: int
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., state: _Optional[_Union[_common_pb2.CompactionState, str]] = ..., executingPlanNo: _Optional[int] = ..., timeoutPlanNo: _Optional[int] = ..., completedPlanNo: _Optional[int] = ..., failedPlanNo: _Optional[int] = ...) -> None: ...
+
+class GetComponentStatesRequest(_message.Message):
+    __slots__ = []
+    def __init__(self) -> None: ...
+
+class GetFlushAllStateRequest(_message.Message):
+    __slots__ = ["base", "flush_all_ts"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    FLUSH_ALL_TS_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    flush_all_ts: int
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., flush_all_ts: _Optional[int] = ...) -> None: ...
+
+class GetFlushAllStateResponse(_message.Message):
+    __slots__ = ["flushed", "status"]
+    FLUSHED_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    flushed: bool
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., flushed: bool = ...) -> None: ...
+
+class GetFlushStateRequest(_message.Message):
+    __slots__ = ["segmentIDs"]
+    SEGMENTIDS_FIELD_NUMBER: _ClassVar[int]
+    segmentIDs: _containers.RepeatedScalarFieldContainer[int]
+    def __init__(self, segmentIDs: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class GetFlushStateResponse(_message.Message):
+    __slots__ = ["flushed", "status"]
+    FLUSHED_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    flushed: bool
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., flushed: bool = ...) -> None: ...
+
+class GetImportStateRequest(_message.Message):
+    __slots__ = ["task"]
+    TASK_FIELD_NUMBER: _ClassVar[int]
+    task: int
+    def __init__(self, task: _Optional[int] = ...) -> None: ...
+
+class GetImportStateResponse(_message.Message):
+    __slots__ = ["collection_id", "create_ts", "id", "id_list", "infos", "row_count", "segment_ids", "state", "status"]
+    COLLECTION_ID_FIELD_NUMBER: _ClassVar[int]
+    CREATE_TS_FIELD_NUMBER: _ClassVar[int]
+    ID_FIELD_NUMBER: _ClassVar[int]
+    ID_LIST_FIELD_NUMBER: _ClassVar[int]
+    INFOS_FIELD_NUMBER: _ClassVar[int]
+    ROW_COUNT_FIELD_NUMBER: _ClassVar[int]
+    SEGMENT_IDS_FIELD_NUMBER: _ClassVar[int]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    collection_id: int
+    create_ts: int
+    id: int
+    id_list: _containers.RepeatedScalarFieldContainer[int]
+    infos: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    row_count: int
+    segment_ids: _containers.RepeatedScalarFieldContainer[int]
+    state: _common_pb2.ImportState
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., state: _Optional[_Union[_common_pb2.ImportState, str]] = ..., row_count: _Optional[int] = ..., id_list: _Optional[_Iterable[int]] = ..., infos: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ..., id: _Optional[int] = ..., collection_id: _Optional[int] = ..., segment_ids: _Optional[_Iterable[int]] = ..., create_ts: _Optional[int] = ...) -> None: ...
+
+class GetIndexBuildProgressRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "field_name", "index_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    FIELD_NAME_FIELD_NUMBER: _ClassVar[int]
+    INDEX_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    field_name: str
+    index_name: str
+    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: ...
+
+class GetIndexBuildProgressResponse(_message.Message):
+    __slots__ = ["indexed_rows", "status", "total_rows"]
+    INDEXED_ROWS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    TOTAL_ROWS_FIELD_NUMBER: _ClassVar[int]
+    indexed_rows: int
+    status: _common_pb2.Status
+    total_rows: int
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., indexed_rows: _Optional[int] = ..., total_rows: _Optional[int] = ...) -> None: ...
+
+class GetIndexStateRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "field_name", "index_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    FIELD_NAME_FIELD_NUMBER: _ClassVar[int]
+    INDEX_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    field_name: str
+    index_name: str
+    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: ...
+
+class GetIndexStateResponse(_message.Message):
+    __slots__ = ["fail_reason", "state", "status"]
+    FAIL_REASON_FIELD_NUMBER: _ClassVar[int]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    fail_reason: str
+    state: _common_pb2.IndexState
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., state: _Optional[_Union[_common_pb2.IndexState, str]] = ..., fail_reason: _Optional[str] = ...) -> None: ...
+
+class GetLoadStateRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "partition_names"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., collection_name: _Optional[str] = ..., partition_names: _Optional[_Iterable[str]] = ...) -> None: ...
+
+class GetLoadStateResponse(_message.Message):
+    __slots__ = ["state", "status"]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    state: _common_pb2.LoadState
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., state: _Optional[_Union[_common_pb2.LoadState, str]] = ...) -> None: ...
+
+class GetLoadingProgressRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "partition_names"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., collection_name: _Optional[str] = ..., partition_names: _Optional[_Iterable[str]] = ...) -> None: ...
+
+class GetLoadingProgressResponse(_message.Message):
+    __slots__ = ["progress", "status"]
+    PROGRESS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    progress: int
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., progress: _Optional[int] = ...) -> None: ...
+
+class GetMetricsRequest(_message.Message):
+    __slots__ = ["base", "request"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    REQUEST_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    request: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., request: _Optional[str] = ...) -> None: ...
+
+class GetMetricsResponse(_message.Message):
+    __slots__ = ["component_name", "response", "status"]
+    COMPONENT_NAME_FIELD_NUMBER: _ClassVar[int]
+    RESPONSE_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    component_name: str
+    response: str
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., response: _Optional[str] = ..., component_name: _Optional[str] = ...) -> None: ...
+
+class GetPartitionStatisticsRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "partition_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    partition_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ...) -> None: ...
+
+class GetPartitionStatisticsResponse(_message.Message):
+    __slots__ = ["stats", "status"]
+    STATS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    stats: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., stats: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class GetPersistentSegmentInfoRequest(_message.Message):
+    __slots__ = ["base", "collectionName", "dbName"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONNAME_FIELD_NUMBER: _ClassVar[int]
+    DBNAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collectionName: str
+    dbName: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., dbName: _Optional[str] = ..., collectionName: _Optional[str] = ...) -> None: ...
+
+class GetPersistentSegmentInfoResponse(_message.Message):
+    __slots__ = ["infos", "status"]
+    INFOS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    infos: _containers.RepeatedCompositeFieldContainer[PersistentSegmentInfo]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., infos: _Optional[_Iterable[_Union[PersistentSegmentInfo, _Mapping]]] = ...) -> None: ...
+
+class GetQuerySegmentInfoRequest(_message.Message):
+    __slots__ = ["base", "collectionName", "dbName"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONNAME_FIELD_NUMBER: _ClassVar[int]
+    DBNAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collectionName: str
+    dbName: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., dbName: _Optional[str] = ..., collectionName: _Optional[str] = ...) -> None: ...
+
+class GetQuerySegmentInfoResponse(_message.Message):
+    __slots__ = ["infos", "status"]
+    INFOS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    infos: _containers.RepeatedCompositeFieldContainer[QuerySegmentInfo]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., infos: _Optional[_Iterable[_Union[QuerySegmentInfo, _Mapping]]] = ...) -> None: ...
+
+class GetReplicasRequest(_message.Message):
+    __slots__ = ["base", "collectionID", "collection_name", "with_shard_nodes"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    WITH_SHARD_NODES_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collectionID: int
+    collection_name: str
+    with_shard_nodes: bool
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., collectionID: _Optional[int] = ..., with_shard_nodes: bool = ..., collection_name: _Optional[str] = ...) -> None: ...
+
+class GetReplicasResponse(_message.Message):
+    __slots__ = ["replicas", "status"]
+    REPLICAS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    replicas: _containers.RepeatedCompositeFieldContainer[ReplicaInfo]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., replicas: _Optional[_Iterable[_Union[ReplicaInfo, _Mapping]]] = ...) -> None: ...
+
+class GetStatisticsRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "guarantee_timestamp", "partition_names"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    GUARANTEE_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    guarantee_timestamp: int
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_names: _Optional[_Iterable[str]] = ..., guarantee_timestamp: _Optional[int] = ...) -> None: ...
+
+class GetStatisticsResponse(_message.Message):
+    __slots__ = ["stats", "status"]
+    STATS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    stats: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., stats: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class GetVersionRequest(_message.Message):
+    __slots__ = []
+    def __init__(self) -> None: ...
+
+class GetVersionResponse(_message.Message):
+    __slots__ = ["status", "version"]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    VERSION_FIELD_NUMBER: _ClassVar[int]
+    status: _common_pb2.Status
+    version: str
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., version: _Optional[str] = ...) -> None: ...
+
+class GrantEntity(_message.Message):
+    __slots__ = ["grantor", "object", "object_name", "role"]
+    GRANTOR_FIELD_NUMBER: _ClassVar[int]
+    OBJECT_FIELD_NUMBER: _ClassVar[int]
+    OBJECT_NAME_FIELD_NUMBER: _ClassVar[int]
+    ROLE_FIELD_NUMBER: _ClassVar[int]
+    grantor: GrantorEntity
+    object: ObjectEntity
+    object_name: str
+    role: RoleEntity
+    def __init__(self, role: _Optional[_Union[RoleEntity, _Mapping]] = ..., object: _Optional[_Union[ObjectEntity, _Mapping]] = ..., object_name: _Optional[str] = ..., grantor: _Optional[_Union[GrantorEntity, _Mapping]] = ...) -> None: ...
+
+class GrantPrivilegeEntity(_message.Message):
+    __slots__ = ["entities"]
+    ENTITIES_FIELD_NUMBER: _ClassVar[int]
+    entities: _containers.RepeatedCompositeFieldContainer[GrantorEntity]
+    def __init__(self, entities: _Optional[_Iterable[_Union[GrantorEntity, _Mapping]]] = ...) -> None: ...
+
+class GrantorEntity(_message.Message):
+    __slots__ = ["privilege", "user"]
+    PRIVILEGE_FIELD_NUMBER: _ClassVar[int]
+    USER_FIELD_NUMBER: _ClassVar[int]
+    privilege: PrivilegeEntity
+    user: UserEntity
+    def __init__(self, user: _Optional[_Union[UserEntity, _Mapping]] = ..., privilege: _Optional[_Union[PrivilegeEntity, _Mapping]] = ...) -> None: ...
+
+class HasCollectionRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "time_stamp"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    TIME_STAMP_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    time_stamp: int
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., time_stamp: _Optional[int] = ...) -> None: ...
+
+class HasPartitionRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "partition_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    partition_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ...) -> None: ...
+
+class Hits(_message.Message):
+    __slots__ = ["IDs", "row_data", "scores"]
+    IDS_FIELD_NUMBER: _ClassVar[int]
+    IDs: _containers.RepeatedScalarFieldContainer[int]
+    ROW_DATA_FIELD_NUMBER: _ClassVar[int]
+    SCORES_FIELD_NUMBER: _ClassVar[int]
+    row_data: _containers.RepeatedScalarFieldContainer[bytes]
+    scores: _containers.RepeatedScalarFieldContainer[float]
+    def __init__(self, IDs: _Optional[_Iterable[int]] = ..., row_data: _Optional[_Iterable[bytes]] = ..., scores: _Optional[_Iterable[float]] = ...) -> None: ...
+
+class ImportRequest(_message.Message):
+    __slots__ = ["channel_names", "collection_name", "files", "options", "partition_name", "row_based"]
+    CHANNEL_NAMES_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    FILES_FIELD_NUMBER: _ClassVar[int]
+    OPTIONS_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAME_FIELD_NUMBER: _ClassVar[int]
+    ROW_BASED_FIELD_NUMBER: _ClassVar[int]
+    channel_names: _containers.RepeatedScalarFieldContainer[str]
+    collection_name: str
+    files: _containers.RepeatedScalarFieldContainer[str]
+    options: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    partition_name: str
+    row_based: bool
+    def __init__(self, collection_name: _Optional[str] = ..., partition_name: _Optional[str] = ..., channel_names: _Optional[_Iterable[str]] = ..., row_based: bool = ..., files: _Optional[_Iterable[str]] = ..., options: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class ImportResponse(_message.Message):
+    __slots__ = ["status", "tasks"]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    TASKS_FIELD_NUMBER: _ClassVar[int]
+    status: _common_pb2.Status
+    tasks: _containers.RepeatedScalarFieldContainer[int]
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., tasks: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class IndexDescription(_message.Message):
+    __slots__ = ["field_name", "indexID", "index_name", "index_state_fail_reason", "indexed_rows", "params", "state", "total_rows"]
+    FIELD_NAME_FIELD_NUMBER: _ClassVar[int]
+    INDEXED_ROWS_FIELD_NUMBER: _ClassVar[int]
+    INDEXID_FIELD_NUMBER: _ClassVar[int]
+    INDEX_NAME_FIELD_NUMBER: _ClassVar[int]
+    INDEX_STATE_FAIL_REASON_FIELD_NUMBER: _ClassVar[int]
+    PARAMS_FIELD_NUMBER: _ClassVar[int]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    TOTAL_ROWS_FIELD_NUMBER: _ClassVar[int]
+    field_name: str
+    indexID: int
+    index_name: str
+    index_state_fail_reason: str
+    indexed_rows: int
+    params: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    state: _common_pb2.IndexState
+    total_rows: int
+    def __init__(self, index_name: _Optional[str] = ..., indexID: _Optional[int] = ..., params: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ..., field_name: _Optional[str] = ..., indexed_rows: _Optional[int] = ..., total_rows: _Optional[int] = ..., state: _Optional[_Union[_common_pb2.IndexState, str]] = ..., index_state_fail_reason: _Optional[str] = ...) -> None: ...
+
+class InsertRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "fields_data", "hash_keys", "num_rows", "partition_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    FIELDS_DATA_FIELD_NUMBER: _ClassVar[int]
+    HASH_KEYS_FIELD_NUMBER: _ClassVar[int]
+    NUM_ROWS_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    fields_data: _containers.RepeatedCompositeFieldContainer[_schema_pb2.FieldData]
+    hash_keys: _containers.RepeatedScalarFieldContainer[int]
+    num_rows: int
+    partition_name: str
+    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] = ...) -> None: ...
+
+class ListCredUsersRequest(_message.Message):
+    __slots__ = ["base"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ...) -> None: ...
+
+class ListCredUsersResponse(_message.Message):
+    __slots__ = ["status", "usernames"]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    USERNAMES_FIELD_NUMBER: _ClassVar[int]
+    status: _common_pb2.Status
+    usernames: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., usernames: _Optional[_Iterable[str]] = ...) -> None: ...
+
+class ListImportTasksRequest(_message.Message):
+    __slots__ = ["collection_name", "limit"]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    LIMIT_FIELD_NUMBER: _ClassVar[int]
+    collection_name: str
+    limit: int
+    def __init__(self, collection_name: _Optional[str] = ..., limit: _Optional[int] = ...) -> None: ...
+
+class ListImportTasksResponse(_message.Message):
+    __slots__ = ["status", "tasks"]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    TASKS_FIELD_NUMBER: _ClassVar[int]
+    status: _common_pb2.Status
+    tasks: _containers.RepeatedCompositeFieldContainer[GetImportStateResponse]
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., tasks: _Optional[_Iterable[_Union[GetImportStateResponse, _Mapping]]] = ...) -> None: ...
+
+class ListResourceGroupsRequest(_message.Message):
+    __slots__ = ["base"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ...) -> None: ...
+
+class ListResourceGroupsResponse(_message.Message):
+    __slots__ = ["resource_groups", "status"]
+    RESOURCE_GROUPS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    resource_groups: _containers.RepeatedScalarFieldContainer[str]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., resource_groups: _Optional[_Iterable[str]] = ...) -> None: ...
+
+class LoadBalanceRequest(_message.Message):
+    __slots__ = ["base", "collectionName", "dst_nodeIDs", "sealed_segmentIDs", "src_nodeID"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONNAME_FIELD_NUMBER: _ClassVar[int]
+    DST_NODEIDS_FIELD_NUMBER: _ClassVar[int]
+    SEALED_SEGMENTIDS_FIELD_NUMBER: _ClassVar[int]
+    SRC_NODEID_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collectionName: str
+    dst_nodeIDs: _containers.RepeatedScalarFieldContainer[int]
+    sealed_segmentIDs: _containers.RepeatedScalarFieldContainer[int]
+    src_nodeID: int
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., src_nodeID: _Optional[int] = ..., dst_nodeIDs: _Optional[_Iterable[int]] = ..., sealed_segmentIDs: _Optional[_Iterable[int]] = ..., collectionName: _Optional[str] = ...) -> None: ...
+
+class LoadCollectionRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "refresh", "replica_number", "resource_groups"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    REFRESH_FIELD_NUMBER: _ClassVar[int]
+    REPLICA_NUMBER_FIELD_NUMBER: _ClassVar[int]
+    RESOURCE_GROUPS_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    refresh: bool
+    replica_number: int
+    resource_groups: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., replica_number: _Optional[int] = ..., resource_groups: _Optional[_Iterable[str]] = ..., refresh: bool = ...) -> None: ...
+
+class LoadPartitionsRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "partition_names", "refresh", "replica_number", "resource_groups"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    REFRESH_FIELD_NUMBER: _ClassVar[int]
+    REPLICA_NUMBER_FIELD_NUMBER: _ClassVar[int]
+    RESOURCE_GROUPS_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    refresh: bool
+    replica_number: int
+    resource_groups: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_names: _Optional[_Iterable[str]] = ..., replica_number: _Optional[int] = ..., resource_groups: _Optional[_Iterable[str]] = ..., refresh: bool = ...) -> None: ...
+
+class ManualCompactionRequest(_message.Message):
+    __slots__ = ["collectionID", "timetravel"]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    TIMETRAVEL_FIELD_NUMBER: _ClassVar[int]
+    collectionID: int
+    timetravel: int
+    def __init__(self, collectionID: _Optional[int] = ..., timetravel: _Optional[int] = ...) -> None: ...
+
+class ManualCompactionResponse(_message.Message):
+    __slots__ = ["compactionID", "status"]
+    COMPACTIONID_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    compactionID: int
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., compactionID: _Optional[int] = ...) -> None: ...
+
+class MilvusExt(_message.Message):
+    __slots__ = ["version"]
+    VERSION_FIELD_NUMBER: _ClassVar[int]
+    version: str
+    def __init__(self, version: _Optional[str] = ...) -> None: ...
+
+class MutationResult(_message.Message):
+    __slots__ = ["IDs", "acknowledged", "delete_cnt", "err_index", "insert_cnt", "status", "succ_index", "timestamp", "upsert_cnt"]
+    ACKNOWLEDGED_FIELD_NUMBER: _ClassVar[int]
+    DELETE_CNT_FIELD_NUMBER: _ClassVar[int]
+    ERR_INDEX_FIELD_NUMBER: _ClassVar[int]
+    IDS_FIELD_NUMBER: _ClassVar[int]
+    IDs: _schema_pb2.IDs
+    INSERT_CNT_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    SUCC_INDEX_FIELD_NUMBER: _ClassVar[int]
+    TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
+    UPSERT_CNT_FIELD_NUMBER: _ClassVar[int]
+    acknowledged: bool
+    delete_cnt: int
+    err_index: _containers.RepeatedScalarFieldContainer[int]
+    insert_cnt: int
+    status: _common_pb2.Status
+    succ_index: _containers.RepeatedScalarFieldContainer[int]
+    timestamp: int
+    upsert_cnt: int
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., IDs: _Optional[_Union[_schema_pb2.IDs, _Mapping]] = ..., succ_index: _Optional[_Iterable[int]] = ..., err_index: _Optional[_Iterable[int]] = ..., acknowledged: bool = ..., insert_cnt: _Optional[int] = ..., delete_cnt: _Optional[int] = ..., upsert_cnt: _Optional[int] = ..., timestamp: _Optional[int] = ...) -> None: ...
+
+class ObjectEntity(_message.Message):
+    __slots__ = ["name"]
+    NAME_FIELD_NUMBER: _ClassVar[int]
+    name: str
+    def __init__(self, name: _Optional[str] = ...) -> None: ...
+
+class OperatePrivilegeRequest(_message.Message):
+    __slots__ = ["base", "entity", "type"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    ENTITY_FIELD_NUMBER: _ClassVar[int]
+    TYPE_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    entity: GrantEntity
+    type: OperatePrivilegeType
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., entity: _Optional[_Union[GrantEntity, _Mapping]] = ..., type: _Optional[_Union[OperatePrivilegeType, str]] = ...) -> None: ...
+
+class OperateUserRoleRequest(_message.Message):
+    __slots__ = ["base", "role_name", "type", "username"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    ROLE_NAME_FIELD_NUMBER: _ClassVar[int]
+    TYPE_FIELD_NUMBER: _ClassVar[int]
+    USERNAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    role_name: str
+    type: OperateUserRoleType
+    username: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., username: _Optional[str] = ..., role_name: _Optional[str] = ..., type: _Optional[_Union[OperateUserRoleType, str]] = ...) -> None: ...
+
+class PersistentSegmentInfo(_message.Message):
+    __slots__ = ["collectionID", "num_rows", "partitionID", "segmentID", "state"]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    NUM_ROWS_FIELD_NUMBER: _ClassVar[int]
+    PARTITIONID_FIELD_NUMBER: _ClassVar[int]
+    SEGMENTID_FIELD_NUMBER: _ClassVar[int]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    collectionID: int
+    num_rows: int
+    partitionID: int
+    segmentID: int
+    state: _common_pb2.SegmentState
+    def __init__(self, segmentID: _Optional[int] = ..., collectionID: _Optional[int] = ..., partitionID: _Optional[int] = ..., num_rows: _Optional[int] = ..., state: _Optional[_Union[_common_pb2.SegmentState, str]] = ...) -> None: ...
+
+class PrivilegeEntity(_message.Message):
+    __slots__ = ["name"]
+    NAME_FIELD_NUMBER: _ClassVar[int]
+    name: str
+    def __init__(self, name: _Optional[str] = ...) -> None: ...
+
+class QueryRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "expr", "guarantee_timestamp", "output_fields", "partition_names", "query_params", "travel_timestamp"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    EXPR_FIELD_NUMBER: _ClassVar[int]
+    GUARANTEE_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
+    OUTPUT_FIELDS_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    QUERY_PARAMS_FIELD_NUMBER: _ClassVar[int]
+    TRAVEL_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    expr: str
+    guarantee_timestamp: int
+    output_fields: _containers.RepeatedScalarFieldContainer[str]
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    query_params: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    travel_timestamp: int
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., expr: _Optional[str] = ..., output_fields: _Optional[_Iterable[str]] = ..., partition_names: _Optional[_Iterable[str]] = ..., travel_timestamp: _Optional[int] = ..., guarantee_timestamp: _Optional[int] = ..., query_params: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ...) -> None: ...
+
+class QueryResults(_message.Message):
+    __slots__ = ["collection_name", "fields_data", "status"]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    FIELDS_DATA_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    collection_name: str
+    fields_data: _containers.RepeatedCompositeFieldContainer[_schema_pb2.FieldData]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., fields_data: _Optional[_Iterable[_Union[_schema_pb2.FieldData, _Mapping]]] = ..., collection_name: _Optional[str] = ...) -> None: ...
+
+class QuerySegmentInfo(_message.Message):
+    __slots__ = ["collectionID", "indexID", "index_name", "mem_size", "nodeID", "nodeIds", "num_rows", "partitionID", "segmentID", "state"]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    INDEXID_FIELD_NUMBER: _ClassVar[int]
+    INDEX_NAME_FIELD_NUMBER: _ClassVar[int]
+    MEM_SIZE_FIELD_NUMBER: _ClassVar[int]
+    NODEIDS_FIELD_NUMBER: _ClassVar[int]
+    NODEID_FIELD_NUMBER: _ClassVar[int]
+    NUM_ROWS_FIELD_NUMBER: _ClassVar[int]
+    PARTITIONID_FIELD_NUMBER: _ClassVar[int]
+    SEGMENTID_FIELD_NUMBER: _ClassVar[int]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    collectionID: int
+    indexID: int
+    index_name: str
+    mem_size: int
+    nodeID: int
+    nodeIds: _containers.RepeatedScalarFieldContainer[int]
+    num_rows: int
+    partitionID: int
+    segmentID: int
+    state: _common_pb2.SegmentState
+    def __init__(self, segmentID: _Optional[int] = ..., collectionID: _Optional[int] = ..., partitionID: _Optional[int] = ..., mem_size: _Optional[int] = ..., num_rows: _Optional[int] = ..., index_name: _Optional[str] = ..., indexID: _Optional[int] = ..., nodeID: _Optional[int] = ..., state: _Optional[_Union[_common_pb2.SegmentState, str]] = ..., nodeIds: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class RegisterLinkRequest(_message.Message):
+    __slots__ = []
+    def __init__(self) -> None: ...
+
+class RegisterLinkResponse(_message.Message):
+    __slots__ = ["address", "status"]
+    ADDRESS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    address: _common_pb2.Address
+    status: _common_pb2.Status
+    def __init__(self, address: _Optional[_Union[_common_pb2.Address, _Mapping]] = ..., status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ...) -> None: ...
+
+class ReleaseCollectionRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ...) -> None: ...
+
+class ReleasePartitionsRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "partition_names"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_names: _Optional[_Iterable[str]] = ...) -> None: ...
+
+class RenameCollectionRequest(_message.Message):
+    __slots__ = ["base", "db", "newName", "oldName"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    DB_FIELD_NUMBER: _ClassVar[int]
+    NEWNAME_FIELD_NUMBER: _ClassVar[int]
+    OLDNAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    db: str
+    newName: str
+    oldName: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db: _Optional[str] = ..., oldName: _Optional[str] = ..., newName: _Optional[str] = ...) -> None: ...
+
+class ReplicaInfo(_message.Message):
+    __slots__ = ["collectionID", "node_ids", "num_outbound_node", "partition_ids", "replicaID", "resource_group_name", "shard_replicas"]
+    class NumOutboundNodeEntry(_message.Message):
+        __slots__ = ["key", "value"]
+        KEY_FIELD_NUMBER: _ClassVar[int]
+        VALUE_FIELD_NUMBER: _ClassVar[int]
+        key: str
+        value: int
+        def __init__(self, key: _Optional[str] = ..., value: _Optional[int] = ...) -> None: ...
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    NODE_IDS_FIELD_NUMBER: _ClassVar[int]
+    NUM_OUTBOUND_NODE_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_IDS_FIELD_NUMBER: _ClassVar[int]
+    REPLICAID_FIELD_NUMBER: _ClassVar[int]
+    RESOURCE_GROUP_NAME_FIELD_NUMBER: _ClassVar[int]
+    SHARD_REPLICAS_FIELD_NUMBER: _ClassVar[int]
+    collectionID: int
+    node_ids: _containers.RepeatedScalarFieldContainer[int]
+    num_outbound_node: _containers.ScalarMap[str, int]
+    partition_ids: _containers.RepeatedScalarFieldContainer[int]
+    replicaID: int
+    resource_group_name: str
+    shard_replicas: _containers.RepeatedCompositeFieldContainer[ShardReplica]
+    def __init__(self, replicaID: _Optional[int] = ..., collectionID: _Optional[int] = ..., partition_ids: _Optional[_Iterable[int]] = ..., shard_replicas: _Optional[_Iterable[_Union[ShardReplica, _Mapping]]] = ..., node_ids: _Optional[_Iterable[int]] = ..., resource_group_name: _Optional[str] = ..., num_outbound_node: _Optional[_Mapping[str, int]] = ...) -> None: ...
+
+class ResourceGroup(_message.Message):
+    __slots__ = ["capacity", "name", "num_available_node", "num_incoming_node", "num_loaded_replica", "num_outgoing_node"]
+    class NumIncomingNodeEntry(_message.Message):
+        __slots__ = ["key", "value"]
+        KEY_FIELD_NUMBER: _ClassVar[int]
+        VALUE_FIELD_NUMBER: _ClassVar[int]
+        key: str
+        value: int
+        def __init__(self, key: _Optional[str] = ..., value: _Optional[int] = ...) -> None: ...
+    class NumLoadedReplicaEntry(_message.Message):
+        __slots__ = ["key", "value"]
+        KEY_FIELD_NUMBER: _ClassVar[int]
+        VALUE_FIELD_NUMBER: _ClassVar[int]
+        key: str
+        value: int
+        def __init__(self, key: _Optional[str] = ..., value: _Optional[int] = ...) -> None: ...
+    class NumOutgoingNodeEntry(_message.Message):
+        __slots__ = ["key", "value"]
+        KEY_FIELD_NUMBER: _ClassVar[int]
+        VALUE_FIELD_NUMBER: _ClassVar[int]
+        key: str
+        value: int
+        def __init__(self, key: _Optional[str] = ..., value: _Optional[int] = ...) -> None: ...
+    CAPACITY_FIELD_NUMBER: _ClassVar[int]
+    NAME_FIELD_NUMBER: _ClassVar[int]
+    NUM_AVAILABLE_NODE_FIELD_NUMBER: _ClassVar[int]
+    NUM_INCOMING_NODE_FIELD_NUMBER: _ClassVar[int]
+    NUM_LOADED_REPLICA_FIELD_NUMBER: _ClassVar[int]
+    NUM_OUTGOING_NODE_FIELD_NUMBER: _ClassVar[int]
+    capacity: int
+    name: str
+    num_available_node: int
+    num_incoming_node: _containers.ScalarMap[str, int]
+    num_loaded_replica: _containers.ScalarMap[str, int]
+    num_outgoing_node: _containers.ScalarMap[str, int]
+    def __init__(self, name: _Optional[str] = ..., capacity: _Optional[int] = ..., num_available_node: _Optional[int] = ..., num_loaded_replica: _Optional[_Mapping[str, int]] = ..., num_outgoing_node: _Optional[_Mapping[str, int]] = ..., num_incoming_node: _Optional[_Mapping[str, int]] = ...) -> None: ...
+
+class RoleEntity(_message.Message):
+    __slots__ = ["name"]
+    NAME_FIELD_NUMBER: _ClassVar[int]
+    name: str
+    def __init__(self, name: _Optional[str] = ...) -> None: ...
+
+class RoleResult(_message.Message):
+    __slots__ = ["role", "users"]
+    ROLE_FIELD_NUMBER: _ClassVar[int]
+    USERS_FIELD_NUMBER: _ClassVar[int]
+    role: RoleEntity
+    users: _containers.RepeatedCompositeFieldContainer[UserEntity]
+    def __init__(self, role: _Optional[_Union[RoleEntity, _Mapping]] = ..., users: _Optional[_Iterable[_Union[UserEntity, _Mapping]]] = ...) -> None: ...
+
+class SearchRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "db_name", "dsl", "dsl_type", "guarantee_timestamp", "nq", "output_fields", "partition_names", "placeholder_group", "search_params", "travel_timestamp"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    DSL_FIELD_NUMBER: _ClassVar[int]
+    DSL_TYPE_FIELD_NUMBER: _ClassVar[int]
+    GUARANTEE_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
+    NQ_FIELD_NUMBER: _ClassVar[int]
+    OUTPUT_FIELDS_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    PLACEHOLDER_GROUP_FIELD_NUMBER: _ClassVar[int]
+    SEARCH_PARAMS_FIELD_NUMBER: _ClassVar[int]
+    TRAVEL_TIMESTAMP_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    db_name: str
+    dsl: str
+    dsl_type: _common_pb2.DslType
+    guarantee_timestamp: int
+    nq: int
+    output_fields: _containers.RepeatedScalarFieldContainer[str]
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    placeholder_group: bytes
+    search_params: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    travel_timestamp: int
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., partition_names: _Optional[_Iterable[str]] = ..., dsl: _Optional[str] = ..., placeholder_group: _Optional[bytes] = ..., dsl_type: _Optional[_Union[_common_pb2.DslType, str]] = ..., output_fields: _Optional[_Iterable[str]] = ..., search_params: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ..., travel_timestamp: _Optional[int] = ..., guarantee_timestamp: _Optional[int] = ..., nq: _Optional[int] = ...) -> None: ...
+
+class SearchResults(_message.Message):
+    __slots__ = ["collection_name", "results", "status"]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    RESULTS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    collection_name: str
+    results: _schema_pb2.SearchResultData
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., results: _Optional[_Union[_schema_pb2.SearchResultData, _Mapping]] = ..., collection_name: _Optional[str] = ...) -> None: ...
+
+class SelectGrantRequest(_message.Message):
+    __slots__ = ["base", "entity"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    ENTITY_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    entity: GrantEntity
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., entity: _Optional[_Union[GrantEntity, _Mapping]] = ...) -> None: ...
+
+class SelectGrantResponse(_message.Message):
+    __slots__ = ["entities", "status"]
+    ENTITIES_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    entities: _containers.RepeatedCompositeFieldContainer[GrantEntity]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., entities: _Optional[_Iterable[_Union[GrantEntity, _Mapping]]] = ...) -> None: ...
+
+class SelectRoleRequest(_message.Message):
+    __slots__ = ["base", "include_user_info", "role"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    INCLUDE_USER_INFO_FIELD_NUMBER: _ClassVar[int]
+    ROLE_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    include_user_info: bool
+    role: RoleEntity
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., role: _Optional[_Union[RoleEntity, _Mapping]] = ..., include_user_info: bool = ...) -> None: ...
+
+class SelectRoleResponse(_message.Message):
+    __slots__ = ["results", "status"]
+    RESULTS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    results: _containers.RepeatedCompositeFieldContainer[RoleResult]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., results: _Optional[_Iterable[_Union[RoleResult, _Mapping]]] = ...) -> None: ...
+
+class SelectUserRequest(_message.Message):
+    __slots__ = ["base", "include_role_info", "user"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    INCLUDE_ROLE_INFO_FIELD_NUMBER: _ClassVar[int]
+    USER_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    include_role_info: bool
+    user: UserEntity
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., user: _Optional[_Union[UserEntity, _Mapping]] = ..., include_role_info: bool = ...) -> None: ...
+
+class SelectUserResponse(_message.Message):
+    __slots__ = ["results", "status"]
+    RESULTS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    results: _containers.RepeatedCompositeFieldContainer[UserResult]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., results: _Optional[_Iterable[_Union[UserResult, _Mapping]]] = ...) -> None: ...
+
+class ShardReplica(_message.Message):
+    __slots__ = ["dm_channel_name", "leaderID", "leader_addr", "node_ids"]
+    DM_CHANNEL_NAME_FIELD_NUMBER: _ClassVar[int]
+    LEADERID_FIELD_NUMBER: _ClassVar[int]
+    LEADER_ADDR_FIELD_NUMBER: _ClassVar[int]
+    NODE_IDS_FIELD_NUMBER: _ClassVar[int]
+    dm_channel_name: str
+    leaderID: int
+    leader_addr: str
+    node_ids: _containers.RepeatedScalarFieldContainer[int]
+    def __init__(self, leaderID: _Optional[int] = ..., leader_addr: _Optional[str] = ..., dm_channel_name: _Optional[str] = ..., node_ids: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class ShowCollectionsRequest(_message.Message):
+    __slots__ = ["base", "collection_names", "db_name", "time_stamp", "type"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    TIME_STAMP_FIELD_NUMBER: _ClassVar[int]
+    TYPE_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_names: _containers.RepeatedScalarFieldContainer[str]
+    db_name: str
+    time_stamp: int
+    type: ShowType
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., time_stamp: _Optional[int] = ..., type: _Optional[_Union[ShowType, str]] = ..., collection_names: _Optional[_Iterable[str]] = ...) -> None: ...
+
+class ShowCollectionsResponse(_message.Message):
+    __slots__ = ["collection_ids", "collection_names", "created_timestamps", "created_utc_timestamps", "inMemory_percentages", "query_service_available", "status"]
+    COLLECTION_IDS_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    CREATED_TIMESTAMPS_FIELD_NUMBER: _ClassVar[int]
+    CREATED_UTC_TIMESTAMPS_FIELD_NUMBER: _ClassVar[int]
+    INMEMORY_PERCENTAGES_FIELD_NUMBER: _ClassVar[int]
+    QUERY_SERVICE_AVAILABLE_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    collection_ids: _containers.RepeatedScalarFieldContainer[int]
+    collection_names: _containers.RepeatedScalarFieldContainer[str]
+    created_timestamps: _containers.RepeatedScalarFieldContainer[int]
+    created_utc_timestamps: _containers.RepeatedScalarFieldContainer[int]
+    inMemory_percentages: _containers.RepeatedScalarFieldContainer[int]
+    query_service_available: _containers.RepeatedScalarFieldContainer[bool]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., collection_names: _Optional[_Iterable[str]] = ..., collection_ids: _Optional[_Iterable[int]] = ..., created_timestamps: _Optional[_Iterable[int]] = ..., created_utc_timestamps: _Optional[_Iterable[int]] = ..., inMemory_percentages: _Optional[_Iterable[int]] = ..., query_service_available: _Optional[_Iterable[bool]] = ...) -> None: ...
+
+class ShowPartitionsRequest(_message.Message):
+    __slots__ = ["base", "collectionID", "collection_name", "db_name", "partition_names", "type"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    DB_NAME_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    TYPE_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collectionID: int
+    collection_name: str
+    db_name: str
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    type: ShowType
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., db_name: _Optional[str] = ..., collection_name: _Optional[str] = ..., collectionID: _Optional[int] = ..., partition_names: _Optional[_Iterable[str]] = ..., type: _Optional[_Union[ShowType, str]] = ...) -> None: ...
+
+class ShowPartitionsResponse(_message.Message):
+    __slots__ = ["created_timestamps", "created_utc_timestamps", "inMemory_percentages", "partitionIDs", "partition_names", "status"]
+    CREATED_TIMESTAMPS_FIELD_NUMBER: _ClassVar[int]
+    CREATED_UTC_TIMESTAMPS_FIELD_NUMBER: _ClassVar[int]
+    INMEMORY_PERCENTAGES_FIELD_NUMBER: _ClassVar[int]
+    PARTITIONIDS_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    created_timestamps: _containers.RepeatedScalarFieldContainer[int]
+    created_utc_timestamps: _containers.RepeatedScalarFieldContainer[int]
+    inMemory_percentages: _containers.RepeatedScalarFieldContainer[int]
+    partitionIDs: _containers.RepeatedScalarFieldContainer[int]
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., partition_names: _Optional[_Iterable[str]] = ..., partitionIDs: _Optional[_Iterable[int]] = ..., created_timestamps: _Optional[_Iterable[int]] = ..., created_utc_timestamps: _Optional[_Iterable[int]] = ..., inMemory_percentages: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class ShowSegmentsRequest(_message.Message):
+    __slots__ = ["base", "collectionID", "partitionID"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTIONID_FIELD_NUMBER: _ClassVar[int]
+    PARTITIONID_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collectionID: int
+    partitionID: int
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., collectionID: _Optional[int] = ..., partitionID: _Optional[int] = ...) -> None: ...
+
+class ShowSegmentsResponse(_message.Message):
+    __slots__ = ["segmentIDs", "status"]
+    SEGMENTIDS_FIELD_NUMBER: _ClassVar[int]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    segmentIDs: _containers.RepeatedScalarFieldContainer[int]
+    status: _common_pb2.Status
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., segmentIDs: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class StringResponse(_message.Message):
+    __slots__ = ["status", "value"]
+    STATUS_FIELD_NUMBER: _ClassVar[int]
+    VALUE_FIELD_NUMBER: _ClassVar[int]
+    status: _common_pb2.Status
+    value: str
+    def __init__(self, status: _Optional[_Union[_common_pb2.Status, _Mapping]] = ..., value: _Optional[str] = ...) -> None: ...
+
+class TransferNodeRequest(_message.Message):
+    __slots__ = ["base", "num_node", "source_resource_group", "target_resource_group"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    NUM_NODE_FIELD_NUMBER: _ClassVar[int]
+    SOURCE_RESOURCE_GROUP_FIELD_NUMBER: _ClassVar[int]
+    TARGET_RESOURCE_GROUP_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    num_node: int
+    source_resource_group: str
+    target_resource_group: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., source_resource_group: _Optional[str] = ..., target_resource_group: _Optional[str] = ..., num_node: _Optional[int] = ...) -> None: ...
+
+class TransferReplicaRequest(_message.Message):
+    __slots__ = ["base", "collection_name", "num_replica", "source_resource_group", "target_resource_group"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    NUM_REPLICA_FIELD_NUMBER: _ClassVar[int]
+    SOURCE_RESOURCE_GROUP_FIELD_NUMBER: _ClassVar[int]
+    TARGET_RESOURCE_GROUP_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    collection_name: str
+    num_replica: int
+    source_resource_group: str
+    target_resource_group: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., source_resource_group: _Optional[str] = ..., target_resource_group: _Optional[str] = ..., collection_name: _Optional[str] = ..., num_replica: _Optional[int] = ...) -> None: ...
+
+class UpdateCredentialRequest(_message.Message):
+    __slots__ = ["base", "created_utc_timestamps", "modified_utc_timestamps", "newPassword", "oldPassword", "username"]
+    BASE_FIELD_NUMBER: _ClassVar[int]
+    CREATED_UTC_TIMESTAMPS_FIELD_NUMBER: _ClassVar[int]
+    MODIFIED_UTC_TIMESTAMPS_FIELD_NUMBER: _ClassVar[int]
+    NEWPASSWORD_FIELD_NUMBER: _ClassVar[int]
+    OLDPASSWORD_FIELD_NUMBER: _ClassVar[int]
+    USERNAME_FIELD_NUMBER: _ClassVar[int]
+    base: _common_pb2.MsgBase
+    created_utc_timestamps: int
+    modified_utc_timestamps: int
+    newPassword: str
+    oldPassword: str
+    username: str
+    def __init__(self, base: _Optional[_Union[_common_pb2.MsgBase, _Mapping]] = ..., username: _Optional[str] = ..., oldPassword: _Optional[str] = ..., newPassword: _Optional[str] = ..., created_utc_timestamps: _Optional[int] = ..., modified_utc_timestamps: _Optional[int] = ...) -> None: ...
+
+class UserEntity(_message.Message):
+    __slots__ = ["name"]
+    NAME_FIELD_NUMBER: _ClassVar[int]
+    name: str
+    def __init__(self, name: _Optional[str] = ...) -> None: ...
+
+class UserResult(_message.Message):
+    __slots__ = ["roles", "user"]
+    ROLES_FIELD_NUMBER: _ClassVar[int]
+    USER_FIELD_NUMBER: _ClassVar[int]
+    roles: _containers.RepeatedCompositeFieldContainer[RoleEntity]
+    user: UserEntity
+    def __init__(self, user: _Optional[_Union[UserEntity, _Mapping]] = ..., roles: _Optional[_Iterable[_Union[RoleEntity, _Mapping]]] = ...) -> None: ...
+
+class VectorIDs(_message.Message):
+    __slots__ = ["collection_name", "field_name", "id_array", "partition_names"]
+    COLLECTION_NAME_FIELD_NUMBER: _ClassVar[int]
+    FIELD_NAME_FIELD_NUMBER: _ClassVar[int]
+    ID_ARRAY_FIELD_NUMBER: _ClassVar[int]
+    PARTITION_NAMES_FIELD_NUMBER: _ClassVar[int]
+    collection_name: str
+    field_name: str
+    id_array: _schema_pb2.IDs
+    partition_names: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, collection_name: _Optional[str] = ..., field_name: _Optional[str] = ..., id_array: _Optional[_Union[_schema_pb2.IDs, _Mapping]] = ..., partition_names: _Optional[_Iterable[str]] = ...) -> None: ...
+
+class VectorsArray(_message.Message):
+    __slots__ = ["data_array", "id_array"]
+    DATA_ARRAY_FIELD_NUMBER: _ClassVar[int]
+    ID_ARRAY_FIELD_NUMBER: _ClassVar[int]
+    data_array: _schema_pb2.VectorField
+    id_array: VectorIDs
+    def __init__(self, id_array: _Optional[_Union[VectorIDs, _Mapping]] = ..., data_array: _Optional[_Union[_schema_pb2.VectorField, _Mapping]] = ...) -> None: ...
+
+class ShowType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class OperateUserRoleType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class OperatePrivilegeType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class QuotaState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
diff --git a/pymilvus/grpc_gen/python_gen.sh b/pymilvus/grpc_gen/python_gen.sh
index 885b6f0aa..6bff7856a 100755
--- a/pymilvus/grpc_gen/python_gen.sh
+++ b/pymilvus/grpc_gen/python_gen.sh
@@ -3,9 +3,9 @@
 OUTDIR=.
 PROTO_DIR="milvus-proto/proto"
 
-python -m grpc_tools.protoc -I ${PROTO_DIR} --python_out=${OUTDIR}                              ${PROTO_DIR}/common.proto
-python -m grpc_tools.protoc -I ${PROTO_DIR} --python_out=${OUTDIR}                              ${PROTO_DIR}/schema.proto
-python -m grpc_tools.protoc -I ${PROTO_DIR} --python_out=${OUTDIR} --grpc_python_out=${OUTDIR}  ${PROTO_DIR}/milvus.proto
+python -m grpc_tools.protoc -I ${PROTO_DIR} --python_out=${OUTDIR} --pyi_out=${OUTDIR} ${PROTO_DIR}/common.proto
+python -m grpc_tools.protoc -I ${PROTO_DIR} --python_out=${OUTDIR} --pyi_out=${OUTDIR} ${PROTO_DIR}/schema.proto
+python -m grpc_tools.protoc -I ${PROTO_DIR} --python_out=${OUTDIR} --pyi_out=${OUTDIR} --grpc_python_out=${OUTDIR}  ${PROTO_DIR}/milvus.proto
 
 if [[ $(uname -s) == "Darwin" ]]; then
     if ! brew --prefix --installed gnu-sed >/dev/null 2>&1; then
@@ -18,4 +18,8 @@ sed -i 's/import common_pb2 as common__pb2/from . import common_pb2 as common__p
 sed -i 's/import schema_pb2 as schema__pb2/from . import schema_pb2 as schema__pb2/' $OUTDIR/*py
 sed -i 's/import milvus_pb2 as milvus__pb2/from . import milvus_pb2 as milvus__pb2/' $OUTDIR/*py
 
+sed -i 's/import common_pb2 as _common_pb2/from . import common_pb2 as _common_pb2/' $OUTDIR/*pyi
+sed -i 's/import schema_pb2 as _schema_pb2/from . import schema_pb2 as _schema_pb2/' $OUTDIR/*pyi
+sed -i 's/import milvus_pb2 as _milvus_pb2/from . import milvus_pb2 as _milvus_pb2/' $OUTDIR/*pyi
+
 echo "Success to generate the python proto files."
diff --git a/pymilvus/grpc_gen/schema_pb2.py b/pymilvus/grpc_gen/schema_pb2.py
index 9906e52c9..3eb3c8181 100644
--- a/pymilvus/grpc_gen/schema_pb2.py
+++ b/pymilvus/grpc_gen/schema_pb2.py
@@ -2,11 +2,9 @@
 # Generated by the protocol buffer compiler.  DO NOT EDIT!
 # source: schema.proto
 """Generated protocol buffer code."""
-from google.protobuf.internal import enum_type_wrapper
+from google.protobuf.internal import builder as _builder
 from google.protobuf import descriptor as _descriptor
 from google.protobuf import descriptor_pool as _descriptor_pool
-from google.protobuf import message as _message
-from google.protobuf import reflection as _reflection
 from google.protobuf import symbol_database as _symbol_database
 # @@protoc_insertion_point(imports)
 
@@ -18,140 +16,8 @@
 
 DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x0cschema.proto\x12\x13milvus.proto.schema\x1a\x0c\x63ommon.proto\"\xbc\x02\n\x0b\x46ieldSchema\x12\x0f\n\x07\x66ieldID\x18\x01 \x01(\x03\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x16\n\x0eis_primary_key\x18\x03 \x01(\x08\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12\x30\n\tdata_type\x18\x05 \x01(\x0e\x32\x1d.milvus.proto.schema.DataType\x12\x36\n\x0btype_params\x18\x06 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\x12\x37\n\x0cindex_params\x18\x07 \x03(\x0b\x32!.milvus.proto.common.KeyValuePair\x12\x0e\n\x06\x61utoID\x18\x08 \x01(\x08\x12.\n\x05state\x18\t \x01(\x0e\x32\x1f.milvus.proto.schema.FieldState\"w\n\x10\x43ollectionSchema\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x02 \x01(\t\x12\x0e\n\x06\x61utoID\x18\x03 \x01(\x08\x12\x30\n\x06\x66ields\x18\x04 \x03(\x0b\x32 .milvus.proto.schema.FieldSchema\"\x19\n\tBoolArray\x12\x0c\n\x04\x64\x61ta\x18\x01 \x03(\x08\"\x18\n\x08IntArray\x12\x0c\n\x04\x64\x61ta\x18\x01 \x03(\x05\"\x19\n\tLongArray\x12\x0c\n\x04\x64\x61ta\x18\x01 \x03(\x03\"\x1a\n\nFloatArray\x12\x0c\n\x04\x64\x61ta\x18\x01 \x03(\x02\"\x1b\n\x0b\x44oubleArray\x12\x0c\n\x04\x64\x61ta\x18\x01 \x03(\x01\"\x1a\n\nBytesArray\x12\x0c\n\x04\x64\x61ta\x18\x01 \x03(\x0c\"\x1b\n\x0bStringArray\x12\x0c\n\x04\x64\x61ta\x18\x01 \x03(\t\"\x92\x03\n\x0bScalarField\x12\x33\n\tbool_data\x18\x01 \x01(\x0b\x32\x1e.milvus.proto.schema.BoolArrayH\x00\x12\x31\n\x08int_data\x18\x02 \x01(\x0b\x32\x1d.milvus.proto.schema.IntArrayH\x00\x12\x33\n\tlong_data\x18\x03 \x01(\x0b\x32\x1e.milvus.proto.schema.LongArrayH\x00\x12\x35\n\nfloat_data\x18\x04 \x01(\x0b\x32\x1f.milvus.proto.schema.FloatArrayH\x00\x12\x37\n\x0b\x64ouble_data\x18\x05 \x01(\x0b\x32 .milvus.proto.schema.DoubleArrayH\x00\x12\x37\n\x0bstring_data\x18\x06 \x01(\x0b\x32 .milvus.proto.schema.StringArrayH\x00\x12\x35\n\nbytes_data\x18\x07 \x01(\x0b\x32\x1f.milvus.proto.schema.BytesArrayH\x00\x42\x06\n\x04\x64\x61ta\"t\n\x0bVectorField\x12\x0b\n\x03\x64im\x18\x01 \x01(\x03\x12\x37\n\x0c\x66loat_vector\x18\x02 \x01(\x0b\x32\x1f.milvus.proto.schema.FloatArrayH\x00\x12\x17\n\rbinary_vector\x18\x03 \x01(\x0cH\x00\x42\x06\n\x04\x64\x61ta\"\xd1\x01\n\tFieldData\x12+\n\x04type\x18\x01 \x01(\x0e\x32\x1d.milvus.proto.schema.DataType\x12\x12\n\nfield_name\x18\x02 \x01(\t\x12\x33\n\x07scalars\x18\x03 \x01(\x0b\x32 .milvus.proto.schema.ScalarFieldH\x00\x12\x33\n\x07vectors\x18\x04 \x01(\x0b\x32 .milvus.proto.schema.VectorFieldH\x00\x12\x10\n\x08\x66ield_id\x18\x05 \x01(\x03\x42\x07\n\x05\x66ield\"w\n\x03IDs\x12\x30\n\x06int_id\x18\x01 \x01(\x0b\x32\x1e.milvus.proto.schema.LongArrayH\x00\x12\x32\n\x06str_id\x18\x02 \x01(\x0b\x32 .milvus.proto.schema.StringArrayH\x00\x42\n\n\x08id_field\"\xb1\x01\n\x10SearchResultData\x12\x13\n\x0bnum_queries\x18\x01 \x01(\x03\x12\r\n\x05top_k\x18\x02 \x01(\x03\x12\x33\n\x0b\x66ields_data\x18\x03 \x03(\x0b\x32\x1e.milvus.proto.schema.FieldData\x12\x0e\n\x06scores\x18\x04 \x03(\x02\x12%\n\x03ids\x18\x05 \x01(\x0b\x32\x18.milvus.proto.schema.IDs\x12\r\n\x05topks\x18\x06 \x03(\x03*\x9c\x01\n\x08\x44\x61taType\x12\x08\n\x04None\x10\x00\x12\x08\n\x04\x42ool\x10\x01\x12\x08\n\x04Int8\x10\x02\x12\t\n\x05Int16\x10\x03\x12\t\n\x05Int32\x10\x04\x12\t\n\x05Int64\x10\x05\x12\t\n\x05\x46loat\x10\n\x12\n\n\x06\x44ouble\x10\x0b\x12\n\n\x06String\x10\x14\x12\x0b\n\x07VarChar\x10\x15\x12\x10\n\x0c\x42inaryVector\x10\x64\x12\x0f\n\x0b\x46loatVector\x10\x65*V\n\nFieldState\x12\x10\n\x0c\x46ieldCreated\x10\x00\x12\x11\n\rFieldCreating\x10\x01\x12\x11\n\rFieldDropping\x10\x02\x12\x10\n\x0c\x46ieldDropped\x10\x03\x42U\n\x0eio.milvus.grpcB\x0bSchemaProtoP\x01Z1github.com/milvus-io/milvus-proto/go-api/schemapb\xa0\x01\x01\x62\x06proto3')
 
-_DATATYPE = DESCRIPTOR.enum_types_by_name['DataType']
-DataType = enum_type_wrapper.EnumTypeWrapper(_DATATYPE)
-_FIELDSTATE = DESCRIPTOR.enum_types_by_name['FieldState']
-FieldState = enum_type_wrapper.EnumTypeWrapper(_FIELDSTATE)
-globals()['None'] = 0
-Bool = 1
-Int8 = 2
-Int16 = 3
-Int32 = 4
-Int64 = 5
-Float = 10
-Double = 11
-String = 20
-VarChar = 21
-BinaryVector = 100
-FloatVector = 101
-FieldCreated = 0
-FieldCreating = 1
-FieldDropping = 2
-FieldDropped = 3
-
-
-_FIELDSCHEMA = DESCRIPTOR.message_types_by_name['FieldSchema']
-_COLLECTIONSCHEMA = DESCRIPTOR.message_types_by_name['CollectionSchema']
-_BOOLARRAY = DESCRIPTOR.message_types_by_name['BoolArray']
-_INTARRAY = DESCRIPTOR.message_types_by_name['IntArray']
-_LONGARRAY = DESCRIPTOR.message_types_by_name['LongArray']
-_FLOATARRAY = DESCRIPTOR.message_types_by_name['FloatArray']
-_DOUBLEARRAY = DESCRIPTOR.message_types_by_name['DoubleArray']
-_BYTESARRAY = DESCRIPTOR.message_types_by_name['BytesArray']
-_STRINGARRAY = DESCRIPTOR.message_types_by_name['StringArray']
-_SCALARFIELD = DESCRIPTOR.message_types_by_name['ScalarField']
-_VECTORFIELD = DESCRIPTOR.message_types_by_name['VectorField']
-_FIELDDATA = DESCRIPTOR.message_types_by_name['FieldData']
-_IDS = DESCRIPTOR.message_types_by_name['IDs']
-_SEARCHRESULTDATA = DESCRIPTOR.message_types_by_name['SearchResultData']
-FieldSchema = _reflection.GeneratedProtocolMessageType('FieldSchema', (_message.Message,), {
-  'DESCRIPTOR' : _FIELDSCHEMA,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.FieldSchema)
-  })
-_sym_db.RegisterMessage(FieldSchema)
-
-CollectionSchema = _reflection.GeneratedProtocolMessageType('CollectionSchema', (_message.Message,), {
-  'DESCRIPTOR' : _COLLECTIONSCHEMA,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.CollectionSchema)
-  })
-_sym_db.RegisterMessage(CollectionSchema)
-
-BoolArray = _reflection.GeneratedProtocolMessageType('BoolArray', (_message.Message,), {
-  'DESCRIPTOR' : _BOOLARRAY,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.BoolArray)
-  })
-_sym_db.RegisterMessage(BoolArray)
-
-IntArray = _reflection.GeneratedProtocolMessageType('IntArray', (_message.Message,), {
-  'DESCRIPTOR' : _INTARRAY,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.IntArray)
-  })
-_sym_db.RegisterMessage(IntArray)
-
-LongArray = _reflection.GeneratedProtocolMessageType('LongArray', (_message.Message,), {
-  'DESCRIPTOR' : _LONGARRAY,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.LongArray)
-  })
-_sym_db.RegisterMessage(LongArray)
-
-FloatArray = _reflection.GeneratedProtocolMessageType('FloatArray', (_message.Message,), {
-  'DESCRIPTOR' : _FLOATARRAY,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.FloatArray)
-  })
-_sym_db.RegisterMessage(FloatArray)
-
-DoubleArray = _reflection.GeneratedProtocolMessageType('DoubleArray', (_message.Message,), {
-  'DESCRIPTOR' : _DOUBLEARRAY,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.DoubleArray)
-  })
-_sym_db.RegisterMessage(DoubleArray)
-
-BytesArray = _reflection.GeneratedProtocolMessageType('BytesArray', (_message.Message,), {
-  'DESCRIPTOR' : _BYTESARRAY,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.BytesArray)
-  })
-_sym_db.RegisterMessage(BytesArray)
-
-StringArray = _reflection.GeneratedProtocolMessageType('StringArray', (_message.Message,), {
-  'DESCRIPTOR' : _STRINGARRAY,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.StringArray)
-  })
-_sym_db.RegisterMessage(StringArray)
-
-ScalarField = _reflection.GeneratedProtocolMessageType('ScalarField', (_message.Message,), {
-  'DESCRIPTOR' : _SCALARFIELD,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.ScalarField)
-  })
-_sym_db.RegisterMessage(ScalarField)
-
-VectorField = _reflection.GeneratedProtocolMessageType('VectorField', (_message.Message,), {
-  'DESCRIPTOR' : _VECTORFIELD,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.VectorField)
-  })
-_sym_db.RegisterMessage(VectorField)
-
-FieldData = _reflection.GeneratedProtocolMessageType('FieldData', (_message.Message,), {
-  'DESCRIPTOR' : _FIELDDATA,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.FieldData)
-  })
-_sym_db.RegisterMessage(FieldData)
-
-IDs = _reflection.GeneratedProtocolMessageType('IDs', (_message.Message,), {
-  'DESCRIPTOR' : _IDS,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.IDs)
-  })
-_sym_db.RegisterMessage(IDs)
-
-SearchResultData = _reflection.GeneratedProtocolMessageType('SearchResultData', (_message.Message,), {
-  'DESCRIPTOR' : _SEARCHRESULTDATA,
-  '__module__' : 'schema_pb2'
-  # @@protoc_insertion_point(class_scope:milvus.proto.schema.SearchResultData)
-  })
-_sym_db.RegisterMessage(SearchResultData)
-
+_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
+_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'schema_pb2', globals())
 if _descriptor._USE_C_DESCRIPTORS == False:
 
   DESCRIPTOR._options = None
diff --git a/pymilvus/grpc_gen/schema_pb2.pyi b/pymilvus/grpc_gen/schema_pb2.pyi
new file mode 100644
index 000000000..94001771a
--- /dev/null
+++ b/pymilvus/grpc_gen/schema_pb2.pyi
@@ -0,0 +1,172 @@
+from . import common_pb2 as _common_pb2
+from google.protobuf.internal import containers as _containers
+from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
+from google.protobuf import descriptor as _descriptor
+from google.protobuf import message as _message
+from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union
+
+BinaryVector: DataType
+Bool: DataType
+DESCRIPTOR: _descriptor.FileDescriptor
+Double: DataType
+FieldCreated: FieldState
+FieldCreating: FieldState
+FieldDropped: FieldState
+FieldDropping: FieldState
+Float: DataType
+FloatVector: DataType
+Int16: DataType
+Int32: DataType
+Int64: DataType
+Int8: DataType
+None: DataType
+String: DataType
+VarChar: DataType
+
+class BoolArray(_message.Message):
+    __slots__ = ["data"]
+    DATA_FIELD_NUMBER: _ClassVar[int]
+    data: _containers.RepeatedScalarFieldContainer[bool]
+    def __init__(self, data: _Optional[_Iterable[bool]] = ...) -> None: ...
+
+class BytesArray(_message.Message):
+    __slots__ = ["data"]
+    DATA_FIELD_NUMBER: _ClassVar[int]
+    data: _containers.RepeatedScalarFieldContainer[bytes]
+    def __init__(self, data: _Optional[_Iterable[bytes]] = ...) -> None: ...
+
+class CollectionSchema(_message.Message):
+    __slots__ = ["autoID", "description", "fields", "name"]
+    AUTOID_FIELD_NUMBER: _ClassVar[int]
+    DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
+    FIELDS_FIELD_NUMBER: _ClassVar[int]
+    NAME_FIELD_NUMBER: _ClassVar[int]
+    autoID: bool
+    description: str
+    fields: _containers.RepeatedCompositeFieldContainer[FieldSchema]
+    name: str
+    def __init__(self, name: _Optional[str] = ..., description: _Optional[str] = ..., autoID: bool = ..., fields: _Optional[_Iterable[_Union[FieldSchema, _Mapping]]] = ...) -> None: ...
+
+class DoubleArray(_message.Message):
+    __slots__ = ["data"]
+    DATA_FIELD_NUMBER: _ClassVar[int]
+    data: _containers.RepeatedScalarFieldContainer[float]
+    def __init__(self, data: _Optional[_Iterable[float]] = ...) -> None: ...
+
+class FieldData(_message.Message):
+    __slots__ = ["field_id", "field_name", "scalars", "type", "vectors"]
+    FIELD_ID_FIELD_NUMBER: _ClassVar[int]
+    FIELD_NAME_FIELD_NUMBER: _ClassVar[int]
+    SCALARS_FIELD_NUMBER: _ClassVar[int]
+    TYPE_FIELD_NUMBER: _ClassVar[int]
+    VECTORS_FIELD_NUMBER: _ClassVar[int]
+    field_id: int
+    field_name: str
+    scalars: ScalarField
+    type: DataType
+    vectors: VectorField
+    def __init__(self, type: _Optional[_Union[DataType, str]] = ..., field_name: _Optional[str] = ..., scalars: _Optional[_Union[ScalarField, _Mapping]] = ..., vectors: _Optional[_Union[VectorField, _Mapping]] = ..., field_id: _Optional[int] = ...) -> None: ...
+
+class FieldSchema(_message.Message):
+    __slots__ = ["autoID", "data_type", "description", "fieldID", "index_params", "is_primary_key", "name", "state", "type_params"]
+    AUTOID_FIELD_NUMBER: _ClassVar[int]
+    DATA_TYPE_FIELD_NUMBER: _ClassVar[int]
+    DESCRIPTION_FIELD_NUMBER: _ClassVar[int]
+    FIELDID_FIELD_NUMBER: _ClassVar[int]
+    INDEX_PARAMS_FIELD_NUMBER: _ClassVar[int]
+    IS_PRIMARY_KEY_FIELD_NUMBER: _ClassVar[int]
+    NAME_FIELD_NUMBER: _ClassVar[int]
+    STATE_FIELD_NUMBER: _ClassVar[int]
+    TYPE_PARAMS_FIELD_NUMBER: _ClassVar[int]
+    autoID: bool
+    data_type: DataType
+    description: str
+    fieldID: int
+    index_params: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    is_primary_key: bool
+    name: str
+    state: FieldState
+    type_params: _containers.RepeatedCompositeFieldContainer[_common_pb2.KeyValuePair]
+    def __init__(self, fieldID: _Optional[int] = ..., name: _Optional[str] = ..., is_primary_key: bool = ..., description: _Optional[str] = ..., data_type: _Optional[_Union[DataType, str]] = ..., type_params: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ..., index_params: _Optional[_Iterable[_Union[_common_pb2.KeyValuePair, _Mapping]]] = ..., autoID: bool = ..., state: _Optional[_Union[FieldState, str]] = ...) -> None: ...
+
+class FloatArray(_message.Message):
+    __slots__ = ["data"]
+    DATA_FIELD_NUMBER: _ClassVar[int]
+    data: _containers.RepeatedScalarFieldContainer[float]
+    def __init__(self, data: _Optional[_Iterable[float]] = ...) -> None: ...
+
+class IDs(_message.Message):
+    __slots__ = ["int_id", "str_id"]
+    INT_ID_FIELD_NUMBER: _ClassVar[int]
+    STR_ID_FIELD_NUMBER: _ClassVar[int]
+    int_id: LongArray
+    str_id: StringArray
+    def __init__(self, int_id: _Optional[_Union[LongArray, _Mapping]] = ..., str_id: _Optional[_Union[StringArray, _Mapping]] = ...) -> None: ...
+
+class IntArray(_message.Message):
+    __slots__ = ["data"]
+    DATA_FIELD_NUMBER: _ClassVar[int]
+    data: _containers.RepeatedScalarFieldContainer[int]
+    def __init__(self, data: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class LongArray(_message.Message):
+    __slots__ = ["data"]
+    DATA_FIELD_NUMBER: _ClassVar[int]
+    data: _containers.RepeatedScalarFieldContainer[int]
+    def __init__(self, data: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class ScalarField(_message.Message):
+    __slots__ = ["bool_data", "bytes_data", "double_data", "float_data", "int_data", "long_data", "string_data"]
+    BOOL_DATA_FIELD_NUMBER: _ClassVar[int]
+    BYTES_DATA_FIELD_NUMBER: _ClassVar[int]
+    DOUBLE_DATA_FIELD_NUMBER: _ClassVar[int]
+    FLOAT_DATA_FIELD_NUMBER: _ClassVar[int]
+    INT_DATA_FIELD_NUMBER: _ClassVar[int]
+    LONG_DATA_FIELD_NUMBER: _ClassVar[int]
+    STRING_DATA_FIELD_NUMBER: _ClassVar[int]
+    bool_data: BoolArray
+    bytes_data: BytesArray
+    double_data: DoubleArray
+    float_data: FloatArray
+    int_data: IntArray
+    long_data: LongArray
+    string_data: StringArray
+    def __init__(self, bool_data: _Optional[_Union[BoolArray, _Mapping]] = ..., int_data: _Optional[_Union[IntArray, _Mapping]] = ..., long_data: _Optional[_Union[LongArray, _Mapping]] = ..., float_data: _Optional[_Union[FloatArray, _Mapping]] = ..., double_data: _Optional[_Union[DoubleArray, _Mapping]] = ..., string_data: _Optional[_Union[StringArray, _Mapping]] = ..., bytes_data: _Optional[_Union[BytesArray, _Mapping]] = ...) -> None: ...
+
+class SearchResultData(_message.Message):
+    __slots__ = ["fields_data", "ids", "num_queries", "scores", "top_k", "topks"]
+    FIELDS_DATA_FIELD_NUMBER: _ClassVar[int]
+    IDS_FIELD_NUMBER: _ClassVar[int]
+    NUM_QUERIES_FIELD_NUMBER: _ClassVar[int]
+    SCORES_FIELD_NUMBER: _ClassVar[int]
+    TOPKS_FIELD_NUMBER: _ClassVar[int]
+    TOP_K_FIELD_NUMBER: _ClassVar[int]
+    fields_data: _containers.RepeatedCompositeFieldContainer[FieldData]
+    ids: IDs
+    num_queries: int
+    scores: _containers.RepeatedScalarFieldContainer[float]
+    top_k: int
+    topks: _containers.RepeatedScalarFieldContainer[int]
+    def __init__(self, num_queries: _Optional[int] = ..., top_k: _Optional[int] = ..., fields_data: _Optional[_Iterable[_Union[FieldData, _Mapping]]] = ..., scores: _Optional[_Iterable[float]] = ..., ids: _Optional[_Union[IDs, _Mapping]] = ..., topks: _Optional[_Iterable[int]] = ...) -> None: ...
+
+class StringArray(_message.Message):
+    __slots__ = ["data"]
+    DATA_FIELD_NUMBER: _ClassVar[int]
+    data: _containers.RepeatedScalarFieldContainer[str]
+    def __init__(self, data: _Optional[_Iterable[str]] = ...) -> None: ...
+
+class VectorField(_message.Message):
+    __slots__ = ["binary_vector", "dim", "float_vector"]
+    BINARY_VECTOR_FIELD_NUMBER: _ClassVar[int]
+    DIM_FIELD_NUMBER: _ClassVar[int]
+    FLOAT_VECTOR_FIELD_NUMBER: _ClassVar[int]
+    binary_vector: bytes
+    dim: int
+    float_vector: FloatArray
+    def __init__(self, dim: _Optional[int] = ..., float_vector: _Optional[_Union[FloatArray, _Mapping]] = ..., binary_vector: _Optional[bytes] = ...) -> None: ...
+
+class DataType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
+
+class FieldState(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
+    __slots__ = []
diff --git a/requirements.txt b/requirements.txt
index 7e73d8fd1..ef2bd2eed 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,18 +1,18 @@
 build==0.4.0
 certifi==2021.5.30
 chardet==4.0.0
-grpcio==1.47.0
-grpcio-testing==1.47.0
-grpcio-tools==1.47.0
+grpcio==1.53.0
+grpcio-testing==1.53.0
+grpcio-tools==1.53.0
 protobuf>=3.17.1
 idna==2.10
-mmh3>=2.0,<=3.0.0
+mmh3>=2.0
 packaging==20.9
 pep517==0.10.0
 pyparsing==2.4.7
 six==1.16.0
 toml==0.10.2
-ujson>=2.0.0,<=5.4.0
+ujson>=2.0.0
 urllib3==1.26.5
 sklearn==0.0
 m2r==0.3.1
diff --git a/setup.py b/setup.py
index 91829cfc8..b06c1f96b 100644
--- a/setup.py
+++ b/setup.py
@@ -19,18 +19,19 @@
     packages=setuptools.find_packages(),
     include_package_data=True,
     install_requires=[
-        "grpcio>=1.47.0,<=1.48.0",
-        "grpcio-tools>=1.47.0, <=1.48.0",
-        "ujson>=2.0.0,<=5.4.0",
-        "mmh3>=2.0,<=3.0.0",
-        "pandas==1.1.5; python_version<'3.7'",
-        "pandas>=1.2.4; python_version>'3.6'",
+        "grpcio>=1.49.1,<=1.53.0",
+        "grpcio-tools>=1.49.1,<=1.53.0",
+        "mmh3>=2.0",
+        "ujson>=2.0.0",
+        "pandas>=1.2.4",
     ],
     classifiers=[
-        "Programming Language :: Python :: 3.6",
         "Programming Language :: Python :: 3.7",
         "Programming Language :: Python :: 3.8",
+        "Programming Language :: Python :: 3.9",
+        "Programming Language :: Python :: 3.10",
+        "Programming Language :: Python :: 3.11",
     ],
 
-    python_requires='>=3.6'
+    python_requires='>=3.7'
 )


Test patch:
diff --git a/tests/test_types.py b/tests/test_types.py
index c46d4adda..0c8e75ff1 100644
--- a/tests/test_types.py
+++ b/tests/test_types.py
@@ -12,10 +12,11 @@
 from pymilvus import DataType, DEFAULT_RESOURCE_GROUP
 from pymilvus.exceptions import InvalidConsistencyLevel
 from pymilvus.client.types import (
-    get_consistency_level, ConsistencyLevel,
-    Shard, Group, Replica
+    get_consistency_level, Shard, Group, Replica, ConsistencyLevel
 )
 
+from pymilvus.grpc_gen import common_pb2
+
 import pytest
 import pandas as pd
 import numpy as np