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

#include "schema.pb.h"

#include <algorithm>

#include <google/protobuf/io/coded_stream.h>
#include <google/protobuf/extension_set.h>
#include <google/protobuf/wire_format_lite.h>
#include <google/protobuf/descriptor.h>
#include <google/protobuf/generated_message_reflection.h>
#include <google/protobuf/reflection_ops.h>
#include <google/protobuf/wire_format.h>
// @@protoc_insertion_point(includes)
#include <google/protobuf/port_def.inc>

PROTOBUF_PRAGMA_INIT_SEG

namespace _pb = ::PROTOBUF_NAMESPACE_ID;
namespace _pbi = _pb::internal;

namespace milvus {
namespace proto {
namespace schema {
PROTOBUF_CONSTEXPR FieldSchema::FieldSchema(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.type_params_)*/{}
  , /*decltype(_impl_.index_params_)*/{}
  , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.description_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.fieldid_)*/int64_t{0}
  , /*decltype(_impl_.data_type_)*/0
  , /*decltype(_impl_.is_primary_key_)*/false
  , /*decltype(_impl_.autoid_)*/false
  , /*decltype(_impl_.state_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct FieldSchemaDefaultTypeInternal {
  PROTOBUF_CONSTEXPR FieldSchemaDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~FieldSchemaDefaultTypeInternal() {}
  union {
    FieldSchema _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FieldSchemaDefaultTypeInternal _FieldSchema_default_instance_;
PROTOBUF_CONSTEXPR CollectionSchema::CollectionSchema(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.fields_)*/{}
  , /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.description_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.autoid_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CollectionSchemaDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CollectionSchemaDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CollectionSchemaDefaultTypeInternal() {}
  union {
    CollectionSchema _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CollectionSchemaDefaultTypeInternal _CollectionSchema_default_instance_;
PROTOBUF_CONSTEXPR BoolArray::BoolArray(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.data_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct BoolArrayDefaultTypeInternal {
  PROTOBUF_CONSTEXPR BoolArrayDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~BoolArrayDefaultTypeInternal() {}
  union {
    BoolArray _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 BoolArrayDefaultTypeInternal _BoolArray_default_instance_;
PROTOBUF_CONSTEXPR IntArray::IntArray(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.data_)*/{}
  , /*decltype(_impl_._data_cached_byte_size_)*/{0}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct IntArrayDefaultTypeInternal {
  PROTOBUF_CONSTEXPR IntArrayDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~IntArrayDefaultTypeInternal() {}
  union {
    IntArray _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 IntArrayDefaultTypeInternal _IntArray_default_instance_;
PROTOBUF_CONSTEXPR LongArray::LongArray(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.data_)*/{}
  , /*decltype(_impl_._data_cached_byte_size_)*/{0}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct LongArrayDefaultTypeInternal {
  PROTOBUF_CONSTEXPR LongArrayDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~LongArrayDefaultTypeInternal() {}
  union {
    LongArray _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 LongArrayDefaultTypeInternal _LongArray_default_instance_;
PROTOBUF_CONSTEXPR FloatArray::FloatArray(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.data_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct FloatArrayDefaultTypeInternal {
  PROTOBUF_CONSTEXPR FloatArrayDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~FloatArrayDefaultTypeInternal() {}
  union {
    FloatArray _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FloatArrayDefaultTypeInternal _FloatArray_default_instance_;
PROTOBUF_CONSTEXPR DoubleArray::DoubleArray(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.data_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DoubleArrayDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DoubleArrayDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DoubleArrayDefaultTypeInternal() {}
  union {
    DoubleArray _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DoubleArrayDefaultTypeInternal _DoubleArray_default_instance_;
PROTOBUF_CONSTEXPR BytesArray::BytesArray(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.data_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct BytesArrayDefaultTypeInternal {
  PROTOBUF_CONSTEXPR BytesArrayDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~BytesArrayDefaultTypeInternal() {}
  union {
    BytesArray _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 BytesArrayDefaultTypeInternal _BytesArray_default_instance_;
PROTOBUF_CONSTEXPR StringArray::StringArray(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.data_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct StringArrayDefaultTypeInternal {
  PROTOBUF_CONSTEXPR StringArrayDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~StringArrayDefaultTypeInternal() {}
  union {
    StringArray _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 StringArrayDefaultTypeInternal _StringArray_default_instance_;
PROTOBUF_CONSTEXPR ScalarField::ScalarField(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.data_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct ScalarFieldDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ScalarFieldDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ScalarFieldDefaultTypeInternal() {}
  union {
    ScalarField _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ScalarFieldDefaultTypeInternal _ScalarField_default_instance_;
PROTOBUF_CONSTEXPR VectorField::VectorField(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.dim_)*/int64_t{0}
  , /*decltype(_impl_.data_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct VectorFieldDefaultTypeInternal {
  PROTOBUF_CONSTEXPR VectorFieldDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~VectorFieldDefaultTypeInternal() {}
  union {
    VectorField _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 VectorFieldDefaultTypeInternal _VectorField_default_instance_;
PROTOBUF_CONSTEXPR FieldData::FieldData(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.field_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.field_id_)*/int64_t{0}
  , /*decltype(_impl_.type_)*/0
  , /*decltype(_impl_.field_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct FieldDataDefaultTypeInternal {
  PROTOBUF_CONSTEXPR FieldDataDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~FieldDataDefaultTypeInternal() {}
  union {
    FieldData _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FieldDataDefaultTypeInternal _FieldData_default_instance_;
PROTOBUF_CONSTEXPR IDs::IDs(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.id_field_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct IDsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR IDsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~IDsDefaultTypeInternal() {}
  union {
    IDs _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 IDsDefaultTypeInternal _IDs_default_instance_;
PROTOBUF_CONSTEXPR SearchResultData::SearchResultData(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.fields_data_)*/{}
  , /*decltype(_impl_.scores_)*/{}
  , /*decltype(_impl_.topks_)*/{}
  , /*decltype(_impl_._topks_cached_byte_size_)*/{0}
  , /*decltype(_impl_.ids_)*/nullptr
  , /*decltype(_impl_.num_queries_)*/int64_t{0}
  , /*decltype(_impl_.top_k_)*/int64_t{0}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct SearchResultDataDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SearchResultDataDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SearchResultDataDefaultTypeInternal() {}
  union {
    SearchResultData _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SearchResultDataDefaultTypeInternal _SearchResultData_default_instance_;
}  // namespace schema
}  // namespace proto
}  // namespace milvus
static ::_pb::Metadata file_level_metadata_schema_2eproto[14];
static const ::_pb::EnumDescriptor* file_level_enum_descriptors_schema_2eproto[2];
static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_schema_2eproto = nullptr;

const uint32_t TableStruct_schema_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _impl_.fieldid_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _impl_.name_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _impl_.is_primary_key_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _impl_.description_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _impl_.data_type_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _impl_.type_params_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _impl_.index_params_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _impl_.autoid_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldSchema, _impl_.state_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::CollectionSchema, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::CollectionSchema, _impl_.name_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::CollectionSchema, _impl_.description_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::CollectionSchema, _impl_.autoid_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::CollectionSchema, _impl_.fields_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::BoolArray, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::BoolArray, _impl_.data_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::IntArray, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::IntArray, _impl_.data_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::LongArray, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::LongArray, _impl_.data_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FloatArray, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FloatArray, _impl_.data_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::DoubleArray, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::DoubleArray, _impl_.data_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::BytesArray, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::BytesArray, _impl_.data_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::StringArray, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::StringArray, _impl_.data_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::ScalarField, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::ScalarField, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::ScalarField, _impl_.data_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::VectorField, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::VectorField, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::VectorField, _impl_.dim_),
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::VectorField, _impl_.data_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldData, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldData, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldData, _impl_.type_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldData, _impl_.field_name_),
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldData, _impl_.field_id_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::FieldData, _impl_.field_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::IDs, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::IDs, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::IDs, _impl_.id_field_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::SearchResultData, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::SearchResultData, _impl_.num_queries_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::SearchResultData, _impl_.top_k_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::SearchResultData, _impl_.fields_data_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::SearchResultData, _impl_.scores_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::SearchResultData, _impl_.ids_),
  PROTOBUF_FIELD_OFFSET(::milvus::proto::schema::SearchResultData, _impl_.topks_),
};
static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, -1, -1, sizeof(::milvus::proto::schema::FieldSchema)},
  { 15, -1, -1, sizeof(::milvus::proto::schema::CollectionSchema)},
  { 25, -1, -1, sizeof(::milvus::proto::schema::BoolArray)},
  { 32, -1, -1, sizeof(::milvus::proto::schema::IntArray)},
  { 39, -1, -1, sizeof(::milvus::proto::schema::LongArray)},
  { 46, -1, -1, sizeof(::milvus::proto::schema::FloatArray)},
  { 53, -1, -1, sizeof(::milvus::proto::schema::DoubleArray)},
  { 60, -1, -1, sizeof(::milvus::proto::schema::BytesArray)},
  { 67, -1, -1, sizeof(::milvus::proto::schema::StringArray)},
  { 74, -1, -1, sizeof(::milvus::proto::schema::ScalarField)},
  { 88, -1, -1, sizeof(::milvus::proto::schema::VectorField)},
  { 98, -1, -1, sizeof(::milvus::proto::schema::FieldData)},
  { 110, -1, -1, sizeof(::milvus::proto::schema::IDs)},
  { 119, -1, -1, sizeof(::milvus::proto::schema::SearchResultData)},
};

static const ::_pb::Message* const file_default_instances[] = {
  &::milvus::proto::schema::_FieldSchema_default_instance_._instance,
  &::milvus::proto::schema::_CollectionSchema_default_instance_._instance,
  &::milvus::proto::schema::_BoolArray_default_instance_._instance,
  &::milvus::proto::schema::_IntArray_default_instance_._instance,
  &::milvus::proto::schema::_LongArray_default_instance_._instance,
  &::milvus::proto::schema::_FloatArray_default_instance_._instance,
  &::milvus::proto::schema::_DoubleArray_default_instance_._instance,
  &::milvus::proto::schema::_BytesArray_default_instance_._instance,
  &::milvus::proto::schema::_StringArray_default_instance_._instance,
  &::milvus::proto::schema::_ScalarField_default_instance_._instance,
  &::milvus::proto::schema::_VectorField_default_instance_._instance,
  &::milvus::proto::schema::_FieldData_default_instance_._instance,
  &::milvus::proto::schema::_IDs_default_instance_._instance,
  &::milvus::proto::schema::_SearchResultData_default_instance_._instance,
};

const char descriptor_table_protodef_schema_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n\014schema.proto\022\023milvus.proto.schema\032\014com"
  "mon.proto\"\274\002\n\013FieldSchema\022\017\n\007fieldID\030\001 \001"
  "(\003\022\014\n\004name\030\002 \001(\t\022\026\n\016is_primary_key\030\003 \001(\010"
  "\022\023\n\013description\030\004 \001(\t\0220\n\tdata_type\030\005 \001(\016"
  "2\035.milvus.proto.schema.DataType\0226\n\013type_"
  "params\030\006 \003(\0132!.milvus.proto.common.KeyVa"
  "luePair\0227\n\014index_params\030\007 \003(\0132!.milvus.p"
  "roto.common.KeyValuePair\022\016\n\006autoID\030\010 \001(\010"
  "\022.\n\005state\030\t \001(\0162\037.milvus.proto.schema.Fi"
  "eldState\"w\n\020CollectionSchema\022\014\n\004name\030\001 \001"
  "(\t\022\023\n\013description\030\002 \001(\t\022\016\n\006autoID\030\003 \001(\010\022"
  "0\n\006fields\030\004 \003(\0132 .milvus.proto.schema.Fi"
  "eldSchema\"\031\n\tBoolArray\022\014\n\004data\030\001 \003(\010\"\030\n\010"
  "IntArray\022\014\n\004data\030\001 \003(\005\"\031\n\tLongArray\022\014\n\004d"
  "ata\030\001 \003(\003\"\032\n\nFloatArray\022\014\n\004data\030\001 \003(\002\"\033\n"
  "\013DoubleArray\022\014\n\004data\030\001 \003(\001\"\032\n\nBytesArray"
  "\022\014\n\004data\030\001 \003(\014\"\033\n\013StringArray\022\014\n\004data\030\001 "
  "\003(\t\"\222\003\n\013ScalarField\0223\n\tbool_data\030\001 \001(\0132\036"
  ".milvus.proto.schema.BoolArrayH\000\0221\n\010int_"
  "data\030\002 \001(\0132\035.milvus.proto.schema.IntArra"
  "yH\000\0223\n\tlong_data\030\003 \001(\0132\036.milvus.proto.sc"
  "hema.LongArrayH\000\0225\n\nfloat_data\030\004 \001(\0132\037.m"
  "ilvus.proto.schema.FloatArrayH\000\0227\n\013doubl"
  "e_data\030\005 \001(\0132 .milvus.proto.schema.Doubl"
  "eArrayH\000\0227\n\013string_data\030\006 \001(\0132 .milvus.p"
  "roto.schema.StringArrayH\000\0225\n\nbytes_data\030"
  "\007 \001(\0132\037.milvus.proto.schema.BytesArrayH\000"
  "B\006\n\004data\"t\n\013VectorField\022\013\n\003dim\030\001 \001(\003\0227\n\014"
  "float_vector\030\002 \001(\0132\037.milvus.proto.schema"
  ".FloatArrayH\000\022\027\n\rbinary_vector\030\003 \001(\014H\000B\006"
  "\n\004data\"\321\001\n\tFieldData\022+\n\004type\030\001 \001(\0162\035.mil"
  "vus.proto.schema.DataType\022\022\n\nfield_name\030"
  "\002 \001(\t\0223\n\007scalars\030\003 \001(\0132 .milvus.proto.sc"
  "hema.ScalarFieldH\000\0223\n\007vectors\030\004 \001(\0132 .mi"
  "lvus.proto.schema.VectorFieldH\000\022\020\n\010field"
  "_id\030\005 \001(\003B\007\n\005field\"w\n\003IDs\0220\n\006int_id\030\001 \001("
  "\0132\036.milvus.proto.schema.LongArrayH\000\0222\n\006s"
  "tr_id\030\002 \001(\0132 .milvus.proto.schema.String"
  "ArrayH\000B\n\n\010id_field\"\261\001\n\020SearchResultData"
  "\022\023\n\013num_queries\030\001 \001(\003\022\r\n\005top_k\030\002 \001(\003\0223\n\013"
  "fields_data\030\003 \003(\0132\036.milvus.proto.schema."
  "FieldData\022\016\n\006scores\030\004 \003(\002\022%\n\003ids\030\005 \001(\0132\030"
  ".milvus.proto.schema.IDs\022\r\n\005topks\030\006 \003(\003*"
  "\234\001\n\010DataType\022\010\n\004None\020\000\022\010\n\004Bool\020\001\022\010\n\004Int8"
  "\020\002\022\t\n\005Int16\020\003\022\t\n\005Int32\020\004\022\t\n\005Int64\020\005\022\t\n\005F"
  "loat\020\n\022\n\n\006Double\020\013\022\n\n\006String\020\024\022\013\n\007VarCha"
  "r\020\025\022\020\n\014BinaryVector\020d\022\017\n\013FloatVector\020e*V"
  "\n\nFieldState\022\020\n\014FieldCreated\020\000\022\021\n\rFieldC"
  "reating\020\001\022\021\n\rFieldDropping\020\002\022\020\n\014FieldDro"
  "pped\020\003Bf\n\016io.milvus.grpcB\013SchemaProtoP\001Z"
  "1github.com/milvus-io/milvus-proto/go-ap"
  "i/schemapb\240\001\001\252\002\016IO.Milvus.Grpcb\006proto3"
  ;
static const ::_pbi::DescriptorTable* const descriptor_table_schema_2eproto_deps[1] = {
  &::descriptor_table_common_2eproto,
};
static ::_pbi::once_flag descriptor_table_schema_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_schema_2eproto = {
    false, false, 2078, descriptor_table_protodef_schema_2eproto,
    "schema.proto",
    &descriptor_table_schema_2eproto_once, descriptor_table_schema_2eproto_deps, 1, 14,
    schemas, file_default_instances, TableStruct_schema_2eproto::offsets,
    file_level_metadata_schema_2eproto, file_level_enum_descriptors_schema_2eproto,
    file_level_service_descriptors_schema_2eproto,
};
PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_schema_2eproto_getter() {
  return &descriptor_table_schema_2eproto;
}

// Force running AddDescriptors() at dynamic initialization time.
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_schema_2eproto(&descriptor_table_schema_2eproto);
namespace milvus {
namespace proto {
namespace schema {
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DataType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_schema_2eproto);
  return file_level_enum_descriptors_schema_2eproto[0];
}
bool DataType_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
    case 10:
    case 11:
    case 20:
    case 21:
    case 100:
    case 101:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FieldState_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_schema_2eproto);
  return file_level_enum_descriptors_schema_2eproto[1];
}
bool FieldState_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
    case 3:
      return true;
    default:
      return false;
  }
}


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

class FieldSchema::_Internal {
 public:
};

void FieldSchema::clear_type_params() {
  _impl_.type_params_.Clear();
}
void FieldSchema::clear_index_params() {
  _impl_.index_params_.Clear();
}
FieldSchema::FieldSchema(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.FieldSchema)
}
FieldSchema::FieldSchema(const FieldSchema& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  FieldSchema* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.type_params_){from._impl_.type_params_}
    , decltype(_impl_.index_params_){from._impl_.index_params_}
    , decltype(_impl_.name_){}
    , decltype(_impl_.description_){}
    , decltype(_impl_.fieldid_){}
    , decltype(_impl_.data_type_){}
    , decltype(_impl_.is_primary_key_){}
    , decltype(_impl_.autoid_){}
    , decltype(_impl_.state_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_name().empty()) {
    _this->_impl_.name_.Set(from._internal_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_description().empty()) {
    _this->_impl_.description_.Set(from._internal_description(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.fieldid_, &from._impl_.fieldid_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.state_) -
    reinterpret_cast<char*>(&_impl_.fieldid_)) + sizeof(_impl_.state_));
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.FieldSchema)
}

inline void FieldSchema::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.type_params_){arena}
    , decltype(_impl_.index_params_){arena}
    , decltype(_impl_.name_){}
    , decltype(_impl_.description_){}
    , decltype(_impl_.fieldid_){int64_t{0}}
    , decltype(_impl_.data_type_){0}
    , decltype(_impl_.is_primary_key_){false}
    , decltype(_impl_.autoid_){false}
    , decltype(_impl_.state_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

FieldSchema::~FieldSchema() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.FieldSchema)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void FieldSchema::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.type_params_.~RepeatedPtrField();
  _impl_.index_params_.~RepeatedPtrField();
  _impl_.name_.Destroy();
  _impl_.description_.Destroy();
}

void FieldSchema::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void FieldSchema::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.FieldSchema)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.type_params_.Clear();
  _impl_.index_params_.Clear();
  _impl_.name_.ClearToEmpty();
  _impl_.description_.ClearToEmpty();
  ::memset(&_impl_.fieldid_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.state_) -
      reinterpret_cast<char*>(&_impl_.fieldid_)) + sizeof(_impl_.state_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* FieldSchema::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // int64 fieldID = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.fieldid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "milvus.proto.schema.FieldSchema.name"));
        } else
          goto handle_unusual;
        continue;
      // bool is_primary_key = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _impl_.is_primary_key_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string description = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_description();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "milvus.proto.schema.FieldSchema.description"));
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.DataType data_type = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_data_type(static_cast<::milvus::proto::schema::DataType>(val));
        } else
          goto handle_unusual;
        continue;
      // repeated .milvus.proto.common.KeyValuePair type_params = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_type_params(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<50>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated .milvus.proto.common.KeyValuePair index_params = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_index_params(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
        } else
          goto handle_unusual;
        continue;
      // bool autoID = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _impl_.autoid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.FieldState state = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 72)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_state(static_cast<::milvus::proto::schema::FieldState>(val));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* FieldSchema::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.FieldSchema)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // int64 fieldID = 1;
  if (this->_internal_fieldid() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(1, this->_internal_fieldid(), target);
  }

  // string name = 2;
  if (!this->_internal_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "milvus.proto.schema.FieldSchema.name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_name(), target);
  }

  // bool is_primary_key = 3;
  if (this->_internal_is_primary_key() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_is_primary_key(), target);
  }

