// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: etcd_meta.proto

#ifndef GOOGLE_PROTOBUF_INCLUDED_etcd_5fmeta_2eproto
#define GOOGLE_PROTOBUF_INCLUDED_etcd_5fmeta_2eproto

#include <limits>
#include <string>

#include <google/protobuf/port_def.inc>
#if PROTOBUF_VERSION < 3009000
#error This file was generated by a newer version of protoc which is
#error incompatible with your Protocol Buffer headers. Please update
#error your headers.
#endif
#if 3009000 < PROTOBUF_MIN_PROTOC_VERSION
#error This file was generated by an older version of protoc which is
#error incompatible with your Protocol Buffer headers. Please
#error regenerate this file with a newer version of protoc.
#endif

#include <google/protobuf/port_undef.inc>
#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/arena.h>
#include <google/protobuf/arenastring.h>
#include <google/protobuf/generated_message_table_driven.h>
#include <google/protobuf/generated_message_util.h>
#include <google/protobuf/inlined_string_field.h>
#include <google/protobuf/metadata.h>
#include <google/protobuf/generated_message_reflection.h>
#include <google/protobuf/message.h>
#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
#include <google/protobuf/extension_set.h>  // IWYU pragma: export
#include <google/protobuf/unknown_field_set.h>
#include "common.pb.h"
#include "schema.pb.h"
// @@protoc_insertion_point(includes)
#include <google/protobuf/port_def.inc>
#define PROTOBUF_INTERNAL_EXPORT_etcd_5fmeta_2eproto
PROTOBUF_NAMESPACE_OPEN
namespace internal {
class AnyMetadata;
}  // namespace internal
PROTOBUF_NAMESPACE_CLOSE

// Internal implementation detail -- do not use these members.
struct TableStruct_etcd_5fmeta_2eproto {
  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[7]
    PROTOBUF_SECTION_VARIABLE(protodesc_cold);
  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
};
extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_etcd_5fmeta_2eproto;
namespace milvus {
namespace proto {
namespace etcd {
class CollectionInfo;
class CollectionInfoDefaultTypeInternal;
extern CollectionInfoDefaultTypeInternal _CollectionInfo_default_instance_;
class CollectionMeta;
class CollectionMetaDefaultTypeInternal;
extern CollectionMetaDefaultTypeInternal _CollectionMeta_default_instance_;
class FieldIndexInfo;
class FieldIndexInfoDefaultTypeInternal;
extern FieldIndexInfoDefaultTypeInternal _FieldIndexInfo_default_instance_;
class IndexInfo;
class IndexInfoDefaultTypeInternal;
extern IndexInfoDefaultTypeInternal _IndexInfo_default_instance_;
class ProxyMeta;
class ProxyMetaDefaultTypeInternal;
extern ProxyMetaDefaultTypeInternal _ProxyMeta_default_instance_;
class SegmentIndexInfo;
class SegmentIndexInfoDefaultTypeInternal;
extern SegmentIndexInfoDefaultTypeInternal _SegmentIndexInfo_default_instance_;
class TenantMeta;
class TenantMetaDefaultTypeInternal;
extern TenantMetaDefaultTypeInternal _TenantMeta_default_instance_;
}  // namespace etcd
}  // namespace proto
}  // namespace milvus
PROTOBUF_NAMESPACE_OPEN
template<> ::milvus::proto::etcd::CollectionInfo* Arena::CreateMaybeMessage<::milvus::proto::etcd::CollectionInfo>(Arena*);
template<> ::milvus::proto::etcd::CollectionMeta* Arena::CreateMaybeMessage<::milvus::proto::etcd::CollectionMeta>(Arena*);
template<> ::milvus::proto::etcd::FieldIndexInfo* Arena::CreateMaybeMessage<::milvus::proto::etcd::FieldIndexInfo>(Arena*);
template<> ::milvus::proto::etcd::IndexInfo* Arena::CreateMaybeMessage<::milvus::proto::etcd::IndexInfo>(Arena*);
template<> ::milvus::proto::etcd::ProxyMeta* Arena::CreateMaybeMessage<::milvus::proto::etcd::ProxyMeta>(Arena*);
template<> ::milvus::proto::etcd::SegmentIndexInfo* Arena::CreateMaybeMessage<::milvus::proto::etcd::SegmentIndexInfo>(Arena*);
template<> ::milvus::proto::etcd::TenantMeta* Arena::CreateMaybeMessage<::milvus::proto::etcd::TenantMeta>(Arena*);
PROTOBUF_NAMESPACE_CLOSE
namespace milvus {
namespace proto {
namespace etcd {

// ===================================================================

class TenantMeta :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:milvus.proto.etcd.TenantMeta) */ {
 public:
  TenantMeta();
  virtual ~TenantMeta();

  TenantMeta(const TenantMeta& from);
  TenantMeta(TenantMeta&& from) noexcept
    : TenantMeta() {
    *this = ::std::move(from);
  }

  inline TenantMeta& operator=(const TenantMeta& from) {
    CopyFrom(from);
    return *this;
  }
  inline TenantMeta& operator=(TenantMeta&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return GetMetadataStatic().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return GetMetadataStatic().reflection;
  }
  static const TenantMeta& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const TenantMeta* internal_default_instance() {
    return reinterpret_cast<const TenantMeta*>(
               &_TenantMeta_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    0;

  friend void swap(TenantMeta& a, TenantMeta& b) {
    a.Swap(&b);
  }
  inline void Swap(TenantMeta* other) {
    if (other == this) return;
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  inline TenantMeta* New() const final {
    return CreateMaybeMessage<TenantMeta>(nullptr);
  }

  TenantMeta* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
    return CreateMaybeMessage<TenantMeta>(arena);
  }
  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void CopyFrom(const TenantMeta& from);
  void MergeFrom(const TenantMeta& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  #else
  bool MergePartialFromCodedStream(
      ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
      ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  inline void SharedCtor();
  inline void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(TenantMeta* other);
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "milvus.proto.etcd.TenantMeta";
  }
  private:
  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
  private:
  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
    ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_etcd_5fmeta_2eproto);
    return ::descriptor_table_etcd_5fmeta_2eproto.file_level_metadata[kIndexInFileMessages];
  }

  public:

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kInsertChannelIDsFieldNumber = 3,
    kQueryChannelIDFieldNumber = 4,
    kIDFieldNumber = 1,
    kNumQueryNodesFieldNumber = 2,
  };
  // repeated string insert_channelIDs = 3;
  int insert_channelids_size() const;
  void clear_insert_channelids();
  const std::string& insert_channelids(int index) const;
  std::string* mutable_insert_channelids(int index);
  void set_insert_channelids(int index, const std::string& value);
  void set_insert_channelids(int index, std::string&& value);
  void set_insert_channelids(int index, const char* value);
  void set_insert_channelids(int index, const char* value, size_t size);
  std::string* add_insert_channelids();
  void add_insert_channelids(const std::string& value);
  void add_insert_channelids(std::string&& value);
  void add_insert_channelids(const char* value);
  void add_insert_channelids(const char* value, size_t size);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& insert_channelids() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_insert_channelids();

  // string query_channelID = 4;
  void clear_query_channelid();
  const std::string& query_channelid() const;
  void set_query_channelid(const std::string& value);
  void set_query_channelid(std::string&& value);
  void set_query_channelid(const char* value);
  void set_query_channelid(const char* value, size_t size);
  std::string* mutable_query_channelid();
  std::string* release_query_channelid();
  void set_allocated_query_channelid(std::string* query_channelid);

  // int64 ID = 1;
  void clear_id();
  ::PROTOBUF_NAMESPACE_ID::int64 id() const;
  void set_id(::PROTOBUF_NAMESPACE_ID::int64 value);

  // int64 num_query_nodes = 2;
  void clear_num_query_nodes();
  ::PROTOBUF_NAMESPACE_ID::int64 num_query_nodes() const;
  void set_num_query_nodes(::PROTOBUF_NAMESPACE_ID::int64 value);

  // @@protoc_insertion_point(class_scope:milvus.proto.etcd.TenantMeta)
 private:
  class _Internal;

  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> insert_channelids_;
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr query_channelid_;
  ::PROTOBUF_NAMESPACE_ID::int64 id_;
  ::PROTOBUF_NAMESPACE_ID::int64 num_query_nodes_;
  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_etcd_5fmeta_2eproto;
};
// -------------------------------------------------------------------

class ProxyMeta :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:milvus.proto.etcd.ProxyMeta) */ {
 public:
  ProxyMeta();
  virtual ~ProxyMeta();

  ProxyMeta(const ProxyMeta& from);
  ProxyMeta(ProxyMeta&& from) noexcept
    : ProxyMeta() {
    *this = ::std::move(from);
  }