  // string description = 4;
  if (!this->_internal_description().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_description().data(), static_cast<int>(this->_internal_description().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "milvus.proto.schema.FieldSchema.description");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_description(), target);
  }

  // .milvus.proto.schema.DataType data_type = 5;
  if (this->_internal_data_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      5, this->_internal_data_type(), target);
  }

  // repeated .milvus.proto.common.KeyValuePair type_params = 6;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_type_params_size()); i < n; i++) {
    const auto& repfield = this->_internal_type_params(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(6, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated .milvus.proto.common.KeyValuePair index_params = 7;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_index_params_size()); i < n; i++) {
    const auto& repfield = this->_internal_index_params(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(7, repfield, repfield.GetCachedSize(), target, stream);
  }

  // bool autoID = 8;
  if (this->_internal_autoid() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(8, this->_internal_autoid(), target);
  }

  // .milvus.proto.schema.FieldState state = 9;
  if (this->_internal_state() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      9, this->_internal_state(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.FieldSchema)
  return target;
}

size_t FieldSchema::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.FieldSchema)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .milvus.proto.common.KeyValuePair type_params = 6;
  total_size += 1UL * this->_internal_type_params_size();
  for (const auto& msg : this->_impl_.type_params_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated .milvus.proto.common.KeyValuePair index_params = 7;
  total_size += 1UL * this->_internal_index_params_size();
  for (const auto& msg : this->_impl_.index_params_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // string name = 2;
  if (!this->_internal_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_name());
  }

  // string description = 4;
  if (!this->_internal_description().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_description());
  }