  inline ProxyMeta& operator=(const ProxyMeta& from) {
    CopyFrom(from);
    return *this;
  }
  inline ProxyMeta& operator=(ProxyMeta&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return GetMetadataStatic().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return GetMetadataStatic().reflection;
  }
  static const ProxyMeta& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const ProxyMeta* internal_default_instance() {
    return reinterpret_cast<const ProxyMeta*>(
               &_ProxyMeta_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    1;

  friend void swap(ProxyMeta& a, ProxyMeta& b) {
    a.Swap(&b);
  }
  inline void Swap(ProxyMeta* other) {
    if (other == this) return;
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  inline ProxyMeta* New() const final {
    return CreateMaybeMessage<ProxyMeta>(nullptr);
  }

  ProxyMeta* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
    return CreateMaybeMessage<ProxyMeta>(arena);
  }
  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void CopyFrom(const ProxyMeta& from);
  void MergeFrom(const ProxyMeta& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  #else
  bool MergePartialFromCodedStream(
      ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
      ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  inline void SharedCtor();
  inline void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(ProxyMeta* other);
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "milvus.proto.etcd.ProxyMeta";
  }
  private:
  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
  private:
  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
    ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_etcd_5fmeta_2eproto);
    return ::descriptor_table_etcd_5fmeta_2eproto.file_level_metadata[kIndexInFileMessages];
  }

  public:

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kResultChannelIDsFieldNumber = 3,
    kAddressFieldNumber = 2,
    kIDFieldNumber = 1,
  };
  // repeated string result_channelIDs = 3;
  int result_channelids_size() const;
  void clear_result_channelids();
  const std::string& result_channelids(int index) const;
  std::string* mutable_result_channelids(int index);
  void set_result_channelids(int index, const std::string& value);
  void set_result_channelids(int index, std::string&& value);
  void set_result_channelids(int index, const char* value);
  void set_result_channelids(int index, const char* value, size_t size);
  std::string* add_result_channelids();
  void add_result_channelids(const std::string& value);
  void add_result_channelids(std::string&& value);
  void add_result_channelids(const char* value);
  void add_result_channelids(const char* value, size_t size);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& result_channelids() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_result_channelids();

  // .milvus.proto.common.Address address = 2;
  bool has_address() const;
  void clear_address();
  const ::milvus::proto::common::Address& address() const;
  ::milvus::proto::common::Address* release_address();
  ::milvus::proto::common::Address* mutable_address();
  void set_allocated_address(::milvus::proto::common::Address* address);

  // int64 ID = 1;
  void clear_id();
  ::PROTOBUF_NAMESPACE_ID::int64 id() const;
  void set_id(::PROTOBUF_NAMESPACE_ID::int64 value);

  // @@protoc_insertion_point(class_scope:milvus.proto.etcd.ProxyMeta)
 private:
  class _Internal;

  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> result_channelids_;
  ::milvus::proto::common::Address* address_;
  ::PROTOBUF_NAMESPACE_ID::int64 id_;
  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_etcd_5fmeta_2eproto;
};
// -------------------------------------------------------------------

class IndexInfo :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:milvus.proto.etcd.IndexInfo) */ {
 public:
  IndexInfo();
  virtual ~IndexInfo();

  IndexInfo(const IndexInfo& from);
  IndexInfo(IndexInfo&& from) noexcept
    : IndexInfo() {
    *this = ::std::move(from);
  }

  inline IndexInfo& operator=(const IndexInfo& from) {
    CopyFrom(from);
    return *this;
  }
  inline IndexInfo& operator=(IndexInfo&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return GetMetadataStatic().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return GetMetadataStatic().reflection;
  }
  static const IndexInfo& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const IndexInfo* internal_default_instance() {
    return reinterpret_cast<const IndexInfo*>(
               &_IndexInfo_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    2;

  friend void swap(IndexInfo& a, IndexInfo& b) {
    a.Swap(&b);
  }
  inline void Swap(IndexInfo* other) {
    if (other == this) return;
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  inline IndexInfo* New() const final {
    return CreateMaybeMessage<IndexInfo>(nullptr);
  }

  IndexInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
    return CreateMaybeMessage<IndexInfo>(arena);
  }
  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void CopyFrom(const IndexInfo& from);
  void MergeFrom(const IndexInfo& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  #else
  bool MergePartialFromCodedStream(
      ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
      ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  inline void SharedCtor();
  inline void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(IndexInfo* other);
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "milvus.proto.etcd.IndexInfo";
  }
  private:
  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
  private:
  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
    ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_etcd_5fmeta_2eproto);
    return ::descriptor_table_etcd_5fmeta_2eproto.file_level_metadata[kIndexInFileMessages];
  }

  public:

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kIndexParamsFieldNumber = 3,
    kIndexNameFieldNumber = 1,
    kIndexIDFieldNumber = 2,
  };
  // repeated .milvus.proto.common.KeyValuePair index_params = 3;
  int index_params_size() const;
  void clear_index_params();
  ::milvus::proto::common::KeyValuePair* mutable_index_params(int index);
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyValuePair >*
      mutable_index_params();
  const ::milvus::proto::common::KeyValuePair& index_params(int index) const;
  ::milvus::proto::common::KeyValuePair* add_index_params();
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyValuePair >&
      index_params() const;

  // string index_name = 1;
  void clear_index_name();
  const std::string& index_name() const;
  void set_index_name(const std::string& value);
  void set_index_name(std::string&& value);
  void set_index_name(const char* value);
  void set_index_name(const char* value, size_t size);
  std::string* mutable_index_name();
  std::string* release_index_name();
  void set_allocated_index_name(std::string* index_name);

  // int64 indexID = 2;
  void clear_indexid();
  ::PROTOBUF_NAMESPACE_ID::int64 indexid() const;
  void set_indexid(::PROTOBUF_NAMESPACE_ID::int64 value);

  // @@protoc_insertion_point(class_scope:milvus.proto.etcd.IndexInfo)
 private:
  class _Internal;

  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyValuePair > index_params_;
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr index_name_;
  ::PROTOBUF_NAMESPACE_ID::int64 indexid_;
  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_etcd_5fmeta_2eproto;
};
// -------------------------------------------------------------------

class FieldIndexInfo :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:milvus.proto.etcd.FieldIndexInfo) */ {
 public:
  FieldIndexInfo();
  virtual ~FieldIndexInfo();

  FieldIndexInfo(const FieldIndexInfo& from);
  FieldIndexInfo(FieldIndexInfo&& from) noexcept
    : FieldIndexInfo() {
    *this = ::std::move(from);
  }

  inline FieldIndexInfo& operator=(const FieldIndexInfo& from) {
    CopyFrom(from);
    return *this;
  }
  inline FieldIndexInfo& operator=(FieldIndexInfo&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return GetMetadataStatic().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return GetMetadataStatic().reflection;
  }
  static const FieldIndexInfo& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const FieldIndexInfo* internal_default_instance() {
    return reinterpret_cast<const FieldIndexInfo*>(
               &_FieldIndexInfo_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    3;

  friend void swap(FieldIndexInfo& a, FieldIndexInfo& b) {
    a.Swap(&b);
  }
  inline void Swap(FieldIndexInfo* other) {
    if (other == this) return;
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  inline FieldIndexInfo* New() const final {
    return CreateMaybeMessage<FieldIndexInfo>(nullptr);
  }

  FieldIndexInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
    return CreateMaybeMessage<FieldIndexInfo>(arena);
  }
  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void CopyFrom(const FieldIndexInfo& from);
  void MergeFrom(const FieldIndexInfo& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  #else
  bool MergePartialFromCodedStream(
      ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
      ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  inline void SharedCtor();
  inline void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(FieldIndexInfo* other);
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "milvus.proto.etcd.FieldIndexInfo";
  }
  private:
  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
  private:
  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
    ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_etcd_5fmeta_2eproto);
    return ::descriptor_table_etcd_5fmeta_2eproto.file_level_metadata[kIndexInFileMessages];
  }

  public:

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kFiledIDFieldNumber = 1,
    kIndexIDFieldNumber = 2,
  };
  // int64 filedID = 1;
  void clear_filedid();
  ::PROTOBUF_NAMESPACE_ID::int64 filedid() const;
  void set_filedid(::PROTOBUF_NAMESPACE_ID::int64 value);

  // int64 indexID = 2;
  void clear_indexid();
  ::PROTOBUF_NAMESPACE_ID::int64 indexid() const;
  void set_indexid(::PROTOBUF_NAMESPACE_ID::int64 value);

  // @@protoc_insertion_point(class_scope:milvus.proto.etcd.FieldIndexInfo)
 private:
  class _Internal;

  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
  ::PROTOBUF_NAMESPACE_ID::int64 filedid_;
  ::PROTOBUF_NAMESPACE_ID::int64 indexid_;
  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_etcd_5fmeta_2eproto;
};
// -------------------------------------------------------------------

class CollectionInfo :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:milvus.proto.etcd.CollectionInfo) */ {
 public:
  CollectionInfo();
  virtual ~CollectionInfo();

  CollectionInfo(const CollectionInfo& from);
  CollectionInfo(CollectionInfo&& from) noexcept
    : CollectionInfo() {
    *this = ::std::move(from);
  }

  inline CollectionInfo& operator=(const CollectionInfo& from) {
    CopyFrom(from);
    return *this;
  }
  inline CollectionInfo& operator=(CollectionInfo&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return GetMetadataStatic().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return GetMetadataStatic().reflection;
  }
  static const CollectionInfo& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const CollectionInfo* internal_default_instance() {
    return reinterpret_cast<const CollectionInfo*>(
               &_CollectionInfo_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    4;

  friend void swap(CollectionInfo& a, CollectionInfo& b) {
    a.Swap(&b);
  }
  inline void Swap(CollectionInfo* other) {
    if (other == this) return;
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  inline CollectionInfo* New() const final {
    return CreateMaybeMessage<CollectionInfo>(nullptr);
  }

  CollectionInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
    return CreateMaybeMessage<CollectionInfo>(arena);
  }
  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void CopyFrom(const CollectionInfo& from);
  void MergeFrom(const CollectionInfo& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  #else
  bool MergePartialFromCodedStream(
      ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
      ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  inline void SharedCtor();
  inline void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(CollectionInfo* other);
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "milvus.proto.etcd.CollectionInfo";
  }
  private:
  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
  private:
  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
    ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_etcd_5fmeta_2eproto);
    return ::descriptor_table_etcd_5fmeta_2eproto.file_level_metadata[kIndexInFileMessages];
  }

  public:

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kPartitionIDsFieldNumber = 4,
    kPartitionNamesFieldNumber = 5,
    kFieldIndexesFieldNumber = 6,
    kVirtualChannelNamesFieldNumber = 7,
    kPhysicalChannelNamesFieldNumber = 8,
    kPartitionCreatedTimestampsFieldNumber = 9,
    kStartPositionsFieldNumber = 11,
    kSchemaFieldNumber = 2,
    kIDFieldNumber = 1,
    kCreateTimeFieldNumber = 3,
    kShardsNumFieldNumber = 10,
  };
  // repeated int64 partitionIDs = 4;
  int partitionids_size() const;
  void clear_partitionids();
  ::PROTOBUF_NAMESPACE_ID::int64 partitionids(int index) const;
  void set_partitionids(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
  void add_partitionids(::PROTOBUF_NAMESPACE_ID::int64 value);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
      partitionids() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
      mutable_partitionids();

  // repeated string partitionNames = 5;
  int partitionnames_size() const;
  void clear_partitionnames();
  const std::string& partitionnames(int index) const;
  std::string* mutable_partitionnames(int index);
  void set_partitionnames(int index, const std::string& value);
  void set_partitionnames(int index, std::string&& value);
  void set_partitionnames(int index, const char* value);
  void set_partitionnames(int index, const char* value, size_t size);
  std::string* add_partitionnames();
  void add_partitionnames(const std::string& value);
  void add_partitionnames(std::string&& value);
  void add_partitionnames(const char* value);
  void add_partitionnames(const char* value, size_t size);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& partitionnames() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_partitionnames();

  // repeated .milvus.proto.etcd.FieldIndexInfo field_indexes = 6;
  int field_indexes_size() const;
  void clear_field_indexes();
  ::milvus::proto::etcd::FieldIndexInfo* mutable_field_indexes(int index);
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::etcd::FieldIndexInfo >*
      mutable_field_indexes();
  const ::milvus::proto::etcd::FieldIndexInfo& field_indexes(int index) const;
  ::milvus::proto::etcd::FieldIndexInfo* add_field_indexes();
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::etcd::FieldIndexInfo >&
      field_indexes() const;

  // repeated string virtual_channel_names = 7;
  int virtual_channel_names_size() const;
  void clear_virtual_channel_names();
  const std::string& virtual_channel_names(int index) const;
  std::string* mutable_virtual_channel_names(int index);
  void set_virtual_channel_names(int index, const std::string& value);
  void set_virtual_channel_names(int index, std::string&& value);
  void set_virtual_channel_names(int index, const char* value);
  void set_virtual_channel_names(int index, const char* value, size_t size);
  std::string* add_virtual_channel_names();
  void add_virtual_channel_names(const std::string& value);
  void add_virtual_channel_names(std::string&& value);
  void add_virtual_channel_names(const char* value);
  void add_virtual_channel_names(const char* value, size_t size);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& virtual_channel_names() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_virtual_channel_names();

  // repeated string physical_channel_names = 8;
  int physical_channel_names_size() const;
  void clear_physical_channel_names();
  const std::string& physical_channel_names(int index) const;
  std::string* mutable_physical_channel_names(int index);
  void set_physical_channel_names(int index, const std::string& value);
  void set_physical_channel_names(int index, std::string&& value);
  void set_physical_channel_names(int index, const char* value);
  void set_physical_channel_names(int index, const char* value, size_t size);
  std::string* add_physical_channel_names();
  void add_physical_channel_names(const std::string& value);
  void add_physical_channel_names(std::string&& value);
  void add_physical_channel_names(const char* value);
  void add_physical_channel_names(const char* value, size_t size);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& physical_channel_names() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_physical_channel_names();

  // repeated uint64 partition_created_timestamps = 9;
  int partition_created_timestamps_size() const;
  void clear_partition_created_timestamps();
  ::PROTOBUF_NAMESPACE_ID::uint64 partition_created_timestamps(int index) const;
  void set_partition_created_timestamps(int index, ::PROTOBUF_NAMESPACE_ID::uint64 value);
  void add_partition_created_timestamps(::PROTOBUF_NAMESPACE_ID::uint64 value);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint64 >&
      partition_created_timestamps() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint64 >*
      mutable_partition_created_timestamps();

  // repeated .milvus.proto.common.KeyDataPair start_positions = 11;
  int start_positions_size() const;
  void clear_start_positions();
  ::milvus::proto::common::KeyDataPair* mutable_start_positions(int index);
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyDataPair >*
      mutable_start_positions();
  const ::milvus::proto::common::KeyDataPair& start_positions(int index) const;
  ::milvus::proto::common::KeyDataPair* add_start_positions();
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyDataPair >&
      start_positions() const;

  // .milvus.proto.schema.CollectionSchema schema = 2;
  bool has_schema() const;
  void clear_schema();
  const ::milvus::proto::schema::CollectionSchema& schema() const;
  ::milvus::proto::schema::CollectionSchema* release_schema();
  ::milvus::proto::schema::CollectionSchema* mutable_schema();
  void set_allocated_schema(::milvus::proto::schema::CollectionSchema* schema);

  // int64 ID = 1;
  void clear_id();
  ::PROTOBUF_NAMESPACE_ID::int64 id() const;
  void set_id(::PROTOBUF_NAMESPACE_ID::int64 value);

  // uint64 create_time = 3;
  void clear_create_time();
  ::PROTOBUF_NAMESPACE_ID::uint64 create_time() const;
  void set_create_time(::PROTOBUF_NAMESPACE_ID::uint64 value);

  // int32 shards_num = 10;
  void clear_shards_num();
  ::PROTOBUF_NAMESPACE_ID::int32 shards_num() const;
  void set_shards_num(::PROTOBUF_NAMESPACE_ID::int32 value);

  // @@protoc_insertion_point(class_scope:milvus.proto.etcd.CollectionInfo)
 private:
  class _Internal;

  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > partitionids_;
  mutable std::atomic<int> _partitionids_cached_byte_size_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> partitionnames_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::etcd::FieldIndexInfo > field_indexes_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> virtual_channel_names_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> physical_channel_names_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint64 > partition_created_timestamps_;
  mutable std::atomic<int> _partition_created_timestamps_cached_byte_size_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyDataPair > start_positions_;
  ::milvus::proto::schema::CollectionSchema* schema_;
  ::PROTOBUF_NAMESPACE_ID::int64 id_;
  ::PROTOBUF_NAMESPACE_ID::uint64 create_time_;
  ::PROTOBUF_NAMESPACE_ID::int32 shards_num_;
  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_etcd_5fmeta_2eproto;
};
// -------------------------------------------------------------------

class SegmentIndexInfo :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:milvus.proto.etcd.SegmentIndexInfo) */ {
 public:
  SegmentIndexInfo();
  virtual ~SegmentIndexInfo();

  SegmentIndexInfo(const SegmentIndexInfo& from);
  SegmentIndexInfo(SegmentIndexInfo&& from) noexcept
    : SegmentIndexInfo() {
    *this = ::std::move(from);
  }