  // int64 fieldID = 1;
  if (this->_internal_fieldid() != 0) {
    total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_fieldid());
  }

  // .milvus.proto.schema.DataType data_type = 5;
  if (this->_internal_data_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_data_type());
  }

  // bool is_primary_key = 3;
  if (this->_internal_is_primary_key() != 0) {
    total_size += 1 + 1;
  }

  // bool autoID = 8;
  if (this->_internal_autoid() != 0) {
    total_size += 1 + 1;
  }

  // .milvus.proto.schema.FieldState state = 9;
  if (this->_internal_state() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_state());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData FieldSchema::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    FieldSchema::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*FieldSchema::GetClassData() const { return &_class_data_; }


void FieldSchema::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<FieldSchema*>(&to_msg);
  auto& from = static_cast<const FieldSchema&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.FieldSchema)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.type_params_.MergeFrom(from._impl_.type_params_);
  _this->_impl_.index_params_.MergeFrom(from._impl_.index_params_);
  if (!from._internal_name().empty()) {
    _this->_internal_set_name(from._internal_name());
  }
  if (!from._internal_description().empty()) {
    _this->_internal_set_description(from._internal_description());
  }
  if (from._internal_fieldid() != 0) {
    _this->_internal_set_fieldid(from._internal_fieldid());
  }
  if (from._internal_data_type() != 0) {
    _this->_internal_set_data_type(from._internal_data_type());
  }
  if (from._internal_is_primary_key() != 0) {
    _this->_internal_set_is_primary_key(from._internal_is_primary_key());
  }
  if (from._internal_autoid() != 0) {
    _this->_internal_set_autoid(from._internal_autoid());
  }
  if (from._internal_state() != 0) {
    _this->_internal_set_state(from._internal_state());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void FieldSchema::CopyFrom(const FieldSchema& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.FieldSchema)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool FieldSchema::IsInitialized() const {
  return true;
}

void FieldSchema::InternalSwap(FieldSchema* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.type_params_.InternalSwap(&other->_impl_.type_params_);
  _impl_.index_params_.InternalSwap(&other->_impl_.index_params_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.description_, lhs_arena,
      &other->_impl_.description_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(FieldSchema, _impl_.state_)
      + sizeof(FieldSchema::_impl_.state_)
      - PROTOBUF_FIELD_OFFSET(FieldSchema, _impl_.fieldid_)>(
          reinterpret_cast<char*>(&_impl_.fieldid_),
          reinterpret_cast<char*>(&other->_impl_.fieldid_));
}

::PROTOBUF_NAMESPACE_ID::Metadata FieldSchema::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[0]);
}

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

class CollectionSchema::_Internal {
 public:
};

CollectionSchema::CollectionSchema(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.CollectionSchema)
}
CollectionSchema::CollectionSchema(const CollectionSchema& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CollectionSchema* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.fields_){from._impl_.fields_}
    , decltype(_impl_.name_){}
    , decltype(_impl_.description_){}
    , decltype(_impl_.autoid_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_name().empty()) {
    _this->_impl_.name_.Set(from._internal_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_description().empty()) {
    _this->_impl_.description_.Set(from._internal_description(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.autoid_ = from._impl_.autoid_;
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.CollectionSchema)
}

inline void CollectionSchema::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.fields_){arena}
    , decltype(_impl_.name_){}
    , decltype(_impl_.description_){}
    , decltype(_impl_.autoid_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.description_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.description_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CollectionSchema::~CollectionSchema() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.CollectionSchema)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CollectionSchema::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.fields_.~RepeatedPtrField();
  _impl_.name_.Destroy();
  _impl_.description_.Destroy();
}

void CollectionSchema::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CollectionSchema::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.CollectionSchema)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.fields_.Clear();
  _impl_.name_.ClearToEmpty();
  _impl_.description_.ClearToEmpty();
  _impl_.autoid_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CollectionSchema::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // string name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "milvus.proto.schema.CollectionSchema.name"));
        } else
          goto handle_unusual;
        continue;
      // string description = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_description();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "milvus.proto.schema.CollectionSchema.description"));
        } else
          goto handle_unusual;
        continue;
      // bool autoID = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _impl_.autoid_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .milvus.proto.schema.FieldSchema fields = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_fields(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* CollectionSchema::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.CollectionSchema)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string name = 1;
  if (!this->_internal_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "milvus.proto.schema.CollectionSchema.name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_name(), target);
  }

  // string description = 2;
  if (!this->_internal_description().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_description().data(), static_cast<int>(this->_internal_description().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "milvus.proto.schema.CollectionSchema.description");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_description(), target);
  }

  // bool autoID = 3;
  if (this->_internal_autoid() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_autoid(), target);
  }

  // repeated .milvus.proto.schema.FieldSchema fields = 4;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_fields_size()); i < n; i++) {
    const auto& repfield = this->_internal_fields(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(4, repfield, repfield.GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.CollectionSchema)
  return target;
}

size_t CollectionSchema::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.CollectionSchema)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .milvus.proto.schema.FieldSchema fields = 4;
  total_size += 1UL * this->_internal_fields_size();
  for (const auto& msg : this->_impl_.fields_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // string name = 1;
  if (!this->_internal_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_name());
  }

  // string description = 2;
  if (!this->_internal_description().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_description());
  }

  // bool autoID = 3;
  if (this->_internal_autoid() != 0) {
    total_size += 1 + 1;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData CollectionSchema::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    CollectionSchema::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*CollectionSchema::GetClassData() const { return &_class_data_; }


void CollectionSchema::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<CollectionSchema*>(&to_msg);
  auto& from = static_cast<const CollectionSchema&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.CollectionSchema)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.fields_.MergeFrom(from._impl_.fields_);
  if (!from._internal_name().empty()) {
    _this->_internal_set_name(from._internal_name());
  }
  if (!from._internal_description().empty()) {
    _this->_internal_set_description(from._internal_description());
  }
  if (from._internal_autoid() != 0) {
    _this->_internal_set_autoid(from._internal_autoid());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CollectionSchema::CopyFrom(const CollectionSchema& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.CollectionSchema)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool CollectionSchema::IsInitialized() const {
  return true;
}

void CollectionSchema::InternalSwap(CollectionSchema* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.fields_.InternalSwap(&other->_impl_.fields_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.description_, lhs_arena,
      &other->_impl_.description_, rhs_arena
  );
  swap(_impl_.autoid_, other->_impl_.autoid_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CollectionSchema::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[1]);
}

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

class BoolArray::_Internal {
 public:
};

BoolArray::BoolArray(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.BoolArray)
}
BoolArray::BoolArray(const BoolArray& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  BoolArray* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){from._impl_.data_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.BoolArray)
}

inline void BoolArray::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

BoolArray::~BoolArray() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.BoolArray)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void BoolArray::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.data_.~RepeatedField();
}