  inline SegmentIndexInfo& operator=(const SegmentIndexInfo& from) {
    CopyFrom(from);
    return *this;
  }
  inline SegmentIndexInfo& operator=(SegmentIndexInfo&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return GetMetadataStatic().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return GetMetadataStatic().reflection;
  }
  static const SegmentIndexInfo& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const SegmentIndexInfo* internal_default_instance() {
    return reinterpret_cast<const SegmentIndexInfo*>(
               &_SegmentIndexInfo_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    5;

  friend void swap(SegmentIndexInfo& a, SegmentIndexInfo& b) {
    a.Swap(&b);
  }
  inline void Swap(SegmentIndexInfo* other) {
    if (other == this) return;
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  inline SegmentIndexInfo* New() const final {
    return CreateMaybeMessage<SegmentIndexInfo>(nullptr);
  }

  SegmentIndexInfo* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
    return CreateMaybeMessage<SegmentIndexInfo>(arena);
  }
  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void CopyFrom(const SegmentIndexInfo& from);
  void MergeFrom(const SegmentIndexInfo& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  #else
  bool MergePartialFromCodedStream(
      ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
      ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  inline void SharedCtor();
  inline void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(SegmentIndexInfo* other);
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "milvus.proto.etcd.SegmentIndexInfo";
  }
  private:
  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
  private:
  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
    ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_etcd_5fmeta_2eproto);
    return ::descriptor_table_etcd_5fmeta_2eproto.file_level_metadata[kIndexInFileMessages];
  }

  public:

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kCollectionIDFieldNumber = 1,
    kPartitionIDFieldNumber = 2,
    kSegmentIDFieldNumber = 3,
    kFieldIDFieldNumber = 4,
    kIndexIDFieldNumber = 5,
    kBuildIDFieldNumber = 6,
    kEnableIndexFieldNumber = 7,
  };
  // int64 collectionID = 1;
  void clear_collectionid();
  ::PROTOBUF_NAMESPACE_ID::int64 collectionid() const;
  void set_collectionid(::PROTOBUF_NAMESPACE_ID::int64 value);

  // int64 partitionID = 2;
  void clear_partitionid();
  ::PROTOBUF_NAMESPACE_ID::int64 partitionid() const;
  void set_partitionid(::PROTOBUF_NAMESPACE_ID::int64 value);

  // int64 segmentID = 3;
  void clear_segmentid();
  ::PROTOBUF_NAMESPACE_ID::int64 segmentid() const;
  void set_segmentid(::PROTOBUF_NAMESPACE_ID::int64 value);

  // int64 fieldID = 4;
  void clear_fieldid();
  ::PROTOBUF_NAMESPACE_ID::int64 fieldid() const;
  void set_fieldid(::PROTOBUF_NAMESPACE_ID::int64 value);

  // int64 indexID = 5;
  void clear_indexid();
  ::PROTOBUF_NAMESPACE_ID::int64 indexid() const;
  void set_indexid(::PROTOBUF_NAMESPACE_ID::int64 value);

  // int64 buildID = 6;
  void clear_buildid();
  ::PROTOBUF_NAMESPACE_ID::int64 buildid() const;
  void set_buildid(::PROTOBUF_NAMESPACE_ID::int64 value);

  // bool enable_index = 7;
  void clear_enable_index();
  bool enable_index() const;
  void set_enable_index(bool value);

  // @@protoc_insertion_point(class_scope:milvus.proto.etcd.SegmentIndexInfo)
 private:
  class _Internal;

  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
  ::PROTOBUF_NAMESPACE_ID::int64 collectionid_;
  ::PROTOBUF_NAMESPACE_ID::int64 partitionid_;
  ::PROTOBUF_NAMESPACE_ID::int64 segmentid_;
  ::PROTOBUF_NAMESPACE_ID::int64 fieldid_;
  ::PROTOBUF_NAMESPACE_ID::int64 indexid_;
  ::PROTOBUF_NAMESPACE_ID::int64 buildid_;
  bool enable_index_;
  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_etcd_5fmeta_2eproto;
};
// -------------------------------------------------------------------

class CollectionMeta :
    public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:milvus.proto.etcd.CollectionMeta) */ {
 public:
  CollectionMeta();
  virtual ~CollectionMeta();

  CollectionMeta(const CollectionMeta& from);
  CollectionMeta(CollectionMeta&& from) noexcept
    : CollectionMeta() {
    *this = ::std::move(from);
  }

  inline CollectionMeta& operator=(const CollectionMeta& from) {
    CopyFrom(from);
    return *this;
  }
  inline CollectionMeta& operator=(CollectionMeta&& from) noexcept {
    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
      if (this != &from) InternalSwap(&from);
    } else {
      CopyFrom(from);
    }
    return *this;
  }

  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
    return GetDescriptor();
  }
  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
    return GetMetadataStatic().descriptor;
  }
  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
    return GetMetadataStatic().reflection;
  }
  static const CollectionMeta& default_instance();

  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
  static inline const CollectionMeta* internal_default_instance() {
    return reinterpret_cast<const CollectionMeta*>(
               &_CollectionMeta_default_instance_);
  }
  static constexpr int kIndexInFileMessages =
    6;

  friend void swap(CollectionMeta& a, CollectionMeta& b) {
    a.Swap(&b);
  }
  inline void Swap(CollectionMeta* other) {
    if (other == this) return;
    InternalSwap(other);
  }

  // implements Message ----------------------------------------------

  inline CollectionMeta* New() const final {
    return CreateMaybeMessage<CollectionMeta>(nullptr);
  }

  CollectionMeta* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
    return CreateMaybeMessage<CollectionMeta>(arena);
  }
  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
  void CopyFrom(const CollectionMeta& from);
  void MergeFrom(const CollectionMeta& from);
  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
  bool IsInitialized() const final;

  size_t ByteSizeLong() const final;
  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
  #else
  bool MergePartialFromCodedStream(
      ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
  #endif  // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
  void SerializeWithCachedSizes(
      ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
      ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
  int GetCachedSize() const final { return _cached_size_.Get(); }

  private:
  inline void SharedCtor();
  inline void SharedDtor();
  void SetCachedSize(int size) const final;
  void InternalSwap(CollectionMeta* other);
  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
    return "milvus.proto.etcd.CollectionMeta";
  }
  private:
  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
    return nullptr;
  }
  inline void* MaybeArenaPtr() const {
    return nullptr;
  }
  public:

  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
  private:
  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
    ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_etcd_5fmeta_2eproto);
    return ::descriptor_table_etcd_5fmeta_2eproto.file_level_metadata[kIndexInFileMessages];
  }

  public:

  // nested types ----------------------------------------------------

  // accessors -------------------------------------------------------

  enum : int {
    kSegmentIDsFieldNumber = 4,
    kPartitionTagsFieldNumber = 5,
    kPartitionIDsFieldNumber = 6,
    kSchemaFieldNumber = 2,
    kIDFieldNumber = 1,
    kCreateTimeFieldNumber = 3,
  };
  // repeated int64 segmentIDs = 4;
  int segmentids_size() const;
  void clear_segmentids();
  ::PROTOBUF_NAMESPACE_ID::int64 segmentids(int index) const;
  void set_segmentids(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
  void add_segmentids(::PROTOBUF_NAMESPACE_ID::int64 value);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
      segmentids() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
      mutable_segmentids();

  // repeated string partition_tags = 5;
  int partition_tags_size() const;
  void clear_partition_tags();
  const std::string& partition_tags(int index) const;
  std::string* mutable_partition_tags(int index);
  void set_partition_tags(int index, const std::string& value);
  void set_partition_tags(int index, std::string&& value);
  void set_partition_tags(int index, const char* value);
  void set_partition_tags(int index, const char* value, size_t size);
  std::string* add_partition_tags();
  void add_partition_tags(const std::string& value);
  void add_partition_tags(std::string&& value);
  void add_partition_tags(const char* value);
  void add_partition_tags(const char* value, size_t size);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& partition_tags() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_partition_tags();

  // repeated int64 partitionIDs = 6;
  int partitionids_size() const;
  void clear_partitionids();
  ::PROTOBUF_NAMESPACE_ID::int64 partitionids(int index) const;
  void set_partitionids(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
  void add_partitionids(::PROTOBUF_NAMESPACE_ID::int64 value);
  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
      partitionids() const;
  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
      mutable_partitionids();

  // .milvus.proto.schema.CollectionSchema schema = 2;
  bool has_schema() const;
  void clear_schema();
  const ::milvus::proto::schema::CollectionSchema& schema() const;
  ::milvus::proto::schema::CollectionSchema* release_schema();
  ::milvus::proto::schema::CollectionSchema* mutable_schema();
  void set_allocated_schema(::milvus::proto::schema::CollectionSchema* schema);

  // int64 ID = 1;
  void clear_id();
  ::PROTOBUF_NAMESPACE_ID::int64 id() const;
  void set_id(::PROTOBUF_NAMESPACE_ID::int64 value);

  // uint64 create_time = 3;
  void clear_create_time();
  ::PROTOBUF_NAMESPACE_ID::uint64 create_time() const;
  void set_create_time(::PROTOBUF_NAMESPACE_ID::uint64 value);

  // @@protoc_insertion_point(class_scope:milvus.proto.etcd.CollectionMeta)
 private:
  class _Internal;

  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > segmentids_;
  mutable std::atomic<int> _segmentids_cached_byte_size_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> partition_tags_;
  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > partitionids_;
  mutable std::atomic<int> _partitionids_cached_byte_size_;
  ::milvus::proto::schema::CollectionSchema* schema_;
  ::PROTOBUF_NAMESPACE_ID::int64 id_;
  ::PROTOBUF_NAMESPACE_ID::uint64 create_time_;
  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
  friend struct ::TableStruct_etcd_5fmeta_2eproto;
};
// ===================================================================


// ===================================================================

#ifdef __GNUC__
  #pragma GCC diagnostic push
  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
#endif  // __GNUC__
// TenantMeta

// int64 ID = 1;
inline void TenantMeta::clear_id() {
  id_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 TenantMeta::id() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.TenantMeta.ID)
  return id_;
}
inline void TenantMeta::set_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  id_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.TenantMeta.ID)
}

// int64 num_query_nodes = 2;
inline void TenantMeta::clear_num_query_nodes() {
  num_query_nodes_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 TenantMeta::num_query_nodes() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.TenantMeta.num_query_nodes)
  return num_query_nodes_;
}
inline void TenantMeta::set_num_query_nodes(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  num_query_nodes_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.TenantMeta.num_query_nodes)
}

// repeated string insert_channelIDs = 3;
inline int TenantMeta::insert_channelids_size() const {
  return insert_channelids_.size();
}
inline void TenantMeta::clear_insert_channelids() {
  insert_channelids_.Clear();
}
inline const std::string& TenantMeta::insert_channelids(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.TenantMeta.insert_channelIDs)
  return insert_channelids_.Get(index);
}
inline std::string* TenantMeta::mutable_insert_channelids(int index) {
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.TenantMeta.insert_channelIDs)
  return insert_channelids_.Mutable(index);
}
inline void TenantMeta::set_insert_channelids(int index, const std::string& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.TenantMeta.insert_channelIDs)
  insert_channelids_.Mutable(index)->assign(value);
}
inline void TenantMeta::set_insert_channelids(int index, std::string&& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.TenantMeta.insert_channelIDs)
  insert_channelids_.Mutable(index)->assign(std::move(value));
}
inline void TenantMeta::set_insert_channelids(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  insert_channelids_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:milvus.proto.etcd.TenantMeta.insert_channelIDs)
}
inline void TenantMeta::set_insert_channelids(int index, const char* value, size_t size) {
  insert_channelids_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.TenantMeta.insert_channelIDs)
}
inline std::string* TenantMeta::add_insert_channelids() {
  // @@protoc_insertion_point(field_add_mutable:milvus.proto.etcd.TenantMeta.insert_channelIDs)
  return insert_channelids_.Add();
}
inline void TenantMeta::add_insert_channelids(const std::string& value) {
  insert_channelids_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.TenantMeta.insert_channelIDs)
}
inline void TenantMeta::add_insert_channelids(std::string&& value) {
  insert_channelids_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.TenantMeta.insert_channelIDs)
}
inline void TenantMeta::add_insert_channelids(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  insert_channelids_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:milvus.proto.etcd.TenantMeta.insert_channelIDs)
}
inline void TenantMeta::add_insert_channelids(const char* value, size_t size) {
  insert_channelids_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:milvus.proto.etcd.TenantMeta.insert_channelIDs)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
TenantMeta::insert_channelids() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.TenantMeta.insert_channelIDs)
  return insert_channelids_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
TenantMeta::mutable_insert_channelids() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.TenantMeta.insert_channelIDs)
  return &insert_channelids_;
}

// string query_channelID = 4;
inline void TenantMeta::clear_query_channelid() {
  query_channelid_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
}
inline const std::string& TenantMeta::query_channelid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.TenantMeta.query_channelID)
  return query_channelid_.GetNoArena();
}
inline void TenantMeta::set_query_channelid(const std::string& value) {
  
  query_channelid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.TenantMeta.query_channelID)
}
inline void TenantMeta::set_query_channelid(std::string&& value) {
  
  query_channelid_.SetNoArena(
    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:milvus.proto.etcd.TenantMeta.query_channelID)
}
inline void TenantMeta::set_query_channelid(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  query_channelid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:milvus.proto.etcd.TenantMeta.query_channelID)
}
inline void TenantMeta::set_query_channelid(const char* value, size_t size) {
  
  query_channelid_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.TenantMeta.query_channelID)
}
inline std::string* TenantMeta::mutable_query_channelid() {
  
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.TenantMeta.query_channelID)
  return query_channelid_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
}
inline std::string* TenantMeta::release_query_channelid() {
  // @@protoc_insertion_point(field_release:milvus.proto.etcd.TenantMeta.query_channelID)
  
  return query_channelid_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
}
inline void TenantMeta::set_allocated_query_channelid(std::string* query_channelid) {
  if (query_channelid != nullptr) {
    
  } else {
    
  }
  query_channelid_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), query_channelid);
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.etcd.TenantMeta.query_channelID)
}

// -------------------------------------------------------------------

// ProxyMeta

// int64 ID = 1;
inline void ProxyMeta::clear_id() {
  id_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 ProxyMeta::id() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.ProxyMeta.ID)
  return id_;
}
inline void ProxyMeta::set_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  id_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.ProxyMeta.ID)
}

// .milvus.proto.common.Address address = 2;
inline bool ProxyMeta::has_address() const {
  return this != internal_default_instance() && address_ != nullptr;
}
inline const ::milvus::proto::common::Address& ProxyMeta::address() const {
  const ::milvus::proto::common::Address* p = address_;
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.ProxyMeta.address)
  return p != nullptr ? *p : *reinterpret_cast<const ::milvus::proto::common::Address*>(
      &::milvus::proto::common::_Address_default_instance_);
}
inline ::milvus::proto::common::Address* ProxyMeta::release_address() {
  // @@protoc_insertion_point(field_release:milvus.proto.etcd.ProxyMeta.address)
  
  ::milvus::proto::common::Address* temp = address_;
  address_ = nullptr;
  return temp;
}
inline ::milvus::proto::common::Address* ProxyMeta::mutable_address() {
  
  if (address_ == nullptr) {
    auto* p = CreateMaybeMessage<::milvus::proto::common::Address>(GetArenaNoVirtual());
    address_ = p;
  }
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.ProxyMeta.address)
  return address_;
}
inline void ProxyMeta::set_allocated_address(::milvus::proto::common::Address* address) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(address_);
  }
  if (address) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      address = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, address, submessage_arena);
    }
    
  } else {
    
  }
  address_ = address;
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.etcd.ProxyMeta.address)
}

// repeated string result_channelIDs = 3;
inline int ProxyMeta::result_channelids_size() const {
  return result_channelids_.size();
}
inline void ProxyMeta::clear_result_channelids() {
  result_channelids_.Clear();
}
inline const std::string& ProxyMeta::result_channelids(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.ProxyMeta.result_channelIDs)
  return result_channelids_.Get(index);
}
inline std::string* ProxyMeta::mutable_result_channelids(int index) {
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.ProxyMeta.result_channelIDs)
  return result_channelids_.Mutable(index);
}
inline void ProxyMeta::set_result_channelids(int index, const std::string& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.ProxyMeta.result_channelIDs)
  result_channelids_.Mutable(index)->assign(value);
}
inline void ProxyMeta::set_result_channelids(int index, std::string&& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.ProxyMeta.result_channelIDs)
  result_channelids_.Mutable(index)->assign(std::move(value));
}
inline void ProxyMeta::set_result_channelids(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  result_channelids_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:milvus.proto.etcd.ProxyMeta.result_channelIDs)
}
inline void ProxyMeta::set_result_channelids(int index, const char* value, size_t size) {
  result_channelids_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.ProxyMeta.result_channelIDs)
}
inline std::string* ProxyMeta::add_result_channelids() {
  // @@protoc_insertion_point(field_add_mutable:milvus.proto.etcd.ProxyMeta.result_channelIDs)
  return result_channelids_.Add();
}
inline void ProxyMeta::add_result_channelids(const std::string& value) {
  result_channelids_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.ProxyMeta.result_channelIDs)
}
inline void ProxyMeta::add_result_channelids(std::string&& value) {
  result_channelids_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.ProxyMeta.result_channelIDs)
}
inline void ProxyMeta::add_result_channelids(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  result_channelids_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:milvus.proto.etcd.ProxyMeta.result_channelIDs)
}
inline void ProxyMeta::add_result_channelids(const char* value, size_t size) {
  result_channelids_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:milvus.proto.etcd.ProxyMeta.result_channelIDs)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