void BoolArray::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void BoolArray::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.BoolArray)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.data_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* BoolArray::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated bool data = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedBoolParser(_internal_mutable_data(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 8) {
          _internal_add_data(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* BoolArray::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.BoolArray)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated bool data = 1;
  if (this->_internal_data_size() > 0) {
    target = stream->WriteFixedPacked(1, _internal_data(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.BoolArray)
  return target;
}

size_t BoolArray::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.BoolArray)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated bool data = 1;
  {
    unsigned int count = static_cast<unsigned int>(this->_internal_data_size());
    size_t data_size = 1UL * count;
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    total_size += data_size;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData BoolArray::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    BoolArray::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*BoolArray::GetClassData() const { return &_class_data_; }


void BoolArray::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<BoolArray*>(&to_msg);
  auto& from = static_cast<const BoolArray&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.BoolArray)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.data_.MergeFrom(from._impl_.data_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void BoolArray::CopyFrom(const BoolArray& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.BoolArray)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool BoolArray::IsInitialized() const {
  return true;
}

void BoolArray::InternalSwap(BoolArray* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.data_.InternalSwap(&other->_impl_.data_);
}

::PROTOBUF_NAMESPACE_ID::Metadata BoolArray::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[2]);
}

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

class IntArray::_Internal {
 public:
};

IntArray::IntArray(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.IntArray)
}
IntArray::IntArray(const IntArray& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  IntArray* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){from._impl_.data_}
    , /*decltype(_impl_._data_cached_byte_size_)*/{0}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.IntArray)
}

inline void IntArray::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){arena}
    , /*decltype(_impl_._data_cached_byte_size_)*/{0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

IntArray::~IntArray() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.IntArray)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void IntArray::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.data_.~RepeatedField();
}

void IntArray::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void IntArray::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.IntArray)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.data_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* IntArray::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated int32 data = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_data(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 8) {
          _internal_add_data(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint32(&ptr));
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* IntArray::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.IntArray)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated int32 data = 1;
  {
    int byte_size = _impl_._data_cached_byte_size_.load(std::memory_order_relaxed);
    if (byte_size > 0) {
      target = stream->WriteInt32Packed(
          1, _internal_data(), byte_size, target);
    }
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.IntArray)
  return target;
}

size_t IntArray::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.IntArray)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated int32 data = 1;
  {
    size_t data_size = ::_pbi::WireFormatLite::
      Int32Size(this->_impl_.data_);
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    int cached_size = ::_pbi::ToCachedSize(data_size);
    _impl_._data_cached_byte_size_.store(cached_size,
                                    std::memory_order_relaxed);
    total_size += data_size;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData IntArray::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    IntArray::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*IntArray::GetClassData() const { return &_class_data_; }


void IntArray::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<IntArray*>(&to_msg);
  auto& from = static_cast<const IntArray&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.IntArray)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.data_.MergeFrom(from._impl_.data_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void IntArray::CopyFrom(const IntArray& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.IntArray)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool IntArray::IsInitialized() const {
  return true;
}

void IntArray::InternalSwap(IntArray* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.data_.InternalSwap(&other->_impl_.data_);
}

::PROTOBUF_NAMESPACE_ID::Metadata IntArray::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[3]);
}

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

class LongArray::_Internal {
 public:
};

LongArray::LongArray(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.LongArray)
}
LongArray::LongArray(const LongArray& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  LongArray* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){from._impl_.data_}
    , /*decltype(_impl_._data_cached_byte_size_)*/{0}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.LongArray)
}

inline void LongArray::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){arena}
    , /*decltype(_impl_._data_cached_byte_size_)*/{0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

LongArray::~LongArray() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.LongArray)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void LongArray::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.data_.~RepeatedField();
}

void LongArray::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void LongArray::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.LongArray)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.data_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* LongArray::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated int64 data = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt64Parser(_internal_mutable_data(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 8) {
          _internal_add_data(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* LongArray::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.LongArray)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated int64 data = 1;
  {
    int byte_size = _impl_._data_cached_byte_size_.load(std::memory_order_relaxed);
    if (byte_size > 0) {
      target = stream->WriteInt64Packed(
          1, _internal_data(), byte_size, target);
    }
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.LongArray)
  return target;
}

size_t LongArray::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.LongArray)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated int64 data = 1;
  {
    size_t data_size = ::_pbi::WireFormatLite::
      Int64Size(this->_impl_.data_);
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    int cached_size = ::_pbi::ToCachedSize(data_size);
    _impl_._data_cached_byte_size_.store(cached_size,
                                    std::memory_order_relaxed);
    total_size += data_size;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LongArray::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    LongArray::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LongArray::GetClassData() const { return &_class_data_; }


void LongArray::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<LongArray*>(&to_msg);
  auto& from = static_cast<const LongArray&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.LongArray)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.data_.MergeFrom(from._impl_.data_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void LongArray::CopyFrom(const LongArray& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.LongArray)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool LongArray::IsInitialized() const {
  return true;
}

void LongArray::InternalSwap(LongArray* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.data_.InternalSwap(&other->_impl_.data_);
}

::PROTOBUF_NAMESPACE_ID::Metadata LongArray::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[4]);
}

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

class FloatArray::_Internal {
 public:
};

FloatArray::FloatArray(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.FloatArray)
}
FloatArray::FloatArray(const FloatArray& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  FloatArray* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){from._impl_.data_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.FloatArray)
}

inline void FloatArray::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

FloatArray::~FloatArray() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.FloatArray)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void FloatArray::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.data_.~RepeatedField();
}

void FloatArray::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void FloatArray::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.FloatArray)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.data_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* FloatArray::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated float data = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedFloatParser(_internal_mutable_data(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 13) {
          _internal_add_data(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr));
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* FloatArray::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.FloatArray)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated float data = 1;
  if (this->_internal_data_size() > 0) {
    target = stream->WriteFixedPacked(1, _internal_data(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.FloatArray)
  return target;
}

size_t FloatArray::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.FloatArray)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated float data = 1;
  {
    unsigned int count = static_cast<unsigned int>(this->_internal_data_size());
    size_t data_size = 4UL * count;
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    total_size += data_size;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData FloatArray::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    FloatArray::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*FloatArray::GetClassData() const { return &_class_data_; }


void FloatArray::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<FloatArray*>(&to_msg);
  auto& from = static_cast<const FloatArray&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.FloatArray)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.data_.MergeFrom(from._impl_.data_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void FloatArray::CopyFrom(const FloatArray& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.FloatArray)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool FloatArray::IsInitialized() const {
  return true;
}

void FloatArray::InternalSwap(FloatArray* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.data_.InternalSwap(&other->_impl_.data_);
}

::PROTOBUF_NAMESPACE_ID::Metadata FloatArray::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[5]);
}

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

class DoubleArray::_Internal {
 public:
};

DoubleArray::DoubleArray(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.DoubleArray)
}
DoubleArray::DoubleArray(const DoubleArray& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DoubleArray* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){from._impl_.data_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.DoubleArray)
}

inline void DoubleArray::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

DoubleArray::~DoubleArray() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.DoubleArray)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DoubleArray::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.data_.~RepeatedField();
}

void DoubleArray::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void DoubleArray::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.DoubleArray)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.data_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* DoubleArray::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated double data = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_data(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 9) {
          _internal_add_data(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
          ptr += sizeof(double);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* DoubleArray::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.DoubleArray)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated double data = 1;
  if (this->_internal_data_size() > 0) {
    target = stream->WriteFixedPacked(1, _internal_data(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.DoubleArray)
  return target;
}

size_t DoubleArray::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.DoubleArray)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated double data = 1;
  {
    unsigned int count = static_cast<unsigned int>(this->_internal_data_size());
    size_t data_size = 8UL * count;
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    total_size += data_size;
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData DoubleArray::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    DoubleArray::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*DoubleArray::GetClassData() const { return &_class_data_; }


void DoubleArray::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<DoubleArray*>(&to_msg);
  auto& from = static_cast<const DoubleArray&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.DoubleArray)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.data_.MergeFrom(from._impl_.data_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DoubleArray::CopyFrom(const DoubleArray& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.DoubleArray)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool DoubleArray::IsInitialized() const {
  return true;
}

void DoubleArray::InternalSwap(DoubleArray* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.data_.InternalSwap(&other->_impl_.data_);
}

::PROTOBUF_NAMESPACE_ID::Metadata DoubleArray::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[6]);
}

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

class BytesArray::_Internal {
 public:
};

BytesArray::BytesArray(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.BytesArray)
}
BytesArray::BytesArray(const BytesArray& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  BytesArray* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){from._impl_.data_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.BytesArray)
}

inline void BytesArray::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

BytesArray::~BytesArray() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.BytesArray)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void BytesArray::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.data_.~RepeatedPtrField();
}

void BytesArray::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void BytesArray::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.BytesArray)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.data_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* BytesArray::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated bytes data = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_data();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* BytesArray::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.BytesArray)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated bytes data = 1;
  for (int i = 0, n = this->_internal_data_size(); i < n; i++) {
    const auto& s = this->_internal_data(i);
    target = stream->WriteBytes(1, s, target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.BytesArray)
  return target;
}

size_t BytesArray::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.BytesArray)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated bytes data = 1;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.data_.size());
  for (int i = 0, n = _impl_.data_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
      _impl_.data_.Get(i));
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData BytesArray::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    BytesArray::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*BytesArray::GetClassData() const { return &_class_data_; }


void BytesArray::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<BytesArray*>(&to_msg);
  auto& from = static_cast<const BytesArray&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.BytesArray)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.data_.MergeFrom(from._impl_.data_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void BytesArray::CopyFrom(const BytesArray& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.BytesArray)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool BytesArray::IsInitialized() const {
  return true;
}

void BytesArray::InternalSwap(BytesArray* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.data_.InternalSwap(&other->_impl_.data_);
}

::PROTOBUF_NAMESPACE_ID::Metadata BytesArray::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[7]);
}

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

class StringArray::_Internal {
 public:
};

StringArray::StringArray(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.StringArray)
}
StringArray::StringArray(const StringArray& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  StringArray* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){from._impl_.data_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.StringArray)
}

inline void StringArray::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){arena}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

StringArray::~StringArray() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.StringArray)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void StringArray::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.data_.~RepeatedPtrField();
}

void StringArray::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void StringArray::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.StringArray)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.data_.Clear();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* StringArray::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // repeated string data = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_data();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "milvus.proto.schema.StringArray.data"));
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* StringArray::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.StringArray)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated string data = 1;
  for (int i = 0, n = this->_internal_data_size(); i < n; i++) {
    const auto& s = this->_internal_data(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "milvus.proto.schema.StringArray.data");
    target = stream->WriteString(1, s, target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.StringArray)
  return target;
}

size_t StringArray::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.StringArray)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated string data = 1;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.data_.size());
  for (int i = 0, n = _impl_.data_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.data_.Get(i));
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData StringArray::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    StringArray::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*StringArray::GetClassData() const { return &_class_data_; }


void StringArray::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<StringArray*>(&to_msg);
  auto& from = static_cast<const StringArray&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.StringArray)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.data_.MergeFrom(from._impl_.data_);
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void StringArray::CopyFrom(const StringArray& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.StringArray)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool StringArray::IsInitialized() const {
  return true;
}

void StringArray::InternalSwap(StringArray* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.data_.InternalSwap(&other->_impl_.data_);
}

::PROTOBUF_NAMESPACE_ID::Metadata StringArray::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[8]);
}

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

class ScalarField::_Internal {
 public:
  static const ::milvus::proto::schema::BoolArray& bool_data(const ScalarField* msg);
  static const ::milvus::proto::schema::IntArray& int_data(const ScalarField* msg);
  static const ::milvus::proto::schema::LongArray& long_data(const ScalarField* msg);
  static const ::milvus::proto::schema::FloatArray& float_data(const ScalarField* msg);
  static const ::milvus::proto::schema::DoubleArray& double_data(const ScalarField* msg);
  static const ::milvus::proto::schema::StringArray& string_data(const ScalarField* msg);
  static const ::milvus::proto::schema::BytesArray& bytes_data(const ScalarField* msg);
};

const ::milvus::proto::schema::BoolArray&
ScalarField::_Internal::bool_data(const ScalarField* msg) {
  return *msg->_impl_.data_.bool_data_;
}
const ::milvus::proto::schema::IntArray&
ScalarField::_Internal::int_data(const ScalarField* msg) {
  return *msg->_impl_.data_.int_data_;
}
const ::milvus::proto::schema::LongArray&
ScalarField::_Internal::long_data(const ScalarField* msg) {
  return *msg->_impl_.data_.long_data_;
}
const ::milvus::proto::schema::FloatArray&
ScalarField::_Internal::float_data(const ScalarField* msg) {
  return *msg->_impl_.data_.float_data_;
}
const ::milvus::proto::schema::DoubleArray&
ScalarField::_Internal::double_data(const ScalarField* msg) {
  return *msg->_impl_.data_.double_data_;
}
const ::milvus::proto::schema::StringArray&
ScalarField::_Internal::string_data(const ScalarField* msg) {
  return *msg->_impl_.data_.string_data_;
}
const ::milvus::proto::schema::BytesArray&
ScalarField::_Internal::bytes_data(const ScalarField* msg) {
  return *msg->_impl_.data_.bytes_data_;
}
void ScalarField::set_allocated_bool_data(::milvus::proto::schema::BoolArray* bool_data) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_data();
  if (bool_data) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(bool_data);
    if (message_arena != submessage_arena) {
      bool_data = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, bool_data, submessage_arena);
    }
    set_has_bool_data();
    _impl_.data_.bool_data_ = bool_data;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.ScalarField.bool_data)
}
void ScalarField::set_allocated_int_data(::milvus::proto::schema::IntArray* int_data) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_data();
  if (int_data) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(int_data);
    if (message_arena != submessage_arena) {
      int_data = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, int_data, submessage_arena);
    }
    set_has_int_data();
    _impl_.data_.int_data_ = int_data;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.ScalarField.int_data)
}
void ScalarField::set_allocated_long_data(::milvus::proto::schema::LongArray* long_data) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_data();
  if (long_data) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(long_data);
    if (message_arena != submessage_arena) {
      long_data = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, long_data, submessage_arena);
    }
    set_has_long_data();
    _impl_.data_.long_data_ = long_data;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.ScalarField.long_data)
}
void ScalarField::set_allocated_float_data(::milvus::proto::schema::FloatArray* float_data) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_data();
  if (float_data) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(float_data);
    if (message_arena != submessage_arena) {
      float_data = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, float_data, submessage_arena);
    }
    set_has_float_data();
    _impl_.data_.float_data_ = float_data;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.ScalarField.float_data)
}
void ScalarField::set_allocated_double_data(::milvus::proto::schema::DoubleArray* double_data) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_data();
  if (double_data) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(double_data);
    if (message_arena != submessage_arena) {
      double_data = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, double_data, submessage_arena);
    }
    set_has_double_data();
    _impl_.data_.double_data_ = double_data;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.ScalarField.double_data)
}
void ScalarField::set_allocated_string_data(::milvus::proto::schema::StringArray* string_data) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_data();
  if (string_data) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(string_data);
    if (message_arena != submessage_arena) {
      string_data = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, string_data, submessage_arena);
    }
    set_has_string_data();
    _impl_.data_.string_data_ = string_data;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.ScalarField.string_data)
}
void ScalarField::set_allocated_bytes_data(::milvus::proto::schema::BytesArray* bytes_data) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_data();
  if (bytes_data) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(bytes_data);
    if (message_arena != submessage_arena) {
      bytes_data = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, bytes_data, submessage_arena);
    }
    set_has_bytes_data();
    _impl_.data_.bytes_data_ = bytes_data;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.ScalarField.bytes_data)
}
ScalarField::ScalarField(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.ScalarField)
}
ScalarField::ScalarField(const ScalarField& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ScalarField* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_data();
  switch (from.data_case()) {
    case kBoolData: {
      _this->_internal_mutable_bool_data()->::milvus::proto::schema::BoolArray::MergeFrom(
          from._internal_bool_data());
      break;
    }
    case kIntData: {
      _this->_internal_mutable_int_data()->::milvus::proto::schema::IntArray::MergeFrom(
          from._internal_int_data());
      break;
    }
    case kLongData: {
      _this->_internal_mutable_long_data()->::milvus::proto::schema::LongArray::MergeFrom(
          from._internal_long_data());
      break;
    }
    case kFloatData: {
      _this->_internal_mutable_float_data()->::milvus::proto::schema::FloatArray::MergeFrom(
          from._internal_float_data());
      break;
    }
    case kDoubleData: {
      _this->_internal_mutable_double_data()->::milvus::proto::schema::DoubleArray::MergeFrom(
          from._internal_double_data());
      break;
    }
    case kStringData: {
      _this->_internal_mutable_string_data()->::milvus::proto::schema::StringArray::MergeFrom(
          from._internal_string_data());
      break;
    }
    case kBytesData: {
      _this->_internal_mutable_bytes_data()->::milvus::proto::schema::BytesArray::MergeFrom(
          from._internal_bytes_data());
      break;
    }
    case DATA_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.ScalarField)
}

inline void ScalarField::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.data_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_data();
}

ScalarField::~ScalarField() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.ScalarField)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void ScalarField::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_data()) {
    clear_data();
  }
}

void ScalarField::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void ScalarField::clear_data() {
// @@protoc_insertion_point(one_of_clear_start:milvus.proto.schema.ScalarField)
  switch (data_case()) {
    case kBoolData: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.data_.bool_data_;
      }
      break;
    }
    case kIntData: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.data_.int_data_;
      }
      break;
    }
    case kLongData: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.data_.long_data_;
      }
      break;
    }
    case kFloatData: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.data_.float_data_;
      }
      break;
    }
    case kDoubleData: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.data_.double_data_;
      }
      break;
    }
    case kStringData: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.data_.string_data_;
      }
      break;
    }
    case kBytesData: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.data_.bytes_data_;
      }
      break;
    }
    case DATA_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = DATA_NOT_SET;
}