ProxyMeta::result_channelids() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.ProxyMeta.result_channelIDs)
  return result_channelids_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
ProxyMeta::mutable_result_channelids() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.ProxyMeta.result_channelIDs)
  return &result_channelids_;
}

// -------------------------------------------------------------------

// IndexInfo

// string index_name = 1;
inline void IndexInfo::clear_index_name() {
  index_name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
}
inline const std::string& IndexInfo::index_name() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.IndexInfo.index_name)
  return index_name_.GetNoArena();
}
inline void IndexInfo::set_index_name(const std::string& value) {
  
  index_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.IndexInfo.index_name)
}
inline void IndexInfo::set_index_name(std::string&& value) {
  
  index_name_.SetNoArena(
    &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
  // @@protoc_insertion_point(field_set_rvalue:milvus.proto.etcd.IndexInfo.index_name)
}
inline void IndexInfo::set_index_name(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  
  index_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
  // @@protoc_insertion_point(field_set_char:milvus.proto.etcd.IndexInfo.index_name)
}
inline void IndexInfo::set_index_name(const char* value, size_t size) {
  
  index_name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
      ::std::string(reinterpret_cast<const char*>(value), size));
  // @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.IndexInfo.index_name)
}
inline std::string* IndexInfo::mutable_index_name() {
  
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.IndexInfo.index_name)
  return index_name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
}
inline std::string* IndexInfo::release_index_name() {
  // @@protoc_insertion_point(field_release:milvus.proto.etcd.IndexInfo.index_name)
  
  return index_name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
}
inline void IndexInfo::set_allocated_index_name(std::string* index_name) {
  if (index_name != nullptr) {
    
  } else {
    
  }
  index_name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), index_name);
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.etcd.IndexInfo.index_name)
}

// int64 indexID = 2;
inline void IndexInfo::clear_indexid() {
  indexid_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 IndexInfo::indexid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.IndexInfo.indexID)
  return indexid_;
}
inline void IndexInfo::set_indexid(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  indexid_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.IndexInfo.indexID)
}

// repeated .milvus.proto.common.KeyValuePair index_params = 3;
inline int IndexInfo::index_params_size() const {
  return index_params_.size();
}
inline ::milvus::proto::common::KeyValuePair* IndexInfo::mutable_index_params(int index) {
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.IndexInfo.index_params)
  return index_params_.Mutable(index);
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyValuePair >*
IndexInfo::mutable_index_params() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.IndexInfo.index_params)
  return &index_params_;
}
inline const ::milvus::proto::common::KeyValuePair& IndexInfo::index_params(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.IndexInfo.index_params)
  return index_params_.Get(index);
}
inline ::milvus::proto::common::KeyValuePair* IndexInfo::add_index_params() {
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.IndexInfo.index_params)
  return index_params_.Add();
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyValuePair >&
IndexInfo::index_params() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.IndexInfo.index_params)
  return index_params_;
}

// -------------------------------------------------------------------

// FieldIndexInfo

// int64 filedID = 1;
inline void FieldIndexInfo::clear_filedid() {
  filedid_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 FieldIndexInfo::filedid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.FieldIndexInfo.filedID)
  return filedid_;
}
inline void FieldIndexInfo::set_filedid(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  filedid_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.FieldIndexInfo.filedID)
}

// int64 indexID = 2;
inline void FieldIndexInfo::clear_indexid() {
  indexid_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 FieldIndexInfo::indexid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.FieldIndexInfo.indexID)
  return indexid_;
}
inline void FieldIndexInfo::set_indexid(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  indexid_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.FieldIndexInfo.indexID)
}

// -------------------------------------------------------------------

// CollectionInfo

// int64 ID = 1;
inline void CollectionInfo::clear_id() {
  id_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 CollectionInfo::id() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.ID)
  return id_;
}
inline void CollectionInfo::set_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  id_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.ID)
}

// .milvus.proto.schema.CollectionSchema schema = 2;
inline bool CollectionInfo::has_schema() const {
  return this != internal_default_instance() && schema_ != nullptr;
}
inline const ::milvus::proto::schema::CollectionSchema& CollectionInfo::schema() const {
  const ::milvus::proto::schema::CollectionSchema* p = schema_;
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.schema)
  return p != nullptr ? *p : *reinterpret_cast<const ::milvus::proto::schema::CollectionSchema*>(
      &::milvus::proto::schema::_CollectionSchema_default_instance_);
}
inline ::milvus::proto::schema::CollectionSchema* CollectionInfo::release_schema() {
  // @@protoc_insertion_point(field_release:milvus.proto.etcd.CollectionInfo.schema)
  
  ::milvus::proto::schema::CollectionSchema* temp = schema_;
  schema_ = nullptr;
  return temp;
}
inline ::milvus::proto::schema::CollectionSchema* CollectionInfo::mutable_schema() {
  
  if (schema_ == nullptr) {
    auto* p = CreateMaybeMessage<::milvus::proto::schema::CollectionSchema>(GetArenaNoVirtual());
    schema_ = p;
  }
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionInfo.schema)
  return schema_;
}
inline void CollectionInfo::set_allocated_schema(::milvus::proto::schema::CollectionSchema* schema) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(schema_);
  }
  if (schema) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      schema = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, schema, submessage_arena);
    }
    
  } else {
    
  }
  schema_ = schema;
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.etcd.CollectionInfo.schema)
}

// uint64 create_time = 3;
inline void CollectionInfo::clear_create_time() {
  create_time_ = PROTOBUF_ULONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::uint64 CollectionInfo::create_time() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.create_time)
  return create_time_;
}
inline void CollectionInfo::set_create_time(::PROTOBUF_NAMESPACE_ID::uint64 value) {
  
  create_time_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.create_time)
}

// repeated int64 partitionIDs = 4;
inline int CollectionInfo::partitionids_size() const {
  return partitionids_.size();
}
inline void CollectionInfo::clear_partitionids() {
  partitionids_.Clear();
}
inline ::PROTOBUF_NAMESPACE_ID::int64 CollectionInfo::partitionids(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.partitionIDs)
  return partitionids_.Get(index);
}
inline void CollectionInfo::set_partitionids(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
  partitionids_.Set(index, value);
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.partitionIDs)
}
inline void CollectionInfo::add_partitionids(::PROTOBUF_NAMESPACE_ID::int64 value) {
  partitionids_.Add(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.partitionIDs)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
CollectionInfo::partitionids() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionInfo.partitionIDs)
  return partitionids_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
CollectionInfo::mutable_partitionids() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionInfo.partitionIDs)
  return &partitionids_;
}

// repeated string partitionNames = 5;
inline int CollectionInfo::partitionnames_size() const {
  return partitionnames_.size();
}
inline void CollectionInfo::clear_partitionnames() {
  partitionnames_.Clear();
}
inline const std::string& CollectionInfo::partitionnames(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.partitionNames)
  return partitionnames_.Get(index);
}
inline std::string* CollectionInfo::mutable_partitionnames(int index) {
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionInfo.partitionNames)
  return partitionnames_.Mutable(index);
}
inline void CollectionInfo::set_partitionnames(int index, const std::string& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.partitionNames)
  partitionnames_.Mutable(index)->assign(value);
}
inline void CollectionInfo::set_partitionnames(int index, std::string&& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.partitionNames)
  partitionnames_.Mutable(index)->assign(std::move(value));
}
inline void CollectionInfo::set_partitionnames(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  partitionnames_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:milvus.proto.etcd.CollectionInfo.partitionNames)
}
inline void CollectionInfo::set_partitionnames(int index, const char* value, size_t size) {
  partitionnames_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.CollectionInfo.partitionNames)
}
inline std::string* CollectionInfo::add_partitionnames() {
  // @@protoc_insertion_point(field_add_mutable:milvus.proto.etcd.CollectionInfo.partitionNames)
  return partitionnames_.Add();
}
inline void CollectionInfo::add_partitionnames(const std::string& value) {
  partitionnames_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.partitionNames)
}
inline void CollectionInfo::add_partitionnames(std::string&& value) {
  partitionnames_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.partitionNames)
}
inline void CollectionInfo::add_partitionnames(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  partitionnames_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:milvus.proto.etcd.CollectionInfo.partitionNames)
}
inline void CollectionInfo::add_partitionnames(const char* value, size_t size) {
  partitionnames_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:milvus.proto.etcd.CollectionInfo.partitionNames)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
CollectionInfo::partitionnames() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionInfo.partitionNames)
  return partitionnames_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
CollectionInfo::mutable_partitionnames() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionInfo.partitionNames)
  return &partitionnames_;
}