void ScalarField::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.ScalarField)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_data();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* ScalarField::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .milvus.proto.schema.BoolArray bool_data = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_bool_data(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.IntArray int_data = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_int_data(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.LongArray long_data = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_long_data(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.FloatArray float_data = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_float_data(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.DoubleArray double_data = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_double_data(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.StringArray string_data = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_string_data(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.BytesArray bytes_data = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_bytes_data(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* ScalarField::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.ScalarField)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .milvus.proto.schema.BoolArray bool_data = 1;
  if (_internal_has_bool_data()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::bool_data(this),
        _Internal::bool_data(this).GetCachedSize(), target, stream);
  }

  // .milvus.proto.schema.IntArray int_data = 2;
  if (_internal_has_int_data()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::int_data(this),
        _Internal::int_data(this).GetCachedSize(), target, stream);
  }

  // .milvus.proto.schema.LongArray long_data = 3;
  if (_internal_has_long_data()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::long_data(this),
        _Internal::long_data(this).GetCachedSize(), target, stream);
  }

  // .milvus.proto.schema.FloatArray float_data = 4;
  if (_internal_has_float_data()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::float_data(this),
        _Internal::float_data(this).GetCachedSize(), target, stream);
  }

  // .milvus.proto.schema.DoubleArray double_data = 5;
  if (_internal_has_double_data()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::double_data(this),
        _Internal::double_data(this).GetCachedSize(), target, stream);
  }

  // .milvus.proto.schema.StringArray string_data = 6;
  if (_internal_has_string_data()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(6, _Internal::string_data(this),
        _Internal::string_data(this).GetCachedSize(), target, stream);
  }

  // .milvus.proto.schema.BytesArray bytes_data = 7;
  if (_internal_has_bytes_data()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::bytes_data(this),
        _Internal::bytes_data(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.ScalarField)
  return target;
}

size_t ScalarField::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.ScalarField)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (data_case()) {
    // .milvus.proto.schema.BoolArray bool_data = 1;
    case kBoolData: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.data_.bool_data_);
      break;
    }
    // .milvus.proto.schema.IntArray int_data = 2;
    case kIntData: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.data_.int_data_);
      break;
    }
    // .milvus.proto.schema.LongArray long_data = 3;
    case kLongData: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.data_.long_data_);
      break;
    }
    // .milvus.proto.schema.FloatArray float_data = 4;
    case kFloatData: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.data_.float_data_);
      break;
    }
    // .milvus.proto.schema.DoubleArray double_data = 5;
    case kDoubleData: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.data_.double_data_);
      break;
    }
    // .milvus.proto.schema.StringArray string_data = 6;
    case kStringData: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.data_.string_data_);
      break;
    }
    // .milvus.proto.schema.BytesArray bytes_data = 7;
    case kBytesData: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.data_.bytes_data_);
      break;
    }
    case DATA_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ScalarField::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    ScalarField::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ScalarField::GetClassData() const { return &_class_data_; }


void ScalarField::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<ScalarField*>(&to_msg);
  auto& from = static_cast<const ScalarField&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.ScalarField)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.data_case()) {
    case kBoolData: {
      _this->_internal_mutable_bool_data()->::milvus::proto::schema::BoolArray::MergeFrom(
          from._internal_bool_data());
      break;
    }
    case kIntData: {
      _this->_internal_mutable_int_data()->::milvus::proto::schema::IntArray::MergeFrom(
          from._internal_int_data());
      break;
    }
    case kLongData: {
      _this->_internal_mutable_long_data()->::milvus::proto::schema::LongArray::MergeFrom(
          from._internal_long_data());
      break;
    }
    case kFloatData: {
      _this->_internal_mutable_float_data()->::milvus::proto::schema::FloatArray::MergeFrom(
          from._internal_float_data());
      break;
    }
    case kDoubleData: {
      _this->_internal_mutable_double_data()->::milvus::proto::schema::DoubleArray::MergeFrom(
          from._internal_double_data());
      break;
    }
    case kStringData: {
      _this->_internal_mutable_string_data()->::milvus::proto::schema::StringArray::MergeFrom(
          from._internal_string_data());
      break;
    }
    case kBytesData: {
      _this->_internal_mutable_bytes_data()->::milvus::proto::schema::BytesArray::MergeFrom(
          from._internal_bytes_data());
      break;
    }
    case DATA_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void ScalarField::CopyFrom(const ScalarField& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.ScalarField)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool ScalarField::IsInitialized() const {
  return true;
}

void ScalarField::InternalSwap(ScalarField* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.data_, other->_impl_.data_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata ScalarField::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[9]);
}

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

class VectorField::_Internal {
 public:
  static const ::milvus::proto::schema::FloatArray& float_vector(const VectorField* msg);
};

const ::milvus::proto::schema::FloatArray&
VectorField::_Internal::float_vector(const VectorField* msg) {
  return *msg->_impl_.data_.float_vector_;
}
void VectorField::set_allocated_float_vector(::milvus::proto::schema::FloatArray* float_vector) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_data();
  if (float_vector) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(float_vector);
    if (message_arena != submessage_arena) {
      float_vector = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, float_vector, submessage_arena);
    }
    set_has_float_vector();
    _impl_.data_.float_vector_ = float_vector;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.VectorField.float_vector)
}
VectorField::VectorField(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.VectorField)
}
VectorField::VectorField(const VectorField& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  VectorField* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.dim_){}
    , decltype(_impl_.data_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.dim_ = from._impl_.dim_;
  clear_has_data();
  switch (from.data_case()) {
    case kFloatVector: {
      _this->_internal_mutable_float_vector()->::milvus::proto::schema::FloatArray::MergeFrom(
          from._internal_float_vector());
      break;
    }
    case kBinaryVector: {
      _this->_internal_set_binary_vector(from._internal_binary_vector());
      break;
    }
    case DATA_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.VectorField)
}

inline void VectorField::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.dim_){int64_t{0}}
    , decltype(_impl_.data_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_data();
}

VectorField::~VectorField() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.VectorField)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void VectorField::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_data()) {
    clear_data();
  }
}

void VectorField::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void VectorField::clear_data() {
// @@protoc_insertion_point(one_of_clear_start:milvus.proto.schema.VectorField)
  switch (data_case()) {
    case kFloatVector: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.data_.float_vector_;
      }
      break;
    }
    case kBinaryVector: {
      _impl_.data_.binary_vector_.Destroy();
      break;
    }
    case DATA_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = DATA_NOT_SET;
}


void VectorField::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.VectorField)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.dim_ = int64_t{0};
  clear_data();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* VectorField::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // int64 dim = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.dim_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.FloatArray float_vector = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_float_vector(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bytes binary_vector = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_binary_vector();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* VectorField::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.VectorField)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // int64 dim = 1;
  if (this->_internal_dim() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(1, this->_internal_dim(), target);
  }

  // .milvus.proto.schema.FloatArray float_vector = 2;
  if (_internal_has_float_vector()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::float_vector(this),
        _Internal::float_vector(this).GetCachedSize(), target, stream);
  }

  // bytes binary_vector = 3;
  if (_internal_has_binary_vector()) {
    target = stream->WriteBytesMaybeAliased(
        3, this->_internal_binary_vector(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.VectorField)
  return target;
}

size_t VectorField::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.VectorField)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // int64 dim = 1;
  if (this->_internal_dim() != 0) {
    total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_dim());
  }

  switch (data_case()) {
    // .milvus.proto.schema.FloatArray float_vector = 2;
    case kFloatVector: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.data_.float_vector_);
      break;
    }
    // bytes binary_vector = 3;
    case kBinaryVector: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
          this->_internal_binary_vector());
      break;
    }
    case DATA_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData VectorField::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    VectorField::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*VectorField::GetClassData() const { return &_class_data_; }


void VectorField::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<VectorField*>(&to_msg);
  auto& from = static_cast<const VectorField&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.VectorField)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (from._internal_dim() != 0) {
    _this->_internal_set_dim(from._internal_dim());
  }
  switch (from.data_case()) {
    case kFloatVector: {
      _this->_internal_mutable_float_vector()->::milvus::proto::schema::FloatArray::MergeFrom(
          from._internal_float_vector());
      break;
    }
    case kBinaryVector: {
      _this->_internal_set_binary_vector(from._internal_binary_vector());
      break;
    }
    case DATA_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void VectorField::CopyFrom(const VectorField& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.VectorField)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool VectorField::IsInitialized() const {
  return true;
}

void VectorField::InternalSwap(VectorField* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.dim_, other->_impl_.dim_);
  swap(_impl_.data_, other->_impl_.data_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata VectorField::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[10]);
}

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

class FieldData::_Internal {
 public:
  static const ::milvus::proto::schema::ScalarField& scalars(const FieldData* msg);
  static const ::milvus::proto::schema::VectorField& vectors(const FieldData* msg);
};

const ::milvus::proto::schema::ScalarField&
FieldData::_Internal::scalars(const FieldData* msg) {
  return *msg->_impl_.field_.scalars_;
}
const ::milvus::proto::schema::VectorField&
FieldData::_Internal::vectors(const FieldData* msg) {
  return *msg->_impl_.field_.vectors_;
}
void FieldData::set_allocated_scalars(::milvus::proto::schema::ScalarField* scalars) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_field();
  if (scalars) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(scalars);
    if (message_arena != submessage_arena) {
      scalars = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, scalars, submessage_arena);
    }
    set_has_scalars();
    _impl_.field_.scalars_ = scalars;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.FieldData.scalars)
}
void FieldData::set_allocated_vectors(::milvus::proto::schema::VectorField* vectors) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_field();
  if (vectors) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(vectors);
    if (message_arena != submessage_arena) {
      vectors = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, vectors, submessage_arena);
    }
    set_has_vectors();
    _impl_.field_.vectors_ = vectors;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.FieldData.vectors)
}
FieldData::FieldData(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.FieldData)
}
FieldData::FieldData(const FieldData& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  FieldData* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.field_name_){}
    , decltype(_impl_.field_id_){}
    , decltype(_impl_.type_){}
    , decltype(_impl_.field_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.field_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.field_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_field_name().empty()) {
    _this->_impl_.field_name_.Set(from._internal_field_name(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.field_id_, &from._impl_.field_id_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.type_) -
    reinterpret_cast<char*>(&_impl_.field_id_)) + sizeof(_impl_.type_));
  clear_has_field();
  switch (from.field_case()) {
    case kScalars: {
      _this->_internal_mutable_scalars()->::milvus::proto::schema::ScalarField::MergeFrom(
          from._internal_scalars());
      break;
    }
    case kVectors: {
      _this->_internal_mutable_vectors()->::milvus::proto::schema::VectorField::MergeFrom(
          from._internal_vectors());
      break;
    }
    case FIELD_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.FieldData)
}

inline void FieldData::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.field_name_){}
    , decltype(_impl_.field_id_){int64_t{0}}
    , decltype(_impl_.type_){0}
    , decltype(_impl_.field_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  _impl_.field_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.field_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  clear_has_field();
}

FieldData::~FieldData() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.FieldData)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void FieldData::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.field_name_.Destroy();
  if (has_field()) {
    clear_field();
  }
}