// repeated .milvus.proto.etcd.FieldIndexInfo field_indexes = 6;
inline int CollectionInfo::field_indexes_size() const {
  return field_indexes_.size();
}
inline void CollectionInfo::clear_field_indexes() {
  field_indexes_.Clear();
}
inline ::milvus::proto::etcd::FieldIndexInfo* CollectionInfo::mutable_field_indexes(int index) {
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionInfo.field_indexes)
  return field_indexes_.Mutable(index);
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::etcd::FieldIndexInfo >*
CollectionInfo::mutable_field_indexes() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionInfo.field_indexes)
  return &field_indexes_;
}
inline const ::milvus::proto::etcd::FieldIndexInfo& CollectionInfo::field_indexes(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.field_indexes)
  return field_indexes_.Get(index);
}
inline ::milvus::proto::etcd::FieldIndexInfo* CollectionInfo::add_field_indexes() {
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.field_indexes)
  return field_indexes_.Add();
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::etcd::FieldIndexInfo >&
CollectionInfo::field_indexes() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionInfo.field_indexes)
  return field_indexes_;
}

// repeated string virtual_channel_names = 7;
inline int CollectionInfo::virtual_channel_names_size() const {
  return virtual_channel_names_.size();
}
inline void CollectionInfo::clear_virtual_channel_names() {
  virtual_channel_names_.Clear();
}
inline const std::string& CollectionInfo::virtual_channel_names(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
  return virtual_channel_names_.Get(index);
}
inline std::string* CollectionInfo::mutable_virtual_channel_names(int index) {
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
  return virtual_channel_names_.Mutable(index);
}
inline void CollectionInfo::set_virtual_channel_names(int index, const std::string& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
  virtual_channel_names_.Mutable(index)->assign(value);
}
inline void CollectionInfo::set_virtual_channel_names(int index, std::string&& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
  virtual_channel_names_.Mutable(index)->assign(std::move(value));
}
inline void CollectionInfo::set_virtual_channel_names(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  virtual_channel_names_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline void CollectionInfo::set_virtual_channel_names(int index, const char* value, size_t size) {
  virtual_channel_names_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline std::string* CollectionInfo::add_virtual_channel_names() {
  // @@protoc_insertion_point(field_add_mutable:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
  return virtual_channel_names_.Add();
}
inline void CollectionInfo::add_virtual_channel_names(const std::string& value) {
  virtual_channel_names_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline void CollectionInfo::add_virtual_channel_names(std::string&& value) {
  virtual_channel_names_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline void CollectionInfo::add_virtual_channel_names(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  virtual_channel_names_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline void CollectionInfo::add_virtual_channel_names(const char* value, size_t size) {
  virtual_channel_names_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
CollectionInfo::virtual_channel_names() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
  return virtual_channel_names_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
CollectionInfo::mutable_virtual_channel_names() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionInfo.virtual_channel_names)
  return &virtual_channel_names_;
}

// repeated string physical_channel_names = 8;
inline int CollectionInfo::physical_channel_names_size() const {
  return physical_channel_names_.size();
}
inline void CollectionInfo::clear_physical_channel_names() {
  physical_channel_names_.Clear();
}
inline const std::string& CollectionInfo::physical_channel_names(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.physical_channel_names)
  return physical_channel_names_.Get(index);
}
inline std::string* CollectionInfo::mutable_physical_channel_names(int index) {
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionInfo.physical_channel_names)
  return physical_channel_names_.Mutable(index);
}
inline void CollectionInfo::set_physical_channel_names(int index, const std::string& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.physical_channel_names)
  physical_channel_names_.Mutable(index)->assign(value);
}
inline void CollectionInfo::set_physical_channel_names(int index, std::string&& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.physical_channel_names)
  physical_channel_names_.Mutable(index)->assign(std::move(value));
}
inline void CollectionInfo::set_physical_channel_names(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  physical_channel_names_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline void CollectionInfo::set_physical_channel_names(int index, const char* value, size_t size) {
  physical_channel_names_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline std::string* CollectionInfo::add_physical_channel_names() {
  // @@protoc_insertion_point(field_add_mutable:milvus.proto.etcd.CollectionInfo.physical_channel_names)
  return physical_channel_names_.Add();
}
inline void CollectionInfo::add_physical_channel_names(const std::string& value) {
  physical_channel_names_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline void CollectionInfo::add_physical_channel_names(std::string&& value) {
  physical_channel_names_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline void CollectionInfo::add_physical_channel_names(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  physical_channel_names_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline void CollectionInfo::add_physical_channel_names(const char* value, size_t size) {
  physical_channel_names_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:milvus.proto.etcd.CollectionInfo.physical_channel_names)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
CollectionInfo::physical_channel_names() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionInfo.physical_channel_names)
  return physical_channel_names_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
CollectionInfo::mutable_physical_channel_names() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionInfo.physical_channel_names)
  return &physical_channel_names_;
}

// repeated uint64 partition_created_timestamps = 9;
inline int CollectionInfo::partition_created_timestamps_size() const {
  return partition_created_timestamps_.size();
}
inline void CollectionInfo::clear_partition_created_timestamps() {
  partition_created_timestamps_.Clear();
}
inline ::PROTOBUF_NAMESPACE_ID::uint64 CollectionInfo::partition_created_timestamps(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.partition_created_timestamps)
  return partition_created_timestamps_.Get(index);
}
inline void CollectionInfo::set_partition_created_timestamps(int index, ::PROTOBUF_NAMESPACE_ID::uint64 value) {
  partition_created_timestamps_.Set(index, value);
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.partition_created_timestamps)
}
inline void CollectionInfo::add_partition_created_timestamps(::PROTOBUF_NAMESPACE_ID::uint64 value) {
  partition_created_timestamps_.Add(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.partition_created_timestamps)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint64 >&
CollectionInfo::partition_created_timestamps() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionInfo.partition_created_timestamps)
  return partition_created_timestamps_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::uint64 >*
CollectionInfo::mutable_partition_created_timestamps() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionInfo.partition_created_timestamps)
  return &partition_created_timestamps_;
}

// int32 shards_num = 10;
inline void CollectionInfo::clear_shards_num() {
  shards_num_ = 0;
}
inline ::PROTOBUF_NAMESPACE_ID::int32 CollectionInfo::shards_num() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.shards_num)
  return shards_num_;
}
inline void CollectionInfo::set_shards_num(::PROTOBUF_NAMESPACE_ID::int32 value) {
  
  shards_num_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionInfo.shards_num)
}

// repeated .milvus.proto.common.KeyDataPair start_positions = 11;
inline int CollectionInfo::start_positions_size() const {
  return start_positions_.size();
}
inline ::milvus::proto::common::KeyDataPair* CollectionInfo::mutable_start_positions(int index) {
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionInfo.start_positions)
  return start_positions_.Mutable(index);
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyDataPair >*
CollectionInfo::mutable_start_positions() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionInfo.start_positions)
  return &start_positions_;
}
inline const ::milvus::proto::common::KeyDataPair& CollectionInfo::start_positions(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionInfo.start_positions)
  return start_positions_.Get(index);
}
inline ::milvus::proto::common::KeyDataPair* CollectionInfo::add_start_positions() {
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionInfo.start_positions)
  return start_positions_.Add();
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::milvus::proto::common::KeyDataPair >&
CollectionInfo::start_positions() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionInfo.start_positions)
  return start_positions_;
}

// -------------------------------------------------------------------

// SegmentIndexInfo

// int64 collectionID = 1;
inline void SegmentIndexInfo::clear_collectionid() {
  collectionid_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 SegmentIndexInfo::collectionid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.SegmentIndexInfo.collectionID)
  return collectionid_;
}
inline void SegmentIndexInfo::set_collectionid(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  collectionid_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.SegmentIndexInfo.collectionID)
}

// int64 partitionID = 2;
inline void SegmentIndexInfo::clear_partitionid() {
  partitionid_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 SegmentIndexInfo::partitionid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.SegmentIndexInfo.partitionID)
  return partitionid_;
}
inline void SegmentIndexInfo::set_partitionid(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  partitionid_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.SegmentIndexInfo.partitionID)
}

// int64 segmentID = 3;
inline void SegmentIndexInfo::clear_segmentid() {
  segmentid_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 SegmentIndexInfo::segmentid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.SegmentIndexInfo.segmentID)
  return segmentid_;
}
inline void SegmentIndexInfo::set_segmentid(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  segmentid_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.SegmentIndexInfo.segmentID)
}

// int64 fieldID = 4;
inline void SegmentIndexInfo::clear_fieldid() {
  fieldid_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 SegmentIndexInfo::fieldid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.SegmentIndexInfo.fieldID)
  return fieldid_;
}
inline void SegmentIndexInfo::set_fieldid(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  fieldid_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.SegmentIndexInfo.fieldID)
}