void FieldData::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void FieldData::clear_field() {
// @@protoc_insertion_point(one_of_clear_start:milvus.proto.schema.FieldData)
  switch (field_case()) {
    case kScalars: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.field_.scalars_;
      }
      break;
    }
    case kVectors: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.field_.vectors_;
      }
      break;
    }
    case FIELD_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = FIELD_NOT_SET;
}


void FieldData::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.FieldData)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.field_name_.ClearToEmpty();
  ::memset(&_impl_.field_id_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.type_) -
      reinterpret_cast<char*>(&_impl_.field_id_)) + sizeof(_impl_.type_));
  clear_field();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* FieldData::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .milvus.proto.schema.DataType type = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_type(static_cast<::milvus::proto::schema::DataType>(val));
        } else
          goto handle_unusual;
        continue;
      // string field_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_field_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "milvus.proto.schema.FieldData.field_name"));
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.ScalarField scalars = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_scalars(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.VectorField vectors = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_vectors(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // int64 field_id = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _impl_.field_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* FieldData::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.FieldData)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .milvus.proto.schema.DataType type = 1;
  if (this->_internal_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_type(), target);
  }

  // string field_name = 2;
  if (!this->_internal_field_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_field_name().data(), static_cast<int>(this->_internal_field_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "milvus.proto.schema.FieldData.field_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_field_name(), target);
  }

  // .milvus.proto.schema.ScalarField scalars = 3;
  if (_internal_has_scalars()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::scalars(this),
        _Internal::scalars(this).GetCachedSize(), target, stream);
  }

  // .milvus.proto.schema.VectorField vectors = 4;
  if (_internal_has_vectors()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::vectors(this),
        _Internal::vectors(this).GetCachedSize(), target, stream);
  }

  // int64 field_id = 5;
  if (this->_internal_field_id() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(5, this->_internal_field_id(), target);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.FieldData)
  return target;
}

size_t FieldData::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.FieldData)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // string field_name = 2;
  if (!this->_internal_field_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_field_name());
  }

  // int64 field_id = 5;
  if (this->_internal_field_id() != 0) {
    total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_field_id());
  }

  // .milvus.proto.schema.DataType type = 1;
  if (this->_internal_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_type());
  }

  switch (field_case()) {
    // .milvus.proto.schema.ScalarField scalars = 3;
    case kScalars: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.field_.scalars_);
      break;
    }
    // .milvus.proto.schema.VectorField vectors = 4;
    case kVectors: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.field_.vectors_);
      break;
    }
    case FIELD_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData FieldData::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    FieldData::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*FieldData::GetClassData() const { return &_class_data_; }


void FieldData::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<FieldData*>(&to_msg);
  auto& from = static_cast<const FieldData&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.FieldData)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  if (!from._internal_field_name().empty()) {
    _this->_internal_set_field_name(from._internal_field_name());
  }
  if (from._internal_field_id() != 0) {
    _this->_internal_set_field_id(from._internal_field_id());
  }
  if (from._internal_type() != 0) {
    _this->_internal_set_type(from._internal_type());
  }
  switch (from.field_case()) {
    case kScalars: {
      _this->_internal_mutable_scalars()->::milvus::proto::schema::ScalarField::MergeFrom(
          from._internal_scalars());
      break;
    }
    case kVectors: {
      _this->_internal_mutable_vectors()->::milvus::proto::schema::VectorField::MergeFrom(
          from._internal_vectors());
      break;
    }
    case FIELD_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void FieldData::CopyFrom(const FieldData& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.FieldData)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool FieldData::IsInitialized() const {
  return true;
}

void FieldData::InternalSwap(FieldData* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.field_name_, lhs_arena,
      &other->_impl_.field_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(FieldData, _impl_.type_)
      + sizeof(FieldData::_impl_.type_)
      - PROTOBUF_FIELD_OFFSET(FieldData, _impl_.field_id_)>(
          reinterpret_cast<char*>(&_impl_.field_id_),
          reinterpret_cast<char*>(&other->_impl_.field_id_));
  swap(_impl_.field_, other->_impl_.field_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata FieldData::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[11]);
}

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

class IDs::_Internal {
 public:
  static const ::milvus::proto::schema::LongArray& int_id(const IDs* msg);
  static const ::milvus::proto::schema::StringArray& str_id(const IDs* msg);
};

const ::milvus::proto::schema::LongArray&
IDs::_Internal::int_id(const IDs* msg) {
  return *msg->_impl_.id_field_.int_id_;
}
const ::milvus::proto::schema::StringArray&
IDs::_Internal::str_id(const IDs* msg) {
  return *msg->_impl_.id_field_.str_id_;
}
void IDs::set_allocated_int_id(::milvus::proto::schema::LongArray* int_id) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_id_field();
  if (int_id) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(int_id);
    if (message_arena != submessage_arena) {
      int_id = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, int_id, submessage_arena);
    }
    set_has_int_id();
    _impl_.id_field_.int_id_ = int_id;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.IDs.int_id)
}
void IDs::set_allocated_str_id(::milvus::proto::schema::StringArray* str_id) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_id_field();
  if (str_id) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(str_id);
    if (message_arena != submessage_arena) {
      str_id = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, str_id, submessage_arena);
    }
    set_has_str_id();
    _impl_.id_field_.str_id_ = str_id;
  }
  // @@protoc_insertion_point(field_set_allocated:milvus.proto.schema.IDs.str_id)
}
IDs::IDs(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.IDs)
}
IDs::IDs(const IDs& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  IDs* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.id_field_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_id_field();
  switch (from.id_field_case()) {
    case kIntId: {
      _this->_internal_mutable_int_id()->::milvus::proto::schema::LongArray::MergeFrom(
          from._internal_int_id());
      break;
    }
    case kStrId: {
      _this->_internal_mutable_str_id()->::milvus::proto::schema::StringArray::MergeFrom(
          from._internal_str_id());
      break;
    }
    case ID_FIELD_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.IDs)
}

inline void IDs::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.id_field_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_id_field();
}

IDs::~IDs() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.IDs)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void IDs::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_id_field()) {
    clear_id_field();
  }
}

void IDs::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void IDs::clear_id_field() {
// @@protoc_insertion_point(one_of_clear_start:milvus.proto.schema.IDs)
  switch (id_field_case()) {
    case kIntId: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.id_field_.int_id_;
      }
      break;
    }
    case kStrId: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.id_field_.str_id_;
      }
      break;
    }
    case ID_FIELD_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = ID_FIELD_NOT_SET;
}


void IDs::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.IDs)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_id_field();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* IDs::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // .milvus.proto.schema.LongArray int_id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_int_id(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.StringArray str_id = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_str_id(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* IDs::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.IDs)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .milvus.proto.schema.LongArray int_id = 1;
  if (_internal_has_int_id()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::int_id(this),
        _Internal::int_id(this).GetCachedSize(), target, stream);
  }

  // .milvus.proto.schema.StringArray str_id = 2;
  if (_internal_has_str_id()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::str_id(this),
        _Internal::str_id(this).GetCachedSize(), target, stream);
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.IDs)
  return target;
}

size_t IDs::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.IDs)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  switch (id_field_case()) {
    // .milvus.proto.schema.LongArray int_id = 1;
    case kIntId: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.id_field_.int_id_);
      break;
    }
    // .milvus.proto.schema.StringArray str_id = 2;
    case kStrId: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.id_field_.str_id_);
      break;
    }
    case ID_FIELD_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData IDs::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    IDs::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*IDs::GetClassData() const { return &_class_data_; }


void IDs::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<IDs*>(&to_msg);
  auto& from = static_cast<const IDs&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.IDs)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  switch (from.id_field_case()) {
    case kIntId: {
      _this->_internal_mutable_int_id()->::milvus::proto::schema::LongArray::MergeFrom(
          from._internal_int_id());
      break;
    }
    case kStrId: {
      _this->_internal_mutable_str_id()->::milvus::proto::schema::StringArray::MergeFrom(
          from._internal_str_id());
      break;
    }
    case ID_FIELD_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void IDs::CopyFrom(const IDs& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.IDs)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool IDs::IsInitialized() const {
  return true;
}

void IDs::InternalSwap(IDs* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.id_field_, other->_impl_.id_field_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata IDs::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[12]);
}

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

class SearchResultData::_Internal {
 public:
  static const ::milvus::proto::schema::IDs& ids(const SearchResultData* msg);
};

const ::milvus::proto::schema::IDs&
SearchResultData::_Internal::ids(const SearchResultData* msg) {
  return *msg->_impl_.ids_;
}
SearchResultData::SearchResultData(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  // @@protoc_insertion_point(arena_constructor:milvus.proto.schema.SearchResultData)
}
SearchResultData::SearchResultData(const SearchResultData& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SearchResultData* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.fields_data_){from._impl_.fields_data_}
    , decltype(_impl_.scores_){from._impl_.scores_}
    , decltype(_impl_.topks_){from._impl_.topks_}
    , /*decltype(_impl_._topks_cached_byte_size_)*/{0}
    , decltype(_impl_.ids_){nullptr}
    , decltype(_impl_.num_queries_){}
    , decltype(_impl_.top_k_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_ids()) {
    _this->_impl_.ids_ = new ::milvus::proto::schema::IDs(*from._impl_.ids_);
  }
  ::memcpy(&_impl_.num_queries_, &from._impl_.num_queries_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.top_k_) -
    reinterpret_cast<char*>(&_impl_.num_queries_)) + sizeof(_impl_.top_k_));
  // @@protoc_insertion_point(copy_constructor:milvus.proto.schema.SearchResultData)
}