// int64 indexID = 5;
inline void SegmentIndexInfo::clear_indexid() {
  indexid_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 SegmentIndexInfo::indexid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.SegmentIndexInfo.indexID)
  return indexid_;
}
inline void SegmentIndexInfo::set_indexid(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  indexid_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.SegmentIndexInfo.indexID)
}

// int64 buildID = 6;
inline void SegmentIndexInfo::clear_buildid() {
  buildid_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 SegmentIndexInfo::buildid() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.SegmentIndexInfo.buildID)
  return buildid_;
}
inline void SegmentIndexInfo::set_buildid(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  buildid_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.SegmentIndexInfo.buildID)
}

// bool enable_index = 7;
inline void SegmentIndexInfo::clear_enable_index() {
  enable_index_ = false;
}
inline bool SegmentIndexInfo::enable_index() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.SegmentIndexInfo.enable_index)
  return enable_index_;
}
inline void SegmentIndexInfo::set_enable_index(bool value) {
  
  enable_index_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.SegmentIndexInfo.enable_index)
}

// -------------------------------------------------------------------

// CollectionMeta

// int64 ID = 1;
inline void CollectionMeta::clear_id() {
  id_ = PROTOBUF_LONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::int64 CollectionMeta::id() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionMeta.ID)
  return id_;
}
inline void CollectionMeta::set_id(::PROTOBUF_NAMESPACE_ID::int64 value) {
  
  id_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionMeta.ID)
}

// .milvus.proto.schema.CollectionSchema schema = 2;
inline bool CollectionMeta::has_schema() const {
  return this != internal_default_instance() && schema_ != nullptr;
}
inline const ::milvus::proto::schema::CollectionSchema& CollectionMeta::schema() const {
  const ::milvus::proto::schema::CollectionSchema* p = schema_;
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionMeta.schema)
  return p != nullptr ? *p : *reinterpret_cast<const ::milvus::proto::schema::CollectionSchema*>(
      &::milvus::proto::schema::_CollectionSchema_default_instance_);
}
inline ::milvus::proto::schema::CollectionSchema* CollectionMeta::release_schema() {
  // @@protoc_insertion_point(field_release:milvus.proto.etcd.CollectionMeta.schema)
  
  ::milvus::proto::schema::CollectionSchema* temp = schema_;
  schema_ = nullptr;
  return temp;
}
inline ::milvus::proto::schema::CollectionSchema* CollectionMeta::mutable_schema() {
  
  if (schema_ == nullptr) {
    auto* p = CreateMaybeMessage<::milvus::proto::schema::CollectionSchema>(GetArenaNoVirtual());
    schema_ = p;
  }
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionMeta.schema)
  return schema_;
}
inline void CollectionMeta::set_allocated_schema(::milvus::proto::schema::CollectionSchema* schema) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
  if (message_arena == nullptr) {
    delete reinterpret_cast< ::PROTOBUF_NAMESPACE_ID::MessageLite*>(schema_);
  }
  if (schema) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
    if (message_arena != submessage_arena) {
      schema = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, schema, submessage_arena);
    }
    
  } else {
    
  }
  schema_ = schema;
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.etcd.CollectionMeta.schema)
}

// uint64 create_time = 3;
inline void CollectionMeta::clear_create_time() {
  create_time_ = PROTOBUF_ULONGLONG(0);
}
inline ::PROTOBUF_NAMESPACE_ID::uint64 CollectionMeta::create_time() const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionMeta.create_time)
  return create_time_;
}
inline void CollectionMeta::set_create_time(::PROTOBUF_NAMESPACE_ID::uint64 value) {
  
  create_time_ = value;
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionMeta.create_time)
}

// repeated int64 segmentIDs = 4;
inline int CollectionMeta::segmentids_size() const {
  return segmentids_.size();
}
inline void CollectionMeta::clear_segmentids() {
  segmentids_.Clear();
}
inline ::PROTOBUF_NAMESPACE_ID::int64 CollectionMeta::segmentids(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionMeta.segmentIDs)
  return segmentids_.Get(index);
}
inline void CollectionMeta::set_segmentids(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
  segmentids_.Set(index, value);
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionMeta.segmentIDs)
}
inline void CollectionMeta::add_segmentids(::PROTOBUF_NAMESPACE_ID::int64 value) {
  segmentids_.Add(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionMeta.segmentIDs)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
CollectionMeta::segmentids() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionMeta.segmentIDs)
  return segmentids_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
CollectionMeta::mutable_segmentids() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionMeta.segmentIDs)
  return &segmentids_;
}

// repeated string partition_tags = 5;
inline int CollectionMeta::partition_tags_size() const {
  return partition_tags_.size();
}
inline void CollectionMeta::clear_partition_tags() {
  partition_tags_.Clear();
}
inline const std::string& CollectionMeta::partition_tags(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionMeta.partition_tags)
  return partition_tags_.Get(index);
}
inline std::string* CollectionMeta::mutable_partition_tags(int index) {
  // @@protoc_insertion_point(field_mutable:milvus.proto.etcd.CollectionMeta.partition_tags)
  return partition_tags_.Mutable(index);
}
inline void CollectionMeta::set_partition_tags(int index, const std::string& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionMeta.partition_tags)
  partition_tags_.Mutable(index)->assign(value);
}
inline void CollectionMeta::set_partition_tags(int index, std::string&& value) {
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionMeta.partition_tags)
  partition_tags_.Mutable(index)->assign(std::move(value));
}
inline void CollectionMeta::set_partition_tags(int index, const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  partition_tags_.Mutable(index)->assign(value);
  // @@protoc_insertion_point(field_set_char:milvus.proto.etcd.CollectionMeta.partition_tags)
}
inline void CollectionMeta::set_partition_tags(int index, const char* value, size_t size) {
  partition_tags_.Mutable(index)->assign(
    reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_set_pointer:milvus.proto.etcd.CollectionMeta.partition_tags)
}
inline std::string* CollectionMeta::add_partition_tags() {
  // @@protoc_insertion_point(field_add_mutable:milvus.proto.etcd.CollectionMeta.partition_tags)
  return partition_tags_.Add();
}
inline void CollectionMeta::add_partition_tags(const std::string& value) {
  partition_tags_.Add()->assign(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionMeta.partition_tags)
}
inline void CollectionMeta::add_partition_tags(std::string&& value) {
  partition_tags_.Add(std::move(value));
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionMeta.partition_tags)
}
inline void CollectionMeta::add_partition_tags(const char* value) {
  GOOGLE_DCHECK(value != nullptr);
  partition_tags_.Add()->assign(value);
  // @@protoc_insertion_point(field_add_char:milvus.proto.etcd.CollectionMeta.partition_tags)
}
inline void CollectionMeta::add_partition_tags(const char* value, size_t size) {
  partition_tags_.Add()->assign(reinterpret_cast<const char*>(value), size);
  // @@protoc_insertion_point(field_add_pointer:milvus.proto.etcd.CollectionMeta.partition_tags)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
CollectionMeta::partition_tags() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionMeta.partition_tags)
  return partition_tags_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
CollectionMeta::mutable_partition_tags() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionMeta.partition_tags)
  return &partition_tags_;
}

// repeated int64 partitionIDs = 6;
inline int CollectionMeta::partitionids_size() const {
  return partitionids_.size();
}
inline void CollectionMeta::clear_partitionids() {
  partitionids_.Clear();
}
inline ::PROTOBUF_NAMESPACE_ID::int64 CollectionMeta::partitionids(int index) const {
  // @@protoc_insertion_point(field_get:milvus.proto.etcd.CollectionMeta.partitionIDs)
  return partitionids_.Get(index);
}
inline void CollectionMeta::set_partitionids(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
  partitionids_.Set(index, value);
  // @@protoc_insertion_point(field_set:milvus.proto.etcd.CollectionMeta.partitionIDs)
}
inline void CollectionMeta::add_partitionids(::PROTOBUF_NAMESPACE_ID::int64 value) {
  partitionids_.Add(value);
  // @@protoc_insertion_point(field_add:milvus.proto.etcd.CollectionMeta.partitionIDs)
}
inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
CollectionMeta::partitionids() const {
  // @@protoc_insertion_point(field_list:milvus.proto.etcd.CollectionMeta.partitionIDs)
  return partitionids_;
}
inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
CollectionMeta::mutable_partitionids() {
  // @@protoc_insertion_point(field_mutable_list:milvus.proto.etcd.CollectionMeta.partitionIDs)
  return &partitionids_;
}

#ifdef __GNUC__
  #pragma GCC diagnostic pop
#endif  // __GNUC__
// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------

// -------------------------------------------------------------------


// @@protoc_insertion_point(namespace_scope)

}  // namespace etcd
}  // namespace proto
}  // namespace milvus

// @@protoc_insertion_point(global_scope)

#include <google/protobuf/port_undef.inc>
#endif  // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_etcd_5fmeta_2eproto