inline void SearchResultData::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.fields_data_){arena}
    , decltype(_impl_.scores_){arena}
    , decltype(_impl_.topks_){arena}
    , /*decltype(_impl_._topks_cached_byte_size_)*/{0}
    , decltype(_impl_.ids_){nullptr}
    , decltype(_impl_.num_queries_){int64_t{0}}
    , decltype(_impl_.top_k_){int64_t{0}}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

SearchResultData::~SearchResultData() {
  // @@protoc_insertion_point(destructor:milvus.proto.schema.SearchResultData)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void SearchResultData::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.fields_data_.~RepeatedPtrField();
  _impl_.scores_.~RepeatedField();
  _impl_.topks_.~RepeatedField();
  if (this != internal_default_instance()) delete _impl_.ids_;
}

void SearchResultData::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void SearchResultData::Clear() {
// @@protoc_insertion_point(message_clear_start:milvus.proto.schema.SearchResultData)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.fields_data_.Clear();
  _impl_.scores_.Clear();
  _impl_.topks_.Clear();
  if (GetArenaForAllocation() == nullptr && _impl_.ids_ != nullptr) {
    delete _impl_.ids_;
  }
  _impl_.ids_ = nullptr;
  ::memset(&_impl_.num_queries_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.top_k_) -
      reinterpret_cast<char*>(&_impl_.num_queries_)) + sizeof(_impl_.top_k_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* SearchResultData::_InternalParse(const char* ptr, ::_pbi::ParseContext* ctx) {
#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
  while (!ctx->Done(&ptr)) {
    uint32_t tag;
    ptr = ::_pbi::ReadTag(ptr, &tag);
    switch (tag >> 3) {
      // int64 num_queries = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.num_queries_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // int64 top_k = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _impl_.top_k_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .milvus.proto.schema.FieldData fields_data = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_fields_data(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated float scores = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedFloatParser(_internal_mutable_scores(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 37) {
          _internal_add_scores(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<float>(ptr));
          ptr += sizeof(float);
        } else
          goto handle_unusual;
        continue;
      // .milvus.proto.schema.IDs ids = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_ids(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated int64 topks = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt64Parser(_internal_mutable_topks(), ptr, ctx);
          CHK_(ptr);
        } else if (static_cast<uint8_t>(tag) == 48) {
          _internal_add_topks(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      default:
        goto handle_unusual;
    }  // switch
  handle_unusual:
    if ((tag == 0) || ((tag & 7) == 4)) {
      CHK_(ptr);
      ctx->SetLastTag(tag);
      goto message_done;
    }
    ptr = UnknownFieldParse(
        tag,
        _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
        ptr, ctx);
    CHK_(ptr != nullptr);
  }  // while
message_done:
  return ptr;
failure:
  ptr = nullptr;
  goto message_done;
#undef CHK_
}

uint8_t* SearchResultData::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:milvus.proto.schema.SearchResultData)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // int64 num_queries = 1;
  if (this->_internal_num_queries() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(1, this->_internal_num_queries(), target);
  }

  // int64 top_k = 2;
  if (this->_internal_top_k() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteInt64ToArray(2, this->_internal_top_k(), target);
  }

  // repeated .milvus.proto.schema.FieldData fields_data = 3;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_fields_data_size()); i < n; i++) {
    const auto& repfield = this->_internal_fields_data(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(3, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated float scores = 4;
  if (this->_internal_scores_size() > 0) {
    target = stream->WriteFixedPacked(4, _internal_scores(), target);
  }

  // .milvus.proto.schema.IDs ids = 5;
  if (this->_internal_has_ids()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::ids(this),
        _Internal::ids(this).GetCachedSize(), target, stream);
  }

  // repeated int64 topks = 6;
  {
    int byte_size = _impl_._topks_cached_byte_size_.load(std::memory_order_relaxed);
    if (byte_size > 0) {
      target = stream->WriteInt64Packed(
          6, _internal_topks(), byte_size, target);
    }
  }

  if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
    target = ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
        _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
  }
  // @@protoc_insertion_point(serialize_to_array_end:milvus.proto.schema.SearchResultData)
  return target;
}

size_t SearchResultData::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:milvus.proto.schema.SearchResultData)
  size_t total_size = 0;

  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  // repeated .milvus.proto.schema.FieldData fields_data = 3;
  total_size += 1UL * this->_internal_fields_data_size();
  for (const auto& msg : this->_impl_.fields_data_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // repeated float scores = 4;
  {
    unsigned int count = static_cast<unsigned int>(this->_internal_scores_size());
    size_t data_size = 4UL * count;
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    total_size += data_size;
  }

  // repeated int64 topks = 6;
  {
    size_t data_size = ::_pbi::WireFormatLite::
      Int64Size(this->_impl_.topks_);
    if (data_size > 0) {
      total_size += 1 +
        ::_pbi::WireFormatLite::Int32Size(static_cast<int32_t>(data_size));
    }
    int cached_size = ::_pbi::ToCachedSize(data_size);
    _impl_._topks_cached_byte_size_.store(cached_size,
                                    std::memory_order_relaxed);
    total_size += data_size;
  }

  // .milvus.proto.schema.IDs ids = 5;
  if (this->_internal_has_ids()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.ids_);
  }

  // int64 num_queries = 1;
  if (this->_internal_num_queries() != 0) {
    total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_num_queries());
  }

  // int64 top_k = 2;
  if (this->_internal_top_k() != 0) {
    total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(this->_internal_top_k());
  }

  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SearchResultData::_class_data_ = {
    ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSourceCheck,
    SearchResultData::MergeImpl
};
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SearchResultData::GetClassData() const { return &_class_data_; }


void SearchResultData::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message& to_msg, const ::PROTOBUF_NAMESPACE_ID::Message& from_msg) {
  auto* const _this = static_cast<SearchResultData*>(&to_msg);
  auto& from = static_cast<const SearchResultData&>(from_msg);
  // @@protoc_insertion_point(class_specific_merge_from_start:milvus.proto.schema.SearchResultData)
  GOOGLE_DCHECK_NE(&from, _this);
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  _this->_impl_.fields_data_.MergeFrom(from._impl_.fields_data_);
  _this->_impl_.scores_.MergeFrom(from._impl_.scores_);
  _this->_impl_.topks_.MergeFrom(from._impl_.topks_);
  if (from._internal_has_ids()) {
    _this->_internal_mutable_ids()->::milvus::proto::schema::IDs::MergeFrom(
        from._internal_ids());
  }
  if (from._internal_num_queries() != 0) {
    _this->_internal_set_num_queries(from._internal_num_queries());
  }
  if (from._internal_top_k() != 0) {
    _this->_internal_set_top_k(from._internal_top_k());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void SearchResultData::CopyFrom(const SearchResultData& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:milvus.proto.schema.SearchResultData)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

bool SearchResultData::IsInitialized() const {
  return true;
}

void SearchResultData::InternalSwap(SearchResultData* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.fields_data_.InternalSwap(&other->_impl_.fields_data_);
  _impl_.scores_.InternalSwap(&other->_impl_.scores_);
  _impl_.topks_.InternalSwap(&other->_impl_.topks_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(SearchResultData, _impl_.top_k_)
      + sizeof(SearchResultData::_impl_.top_k_)
      - PROTOBUF_FIELD_OFFSET(SearchResultData, _impl_.ids_)>(
          reinterpret_cast<char*>(&_impl_.ids_),
          reinterpret_cast<char*>(&other->_impl_.ids_));
}

::PROTOBUF_NAMESPACE_ID::Metadata SearchResultData::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_schema_2eproto_getter, &descriptor_table_schema_2eproto_once,
      file_level_metadata_schema_2eproto[13]);
}

// @@protoc_insertion_point(namespace_scope)
}  // namespace schema
}  // namespace proto
}  // namespace milvus
PROTOBUF_NAMESPACE_OPEN
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::FieldSchema*
Arena::CreateMaybeMessage< ::milvus::proto::schema::FieldSchema >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::FieldSchema >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::CollectionSchema*
Arena::CreateMaybeMessage< ::milvus::proto::schema::CollectionSchema >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::CollectionSchema >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::BoolArray*
Arena::CreateMaybeMessage< ::milvus::proto::schema::BoolArray >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::BoolArray >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::IntArray*
Arena::CreateMaybeMessage< ::milvus::proto::schema::IntArray >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::IntArray >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::LongArray*
Arena::CreateMaybeMessage< ::milvus::proto::schema::LongArray >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::LongArray >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::FloatArray*
Arena::CreateMaybeMessage< ::milvus::proto::schema::FloatArray >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::FloatArray >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::DoubleArray*
Arena::CreateMaybeMessage< ::milvus::proto::schema::DoubleArray >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::DoubleArray >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::BytesArray*
Arena::CreateMaybeMessage< ::milvus::proto::schema::BytesArray >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::BytesArray >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::StringArray*
Arena::CreateMaybeMessage< ::milvus::proto::schema::StringArray >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::StringArray >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::ScalarField*
Arena::CreateMaybeMessage< ::milvus::proto::schema::ScalarField >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::ScalarField >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::VectorField*
Arena::CreateMaybeMessage< ::milvus::proto::schema::VectorField >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::VectorField >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::FieldData*
Arena::CreateMaybeMessage< ::milvus::proto::schema::FieldData >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::FieldData >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::IDs*
Arena::CreateMaybeMessage< ::milvus::proto::schema::IDs >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::IDs >(arena);
}
template<> PROTOBUF_NOINLINE ::milvus::proto::schema::SearchResultData*
Arena::CreateMaybeMessage< ::milvus::proto::schema::SearchResultData >(Arena* arena) {
  return Arena::CreateMessageInternal< ::milvus::proto::schema::SearchResultData >(arena);
}
PROTOBUF_NAMESPACE_CLOSE

// @@protoc_insertion_point(global_scope)
#include <google/protobuf/port_undef.inc>
