// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: greptime/v1/ddl.proto

#include "greptime/v1/ddl.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 greptime {
namespace v1 {
PROTOBUF_CONSTEXPR DdlRequest::DdlRequest(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.expr_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct DdlRequestDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DdlRequestDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DdlRequestDefaultTypeInternal() {}
  union {
    DdlRequest _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DdlRequestDefaultTypeInternal _DdlRequest_default_instance_;
PROTOBUF_CONSTEXPR CreateFlowExpr_FlowOptionsEntry_DoNotUse::CreateFlowExpr_FlowOptionsEntry_DoNotUse(
    ::_pbi::ConstantInitialized) {}
struct CreateFlowExpr_FlowOptionsEntry_DoNotUseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateFlowExpr_FlowOptionsEntry_DoNotUseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateFlowExpr_FlowOptionsEntry_DoNotUseDefaultTypeInternal() {}
  union {
    CreateFlowExpr_FlowOptionsEntry_DoNotUse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateFlowExpr_FlowOptionsEntry_DoNotUseDefaultTypeInternal _CreateFlowExpr_FlowOptionsEntry_DoNotUse_default_instance_;
PROTOBUF_CONSTEXPR CreateFlowExpr::CreateFlowExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.source_table_names_)*/{}
  , /*decltype(_impl_.flow_options_)*/{::_pbi::ConstantInitialized()}
  , /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.flow_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.comment_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.sql_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.sink_table_name_)*/nullptr
  , /*decltype(_impl_.expire_after_)*/nullptr
  , /*decltype(_impl_.eval_interval_)*/nullptr
  , /*decltype(_impl_.or_replace_)*/false
  , /*decltype(_impl_.create_if_not_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CreateFlowExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateFlowExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateFlowExprDefaultTypeInternal() {}
  union {
    CreateFlowExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateFlowExprDefaultTypeInternal _CreateFlowExpr_default_instance_;
PROTOBUF_CONSTEXPR DropFlowExpr::DropFlowExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.flow_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.flow_id_)*/nullptr
  , /*decltype(_impl_.drop_if_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DropFlowExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DropFlowExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DropFlowExprDefaultTypeInternal() {}
  union {
    DropFlowExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DropFlowExprDefaultTypeInternal _DropFlowExpr_default_instance_;
PROTOBUF_CONSTEXPR CreateViewExpr::CreateViewExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.table_names_)*/{}
  , /*decltype(_impl_.columns_)*/{}
  , /*decltype(_impl_.plan_columns_)*/{}
  , /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.view_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.logical_plan_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.definition_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.create_if_not_exists_)*/false
  , /*decltype(_impl_.or_replace_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CreateViewExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateViewExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateViewExprDefaultTypeInternal() {}
  union {
    CreateViewExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateViewExprDefaultTypeInternal _CreateViewExpr_default_instance_;
PROTOBUF_CONSTEXPR DropViewExpr::DropViewExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.view_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.view_id_)*/nullptr
  , /*decltype(_impl_.drop_if_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DropViewExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DropViewExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DropViewExprDefaultTypeInternal() {}
  union {
    DropViewExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DropViewExprDefaultTypeInternal _DropViewExpr_default_instance_;
PROTOBUF_CONSTEXPR CreateTableExpr_TableOptionsEntry_DoNotUse::CreateTableExpr_TableOptionsEntry_DoNotUse(
    ::_pbi::ConstantInitialized) {}
struct CreateTableExpr_TableOptionsEntry_DoNotUseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateTableExpr_TableOptionsEntry_DoNotUseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateTableExpr_TableOptionsEntry_DoNotUseDefaultTypeInternal() {}
  union {
    CreateTableExpr_TableOptionsEntry_DoNotUse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateTableExpr_TableOptionsEntry_DoNotUseDefaultTypeInternal _CreateTableExpr_TableOptionsEntry_DoNotUse_default_instance_;
PROTOBUF_CONSTEXPR CreateTableExpr::CreateTableExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_defs_)*/{}
  , /*decltype(_impl_.primary_keys_)*/{}
  , /*decltype(_impl_.table_options_)*/{::_pbi::ConstantInitialized()}
  , /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.table_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.desc_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.time_index_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.engine_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.table_id_)*/nullptr
  , /*decltype(_impl_.create_if_not_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CreateTableExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateTableExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateTableExprDefaultTypeInternal() {}
  union {
    CreateTableExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateTableExprDefaultTypeInternal _CreateTableExpr_default_instance_;
PROTOBUF_CONSTEXPR AlterTableExpr::AlterTableExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.table_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.kind_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct AlterTableExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AlterTableExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AlterTableExprDefaultTypeInternal() {}
  union {
    AlterTableExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AlterTableExprDefaultTypeInternal _AlterTableExpr_default_instance_;
PROTOBUF_CONSTEXPR DropDefault::DropDefault(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DropDefaultDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DropDefaultDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DropDefaultDefaultTypeInternal() {}
  union {
    DropDefault _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DropDefaultDefaultTypeInternal _DropDefault_default_instance_;
PROTOBUF_CONSTEXPR SetIndexes::SetIndexes(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.set_indexes_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct SetIndexesDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SetIndexesDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SetIndexesDefaultTypeInternal() {}
  union {
    SetIndexes _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetIndexesDefaultTypeInternal _SetIndexes_default_instance_;
PROTOBUF_CONSTEXPR UnsetIndexes::UnsetIndexes(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.unset_indexes_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UnsetIndexesDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UnsetIndexesDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UnsetIndexesDefaultTypeInternal() {}
  union {
    UnsetIndexes _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UnsetIndexesDefaultTypeInternal _UnsetIndexes_default_instance_;
PROTOBUF_CONSTEXPR SetDefault::SetDefault(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.default_constraint_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct SetDefaultDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SetDefaultDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SetDefaultDefaultTypeInternal() {}
  union {
    SetDefault _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetDefaultDefaultTypeInternal _SetDefault_default_instance_;
PROTOBUF_CONSTEXPR SetIndex::SetIndex(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.options_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct SetIndexDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SetIndexDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SetIndexDefaultTypeInternal() {}
  union {
    SetIndex _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetIndexDefaultTypeInternal _SetIndex_default_instance_;
PROTOBUF_CONSTEXPR UnsetIndex::UnsetIndex(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.options_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct UnsetIndexDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UnsetIndexDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UnsetIndexDefaultTypeInternal() {}
  union {
    UnsetIndex _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UnsetIndexDefaultTypeInternal _UnsetIndex_default_instance_;
PROTOBUF_CONSTEXPR Repartition::Repartition(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.from_partition_exprs_)*/{}
  , /*decltype(_impl_.into_partition_exprs_)*/{}
  , /*decltype(_impl_.source_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct RepartitionDefaultTypeInternal {
  PROTOBUF_CONSTEXPR RepartitionDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~RepartitionDefaultTypeInternal() {}
  union {
    Repartition _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RepartitionDefaultTypeInternal _Repartition_default_instance_;
PROTOBUF_CONSTEXPR PartitionExprs::PartitionExprs(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.exprs_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct PartitionExprsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR PartitionExprsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~PartitionExprsDefaultTypeInternal() {}
  union {
    PartitionExprs _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PartitionExprsDefaultTypeInternal _PartitionExprs_default_instance_;
PROTOBUF_CONSTEXPR UnpartitionedSource::UnpartitionedSource(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.partition_columns_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UnpartitionedSourceDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UnpartitionedSourceDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UnpartitionedSourceDefaultTypeInternal() {}
  union {
    UnpartitionedSource _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UnpartitionedSourceDefaultTypeInternal _UnpartitionedSource_default_instance_;
PROTOBUF_CONSTEXPR DropTableExpr::DropTableExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.table_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.table_id_)*/nullptr
  , /*decltype(_impl_.drop_if_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DropTableExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DropTableExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DropTableExprDefaultTypeInternal() {}
  union {
    DropTableExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DropTableExprDefaultTypeInternal _DropTableExpr_default_instance_;
PROTOBUF_CONSTEXPR CreateDatabaseExpr_OptionsEntry_DoNotUse::CreateDatabaseExpr_OptionsEntry_DoNotUse(
    ::_pbi::ConstantInitialized) {}
struct CreateDatabaseExpr_OptionsEntry_DoNotUseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateDatabaseExpr_OptionsEntry_DoNotUseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateDatabaseExpr_OptionsEntry_DoNotUseDefaultTypeInternal() {}
  union {
    CreateDatabaseExpr_OptionsEntry_DoNotUse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateDatabaseExpr_OptionsEntry_DoNotUseDefaultTypeInternal _CreateDatabaseExpr_OptionsEntry_DoNotUse_default_instance_;
PROTOBUF_CONSTEXPR CreateDatabaseExpr::CreateDatabaseExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.options_)*/{::_pbi::ConstantInitialized()}
  , /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.create_if_not_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CreateDatabaseExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateDatabaseExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateDatabaseExprDefaultTypeInternal() {}
  union {
    CreateDatabaseExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateDatabaseExprDefaultTypeInternal _CreateDatabaseExpr_default_instance_;
PROTOBUF_CONSTEXPR TruncateTableExpr::TruncateTableExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.table_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.table_id_)*/nullptr
  , /*decltype(_impl_.time_ranges_)*/nullptr
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct TruncateTableExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR TruncateTableExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~TruncateTableExprDefaultTypeInternal() {}
  union {
    TruncateTableExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TruncateTableExprDefaultTypeInternal _TruncateTableExpr_default_instance_;
PROTOBUF_CONSTEXPR DropDatabaseExpr::DropDatabaseExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.drop_if_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DropDatabaseExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DropDatabaseExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DropDatabaseExprDefaultTypeInternal() {}
  union {
    DropDatabaseExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DropDatabaseExprDefaultTypeInternal _DropDatabaseExpr_default_instance_;
PROTOBUF_CONSTEXPR AddColumns::AddColumns(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.add_columns_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct AddColumnsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AddColumnsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AddColumnsDefaultTypeInternal() {}
  union {
    AddColumns _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AddColumnsDefaultTypeInternal _AddColumns_default_instance_;
PROTOBUF_CONSTEXPR DropDefaults::DropDefaults(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.drop_defaults_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DropDefaultsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DropDefaultsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DropDefaultsDefaultTypeInternal() {}
  union {
    DropDefaults _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DropDefaultsDefaultTypeInternal _DropDefaults_default_instance_;
PROTOBUF_CONSTEXPR SetDefaults::SetDefaults(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.set_defaults_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct SetDefaultsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SetDefaultsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SetDefaultsDefaultTypeInternal() {}
  union {
    SetDefaults _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetDefaultsDefaultTypeInternal _SetDefaults_default_instance_;
PROTOBUF_CONSTEXPR DropColumns::DropColumns(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.drop_columns_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DropColumnsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DropColumnsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DropColumnsDefaultTypeInternal() {}
  union {
    DropColumns _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DropColumnsDefaultTypeInternal _DropColumns_default_instance_;
PROTOBUF_CONSTEXPR ModifyColumnTypes::ModifyColumnTypes(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.modify_column_types_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct ModifyColumnTypesDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ModifyColumnTypesDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ModifyColumnTypesDefaultTypeInternal() {}
  union {
    ModifyColumnTypes _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ModifyColumnTypesDefaultTypeInternal _ModifyColumnTypes_default_instance_;
PROTOBUF_CONSTEXPR RenameTable::RenameTable(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.new_table_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct RenameTableDefaultTypeInternal {
  PROTOBUF_CONSTEXPR RenameTableDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~RenameTableDefaultTypeInternal() {}
  union {
    RenameTable _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RenameTableDefaultTypeInternal _RenameTable_default_instance_;
PROTOBUF_CONSTEXPR AddColumn::AddColumn(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_def_)*/nullptr
  , /*decltype(_impl_.location_)*/nullptr
  , /*decltype(_impl_.add_if_not_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct AddColumnDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AddColumnDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AddColumnDefaultTypeInternal() {}
  union {
    AddColumn _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AddColumnDefaultTypeInternal _AddColumn_default_instance_;
PROTOBUF_CONSTEXPR ModifyColumnType::ModifyColumnType(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.target_type_extension_)*/nullptr
  , /*decltype(_impl_.target_type_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct ModifyColumnTypeDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ModifyColumnTypeDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ModifyColumnTypeDefaultTypeInternal() {}
  union {
    ModifyColumnType _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ModifyColumnTypeDefaultTypeInternal _ModifyColumnType_default_instance_;
PROTOBUF_CONSTEXPR Option::Option(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.key_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.value_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct OptionDefaultTypeInternal {
  PROTOBUF_CONSTEXPR OptionDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~OptionDefaultTypeInternal() {}
  union {
    Option _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 OptionDefaultTypeInternal _Option_default_instance_;
PROTOBUF_CONSTEXPR SetTableOptions::SetTableOptions(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.table_options_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct SetTableOptionsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SetTableOptionsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SetTableOptionsDefaultTypeInternal() {}
  union {
    SetTableOptions _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetTableOptionsDefaultTypeInternal _SetTableOptions_default_instance_;
PROTOBUF_CONSTEXPR UnsetTableOptions::UnsetTableOptions(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.keys_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UnsetTableOptionsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UnsetTableOptionsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UnsetTableOptionsDefaultTypeInternal() {}
  union {
    UnsetTableOptions _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UnsetTableOptionsDefaultTypeInternal _UnsetTableOptions_default_instance_;
PROTOBUF_CONSTEXPR DropColumn::DropColumn(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DropColumnDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DropColumnDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DropColumnDefaultTypeInternal() {}
  union {
    DropColumn _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DropColumnDefaultTypeInternal _DropColumn_default_instance_;
PROTOBUF_CONSTEXPR TableId::TableId(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.id_)*/0u
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct TableIdDefaultTypeInternal {
  PROTOBUF_CONSTEXPR TableIdDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~TableIdDefaultTypeInternal() {}
  union {
    TableId _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TableIdDefaultTypeInternal _TableId_default_instance_;
PROTOBUF_CONSTEXPR FlowId::FlowId(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.id_)*/0u
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct FlowIdDefaultTypeInternal {
  PROTOBUF_CONSTEXPR FlowIdDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~FlowIdDefaultTypeInternal() {}
  union {
    FlowId _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FlowIdDefaultTypeInternal _FlowId_default_instance_;
PROTOBUF_CONSTEXPR ColumnDef::ColumnDef(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.default_constraint_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.comment_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.datatype_extension_)*/nullptr
  , /*decltype(_impl_.options_)*/nullptr
  , /*decltype(_impl_.data_type_)*/0
  , /*decltype(_impl_.is_nullable_)*/false
  , /*decltype(_impl_.semantic_type_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct ColumnDefDefaultTypeInternal {
  PROTOBUF_CONSTEXPR ColumnDefDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~ColumnDefDefaultTypeInternal() {}
  union {
    ColumnDef _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ColumnDefDefaultTypeInternal _ColumnDef_default_instance_;
PROTOBUF_CONSTEXPR AddColumnLocation::AddColumnLocation(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.after_column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.location_type_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct AddColumnLocationDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AddColumnLocationDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AddColumnLocationDefaultTypeInternal() {}
  union {
    AddColumnLocation _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AddColumnLocationDefaultTypeInternal _AddColumnLocation_default_instance_;
PROTOBUF_CONSTEXPR SetFulltext::SetFulltext(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.analyzer_)*/0
  , /*decltype(_impl_.enable_)*/false
  , /*decltype(_impl_.case_sensitive_)*/false
  , /*decltype(_impl_.granularity_)*/uint64_t{0u}
  , /*decltype(_impl_.false_positive_rate_)*/0
  , /*decltype(_impl_.backend_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct SetFulltextDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SetFulltextDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SetFulltextDefaultTypeInternal() {}
  union {
    SetFulltext _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetFulltextDefaultTypeInternal _SetFulltext_default_instance_;
PROTOBUF_CONSTEXPR UnsetFulltext::UnsetFulltext(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UnsetFulltextDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UnsetFulltextDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UnsetFulltextDefaultTypeInternal() {}
  union {
    UnsetFulltext _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UnsetFulltextDefaultTypeInternal _UnsetFulltext_default_instance_;
PROTOBUF_CONSTEXPR SetInverted::SetInverted(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct SetInvertedDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SetInvertedDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SetInvertedDefaultTypeInternal() {}
  union {
    SetInverted _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetInvertedDefaultTypeInternal _SetInverted_default_instance_;
PROTOBUF_CONSTEXPR UnsetInverted::UnsetInverted(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UnsetInvertedDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UnsetInvertedDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UnsetInvertedDefaultTypeInternal() {}
  union {
    UnsetInverted _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UnsetInvertedDefaultTypeInternal _UnsetInverted_default_instance_;
PROTOBUF_CONSTEXPR SetSkipping::SetSkipping(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.granularity_)*/uint64_t{0u}
  , /*decltype(_impl_.enable_)*/false
  , /*decltype(_impl_.skipping_index_type_)*/0
  , /*decltype(_impl_.false_positive_rate_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct SetSkippingDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SetSkippingDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SetSkippingDefaultTypeInternal() {}
  union {
    SetSkipping _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetSkippingDefaultTypeInternal _SetSkipping_default_instance_;
PROTOBUF_CONSTEXPR UnsetSkipping::UnsetSkipping(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UnsetSkippingDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UnsetSkippingDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UnsetSkippingDefaultTypeInternal() {}
  union {
    UnsetSkipping _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UnsetSkippingDefaultTypeInternal _UnsetSkipping_default_instance_;
PROTOBUF_CONSTEXPR AlterDatabaseExpr::AlterDatabaseExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.kind_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct AlterDatabaseExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR AlterDatabaseExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~AlterDatabaseExprDefaultTypeInternal() {}
  union {
    AlterDatabaseExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 AlterDatabaseExprDefaultTypeInternal _AlterDatabaseExpr_default_instance_;
PROTOBUF_CONSTEXPR SetDatabaseOptions::SetDatabaseOptions(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.set_database_options_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct SetDatabaseOptionsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR SetDatabaseOptionsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~SetDatabaseOptionsDefaultTypeInternal() {}
  union {
    SetDatabaseOptions _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SetDatabaseOptionsDefaultTypeInternal _SetDatabaseOptions_default_instance_;
PROTOBUF_CONSTEXPR UnsetDatabaseOptions::UnsetDatabaseOptions(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.keys_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct UnsetDatabaseOptionsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR UnsetDatabaseOptionsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~UnsetDatabaseOptionsDefaultTypeInternal() {}
  union {
    UnsetDatabaseOptions _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 UnsetDatabaseOptionsDefaultTypeInternal _UnsetDatabaseOptions_default_instance_;
PROTOBUF_CONSTEXPR CreateTriggerExpr_LabelsEntry_DoNotUse::CreateTriggerExpr_LabelsEntry_DoNotUse(
    ::_pbi::ConstantInitialized) {}
struct CreateTriggerExpr_LabelsEntry_DoNotUseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateTriggerExpr_LabelsEntry_DoNotUseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateTriggerExpr_LabelsEntry_DoNotUseDefaultTypeInternal() {}
  union {
    CreateTriggerExpr_LabelsEntry_DoNotUse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateTriggerExpr_LabelsEntry_DoNotUseDefaultTypeInternal _CreateTriggerExpr_LabelsEntry_DoNotUse_default_instance_;
PROTOBUF_CONSTEXPR CreateTriggerExpr_AnnotationsEntry_DoNotUse::CreateTriggerExpr_AnnotationsEntry_DoNotUse(
    ::_pbi::ConstantInitialized) {}
struct CreateTriggerExpr_AnnotationsEntry_DoNotUseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateTriggerExpr_AnnotationsEntry_DoNotUseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateTriggerExpr_AnnotationsEntry_DoNotUseDefaultTypeInternal() {}
  union {
    CreateTriggerExpr_AnnotationsEntry_DoNotUse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateTriggerExpr_AnnotationsEntry_DoNotUseDefaultTypeInternal _CreateTriggerExpr_AnnotationsEntry_DoNotUse_default_instance_;
PROTOBUF_CONSTEXPR CreateTriggerExpr::CreateTriggerExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.channels_)*/{}
  , /*decltype(_impl_.labels_)*/{::_pbi::ConstantInitialized()}
  , /*decltype(_impl_.annotations_)*/{::_pbi::ConstantInitialized()}
  , /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.trigger_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.sql_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.raw_interval_expr_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.for_raw_expr_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.keep_firing_for_raw_expr_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.interval_)*/nullptr
  , /*decltype(_impl_.for__)*/nullptr
  , /*decltype(_impl_.keep_firing_for_)*/nullptr
  , /*decltype(_impl_.create_if_not_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CreateTriggerExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CreateTriggerExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CreateTriggerExprDefaultTypeInternal() {}
  union {
    CreateTriggerExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CreateTriggerExprDefaultTypeInternal _CreateTriggerExpr_default_instance_;
PROTOBUF_CONSTEXPR NotifyChannel::NotifyChannel(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.channel_type_)*/{}
  , /*decltype(_impl_._cached_size_)*/{}
  , /*decltype(_impl_._oneof_case_)*/{}} {}
struct NotifyChannelDefaultTypeInternal {
  PROTOBUF_CONSTEXPR NotifyChannelDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~NotifyChannelDefaultTypeInternal() {}
  union {
    NotifyChannel _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 NotifyChannelDefaultTypeInternal _NotifyChannel_default_instance_;
PROTOBUF_CONSTEXPR WebhookOptions_OptsEntry_DoNotUse::WebhookOptions_OptsEntry_DoNotUse(
    ::_pbi::ConstantInitialized) {}
struct WebhookOptions_OptsEntry_DoNotUseDefaultTypeInternal {
  PROTOBUF_CONSTEXPR WebhookOptions_OptsEntry_DoNotUseDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~WebhookOptions_OptsEntry_DoNotUseDefaultTypeInternal() {}
  union {
    WebhookOptions_OptsEntry_DoNotUse _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 WebhookOptions_OptsEntry_DoNotUseDefaultTypeInternal _WebhookOptions_OptsEntry_DoNotUse_default_instance_;
PROTOBUF_CONSTEXPR WebhookOptions::WebhookOptions(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.opts_)*/{::_pbi::ConstantInitialized()}
  , /*decltype(_impl_.url_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct WebhookOptionsDefaultTypeInternal {
  PROTOBUF_CONSTEXPR WebhookOptionsDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~WebhookOptionsDefaultTypeInternal() {}
  union {
    WebhookOptions _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 WebhookOptionsDefaultTypeInternal _WebhookOptions_default_instance_;
PROTOBUF_CONSTEXPR DropTriggerExpr::DropTriggerExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.trigger_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.drop_if_exists_)*/false
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct DropTriggerExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR DropTriggerExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~DropTriggerExprDefaultTypeInternal() {}
  union {
    DropTriggerExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DropTriggerExprDefaultTypeInternal _DropTriggerExpr_default_instance_;
PROTOBUF_CONSTEXPR CommentOnExpr::CommentOnExpr(
    ::_pbi::ConstantInitialized): _impl_{
    /*decltype(_impl_.catalog_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.schema_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.object_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.column_name_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.comment_)*/{&::_pbi::fixed_address_empty_string, ::_pbi::ConstantInitialized{}}
  , /*decltype(_impl_.object_type_)*/0
  , /*decltype(_impl_._cached_size_)*/{}} {}
struct CommentOnExprDefaultTypeInternal {
  PROTOBUF_CONSTEXPR CommentOnExprDefaultTypeInternal()
      : _instance(::_pbi::ConstantInitialized{}) {}
  ~CommentOnExprDefaultTypeInternal() {}
  union {
    CommentOnExpr _instance;
  };
};
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CommentOnExprDefaultTypeInternal _CommentOnExpr_default_instance_;
}  // namespace v1
}  // namespace greptime
static ::_pb::Metadata file_level_metadata_greptime_2fv1_2fddl_2eproto[56];
static const ::_pb::EnumDescriptor* file_level_enum_descriptors_greptime_2fv1_2fddl_2eproto[5];
static constexpr ::_pb::ServiceDescriptor const** file_level_service_descriptors_greptime_2fv1_2fddl_2eproto = nullptr;

const uint32_t TableStruct_greptime_2fv1_2fddl_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DdlRequest, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DdlRequest, _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,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DdlRequest, _impl_.expr_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr_FlowOptionsEntry_DoNotUse, _has_bits_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr_FlowOptionsEntry_DoNotUse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr_FlowOptionsEntry_DoNotUse, key_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr_FlowOptionsEntry_DoNotUse, value_),
  0,
  1,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.flow_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.source_table_names_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.sink_table_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.or_replace_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.create_if_not_exists_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.expire_after_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.eval_interval_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.comment_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.sql_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateFlowExpr, _impl_.flow_options_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropFlowExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropFlowExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropFlowExpr, _impl_.flow_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropFlowExpr, _impl_.flow_id_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropFlowExpr, _impl_.drop_if_exists_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.schema_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.view_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.logical_plan_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.create_if_not_exists_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.or_replace_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.table_names_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.columns_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.plan_columns_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateViewExpr, _impl_.definition_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropViewExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropViewExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropViewExpr, _impl_.schema_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropViewExpr, _impl_.view_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropViewExpr, _impl_.view_id_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropViewExpr, _impl_.drop_if_exists_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr_TableOptionsEntry_DoNotUse, _has_bits_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr_TableOptionsEntry_DoNotUse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr_TableOptionsEntry_DoNotUse, key_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr_TableOptionsEntry_DoNotUse, value_),
  0,
  1,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.schema_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.table_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.desc_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.column_defs_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.time_index_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.primary_keys_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.create_if_not_exists_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.table_options_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.table_id_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTableExpr, _impl_.engine_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterTableExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterTableExpr, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterTableExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterTableExpr, _impl_.schema_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterTableExpr, _impl_.table_name_),
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterTableExpr, _impl_.kind_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropDefault, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropDefault, _impl_.column_name_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetIndexes, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetIndexes, _impl_.set_indexes_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetIndexes, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetIndexes, _impl_.unset_indexes_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetDefault, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetDefault, _impl_.column_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetDefault, _impl_.default_constraint_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetIndex, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetIndex, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetIndex, _impl_.options_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetIndex, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetIndex, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetIndex, _impl_.options_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::Repartition, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::Repartition, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::Repartition, _impl_.from_partition_exprs_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::Repartition, _impl_.into_partition_exprs_),
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::greptime::v1::Repartition, _impl_.source_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::PartitionExprs, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::PartitionExprs, _impl_.exprs_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnpartitionedSource, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnpartitionedSource, _impl_.partition_columns_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTableExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTableExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTableExpr, _impl_.schema_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTableExpr, _impl_.table_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTableExpr, _impl_.table_id_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTableExpr, _impl_.drop_if_exists_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateDatabaseExpr_OptionsEntry_DoNotUse, _has_bits_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateDatabaseExpr_OptionsEntry_DoNotUse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateDatabaseExpr_OptionsEntry_DoNotUse, key_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateDatabaseExpr_OptionsEntry_DoNotUse, value_),
  0,
  1,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateDatabaseExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateDatabaseExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateDatabaseExpr, _impl_.schema_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateDatabaseExpr, _impl_.create_if_not_exists_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateDatabaseExpr, _impl_.options_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::TruncateTableExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::TruncateTableExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::TruncateTableExpr, _impl_.schema_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::TruncateTableExpr, _impl_.table_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::TruncateTableExpr, _impl_.table_id_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::TruncateTableExpr, _impl_.time_ranges_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropDatabaseExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropDatabaseExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropDatabaseExpr, _impl_.schema_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropDatabaseExpr, _impl_.drop_if_exists_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AddColumns, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AddColumns, _impl_.add_columns_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropDefaults, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropDefaults, _impl_.drop_defaults_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetDefaults, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetDefaults, _impl_.set_defaults_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropColumns, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropColumns, _impl_.drop_columns_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ModifyColumnTypes, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ModifyColumnTypes, _impl_.modify_column_types_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::RenameTable, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::RenameTable, _impl_.new_table_name_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AddColumn, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AddColumn, _impl_.column_def_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AddColumn, _impl_.location_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AddColumn, _impl_.add_if_not_exists_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ModifyColumnType, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ModifyColumnType, _impl_.column_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ModifyColumnType, _impl_.target_type_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ModifyColumnType, _impl_.target_type_extension_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::Option, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::Option, _impl_.key_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::Option, _impl_.value_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetTableOptions, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetTableOptions, _impl_.table_options_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetTableOptions, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetTableOptions, _impl_.keys_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropColumn, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropColumn, _impl_.name_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::TableId, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::TableId, _impl_.id_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::FlowId, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::FlowId, _impl_.id_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDef, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDef, _impl_.name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDef, _impl_.data_type_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDef, _impl_.is_nullable_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDef, _impl_.default_constraint_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDef, _impl_.semantic_type_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDef, _impl_.comment_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDef, _impl_.datatype_extension_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::ColumnDef, _impl_.options_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AddColumnLocation, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AddColumnLocation, _impl_.location_type_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AddColumnLocation, _impl_.after_column_name_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetFulltext, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetFulltext, _impl_.column_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetFulltext, _impl_.enable_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetFulltext, _impl_.analyzer_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetFulltext, _impl_.case_sensitive_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetFulltext, _impl_.backend_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetFulltext, _impl_.granularity_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetFulltext, _impl_.false_positive_rate_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetFulltext, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetFulltext, _impl_.column_name_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetInverted, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetInverted, _impl_.column_name_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetInverted, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetInverted, _impl_.column_name_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetSkipping, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetSkipping, _impl_.column_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetSkipping, _impl_.enable_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetSkipping, _impl_.granularity_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetSkipping, _impl_.skipping_index_type_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetSkipping, _impl_.false_positive_rate_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetSkipping, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetSkipping, _impl_.column_name_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterDatabaseExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterDatabaseExpr, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterDatabaseExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterDatabaseExpr, _impl_.schema_name_),
  ::_pbi::kInvalidFieldOffsetTag,
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterDatabaseExpr, _impl_.kind_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetDatabaseOptions, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::SetDatabaseOptions, _impl_.set_database_options_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetDatabaseOptions, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::UnsetDatabaseOptions, _impl_.keys_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr_LabelsEntry_DoNotUse, _has_bits_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr_LabelsEntry_DoNotUse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr_LabelsEntry_DoNotUse, key_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr_LabelsEntry_DoNotUse, value_),
  0,
  1,
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr_AnnotationsEntry_DoNotUse, _has_bits_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr_AnnotationsEntry_DoNotUse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr_AnnotationsEntry_DoNotUse, key_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr_AnnotationsEntry_DoNotUse, value_),
  0,
  1,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.trigger_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.create_if_not_exists_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.sql_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.channels_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.labels_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.annotations_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.interval_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.raw_interval_expr_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.for__),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.for_raw_expr_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.keep_firing_for_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CreateTriggerExpr, _impl_.keep_firing_for_raw_expr_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::NotifyChannel, _internal_metadata_),
  ~0u,  // no _extensions_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::NotifyChannel, _impl_._oneof_case_[0]),
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::NotifyChannel, _impl_.name_),
  ::_pbi::kInvalidFieldOffsetTag,
  PROTOBUF_FIELD_OFFSET(::greptime::v1::NotifyChannel, _impl_.channel_type_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::WebhookOptions_OptsEntry_DoNotUse, _has_bits_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::WebhookOptions_OptsEntry_DoNotUse, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::WebhookOptions_OptsEntry_DoNotUse, key_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::WebhookOptions_OptsEntry_DoNotUse, value_),
  0,
  1,
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::WebhookOptions, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::WebhookOptions, _impl_.url_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::WebhookOptions, _impl_.opts_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTriggerExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTriggerExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTriggerExpr, _impl_.trigger_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::DropTriggerExpr, _impl_.drop_if_exists_),
  ~0u,  // no _has_bits_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CommentOnExpr, _internal_metadata_),
  ~0u,  // no _extensions_
  ~0u,  // no _oneof_case_
  ~0u,  // no _weak_field_map_
  ~0u,  // no _inlined_string_donated_
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CommentOnExpr, _impl_.catalog_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CommentOnExpr, _impl_.schema_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CommentOnExpr, _impl_.object_type_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CommentOnExpr, _impl_.object_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CommentOnExpr, _impl_.column_name_),
  PROTOBUF_FIELD_OFFSET(::greptime::v1::CommentOnExpr, _impl_.comment_),
};
static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, -1, -1, sizeof(::greptime::v1::DdlRequest)},
  { 18, 26, -1, sizeof(::greptime::v1::CreateFlowExpr_FlowOptionsEntry_DoNotUse)},
  { 28, -1, -1, sizeof(::greptime::v1::CreateFlowExpr)},
  { 45, -1, -1, sizeof(::greptime::v1::DropFlowExpr)},
  { 55, -1, -1, sizeof(::greptime::v1::CreateViewExpr)},
  { 71, -1, -1, sizeof(::greptime::v1::DropViewExpr)},
  { 82, 90, -1, sizeof(::greptime::v1::CreateTableExpr_TableOptionsEntry_DoNotUse)},
  { 92, -1, -1, sizeof(::greptime::v1::CreateTableExpr)},
  { 109, -1, -1, sizeof(::greptime::v1::AlterTableExpr)},
  { 132, -1, -1, sizeof(::greptime::v1::DropDefault)},
  { 139, -1, -1, sizeof(::greptime::v1::SetIndexes)},
  { 146, -1, -1, sizeof(::greptime::v1::UnsetIndexes)},
  { 153, -1, -1, sizeof(::greptime::v1::SetDefault)},
  { 161, -1, -1, sizeof(::greptime::v1::SetIndex)},
  { 171, -1, -1, sizeof(::greptime::v1::UnsetIndex)},
  { 181, -1, -1, sizeof(::greptime::v1::Repartition)},
  { 192, -1, -1, sizeof(::greptime::v1::PartitionExprs)},
  { 199, -1, -1, sizeof(::greptime::v1::UnpartitionedSource)},
  { 206, -1, -1, sizeof(::greptime::v1::DropTableExpr)},
  { 217, 225, -1, sizeof(::greptime::v1::CreateDatabaseExpr_OptionsEntry_DoNotUse)},
  { 227, -1, -1, sizeof(::greptime::v1::CreateDatabaseExpr)},
  { 237, -1, -1, sizeof(::greptime::v1::TruncateTableExpr)},
  { 248, -1, -1, sizeof(::greptime::v1::DropDatabaseExpr)},
  { 257, -1, -1, sizeof(::greptime::v1::AddColumns)},
  { 264, -1, -1, sizeof(::greptime::v1::DropDefaults)},
  { 271, -1, -1, sizeof(::greptime::v1::SetDefaults)},
  { 278, -1, -1, sizeof(::greptime::v1::DropColumns)},
  { 285, -1, -1, sizeof(::greptime::v1::ModifyColumnTypes)},
  { 292, -1, -1, sizeof(::greptime::v1::RenameTable)},
  { 299, -1, -1, sizeof(::greptime::v1::AddColumn)},
  { 308, -1, -1, sizeof(::greptime::v1::ModifyColumnType)},
  { 317, -1, -1, sizeof(::greptime::v1::Option)},
  { 325, -1, -1, sizeof(::greptime::v1::SetTableOptions)},
  { 332, -1, -1, sizeof(::greptime::v1::UnsetTableOptions)},
  { 339, -1, -1, sizeof(::greptime::v1::DropColumn)},
  { 346, -1, -1, sizeof(::greptime::v1::TableId)},
  { 353, -1, -1, sizeof(::greptime::v1::FlowId)},
  { 360, -1, -1, sizeof(::greptime::v1::ColumnDef)},
  { 374, -1, -1, sizeof(::greptime::v1::AddColumnLocation)},
  { 382, -1, -1, sizeof(::greptime::v1::SetFulltext)},
  { 395, -1, -1, sizeof(::greptime::v1::UnsetFulltext)},
  { 402, -1, -1, sizeof(::greptime::v1::SetInverted)},
  { 409, -1, -1, sizeof(::greptime::v1::UnsetInverted)},
  { 416, -1, -1, sizeof(::greptime::v1::SetSkipping)},
  { 427, -1, -1, sizeof(::greptime::v1::UnsetSkipping)},
  { 434, -1, -1, sizeof(::greptime::v1::AlterDatabaseExpr)},
  { 445, -1, -1, sizeof(::greptime::v1::SetDatabaseOptions)},
  { 452, -1, -1, sizeof(::greptime::v1::UnsetDatabaseOptions)},
  { 459, 467, -1, sizeof(::greptime::v1::CreateTriggerExpr_LabelsEntry_DoNotUse)},
  { 469, 477, -1, sizeof(::greptime::v1::CreateTriggerExpr_AnnotationsEntry_DoNotUse)},
  { 479, -1, -1, sizeof(::greptime::v1::CreateTriggerExpr)},
  { 498, -1, -1, sizeof(::greptime::v1::NotifyChannel)},
  { 507, 515, -1, sizeof(::greptime::v1::WebhookOptions_OptsEntry_DoNotUse)},
  { 517, -1, -1, sizeof(::greptime::v1::WebhookOptions)},
  { 525, -1, -1, sizeof(::greptime::v1::DropTriggerExpr)},
  { 534, -1, -1, sizeof(::greptime::v1::CommentOnExpr)},
};

static const ::_pb::Message* const file_default_instances[] = {
  &::greptime::v1::_DdlRequest_default_instance_._instance,
  &::greptime::v1::_CreateFlowExpr_FlowOptionsEntry_DoNotUse_default_instance_._instance,
  &::greptime::v1::_CreateFlowExpr_default_instance_._instance,
  &::greptime::v1::_DropFlowExpr_default_instance_._instance,
  &::greptime::v1::_CreateViewExpr_default_instance_._instance,
  &::greptime::v1::_DropViewExpr_default_instance_._instance,
  &::greptime::v1::_CreateTableExpr_TableOptionsEntry_DoNotUse_default_instance_._instance,
  &::greptime::v1::_CreateTableExpr_default_instance_._instance,
  &::greptime::v1::_AlterTableExpr_default_instance_._instance,
  &::greptime::v1::_DropDefault_default_instance_._instance,
  &::greptime::v1::_SetIndexes_default_instance_._instance,
  &::greptime::v1::_UnsetIndexes_default_instance_._instance,
  &::greptime::v1::_SetDefault_default_instance_._instance,
  &::greptime::v1::_SetIndex_default_instance_._instance,
  &::greptime::v1::_UnsetIndex_default_instance_._instance,
  &::greptime::v1::_Repartition_default_instance_._instance,
  &::greptime::v1::_PartitionExprs_default_instance_._instance,
  &::greptime::v1::_UnpartitionedSource_default_instance_._instance,
  &::greptime::v1::_DropTableExpr_default_instance_._instance,
  &::greptime::v1::_CreateDatabaseExpr_OptionsEntry_DoNotUse_default_instance_._instance,
  &::greptime::v1::_CreateDatabaseExpr_default_instance_._instance,
  &::greptime::v1::_TruncateTableExpr_default_instance_._instance,
  &::greptime::v1::_DropDatabaseExpr_default_instance_._instance,
  &::greptime::v1::_AddColumns_default_instance_._instance,
  &::greptime::v1::_DropDefaults_default_instance_._instance,
  &::greptime::v1::_SetDefaults_default_instance_._instance,
  &::greptime::v1::_DropColumns_default_instance_._instance,
  &::greptime::v1::_ModifyColumnTypes_default_instance_._instance,
  &::greptime::v1::_RenameTable_default_instance_._instance,
  &::greptime::v1::_AddColumn_default_instance_._instance,
  &::greptime::v1::_ModifyColumnType_default_instance_._instance,
  &::greptime::v1::_Option_default_instance_._instance,
  &::greptime::v1::_SetTableOptions_default_instance_._instance,
  &::greptime::v1::_UnsetTableOptions_default_instance_._instance,
  &::greptime::v1::_DropColumn_default_instance_._instance,
  &::greptime::v1::_TableId_default_instance_._instance,
  &::greptime::v1::_FlowId_default_instance_._instance,
  &::greptime::v1::_ColumnDef_default_instance_._instance,
  &::greptime::v1::_AddColumnLocation_default_instance_._instance,
  &::greptime::v1::_SetFulltext_default_instance_._instance,
  &::greptime::v1::_UnsetFulltext_default_instance_._instance,
  &::greptime::v1::_SetInverted_default_instance_._instance,
  &::greptime::v1::_UnsetInverted_default_instance_._instance,
  &::greptime::v1::_SetSkipping_default_instance_._instance,
  &::greptime::v1::_UnsetSkipping_default_instance_._instance,
  &::greptime::v1::_AlterDatabaseExpr_default_instance_._instance,
  &::greptime::v1::_SetDatabaseOptions_default_instance_._instance,
  &::greptime::v1::_UnsetDatabaseOptions_default_instance_._instance,
  &::greptime::v1::_CreateTriggerExpr_LabelsEntry_DoNotUse_default_instance_._instance,
  &::greptime::v1::_CreateTriggerExpr_AnnotationsEntry_DoNotUse_default_instance_._instance,
  &::greptime::v1::_CreateTriggerExpr_default_instance_._instance,
  &::greptime::v1::_NotifyChannel_default_instance_._instance,
  &::greptime::v1::_WebhookOptions_OptsEntry_DoNotUse_default_instance_._instance,
  &::greptime::v1::_WebhookOptions_default_instance_._instance,
  &::greptime::v1::_DropTriggerExpr_default_instance_._instance,
  &::greptime::v1::_CommentOnExpr_default_instance_._instance,
};

const char descriptor_table_protodef_greptime_2fv1_2fddl_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n\025greptime/v1/ddl.proto\022\013greptime.v1\032\036go"
  "ogle/protobuf/duration.proto\032\030greptime/v"
  "1/common.proto\"\332\004\n\nDdlRequest\022:\n\017create_"
  "database\030\001 \001(\0132\037.greptime.v1.CreateDatab"
  "aseExprH\000\0224\n\014create_table\030\002 \001(\0132\034.grepti"
  "me.v1.CreateTableExprH\000\0222\n\013alter_table\030\003"
  " \001(\0132\033.greptime.v1.AlterTableExprH\000\0220\n\nd"
  "rop_table\030\004 \001(\0132\032.greptime.v1.DropTableE"
  "xprH\000\0228\n\016truncate_table\030\007 \001(\0132\036.greptime"
  ".v1.TruncateTableExprH\000\0222\n\013create_flow\030\010"
  " \001(\0132\033.greptime.v1.CreateFlowExprH\000\022.\n\td"
  "rop_flow\030\t \001(\0132\031.greptime.v1.DropFlowExp"
  "rH\000\0222\n\013create_view\030\n \001(\0132\033.greptime.v1.C"
  "reateViewExprH\000\022.\n\tdrop_view\030\013 \001(\0132\031.gre"
  "ptime.v1.DropViewExprH\000\0228\n\016alter_databas"
  "e\030\014 \001(\0132\036.greptime.v1.AlterDatabaseExprH"
  "\000\0220\n\ncomment_on\030\r \001(\0132\032.greptime.v1.Comm"
  "entOnExprH\000B\006\n\004expr\"\310\003\n\016CreateFlowExpr\022\024"
  "\n\014catalog_name\030\001 \001(\t\022\021\n\tflow_name\030\002 \001(\t\022"
  "2\n\022source_table_names\030\003 \003(\0132\026.greptime.v"
  "1.TableName\022/\n\017sink_table_name\030\004 \001(\0132\026.g"
  "reptime.v1.TableName\022\022\n\nor_replace\030\005 \001(\010"
  "\022\034\n\024create_if_not_exists\030\006 \001(\010\022.\n\014expire"
  "_after\030\007 \001(\0132\030.greptime.v1.ExpireAfter\0220"
  "\n\reval_interval\030\013 \001(\0132\031.greptime.v1.Eval"
  "Interval\022\017\n\007comment\030\010 \001(\t\022\013\n\003sql\030\t \001(\t\022B"
  "\n\014flow_options\030\n \003(\0132,.greptime.v1.Creat"
  "eFlowExpr.FlowOptionsEntry\0322\n\020FlowOption"
  "sEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"u"
  "\n\014DropFlowExpr\022\024\n\014catalog_name\030\001 \001(\t\022\021\n\t"
  "flow_name\030\002 \001(\t\022$\n\007flow_id\030\003 \001(\0132\023.grept"
  "ime.v1.FlowId\022\026\n\016drop_if_exists\030\005 \001(\010\"\376\001"
  "\n\016CreateViewExpr\022\024\n\014catalog_name\030\001 \001(\t\022\023"
  "\n\013schema_name\030\002 \001(\t\022\021\n\tview_name\030\003 \001(\t\022\024"
  "\n\014logical_plan\030\004 \001(\014\022\034\n\024create_if_not_ex"
  "ists\030\005 \001(\010\022\022\n\nor_replace\030\006 \001(\010\022+\n\013table_"
  "names\030\007 \003(\0132\026.greptime.v1.TableName\022\017\n\007c"
  "olumns\030\010 \003(\t\022\024\n\014plan_columns\030\t \003(\t\022\022\n\nde"
  "finition\030\n \001(\t\"\213\001\n\014DropViewExpr\022\024\n\014catal"
  "og_name\030\001 \001(\t\022\023\n\013schema_name\030\002 \001(\t\022\021\n\tvi"
  "ew_name\030\003 \001(\t\022%\n\007view_id\030\004 \001(\0132\024.greptim"
  "e.v1.TableId\022\026\n\016drop_if_exists\030\005 \001(\010\"\207\003\n"
  "\017CreateTableExpr\022\024\n\014catalog_name\030\001 \001(\t\022\023"
  "\n\013schema_name\030\002 \001(\t\022\022\n\ntable_name\030\003 \001(\t\022"
  "\014\n\004desc\030\004 \001(\t\022+\n\013column_defs\030\005 \003(\0132\026.gre"
  "ptime.v1.ColumnDef\022\022\n\ntime_index\030\006 \001(\t\022\024"
  "\n\014primary_keys\030\007 \003(\t\022\034\n\024create_if_not_ex"
  "ists\030\010 \001(\010\022E\n\rtable_options\030\t \003(\0132..grep"
  "time.v1.CreateTableExpr.TableOptionsEntr"
  "y\022&\n\010table_id\030\n \001(\0132\024.greptime.v1.TableI"
  "d\022\016\n\006engine\030\014 \001(\t\0323\n\021TableOptionsEntry\022\013"
  "\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\373\005\n\016Alter"
  "TableExpr\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013schem"
  "a_name\030\002 \001(\t\022\022\n\ntable_name\030\003 \001(\t\022.\n\013add_"
  "columns\030\004 \001(\0132\027.greptime.v1.AddColumnsH\000"
  "\0220\n\014drop_columns\030\005 \001(\0132\030.greptime.v1.Dro"
  "pColumnsH\000\0220\n\014rename_table\030\006 \001(\0132\030.grept"
  "ime.v1.RenameTableH\000\022=\n\023modify_column_ty"
  "pes\030\007 \001(\0132\036.greptime.v1.ModifyColumnType"
  "sH\000\0229\n\021set_table_options\030\010 \001(\0132\034.greptim"
  "e.v1.SetTableOptionsH\000\022=\n\023unset_table_op"
  "tions\030\013 \001(\0132\036.greptime.v1.UnsetTableOpti"
  "onsH\000\022*\n\tset_index\030\014 \001(\0132\025.greptime.v1.S"
  "etIndexH\000\022.\n\013unset_index\030\r \001(\0132\027.greptim"
  "e.v1.UnsetIndexH\000\0222\n\rdrop_defaults\030\016 \001(\013"
  "2\031.greptime.v1.DropDefaultsH\000\022.\n\013set_ind"
  "exes\030\017 \001(\0132\027.greptime.v1.SetIndexesH\000\0222\n"
  "\runset_indexes\030\020 \001(\0132\031.greptime.v1.Unset"
  "IndexesH\000\0220\n\014set_defaults\030\021 \001(\0132\030.grepti"
  "me.v1.SetDefaultsH\000\022/\n\013repartition\030\022 \001(\013"
  "2\030.greptime.v1.RepartitionH\000B\006\n\004kind\"\"\n\013"
  "DropDefault\022\023\n\013column_name\030\001 \001(\t\"8\n\nSetI"
  "ndexes\022*\n\013set_indexes\030\001 \003(\0132\025.greptime.v"
  "1.SetIndex\">\n\014UnsetIndexes\022.\n\runset_inde"
  "xes\030\001 \003(\0132\027.greptime.v1.UnsetIndex\"=\n\nSe"
  "tDefault\022\023\n\013column_name\030\001 \001(\t\022\032\n\022default"
  "_constraint\030\002 \001(\014\"\237\001\n\010SetIndex\022,\n\010fullte"
  "xt\030\001 \001(\0132\030.greptime.v1.SetFulltextH\000\022,\n\010"
  "inverted\030\002 \001(\0132\030.greptime.v1.SetInverted"
  "H\000\022,\n\010skipping\030\003 \001(\0132\030.greptime.v1.SetSk"
  "ippingH\000B\t\n\007options\"\247\001\n\nUnsetIndex\022.\n\010fu"
  "lltext\030\001 \001(\0132\032.greptime.v1.UnsetFulltext"
  "H\000\022.\n\010inverted\030\002 \001(\0132\032.greptime.v1.Unset"
  "InvertedH\000\022.\n\010skipping\030\003 \001(\0132\032.greptime."
  "v1.UnsetSkippingH\000B\t\n\007options\"\312\001\n\013Repart"
  "ition\022 \n\024from_partition_exprs\030\001 \003(\tB\002\030\001\022"
  "\034\n\024into_partition_exprs\030\002 \003(\t\0226\n\017partiti"
  "on_exprs\030\003 \001(\0132\033.greptime.v1.PartitionEx"
  "prsH\000\0229\n\runpartitioned\030\004 \001(\0132 .greptime."
  "v1.UnpartitionedSourceH\000B\010\n\006source\"\037\n\016Pa"
  "rtitionExprs\022\r\n\005exprs\030\001 \003(\t\"0\n\023Unpartiti"
  "onedSource\022\031\n\021partition_columns\030\001 \003(\t\"\216\001"
  "\n\rDropTableExpr\022\024\n\014catalog_name\030\001 \001(\t\022\023\n"
  "\013schema_name\030\002 \001(\t\022\022\n\ntable_name\030\003 \001(\t\022&"
  "\n\010table_id\030\004 \001(\0132\024.greptime.v1.TableId\022\026"
  "\n\016drop_if_exists\030\005 \001(\010\"\314\001\n\022CreateDatabas"
  "eExpr\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013schema_na"
  "me\030\002 \001(\t\022\034\n\024create_if_not_exists\030\003 \001(\010\022="
  "\n\007options\030\004 \003(\0132,.greptime.v1.CreateData"
  "baseExpr.OptionsEntry\032.\n\014OptionsEntry\022\013\n"
  "\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\250\001\n\021Trunca"
  "teTableExpr\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013sch"
  "ema_name\030\002 \001(\t\022\022\n\ntable_name\030\003 \001(\t\022&\n\010ta"
  "ble_id\030\004 \001(\0132\024.greptime.v1.TableId\022,\n\013ti"
  "me_ranges\030\005 \001(\0132\027.greptime.v1.TimeRanges"
  "\"U\n\020DropDatabaseExpr\022\024\n\014catalog_name\030\001 \001"
  "(\t\022\023\n\013schema_name\030\002 \001(\t\022\026\n\016drop_if_exist"
  "s\030\003 \001(\010\"9\n\nAddColumns\022+\n\013add_columns\030\001 \003"
  "(\0132\026.greptime.v1.AddColumn\"\?\n\014DropDefaul"
  "ts\022/\n\rdrop_defaults\030\001 \003(\0132\030.greptime.v1."
  "DropDefault\"<\n\013SetDefaults\022-\n\014set_defaul"
  "ts\030\001 \003(\0132\027.greptime.v1.SetDefault\"<\n\013Dro"
  "pColumns\022-\n\014drop_columns\030\001 \003(\0132\027.greptim"
  "e.v1.DropColumn\"O\n\021ModifyColumnTypes\022:\n\023"
  "modify_column_types\030\001 \003(\0132\035.greptime.v1."
  "ModifyColumnType\"%\n\013RenameTable\022\026\n\016new_t"
  "able_name\030\001 \001(\t\"\204\001\n\tAddColumn\022*\n\ncolumn_"
  "def\030\001 \001(\0132\026.greptime.v1.ColumnDef\0220\n\010loc"
  "ation\030\003 \001(\0132\036.greptime.v1.AddColumnLocat"
  "ion\022\031\n\021add_if_not_exists\030\004 \001(\010\"\236\001\n\020Modif"
  "yColumnType\022\023\n\013column_name\030\001 \001(\t\0220\n\013targ"
  "et_type\030\002 \001(\0162\033.greptime.v1.ColumnDataTy"
  "pe\022C\n\025target_type_extension\030\003 \001(\0132$.grep"
  "time.v1.ColumnDataTypeExtension\"$\n\006Optio"
  "n\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t\"=\n\017SetTabl"
  "eOptions\022*\n\rtable_options\030\001 \003(\0132\023.grepti"
  "me.v1.Option\"!\n\021UnsetTableOptions\022\014\n\004key"
  "s\030\001 \003(\t\"\032\n\nDropColumn\022\014\n\004name\030\001 \001(\t\"\025\n\007T"
  "ableId\022\n\n\002id\030\001 \001(\r\"\024\n\006FlowId\022\n\n\002id\030\001 \001(\r"
  "\"\254\002\n\tColumnDef\022\014\n\004name\030\001 \001(\t\022.\n\tdata_typ"
  "e\030\002 \001(\0162\033.greptime.v1.ColumnDataType\022\023\n\013"
  "is_nullable\030\003 \001(\010\022\032\n\022default_constraint\030"
  "\004 \001(\014\0220\n\rsemantic_type\030\005 \001(\0162\031.greptime."
  "v1.SemanticType\022\017\n\007comment\030\006 \001(\t\022@\n\022data"
  "type_extension\030\007 \001(\0132$.greptime.v1.Colum"
  "nDataTypeExtension\022+\n\007options\030\010 \001(\0132\032.gr"
  "eptime.v1.ColumnOptions\"\230\001\n\021AddColumnLoc"
  "ation\022B\n\rlocation_type\030\001 \001(\0162+.greptime."
  "v1.AddColumnLocation.LocationType\022\031\n\021aft"
  "er_column_name\030\002 \001(\t\"$\n\014LocationType\022\t\n\005"
  "FIRST\020\000\022\t\n\005AFTER\020\001\"\324\001\n\013SetFulltext\022\023\n\013co"
  "lumn_name\030\001 \001(\t\022\016\n\006enable\030\002 \001(\010\022\'\n\010analy"
  "zer\030\003 \001(\0162\025.greptime.v1.Analyzer\022\026\n\016case"
  "_sensitive\030\004 \001(\010\022-\n\007backend\030\005 \001(\0162\034.grep"
  "time.v1.FulltextBackend\022\023\n\013granularity\030\006"
  " \001(\004\022\033\n\023false_positive_rate\030\007 \001(\001\"$\n\rUns"
  "etFulltext\022\023\n\013column_name\030\001 \001(\t\"\"\n\013SetIn"
  "verted\022\023\n\013column_name\030\001 \001(\t\"$\n\rUnsetInve"
  "rted\022\023\n\013column_name\030\001 \001(\t\"\241\001\n\013SetSkippin"
  "g\022\023\n\013column_name\030\001 \001(\t\022\016\n\006enable\030\002 \001(\010\022\023"
  "\n\013granularity\030\003 \001(\004\022;\n\023skipping_index_ty"
  "pe\030\004 \001(\0162\036.greptime.v1.SkippingIndexType"
  "\022\033\n\023false_positive_rate\030\005 \001(\001\"$\n\rUnsetSk"
  "ipping\022\023\n\013column_name\030\001 \001(\t\"\314\001\n\021AlterDat"
  "abaseExpr\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013schem"
  "a_name\030\002 \001(\t\022\?\n\024set_database_options\030\003 \001"
  "(\0132\037.greptime.v1.SetDatabaseOptionsH\000\022C\n"
  "\026unset_database_options\030\004 \001(\0132!.greptime"
  ".v1.UnsetDatabaseOptionsH\000B\006\n\004kind\"G\n\022Se"
  "tDatabaseOptions\0221\n\024set_database_options"
  "\030\001 \003(\0132\023.greptime.v1.Option\"$\n\024UnsetData"
  "baseOptions\022\014\n\004keys\030\001 \003(\t\"\331\004\n\021CreateTrig"
  "gerExpr\022\024\n\014catalog_name\030\001 \001(\t\022\024\n\014trigger"
  "_name\030\002 \001(\t\022\034\n\024create_if_not_exists\030\003 \001("
  "\010\022\013\n\003sql\030\004 \001(\t\022,\n\010channels\030\005 \003(\0132\032.grept"
  "ime.v1.NotifyChannel\022:\n\006labels\030\006 \003(\0132*.g"
  "reptime.v1.CreateTriggerExpr.LabelsEntry"
  "\022D\n\013annotations\030\007 \003(\0132/.greptime.v1.Crea"
  "teTriggerExpr.AnnotationsEntry\022+\n\010interv"
  "al\030\010 \001(\0132\031.google.protobuf.Duration\022\031\n\021r"
  "aw_interval_expr\030\t \001(\t\022&\n\003for\030\n \001(\0132\031.go"
  "ogle.protobuf.Duration\022\024\n\014for_raw_expr\030\013"
  " \001(\t\0222\n\017keep_firing_for\030\014 \001(\0132\031.google.p"
  "rotobuf.Duration\022 \n\030keep_firing_for_raw_"
  "expr\030\r \001(\t\032-\n\013LabelsEntry\022\013\n\003key\030\001 \001(\t\022\r"
  "\n\005value\030\002 \001(\t:\0028\001\0322\n\020AnnotationsEntry\022\013\n"
  "\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"]\n\rNotifyC"
  "hannel\022\014\n\004name\030\001 \001(\t\022.\n\007webhook\030\002 \001(\0132\033."
  "greptime.v1.WebhookOptionsH\000B\016\n\014channel_"
  "type\"\177\n\016WebhookOptions\022\013\n\003url\030\001 \001(\t\0223\n\004o"
  "pts\030\002 \003(\0132%.greptime.v1.WebhookOptions.O"
  "ptsEntry\032+\n\tOptsEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005va"
  "lue\030\002 \001(\t:\0028\001\"U\n\017DropTriggerExpr\022\024\n\014cata"
  "log_name\030\001 \001(\t\022\024\n\014trigger_name\030\002 \001(\t\022\026\n\016"
  "drop_if_exists\030\003 \001(\010\"\252\001\n\rCommentOnExpr\022\024"
  "\n\014catalog_name\030\001 \001(\t\022\023\n\013schema_name\030\002 \001("
  "\t\0223\n\013object_type\030\003 \001(\0162\036.greptime.v1.Com"
  "mentObjectType\022\023\n\013object_name\030\004 \001(\t\022\023\n\013c"
  "olumn_name\030\005 \001(\t\022\017\n\007comment\030\006 \001(\t*$\n\010Ana"
  "lyzer\022\013\n\007ENGLISH\020\000\022\013\n\007CHINESE\020\001*)\n\017Fullt"
  "extBackend\022\013\n\007TANTIVY\020\000\022\t\n\005BLOOM\020\001*%\n\021Sk"
  "ippingIndexType\022\020\n\014BLOOM_FILTER\020\000*4\n\021Com"
  "mentObjectType\022\t\n\005TABLE\020\000\022\n\n\006COLUMN\020\001\022\010\n"
  "\004FLOW\020\002BL\n\016io.greptime.v1B\003DdlZ5github.c"
  "om/GreptimeTeam/greptime-proto/go/grepti"
  "me/v1b\006proto3"
  ;
static const ::_pbi::DescriptorTable* const descriptor_table_greptime_2fv1_2fddl_2eproto_deps[2] = {
  &::descriptor_table_google_2fprotobuf_2fduration_2eproto,
  &::descriptor_table_greptime_2fv1_2fcommon_2eproto,
};
static ::_pbi::once_flag descriptor_table_greptime_2fv1_2fddl_2eproto_once;
const ::_pbi::DescriptorTable descriptor_table_greptime_2fv1_2fddl_2eproto = {
    false, false, 7813, descriptor_table_protodef_greptime_2fv1_2fddl_2eproto,
    "greptime/v1/ddl.proto",
    &descriptor_table_greptime_2fv1_2fddl_2eproto_once, descriptor_table_greptime_2fv1_2fddl_2eproto_deps, 2, 56,
    schemas, file_default_instances, TableStruct_greptime_2fv1_2fddl_2eproto::offsets,
    file_level_metadata_greptime_2fv1_2fddl_2eproto, file_level_enum_descriptors_greptime_2fv1_2fddl_2eproto,
    file_level_service_descriptors_greptime_2fv1_2fddl_2eproto,
};
PROTOBUF_ATTRIBUTE_WEAK const ::_pbi::DescriptorTable* descriptor_table_greptime_2fv1_2fddl_2eproto_getter() {
  return &descriptor_table_greptime_2fv1_2fddl_2eproto;
}

// Force running AddDescriptors() at dynamic initialization time.
PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::_pbi::AddDescriptorsRunner dynamic_init_dummy_greptime_2fv1_2fddl_2eproto(&descriptor_table_greptime_2fv1_2fddl_2eproto);
namespace greptime {
namespace v1 {
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* AddColumnLocation_LocationType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_greptime_2fv1_2fddl_2eproto);
  return file_level_enum_descriptors_greptime_2fv1_2fddl_2eproto[0];
}
bool AddColumnLocation_LocationType_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
      return true;
    default:
      return false;
  }
}

#if (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912))
constexpr AddColumnLocation_LocationType AddColumnLocation::FIRST;
constexpr AddColumnLocation_LocationType AddColumnLocation::AFTER;
constexpr AddColumnLocation_LocationType AddColumnLocation::LocationType_MIN;
constexpr AddColumnLocation_LocationType AddColumnLocation::LocationType_MAX;
constexpr int AddColumnLocation::LocationType_ARRAYSIZE;
#endif  // (__cplusplus < 201703) && (!defined(_MSC_VER) || (_MSC_VER >= 1900 && _MSC_VER < 1912))
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* Analyzer_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_greptime_2fv1_2fddl_2eproto);
  return file_level_enum_descriptors_greptime_2fv1_2fddl_2eproto[1];
}
bool Analyzer_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FulltextBackend_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_greptime_2fv1_2fddl_2eproto);
  return file_level_enum_descriptors_greptime_2fv1_2fddl_2eproto[2];
}
bool FulltextBackend_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* SkippingIndexType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_greptime_2fv1_2fddl_2eproto);
  return file_level_enum_descriptors_greptime_2fv1_2fddl_2eproto[3];
}
bool SkippingIndexType_IsValid(int value) {
  switch (value) {
    case 0:
      return true;
    default:
      return false;
  }
}

const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CommentObjectType_descriptor() {
  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_greptime_2fv1_2fddl_2eproto);
  return file_level_enum_descriptors_greptime_2fv1_2fddl_2eproto[4];
}
bool CommentObjectType_IsValid(int value) {
  switch (value) {
    case 0:
    case 1:
    case 2:
      return true;
    default:
      return false;
  }
}


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

class DdlRequest::_Internal {
 public:
  static const ::greptime::v1::CreateDatabaseExpr& create_database(const DdlRequest* msg);
  static const ::greptime::v1::CreateTableExpr& create_table(const DdlRequest* msg);
  static const ::greptime::v1::AlterTableExpr& alter_table(const DdlRequest* msg);
  static const ::greptime::v1::DropTableExpr& drop_table(const DdlRequest* msg);
  static const ::greptime::v1::TruncateTableExpr& truncate_table(const DdlRequest* msg);
  static const ::greptime::v1::CreateFlowExpr& create_flow(const DdlRequest* msg);
  static const ::greptime::v1::DropFlowExpr& drop_flow(const DdlRequest* msg);
  static const ::greptime::v1::CreateViewExpr& create_view(const DdlRequest* msg);
  static const ::greptime::v1::DropViewExpr& drop_view(const DdlRequest* msg);
  static const ::greptime::v1::AlterDatabaseExpr& alter_database(const DdlRequest* msg);
  static const ::greptime::v1::CommentOnExpr& comment_on(const DdlRequest* msg);
};

const ::greptime::v1::CreateDatabaseExpr&
DdlRequest::_Internal::create_database(const DdlRequest* msg) {
  return *msg->_impl_.expr_.create_database_;
}
const ::greptime::v1::CreateTableExpr&
DdlRequest::_Internal::create_table(const DdlRequest* msg) {
  return *msg->_impl_.expr_.create_table_;
}
const ::greptime::v1::AlterTableExpr&
DdlRequest::_Internal::alter_table(const DdlRequest* msg) {
  return *msg->_impl_.expr_.alter_table_;
}
const ::greptime::v1::DropTableExpr&
DdlRequest::_Internal::drop_table(const DdlRequest* msg) {
  return *msg->_impl_.expr_.drop_table_;
}
const ::greptime::v1::TruncateTableExpr&
DdlRequest::_Internal::truncate_table(const DdlRequest* msg) {
  return *msg->_impl_.expr_.truncate_table_;
}
const ::greptime::v1::CreateFlowExpr&
DdlRequest::_Internal::create_flow(const DdlRequest* msg) {
  return *msg->_impl_.expr_.create_flow_;
}
const ::greptime::v1::DropFlowExpr&
DdlRequest::_Internal::drop_flow(const DdlRequest* msg) {
  return *msg->_impl_.expr_.drop_flow_;
}
const ::greptime::v1::CreateViewExpr&
DdlRequest::_Internal::create_view(const DdlRequest* msg) {
  return *msg->_impl_.expr_.create_view_;
}
const ::greptime::v1::DropViewExpr&
DdlRequest::_Internal::drop_view(const DdlRequest* msg) {
  return *msg->_impl_.expr_.drop_view_;
}
const ::greptime::v1::AlterDatabaseExpr&
DdlRequest::_Internal::alter_database(const DdlRequest* msg) {
  return *msg->_impl_.expr_.alter_database_;
}
const ::greptime::v1::CommentOnExpr&
DdlRequest::_Internal::comment_on(const DdlRequest* msg) {
  return *msg->_impl_.expr_.comment_on_;
}
void DdlRequest::set_allocated_create_database(::greptime::v1::CreateDatabaseExpr* create_database) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (create_database) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(create_database);
    if (message_arena != submessage_arena) {
      create_database = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, create_database, submessage_arena);
    }
    set_has_create_database();
    _impl_.expr_.create_database_ = create_database;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.create_database)
}
void DdlRequest::set_allocated_create_table(::greptime::v1::CreateTableExpr* create_table) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (create_table) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(create_table);
    if (message_arena != submessage_arena) {
      create_table = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, create_table, submessage_arena);
    }
    set_has_create_table();
    _impl_.expr_.create_table_ = create_table;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.create_table)
}
void DdlRequest::set_allocated_alter_table(::greptime::v1::AlterTableExpr* alter_table) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (alter_table) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(alter_table);
    if (message_arena != submessage_arena) {
      alter_table = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, alter_table, submessage_arena);
    }
    set_has_alter_table();
    _impl_.expr_.alter_table_ = alter_table;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.alter_table)
}
void DdlRequest::set_allocated_drop_table(::greptime::v1::DropTableExpr* drop_table) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (drop_table) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(drop_table);
    if (message_arena != submessage_arena) {
      drop_table = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, drop_table, submessage_arena);
    }
    set_has_drop_table();
    _impl_.expr_.drop_table_ = drop_table;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.drop_table)
}
void DdlRequest::set_allocated_truncate_table(::greptime::v1::TruncateTableExpr* truncate_table) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (truncate_table) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(truncate_table);
    if (message_arena != submessage_arena) {
      truncate_table = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, truncate_table, submessage_arena);
    }
    set_has_truncate_table();
    _impl_.expr_.truncate_table_ = truncate_table;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.truncate_table)
}
void DdlRequest::set_allocated_create_flow(::greptime::v1::CreateFlowExpr* create_flow) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (create_flow) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(create_flow);
    if (message_arena != submessage_arena) {
      create_flow = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, create_flow, submessage_arena);
    }
    set_has_create_flow();
    _impl_.expr_.create_flow_ = create_flow;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.create_flow)
}
void DdlRequest::set_allocated_drop_flow(::greptime::v1::DropFlowExpr* drop_flow) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (drop_flow) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(drop_flow);
    if (message_arena != submessage_arena) {
      drop_flow = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, drop_flow, submessage_arena);
    }
    set_has_drop_flow();
    _impl_.expr_.drop_flow_ = drop_flow;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.drop_flow)
}
void DdlRequest::set_allocated_create_view(::greptime::v1::CreateViewExpr* create_view) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (create_view) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(create_view);
    if (message_arena != submessage_arena) {
      create_view = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, create_view, submessage_arena);
    }
    set_has_create_view();
    _impl_.expr_.create_view_ = create_view;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.create_view)
}
void DdlRequest::set_allocated_drop_view(::greptime::v1::DropViewExpr* drop_view) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (drop_view) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(drop_view);
    if (message_arena != submessage_arena) {
      drop_view = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, drop_view, submessage_arena);
    }
    set_has_drop_view();
    _impl_.expr_.drop_view_ = drop_view;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.drop_view)
}
void DdlRequest::set_allocated_alter_database(::greptime::v1::AlterDatabaseExpr* alter_database) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (alter_database) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(alter_database);
    if (message_arena != submessage_arena) {
      alter_database = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, alter_database, submessage_arena);
    }
    set_has_alter_database();
    _impl_.expr_.alter_database_ = alter_database;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.alter_database)
}
void DdlRequest::set_allocated_comment_on(::greptime::v1::CommentOnExpr* comment_on) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_expr();
  if (comment_on) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(comment_on);
    if (message_arena != submessage_arena) {
      comment_on = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, comment_on, submessage_arena);
    }
    set_has_comment_on();
    _impl_.expr_.comment_on_ = comment_on;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.DdlRequest.comment_on)
}
DdlRequest::DdlRequest(::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:greptime.v1.DdlRequest)
}
DdlRequest::DdlRequest(const DdlRequest& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DdlRequest* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.expr_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_expr();
  switch (from.expr_case()) {
    case kCreateDatabase: {
      _this->_internal_mutable_create_database()->::greptime::v1::CreateDatabaseExpr::MergeFrom(
          from._internal_create_database());
      break;
    }
    case kCreateTable: {
      _this->_internal_mutable_create_table()->::greptime::v1::CreateTableExpr::MergeFrom(
          from._internal_create_table());
      break;
    }
    case kAlterTable: {
      _this->_internal_mutable_alter_table()->::greptime::v1::AlterTableExpr::MergeFrom(
          from._internal_alter_table());
      break;
    }
    case kDropTable: {
      _this->_internal_mutable_drop_table()->::greptime::v1::DropTableExpr::MergeFrom(
          from._internal_drop_table());
      break;
    }
    case kTruncateTable: {
      _this->_internal_mutable_truncate_table()->::greptime::v1::TruncateTableExpr::MergeFrom(
          from._internal_truncate_table());
      break;
    }
    case kCreateFlow: {
      _this->_internal_mutable_create_flow()->::greptime::v1::CreateFlowExpr::MergeFrom(
          from._internal_create_flow());
      break;
    }
    case kDropFlow: {
      _this->_internal_mutable_drop_flow()->::greptime::v1::DropFlowExpr::MergeFrom(
          from._internal_drop_flow());
      break;
    }
    case kCreateView: {
      _this->_internal_mutable_create_view()->::greptime::v1::CreateViewExpr::MergeFrom(
          from._internal_create_view());
      break;
    }
    case kDropView: {
      _this->_internal_mutable_drop_view()->::greptime::v1::DropViewExpr::MergeFrom(
          from._internal_drop_view());
      break;
    }
    case kAlterDatabase: {
      _this->_internal_mutable_alter_database()->::greptime::v1::AlterDatabaseExpr::MergeFrom(
          from._internal_alter_database());
      break;
    }
    case kCommentOn: {
      _this->_internal_mutable_comment_on()->::greptime::v1::CommentOnExpr::MergeFrom(
          from._internal_comment_on());
      break;
    }
    case EXPR_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DdlRequest)
}

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

DdlRequest::~DdlRequest() {
  // @@protoc_insertion_point(destructor:greptime.v1.DdlRequest)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DdlRequest::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_expr()) {
    clear_expr();
  }
}

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

void DdlRequest::clear_expr() {
// @@protoc_insertion_point(one_of_clear_start:greptime.v1.DdlRequest)
  switch (expr_case()) {
    case kCreateDatabase: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.create_database_;
      }
      break;
    }
    case kCreateTable: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.create_table_;
      }
      break;
    }
    case kAlterTable: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.alter_table_;
      }
      break;
    }
    case kDropTable: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.drop_table_;
      }
      break;
    }
    case kTruncateTable: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.truncate_table_;
      }
      break;
    }
    case kCreateFlow: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.create_flow_;
      }
      break;
    }
    case kDropFlow: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.drop_flow_;
      }
      break;
    }
    case kCreateView: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.create_view_;
      }
      break;
    }
    case kDropView: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.drop_view_;
      }
      break;
    }
    case kAlterDatabase: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.alter_database_;
      }
      break;
    }
    case kCommentOn: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.expr_.comment_on_;
      }
      break;
    }
    case EXPR_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EXPR_NOT_SET;
}


void DdlRequest::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DdlRequest)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* DdlRequest::_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) {
      // .greptime.v1.CreateDatabaseExpr create_database = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_create_database(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.CreateTableExpr create_table = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_create_table(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.AlterTableExpr alter_table = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_alter_table(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.DropTableExpr drop_table = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_drop_table(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.TruncateTableExpr truncate_table = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_truncate_table(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.CreateFlowExpr create_flow = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_create_flow(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.DropFlowExpr drop_flow = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          ptr = ctx->ParseMessage(_internal_mutable_drop_flow(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.CreateViewExpr create_view = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr = ctx->ParseMessage(_internal_mutable_create_view(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.DropViewExpr drop_view = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          ptr = ctx->ParseMessage(_internal_mutable_drop_view(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.AlterDatabaseExpr alter_database = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          ptr = ctx->ParseMessage(_internal_mutable_alter_database(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.CommentOnExpr comment_on = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 106)) {
          ptr = ctx->ParseMessage(_internal_mutable_comment_on(), 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* DdlRequest::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DdlRequest)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .greptime.v1.CreateDatabaseExpr create_database = 1;
  if (_internal_has_create_database()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::create_database(this),
        _Internal::create_database(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.CreateTableExpr create_table = 2;
  if (_internal_has_create_table()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::create_table(this),
        _Internal::create_table(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.AlterTableExpr alter_table = 3;
  if (_internal_has_alter_table()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::alter_table(this),
        _Internal::alter_table(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.DropTableExpr drop_table = 4;
  if (_internal_has_drop_table()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::drop_table(this),
        _Internal::drop_table(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.TruncateTableExpr truncate_table = 7;
  if (_internal_has_truncate_table()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::truncate_table(this),
        _Internal::truncate_table(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.CreateFlowExpr create_flow = 8;
  if (_internal_has_create_flow()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(8, _Internal::create_flow(this),
        _Internal::create_flow(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.DropFlowExpr drop_flow = 9;
  if (_internal_has_drop_flow()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(9, _Internal::drop_flow(this),
        _Internal::drop_flow(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.CreateViewExpr create_view = 10;
  if (_internal_has_create_view()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(10, _Internal::create_view(this),
        _Internal::create_view(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.DropViewExpr drop_view = 11;
  if (_internal_has_drop_view()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(11, _Internal::drop_view(this),
        _Internal::drop_view(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.AlterDatabaseExpr alter_database = 12;
  if (_internal_has_alter_database()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(12, _Internal::alter_database(this),
        _Internal::alter_database(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.CommentOnExpr comment_on = 13;
  if (_internal_has_comment_on()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(13, _Internal::comment_on(this),
        _Internal::comment_on(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:greptime.v1.DdlRequest)
  return target;
}

size_t DdlRequest::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DdlRequest)
  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 (expr_case()) {
    // .greptime.v1.CreateDatabaseExpr create_database = 1;
    case kCreateDatabase: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.create_database_);
      break;
    }
    // .greptime.v1.CreateTableExpr create_table = 2;
    case kCreateTable: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.create_table_);
      break;
    }
    // .greptime.v1.AlterTableExpr alter_table = 3;
    case kAlterTable: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.alter_table_);
      break;
    }
    // .greptime.v1.DropTableExpr drop_table = 4;
    case kDropTable: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.drop_table_);
      break;
    }
    // .greptime.v1.TruncateTableExpr truncate_table = 7;
    case kTruncateTable: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.truncate_table_);
      break;
    }
    // .greptime.v1.CreateFlowExpr create_flow = 8;
    case kCreateFlow: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.create_flow_);
      break;
    }
    // .greptime.v1.DropFlowExpr drop_flow = 9;
    case kDropFlow: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.drop_flow_);
      break;
    }
    // .greptime.v1.CreateViewExpr create_view = 10;
    case kCreateView: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.create_view_);
      break;
    }
    // .greptime.v1.DropViewExpr drop_view = 11;
    case kDropView: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.drop_view_);
      break;
    }
    // .greptime.v1.AlterDatabaseExpr alter_database = 12;
    case kAlterDatabase: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.alter_database_);
      break;
    }
    // .greptime.v1.CommentOnExpr comment_on = 13;
    case kCommentOn: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.expr_.comment_on_);
      break;
    }
    case EXPR_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

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


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

  switch (from.expr_case()) {
    case kCreateDatabase: {
      _this->_internal_mutable_create_database()->::greptime::v1::CreateDatabaseExpr::MergeFrom(
          from._internal_create_database());
      break;
    }
    case kCreateTable: {
      _this->_internal_mutable_create_table()->::greptime::v1::CreateTableExpr::MergeFrom(
          from._internal_create_table());
      break;
    }
    case kAlterTable: {
      _this->_internal_mutable_alter_table()->::greptime::v1::AlterTableExpr::MergeFrom(
          from._internal_alter_table());
      break;
    }
    case kDropTable: {
      _this->_internal_mutable_drop_table()->::greptime::v1::DropTableExpr::MergeFrom(
          from._internal_drop_table());
      break;
    }
    case kTruncateTable: {
      _this->_internal_mutable_truncate_table()->::greptime::v1::TruncateTableExpr::MergeFrom(
          from._internal_truncate_table());
      break;
    }
    case kCreateFlow: {
      _this->_internal_mutable_create_flow()->::greptime::v1::CreateFlowExpr::MergeFrom(
          from._internal_create_flow());
      break;
    }
    case kDropFlow: {
      _this->_internal_mutable_drop_flow()->::greptime::v1::DropFlowExpr::MergeFrom(
          from._internal_drop_flow());
      break;
    }
    case kCreateView: {
      _this->_internal_mutable_create_view()->::greptime::v1::CreateViewExpr::MergeFrom(
          from._internal_create_view());
      break;
    }
    case kDropView: {
      _this->_internal_mutable_drop_view()->::greptime::v1::DropViewExpr::MergeFrom(
          from._internal_drop_view());
      break;
    }
    case kAlterDatabase: {
      _this->_internal_mutable_alter_database()->::greptime::v1::AlterDatabaseExpr::MergeFrom(
          from._internal_alter_database());
      break;
    }
    case kCommentOn: {
      _this->_internal_mutable_comment_on()->::greptime::v1::CommentOnExpr::MergeFrom(
          from._internal_comment_on());
      break;
    }
    case EXPR_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DdlRequest::CopyFrom(const DdlRequest& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DdlRequest)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata DdlRequest::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[0]);
}

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

CreateFlowExpr_FlowOptionsEntry_DoNotUse::CreateFlowExpr_FlowOptionsEntry_DoNotUse() {}
CreateFlowExpr_FlowOptionsEntry_DoNotUse::CreateFlowExpr_FlowOptionsEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena)
    : SuperType(arena) {}
void CreateFlowExpr_FlowOptionsEntry_DoNotUse::MergeFrom(const CreateFlowExpr_FlowOptionsEntry_DoNotUse& other) {
  MergeFromInternal(other);
}
::PROTOBUF_NAMESPACE_ID::Metadata CreateFlowExpr_FlowOptionsEntry_DoNotUse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[1]);
}

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

class CreateFlowExpr::_Internal {
 public:
  static const ::greptime::v1::TableName& sink_table_name(const CreateFlowExpr* msg);
  static const ::greptime::v1::ExpireAfter& expire_after(const CreateFlowExpr* msg);
  static const ::greptime::v1::EvalInterval& eval_interval(const CreateFlowExpr* msg);
};

const ::greptime::v1::TableName&
CreateFlowExpr::_Internal::sink_table_name(const CreateFlowExpr* msg) {
  return *msg->_impl_.sink_table_name_;
}
const ::greptime::v1::ExpireAfter&
CreateFlowExpr::_Internal::expire_after(const CreateFlowExpr* msg) {
  return *msg->_impl_.expire_after_;
}
const ::greptime::v1::EvalInterval&
CreateFlowExpr::_Internal::eval_interval(const CreateFlowExpr* msg) {
  return *msg->_impl_.eval_interval_;
}
void CreateFlowExpr::clear_source_table_names() {
  _impl_.source_table_names_.Clear();
}
void CreateFlowExpr::clear_sink_table_name() {
  if (GetArenaForAllocation() == nullptr && _impl_.sink_table_name_ != nullptr) {
    delete _impl_.sink_table_name_;
  }
  _impl_.sink_table_name_ = nullptr;
}
void CreateFlowExpr::clear_expire_after() {
  if (GetArenaForAllocation() == nullptr && _impl_.expire_after_ != nullptr) {
    delete _impl_.expire_after_;
  }
  _impl_.expire_after_ = nullptr;
}
void CreateFlowExpr::clear_eval_interval() {
  if (GetArenaForAllocation() == nullptr && _impl_.eval_interval_ != nullptr) {
    delete _impl_.eval_interval_;
  }
  _impl_.eval_interval_ = nullptr;
}
CreateFlowExpr::CreateFlowExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  if (arena != nullptr && !is_message_owned) {
    arena->OwnCustomDestructor(this, &CreateFlowExpr::ArenaDtor);
  }
  // @@protoc_insertion_point(arena_constructor:greptime.v1.CreateFlowExpr)
}
CreateFlowExpr::CreateFlowExpr(const CreateFlowExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CreateFlowExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.source_table_names_){from._impl_.source_table_names_}
    , /*decltype(_impl_.flow_options_)*/{}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.flow_name_){}
    , decltype(_impl_.comment_){}
    , decltype(_impl_.sql_){}
    , decltype(_impl_.sink_table_name_){nullptr}
    , decltype(_impl_.expire_after_){nullptr}
    , decltype(_impl_.eval_interval_){nullptr}
    , decltype(_impl_.or_replace_){}
    , decltype(_impl_.create_if_not_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.flow_options_.MergeFrom(from._impl_.flow_options_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.flow_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.flow_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_flow_name().empty()) {
    _this->_impl_.flow_name_.Set(from._internal_flow_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.comment_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.comment_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_comment().empty()) {
    _this->_impl_.comment_.Set(from._internal_comment(), 
      _this->GetArenaForAllocation());
  }
  _impl_.sql_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sql_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_sql().empty()) {
    _this->_impl_.sql_.Set(from._internal_sql(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_sink_table_name()) {
    _this->_impl_.sink_table_name_ = new ::greptime::v1::TableName(*from._impl_.sink_table_name_);
  }
  if (from._internal_has_expire_after()) {
    _this->_impl_.expire_after_ = new ::greptime::v1::ExpireAfter(*from._impl_.expire_after_);
  }
  if (from._internal_has_eval_interval()) {
    _this->_impl_.eval_interval_ = new ::greptime::v1::EvalInterval(*from._impl_.eval_interval_);
  }
  ::memcpy(&_impl_.or_replace_, &from._impl_.or_replace_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.create_if_not_exists_) -
    reinterpret_cast<char*>(&_impl_.or_replace_)) + sizeof(_impl_.create_if_not_exists_));
  // @@protoc_insertion_point(copy_constructor:greptime.v1.CreateFlowExpr)
}

inline void CreateFlowExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.source_table_names_){arena}
    , /*decltype(_impl_.flow_options_)*/{::_pbi::ArenaInitialized(), arena}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.flow_name_){}
    , decltype(_impl_.comment_){}
    , decltype(_impl_.sql_){}
    , decltype(_impl_.sink_table_name_){nullptr}
    , decltype(_impl_.expire_after_){nullptr}
    , decltype(_impl_.eval_interval_){nullptr}
    , decltype(_impl_.or_replace_){false}
    , decltype(_impl_.create_if_not_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.flow_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.flow_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.comment_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.comment_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.sql_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sql_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CreateFlowExpr::~CreateFlowExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.CreateFlowExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    ArenaDtor(this);
    return;
  }
  SharedDtor();
}

inline void CreateFlowExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.source_table_names_.~RepeatedPtrField();
  _impl_.flow_options_.Destruct();
  _impl_.flow_options_.~MapField();
  _impl_.catalog_name_.Destroy();
  _impl_.flow_name_.Destroy();
  _impl_.comment_.Destroy();
  _impl_.sql_.Destroy();
  if (this != internal_default_instance()) delete _impl_.sink_table_name_;
  if (this != internal_default_instance()) delete _impl_.expire_after_;
  if (this != internal_default_instance()) delete _impl_.eval_interval_;
}

void CreateFlowExpr::ArenaDtor(void* object) {
  CreateFlowExpr* _this = reinterpret_cast< CreateFlowExpr* >(object);
  _this->_impl_.flow_options_.Destruct();
}
void CreateFlowExpr::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CreateFlowExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.CreateFlowExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.source_table_names_.Clear();
  _impl_.flow_options_.Clear();
  _impl_.catalog_name_.ClearToEmpty();
  _impl_.flow_name_.ClearToEmpty();
  _impl_.comment_.ClearToEmpty();
  _impl_.sql_.ClearToEmpty();
  if (GetArenaForAllocation() == nullptr && _impl_.sink_table_name_ != nullptr) {
    delete _impl_.sink_table_name_;
  }
  _impl_.sink_table_name_ = nullptr;
  if (GetArenaForAllocation() == nullptr && _impl_.expire_after_ != nullptr) {
    delete _impl_.expire_after_;
  }
  _impl_.expire_after_ = nullptr;
  if (GetArenaForAllocation() == nullptr && _impl_.eval_interval_ != nullptr) {
    delete _impl_.eval_interval_;
  }
  _impl_.eval_interval_ = nullptr;
  ::memset(&_impl_.or_replace_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.create_if_not_exists_) -
      reinterpret_cast<char*>(&_impl_.or_replace_)) + sizeof(_impl_.create_if_not_exists_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CreateFlowExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateFlowExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string flow_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_flow_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateFlowExpr.flow_name"));
        } else
          goto handle_unusual;
        continue;
      // repeated .greptime.v1.TableName source_table_names = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_source_table_names(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.TableName sink_table_name = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_sink_table_name(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool or_replace = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _impl_.or_replace_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool create_if_not_exists = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _impl_.create_if_not_exists_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.ExpireAfter expire_after = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_expire_after(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string comment = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          auto str = _internal_mutable_comment();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateFlowExpr.comment"));
        } else
          goto handle_unusual;
        continue;
      // string sql = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          auto str = _internal_mutable_sql();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateFlowExpr.sql"));
        } else
          goto handle_unusual;
        continue;
      // map<string, string> flow_options = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(&_impl_.flow_options_, ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<82>(ptr));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.EvalInterval eval_interval = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          ptr = ctx->ParseMessage(_internal_mutable_eval_interval(), 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* CreateFlowExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.CreateFlowExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateFlowExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string flow_name = 2;
  if (!this->_internal_flow_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_flow_name().data(), static_cast<int>(this->_internal_flow_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateFlowExpr.flow_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_flow_name(), target);
  }

  // repeated .greptime.v1.TableName source_table_names = 3;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_source_table_names_size()); i < n; i++) {
    const auto& repfield = this->_internal_source_table_names(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(3, repfield, repfield.GetCachedSize(), target, stream);
  }

  // .greptime.v1.TableName sink_table_name = 4;
  if (this->_internal_has_sink_table_name()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::sink_table_name(this),
        _Internal::sink_table_name(this).GetCachedSize(), target, stream);
  }

  // bool or_replace = 5;
  if (this->_internal_or_replace() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_or_replace(), target);
  }

  // bool create_if_not_exists = 6;
  if (this->_internal_create_if_not_exists() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(6, this->_internal_create_if_not_exists(), target);
  }

  // .greptime.v1.ExpireAfter expire_after = 7;
  if (this->_internal_has_expire_after()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::expire_after(this),
        _Internal::expire_after(this).GetCachedSize(), target, stream);
  }

  // string comment = 8;
  if (!this->_internal_comment().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_comment().data(), static_cast<int>(this->_internal_comment().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateFlowExpr.comment");
    target = stream->WriteStringMaybeAliased(
        8, this->_internal_comment(), target);
  }

  // string sql = 9;
  if (!this->_internal_sql().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_sql().data(), static_cast<int>(this->_internal_sql().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateFlowExpr.sql");
    target = stream->WriteStringMaybeAliased(
        9, this->_internal_sql(), target);
  }

  // map<string, string> flow_options = 10;
  if (!this->_internal_flow_options().empty()) {
    using MapType = ::_pb::Map<std::string, std::string>;
    using WireHelper = CreateFlowExpr_FlowOptionsEntry_DoNotUse::Funcs;
    const auto& map_field = this->_internal_flow_options();
    auto check_utf8 = [](const MapType::value_type& entry) {
      (void)entry;
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.first.data(), static_cast<int>(entry.first.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateFlowExpr.FlowOptionsEntry.key");
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.second.data(), static_cast<int>(entry.second.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateFlowExpr.FlowOptionsEntry.value");
    };

    if (stream->IsSerializationDeterministic() && map_field.size() > 1) {
      for (const auto& entry : ::_pbi::MapSorterPtr<MapType>(map_field)) {
        target = WireHelper::InternalSerialize(10, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    } else {
      for (const auto& entry : map_field) {
        target = WireHelper::InternalSerialize(10, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    }
  }

  // .greptime.v1.EvalInterval eval_interval = 11;
  if (this->_internal_has_eval_interval()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(11, _Internal::eval_interval(this),
        _Internal::eval_interval(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:greptime.v1.CreateFlowExpr)
  return target;
}

size_t CreateFlowExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.CreateFlowExpr)
  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 .greptime.v1.TableName source_table_names = 3;
  total_size += 1UL * this->_internal_source_table_names_size();
  for (const auto& msg : this->_impl_.source_table_names_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // map<string, string> flow_options = 10;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_flow_options_size());
  for (::PROTOBUF_NAMESPACE_ID::Map< std::string, std::string >::const_iterator
      it = this->_internal_flow_options().begin();
      it != this->_internal_flow_options().end(); ++it) {
    total_size += CreateFlowExpr_FlowOptionsEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
  }

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

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

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

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

  // .greptime.v1.TableName sink_table_name = 4;
  if (this->_internal_has_sink_table_name()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.sink_table_name_);
  }

  // .greptime.v1.ExpireAfter expire_after = 7;
  if (this->_internal_has_expire_after()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.expire_after_);
  }

  // .greptime.v1.EvalInterval eval_interval = 11;
  if (this->_internal_has_eval_interval()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.eval_interval_);
  }

  // bool or_replace = 5;
  if (this->_internal_or_replace() != 0) {
    total_size += 1 + 1;
  }

  // bool create_if_not_exists = 6;
  if (this->_internal_create_if_not_exists() != 0) {
    total_size += 1 + 1;
  }

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

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


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

  _this->_impl_.source_table_names_.MergeFrom(from._impl_.source_table_names_);
  _this->_impl_.flow_options_.MergeFrom(from._impl_.flow_options_);
  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_flow_name().empty()) {
    _this->_internal_set_flow_name(from._internal_flow_name());
  }
  if (!from._internal_comment().empty()) {
    _this->_internal_set_comment(from._internal_comment());
  }
  if (!from._internal_sql().empty()) {
    _this->_internal_set_sql(from._internal_sql());
  }
  if (from._internal_has_sink_table_name()) {
    _this->_internal_mutable_sink_table_name()->::greptime::v1::TableName::MergeFrom(
        from._internal_sink_table_name());
  }
  if (from._internal_has_expire_after()) {
    _this->_internal_mutable_expire_after()->::greptime::v1::ExpireAfter::MergeFrom(
        from._internal_expire_after());
  }
  if (from._internal_has_eval_interval()) {
    _this->_internal_mutable_eval_interval()->::greptime::v1::EvalInterval::MergeFrom(
        from._internal_eval_interval());
  }
  if (from._internal_or_replace() != 0) {
    _this->_internal_set_or_replace(from._internal_or_replace());
  }
  if (from._internal_create_if_not_exists() != 0) {
    _this->_internal_set_create_if_not_exists(from._internal_create_if_not_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CreateFlowExpr::CopyFrom(const CreateFlowExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.CreateFlowExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void CreateFlowExpr::InternalSwap(CreateFlowExpr* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.source_table_names_.InternalSwap(&other->_impl_.source_table_names_);
  _impl_.flow_options_.InternalSwap(&other->_impl_.flow_options_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.flow_name_, lhs_arena,
      &other->_impl_.flow_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.comment_, lhs_arena,
      &other->_impl_.comment_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.sql_, lhs_arena,
      &other->_impl_.sql_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CreateFlowExpr, _impl_.create_if_not_exists_)
      + sizeof(CreateFlowExpr::_impl_.create_if_not_exists_)
      - PROTOBUF_FIELD_OFFSET(CreateFlowExpr, _impl_.sink_table_name_)>(
          reinterpret_cast<char*>(&_impl_.sink_table_name_),
          reinterpret_cast<char*>(&other->_impl_.sink_table_name_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CreateFlowExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[2]);
}

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

class DropFlowExpr::_Internal {
 public:
  static const ::greptime::v1::FlowId& flow_id(const DropFlowExpr* msg);
};

const ::greptime::v1::FlowId&
DropFlowExpr::_Internal::flow_id(const DropFlowExpr* msg) {
  return *msg->_impl_.flow_id_;
}
DropFlowExpr::DropFlowExpr(::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:greptime.v1.DropFlowExpr)
}
DropFlowExpr::DropFlowExpr(const DropFlowExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DropFlowExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.flow_name_){}
    , decltype(_impl_.flow_id_){nullptr}
    , decltype(_impl_.drop_if_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.flow_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.flow_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_flow_name().empty()) {
    _this->_impl_.flow_name_.Set(from._internal_flow_name(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_flow_id()) {
    _this->_impl_.flow_id_ = new ::greptime::v1::FlowId(*from._impl_.flow_id_);
  }
  _this->_impl_.drop_if_exists_ = from._impl_.drop_if_exists_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DropFlowExpr)
}

inline void DropFlowExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.flow_name_){}
    , decltype(_impl_.flow_id_){nullptr}
    , decltype(_impl_.drop_if_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.flow_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.flow_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

DropFlowExpr::~DropFlowExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.DropFlowExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DropFlowExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.catalog_name_.Destroy();
  _impl_.flow_name_.Destroy();
  if (this != internal_default_instance()) delete _impl_.flow_id_;
}

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

void DropFlowExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DropFlowExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.catalog_name_.ClearToEmpty();
  _impl_.flow_name_.ClearToEmpty();
  if (GetArenaForAllocation() == nullptr && _impl_.flow_id_ != nullptr) {
    delete _impl_.flow_id_;
  }
  _impl_.flow_id_ = nullptr;
  _impl_.drop_if_exists_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* DropFlowExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropFlowExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string flow_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_flow_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropFlowExpr.flow_name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.FlowId flow_id = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_flow_id(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool drop_if_exists = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _impl_.drop_if_exists_ = ::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* DropFlowExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DropFlowExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropFlowExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string flow_name = 2;
  if (!this->_internal_flow_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_flow_name().data(), static_cast<int>(this->_internal_flow_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropFlowExpr.flow_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_flow_name(), target);
  }

  // .greptime.v1.FlowId flow_id = 3;
  if (this->_internal_has_flow_id()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::flow_id(this),
        _Internal::flow_id(this).GetCachedSize(), target, stream);
  }

  // bool drop_if_exists = 5;
  if (this->_internal_drop_if_exists() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_drop_if_exists(), 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:greptime.v1.DropFlowExpr)
  return target;
}

size_t DropFlowExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DropFlowExpr)
  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 catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_catalog_name());
  }

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

  // .greptime.v1.FlowId flow_id = 3;
  if (this->_internal_has_flow_id()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.flow_id_);
  }

  // bool drop_if_exists = 5;
  if (this->_internal_drop_if_exists() != 0) {
    total_size += 1 + 1;
  }

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

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


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

  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_flow_name().empty()) {
    _this->_internal_set_flow_name(from._internal_flow_name());
  }
  if (from._internal_has_flow_id()) {
    _this->_internal_mutable_flow_id()->::greptime::v1::FlowId::MergeFrom(
        from._internal_flow_id());
  }
  if (from._internal_drop_if_exists() != 0) {
    _this->_internal_set_drop_if_exists(from._internal_drop_if_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DropFlowExpr::CopyFrom(const DropFlowExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DropFlowExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void DropFlowExpr::InternalSwap(DropFlowExpr* 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_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.flow_name_, lhs_arena,
      &other->_impl_.flow_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(DropFlowExpr, _impl_.drop_if_exists_)
      + sizeof(DropFlowExpr::_impl_.drop_if_exists_)
      - PROTOBUF_FIELD_OFFSET(DropFlowExpr, _impl_.flow_id_)>(
          reinterpret_cast<char*>(&_impl_.flow_id_),
          reinterpret_cast<char*>(&other->_impl_.flow_id_));
}

::PROTOBUF_NAMESPACE_ID::Metadata DropFlowExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[3]);
}

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

class CreateViewExpr::_Internal {
 public:
};

void CreateViewExpr::clear_table_names() {
  _impl_.table_names_.Clear();
}
CreateViewExpr::CreateViewExpr(::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:greptime.v1.CreateViewExpr)
}
CreateViewExpr::CreateViewExpr(const CreateViewExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CreateViewExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.table_names_){from._impl_.table_names_}
    , decltype(_impl_.columns_){from._impl_.columns_}
    , decltype(_impl_.plan_columns_){from._impl_.plan_columns_}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.view_name_){}
    , decltype(_impl_.logical_plan_){}
    , decltype(_impl_.definition_){}
    , decltype(_impl_.create_if_not_exists_){}
    , decltype(_impl_.or_replace_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.view_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.view_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_view_name().empty()) {
    _this->_impl_.view_name_.Set(from._internal_view_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.logical_plan_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.logical_plan_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_logical_plan().empty()) {
    _this->_impl_.logical_plan_.Set(from._internal_logical_plan(), 
      _this->GetArenaForAllocation());
  }
  _impl_.definition_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.definition_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_definition().empty()) {
    _this->_impl_.definition_.Set(from._internal_definition(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.create_if_not_exists_, &from._impl_.create_if_not_exists_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.or_replace_) -
    reinterpret_cast<char*>(&_impl_.create_if_not_exists_)) + sizeof(_impl_.or_replace_));
  // @@protoc_insertion_point(copy_constructor:greptime.v1.CreateViewExpr)
}

inline void CreateViewExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.table_names_){arena}
    , decltype(_impl_.columns_){arena}
    , decltype(_impl_.plan_columns_){arena}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.view_name_){}
    , decltype(_impl_.logical_plan_){}
    , decltype(_impl_.definition_){}
    , decltype(_impl_.create_if_not_exists_){false}
    , decltype(_impl_.or_replace_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.view_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.view_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.logical_plan_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.logical_plan_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.definition_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.definition_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CreateViewExpr::~CreateViewExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.CreateViewExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CreateViewExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.table_names_.~RepeatedPtrField();
  _impl_.columns_.~RepeatedPtrField();
  _impl_.plan_columns_.~RepeatedPtrField();
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
  _impl_.view_name_.Destroy();
  _impl_.logical_plan_.Destroy();
  _impl_.definition_.Destroy();
}

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

void CreateViewExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.CreateViewExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.table_names_.Clear();
  _impl_.columns_.Clear();
  _impl_.plan_columns_.Clear();
  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  _impl_.view_name_.ClearToEmpty();
  _impl_.logical_plan_.ClearToEmpty();
  _impl_.definition_.ClearToEmpty();
  ::memset(&_impl_.create_if_not_exists_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.or_replace_) -
      reinterpret_cast<char*>(&_impl_.create_if_not_exists_)) + sizeof(_impl_.or_replace_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CreateViewExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateViewExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateViewExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // string view_name = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_view_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateViewExpr.view_name"));
        } else
          goto handle_unusual;
        continue;
      // bytes logical_plan = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_logical_plan();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool create_if_not_exists = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _impl_.create_if_not_exists_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool or_replace = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _impl_.or_replace_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // repeated .greptime.v1.TableName table_names = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_table_names(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated string columns = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_columns();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateViewExpr.columns"));
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated string plan_columns = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_plan_columns();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateViewExpr.plan_columns"));
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr));
        } else
          goto handle_unusual;
        continue;
      // string definition = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          auto str = _internal_mutable_definition();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateViewExpr.definition"));
        } 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* CreateViewExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.CreateViewExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateViewExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateViewExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

  // string view_name = 3;
  if (!this->_internal_view_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_view_name().data(), static_cast<int>(this->_internal_view_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateViewExpr.view_name");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_view_name(), target);
  }

  // bytes logical_plan = 4;
  if (!this->_internal_logical_plan().empty()) {
    target = stream->WriteBytesMaybeAliased(
        4, this->_internal_logical_plan(), target);
  }

  // bool create_if_not_exists = 5;
  if (this->_internal_create_if_not_exists() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_create_if_not_exists(), target);
  }

  // bool or_replace = 6;
  if (this->_internal_or_replace() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(6, this->_internal_or_replace(), target);
  }

  // repeated .greptime.v1.TableName table_names = 7;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_table_names_size()); i < n; i++) {
    const auto& repfield = this->_internal_table_names(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(7, repfield, repfield.GetCachedSize(), target, stream);
  }

  // repeated string columns = 8;
  for (int i = 0, n = this->_internal_columns_size(); i < n; i++) {
    const auto& s = this->_internal_columns(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateViewExpr.columns");
    target = stream->WriteString(8, s, target);
  }

  // repeated string plan_columns = 9;
  for (int i = 0, n = this->_internal_plan_columns_size(); i < n; i++) {
    const auto& s = this->_internal_plan_columns(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateViewExpr.plan_columns");
    target = stream->WriteString(9, s, target);
  }

  // string definition = 10;
  if (!this->_internal_definition().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_definition().data(), static_cast<int>(this->_internal_definition().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateViewExpr.definition");
    target = stream->WriteStringMaybeAliased(
        10, this->_internal_definition(), 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:greptime.v1.CreateViewExpr)
  return target;
}

size_t CreateViewExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.CreateViewExpr)
  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 .greptime.v1.TableName table_names = 7;
  total_size += 1UL * this->_internal_table_names_size();
  for (const auto& msg : this->_impl_.table_names_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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

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

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

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

  // bytes logical_plan = 4;
  if (!this->_internal_logical_plan().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
        this->_internal_logical_plan());
  }

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

  // bool create_if_not_exists = 5;
  if (this->_internal_create_if_not_exists() != 0) {
    total_size += 1 + 1;
  }

  // bool or_replace = 6;
  if (this->_internal_or_replace() != 0) {
    total_size += 1 + 1;
  }

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

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


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

  _this->_impl_.table_names_.MergeFrom(from._impl_.table_names_);
  _this->_impl_.columns_.MergeFrom(from._impl_.columns_);
  _this->_impl_.plan_columns_.MergeFrom(from._impl_.plan_columns_);
  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  if (!from._internal_view_name().empty()) {
    _this->_internal_set_view_name(from._internal_view_name());
  }
  if (!from._internal_logical_plan().empty()) {
    _this->_internal_set_logical_plan(from._internal_logical_plan());
  }
  if (!from._internal_definition().empty()) {
    _this->_internal_set_definition(from._internal_definition());
  }
  if (from._internal_create_if_not_exists() != 0) {
    _this->_internal_set_create_if_not_exists(from._internal_create_if_not_exists());
  }
  if (from._internal_or_replace() != 0) {
    _this->_internal_set_or_replace(from._internal_or_replace());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CreateViewExpr::CopyFrom(const CreateViewExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.CreateViewExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void CreateViewExpr::InternalSwap(CreateViewExpr* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.table_names_.InternalSwap(&other->_impl_.table_names_);
  _impl_.columns_.InternalSwap(&other->_impl_.columns_);
  _impl_.plan_columns_.InternalSwap(&other->_impl_.plan_columns_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.view_name_, lhs_arena,
      &other->_impl_.view_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.logical_plan_, lhs_arena,
      &other->_impl_.logical_plan_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.definition_, lhs_arena,
      &other->_impl_.definition_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CreateViewExpr, _impl_.or_replace_)
      + sizeof(CreateViewExpr::_impl_.or_replace_)
      - PROTOBUF_FIELD_OFFSET(CreateViewExpr, _impl_.create_if_not_exists_)>(
          reinterpret_cast<char*>(&_impl_.create_if_not_exists_),
          reinterpret_cast<char*>(&other->_impl_.create_if_not_exists_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CreateViewExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[4]);
}

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

class DropViewExpr::_Internal {
 public:
  static const ::greptime::v1::TableId& view_id(const DropViewExpr* msg);
};

const ::greptime::v1::TableId&
DropViewExpr::_Internal::view_id(const DropViewExpr* msg) {
  return *msg->_impl_.view_id_;
}
DropViewExpr::DropViewExpr(::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:greptime.v1.DropViewExpr)
}
DropViewExpr::DropViewExpr(const DropViewExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DropViewExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.view_name_){}
    , decltype(_impl_.view_id_){nullptr}
    , decltype(_impl_.drop_if_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.view_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.view_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_view_name().empty()) {
    _this->_impl_.view_name_.Set(from._internal_view_name(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_view_id()) {
    _this->_impl_.view_id_ = new ::greptime::v1::TableId(*from._impl_.view_id_);
  }
  _this->_impl_.drop_if_exists_ = from._impl_.drop_if_exists_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DropViewExpr)
}

inline void DropViewExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.view_name_){}
    , decltype(_impl_.view_id_){nullptr}
    , decltype(_impl_.drop_if_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.view_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.view_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

DropViewExpr::~DropViewExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.DropViewExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DropViewExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
  _impl_.view_name_.Destroy();
  if (this != internal_default_instance()) delete _impl_.view_id_;
}

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

void DropViewExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DropViewExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  _impl_.view_name_.ClearToEmpty();
  if (GetArenaForAllocation() == nullptr && _impl_.view_id_ != nullptr) {
    delete _impl_.view_id_;
  }
  _impl_.view_id_ = nullptr;
  _impl_.drop_if_exists_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* DropViewExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropViewExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropViewExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // string view_name = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_view_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropViewExpr.view_name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.TableId view_id = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_view_id(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool drop_if_exists = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _impl_.drop_if_exists_ = ::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* DropViewExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DropViewExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropViewExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropViewExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

  // string view_name = 3;
  if (!this->_internal_view_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_view_name().data(), static_cast<int>(this->_internal_view_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropViewExpr.view_name");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_view_name(), target);
  }

  // .greptime.v1.TableId view_id = 4;
  if (this->_internal_has_view_id()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::view_id(this),
        _Internal::view_id(this).GetCachedSize(), target, stream);
  }

  // bool drop_if_exists = 5;
  if (this->_internal_drop_if_exists() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_drop_if_exists(), 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:greptime.v1.DropViewExpr)
  return target;
}

size_t DropViewExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DropViewExpr)
  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 catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_catalog_name());
  }

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

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

  // .greptime.v1.TableId view_id = 4;
  if (this->_internal_has_view_id()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.view_id_);
  }

  // bool drop_if_exists = 5;
  if (this->_internal_drop_if_exists() != 0) {
    total_size += 1 + 1;
  }

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

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


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

  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  if (!from._internal_view_name().empty()) {
    _this->_internal_set_view_name(from._internal_view_name());
  }
  if (from._internal_has_view_id()) {
    _this->_internal_mutable_view_id()->::greptime::v1::TableId::MergeFrom(
        from._internal_view_id());
  }
  if (from._internal_drop_if_exists() != 0) {
    _this->_internal_set_drop_if_exists(from._internal_drop_if_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DropViewExpr::CopyFrom(const DropViewExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DropViewExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void DropViewExpr::InternalSwap(DropViewExpr* 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_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.view_name_, lhs_arena,
      &other->_impl_.view_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(DropViewExpr, _impl_.drop_if_exists_)
      + sizeof(DropViewExpr::_impl_.drop_if_exists_)
      - PROTOBUF_FIELD_OFFSET(DropViewExpr, _impl_.view_id_)>(
          reinterpret_cast<char*>(&_impl_.view_id_),
          reinterpret_cast<char*>(&other->_impl_.view_id_));
}

::PROTOBUF_NAMESPACE_ID::Metadata DropViewExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[5]);
}

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

CreateTableExpr_TableOptionsEntry_DoNotUse::CreateTableExpr_TableOptionsEntry_DoNotUse() {}
CreateTableExpr_TableOptionsEntry_DoNotUse::CreateTableExpr_TableOptionsEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena)
    : SuperType(arena) {}
void CreateTableExpr_TableOptionsEntry_DoNotUse::MergeFrom(const CreateTableExpr_TableOptionsEntry_DoNotUse& other) {
  MergeFromInternal(other);
}
::PROTOBUF_NAMESPACE_ID::Metadata CreateTableExpr_TableOptionsEntry_DoNotUse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[6]);
}

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

class CreateTableExpr::_Internal {
 public:
  static const ::greptime::v1::TableId& table_id(const CreateTableExpr* msg);
};

const ::greptime::v1::TableId&
CreateTableExpr::_Internal::table_id(const CreateTableExpr* msg) {
  return *msg->_impl_.table_id_;
}
CreateTableExpr::CreateTableExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  if (arena != nullptr && !is_message_owned) {
    arena->OwnCustomDestructor(this, &CreateTableExpr::ArenaDtor);
  }
  // @@protoc_insertion_point(arena_constructor:greptime.v1.CreateTableExpr)
}
CreateTableExpr::CreateTableExpr(const CreateTableExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CreateTableExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_defs_){from._impl_.column_defs_}
    , decltype(_impl_.primary_keys_){from._impl_.primary_keys_}
    , /*decltype(_impl_.table_options_)*/{}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.table_name_){}
    , decltype(_impl_.desc_){}
    , decltype(_impl_.time_index_){}
    , decltype(_impl_.engine_){}
    , decltype(_impl_.table_id_){nullptr}
    , decltype(_impl_.create_if_not_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.table_options_.MergeFrom(from._impl_.table_options_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.table_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.table_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_table_name().empty()) {
    _this->_impl_.table_name_.Set(from._internal_table_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.desc_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.desc_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_desc().empty()) {
    _this->_impl_.desc_.Set(from._internal_desc(), 
      _this->GetArenaForAllocation());
  }
  _impl_.time_index_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.time_index_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_time_index().empty()) {
    _this->_impl_.time_index_.Set(from._internal_time_index(), 
      _this->GetArenaForAllocation());
  }
  _impl_.engine_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.engine_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_engine().empty()) {
    _this->_impl_.engine_.Set(from._internal_engine(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_table_id()) {
    _this->_impl_.table_id_ = new ::greptime::v1::TableId(*from._impl_.table_id_);
  }
  _this->_impl_.create_if_not_exists_ = from._impl_.create_if_not_exists_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.CreateTableExpr)
}

inline void CreateTableExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.column_defs_){arena}
    , decltype(_impl_.primary_keys_){arena}
    , /*decltype(_impl_.table_options_)*/{::_pbi::ArenaInitialized(), arena}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.table_name_){}
    , decltype(_impl_.desc_){}
    , decltype(_impl_.time_index_){}
    , decltype(_impl_.engine_){}
    , decltype(_impl_.table_id_){nullptr}
    , decltype(_impl_.create_if_not_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.table_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.table_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.desc_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.desc_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.time_index_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.time_index_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.engine_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.engine_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CreateTableExpr::~CreateTableExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.CreateTableExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    ArenaDtor(this);
    return;
  }
  SharedDtor();
}

inline void CreateTableExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_defs_.~RepeatedPtrField();
  _impl_.primary_keys_.~RepeatedPtrField();
  _impl_.table_options_.Destruct();
  _impl_.table_options_.~MapField();
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
  _impl_.table_name_.Destroy();
  _impl_.desc_.Destroy();
  _impl_.time_index_.Destroy();
  _impl_.engine_.Destroy();
  if (this != internal_default_instance()) delete _impl_.table_id_;
}

void CreateTableExpr::ArenaDtor(void* object) {
  CreateTableExpr* _this = reinterpret_cast< CreateTableExpr* >(object);
  _this->_impl_.table_options_.Destruct();
}
void CreateTableExpr::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CreateTableExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.CreateTableExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.column_defs_.Clear();
  _impl_.primary_keys_.Clear();
  _impl_.table_options_.Clear();
  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  _impl_.table_name_.ClearToEmpty();
  _impl_.desc_.ClearToEmpty();
  _impl_.time_index_.ClearToEmpty();
  _impl_.engine_.ClearToEmpty();
  if (GetArenaForAllocation() == nullptr && _impl_.table_id_ != nullptr) {
    delete _impl_.table_id_;
  }
  _impl_.table_id_ = nullptr;
  _impl_.create_if_not_exists_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CreateTableExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTableExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTableExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // string table_name = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_table_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTableExpr.table_name"));
        } else
          goto handle_unusual;
        continue;
      // string desc = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_desc();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTableExpr.desc"));
        } else
          goto handle_unusual;
        continue;
      // repeated .greptime.v1.ColumnDef column_defs = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_column_defs(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr));
        } else
          goto handle_unusual;
        continue;
      // string time_index = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          auto str = _internal_mutable_time_index();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTableExpr.time_index"));
        } else
          goto handle_unusual;
        continue;
      // repeated string primary_keys = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_primary_keys();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTableExpr.primary_keys"));
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
        } else
          goto handle_unusual;
        continue;
      // bool create_if_not_exists = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 64)) {
          _impl_.create_if_not_exists_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // map<string, string> table_options = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(&_impl_.table_options_, ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<74>(ptr));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.TableId table_id = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr = ctx->ParseMessage(_internal_mutable_table_id(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string engine = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          auto str = _internal_mutable_engine();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTableExpr.engine"));
        } 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* CreateTableExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.CreateTableExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTableExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTableExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

  // string table_name = 3;
  if (!this->_internal_table_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_table_name().data(), static_cast<int>(this->_internal_table_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTableExpr.table_name");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_table_name(), target);
  }

  // string desc = 4;
  if (!this->_internal_desc().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_desc().data(), static_cast<int>(this->_internal_desc().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTableExpr.desc");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_desc(), target);
  }

  // repeated .greptime.v1.ColumnDef column_defs = 5;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_column_defs_size()); i < n; i++) {
    const auto& repfield = this->_internal_column_defs(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(5, repfield, repfield.GetCachedSize(), target, stream);
  }

  // string time_index = 6;
  if (!this->_internal_time_index().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_time_index().data(), static_cast<int>(this->_internal_time_index().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTableExpr.time_index");
    target = stream->WriteStringMaybeAliased(
        6, this->_internal_time_index(), target);
  }

  // repeated string primary_keys = 7;
  for (int i = 0, n = this->_internal_primary_keys_size(); i < n; i++) {
    const auto& s = this->_internal_primary_keys(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTableExpr.primary_keys");
    target = stream->WriteString(7, s, target);
  }

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

  // map<string, string> table_options = 9;
  if (!this->_internal_table_options().empty()) {
    using MapType = ::_pb::Map<std::string, std::string>;
    using WireHelper = CreateTableExpr_TableOptionsEntry_DoNotUse::Funcs;
    const auto& map_field = this->_internal_table_options();
    auto check_utf8 = [](const MapType::value_type& entry) {
      (void)entry;
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.first.data(), static_cast<int>(entry.first.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateTableExpr.TableOptionsEntry.key");
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.second.data(), static_cast<int>(entry.second.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateTableExpr.TableOptionsEntry.value");
    };

    if (stream->IsSerializationDeterministic() && map_field.size() > 1) {
      for (const auto& entry : ::_pbi::MapSorterPtr<MapType>(map_field)) {
        target = WireHelper::InternalSerialize(9, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    } else {
      for (const auto& entry : map_field) {
        target = WireHelper::InternalSerialize(9, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    }
  }

  // .greptime.v1.TableId table_id = 10;
  if (this->_internal_has_table_id()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(10, _Internal::table_id(this),
        _Internal::table_id(this).GetCachedSize(), target, stream);
  }

  // string engine = 12;
  if (!this->_internal_engine().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_engine().data(), static_cast<int>(this->_internal_engine().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTableExpr.engine");
    target = stream->WriteStringMaybeAliased(
        12, this->_internal_engine(), 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:greptime.v1.CreateTableExpr)
  return target;
}

size_t CreateTableExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.CreateTableExpr)
  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 .greptime.v1.ColumnDef column_defs = 5;
  total_size += 1UL * this->_internal_column_defs_size();
  for (const auto& msg : this->_impl_.column_defs_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

  // map<string, string> table_options = 9;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_table_options_size());
  for (::PROTOBUF_NAMESPACE_ID::Map< std::string, std::string >::const_iterator
      it = this->_internal_table_options().begin();
      it != this->_internal_table_options().end(); ++it) {
    total_size += CreateTableExpr_TableOptionsEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
  }

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

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

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

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

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

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

  // .greptime.v1.TableId table_id = 10;
  if (this->_internal_has_table_id()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.table_id_);
  }

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

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

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


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

  _this->_impl_.column_defs_.MergeFrom(from._impl_.column_defs_);
  _this->_impl_.primary_keys_.MergeFrom(from._impl_.primary_keys_);
  _this->_impl_.table_options_.MergeFrom(from._impl_.table_options_);
  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  if (!from._internal_table_name().empty()) {
    _this->_internal_set_table_name(from._internal_table_name());
  }
  if (!from._internal_desc().empty()) {
    _this->_internal_set_desc(from._internal_desc());
  }
  if (!from._internal_time_index().empty()) {
    _this->_internal_set_time_index(from._internal_time_index());
  }
  if (!from._internal_engine().empty()) {
    _this->_internal_set_engine(from._internal_engine());
  }
  if (from._internal_has_table_id()) {
    _this->_internal_mutable_table_id()->::greptime::v1::TableId::MergeFrom(
        from._internal_table_id());
  }
  if (from._internal_create_if_not_exists() != 0) {
    _this->_internal_set_create_if_not_exists(from._internal_create_if_not_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CreateTableExpr::CopyFrom(const CreateTableExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.CreateTableExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void CreateTableExpr::InternalSwap(CreateTableExpr* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.column_defs_.InternalSwap(&other->_impl_.column_defs_);
  _impl_.primary_keys_.InternalSwap(&other->_impl_.primary_keys_);
  _impl_.table_options_.InternalSwap(&other->_impl_.table_options_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.table_name_, lhs_arena,
      &other->_impl_.table_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.desc_, lhs_arena,
      &other->_impl_.desc_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.time_index_, lhs_arena,
      &other->_impl_.time_index_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.engine_, lhs_arena,
      &other->_impl_.engine_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CreateTableExpr, _impl_.create_if_not_exists_)
      + sizeof(CreateTableExpr::_impl_.create_if_not_exists_)
      - PROTOBUF_FIELD_OFFSET(CreateTableExpr, _impl_.table_id_)>(
          reinterpret_cast<char*>(&_impl_.table_id_),
          reinterpret_cast<char*>(&other->_impl_.table_id_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CreateTableExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[7]);
}

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

class AlterTableExpr::_Internal {
 public:
  static const ::greptime::v1::AddColumns& add_columns(const AlterTableExpr* msg);
  static const ::greptime::v1::DropColumns& drop_columns(const AlterTableExpr* msg);
  static const ::greptime::v1::RenameTable& rename_table(const AlterTableExpr* msg);
  static const ::greptime::v1::ModifyColumnTypes& modify_column_types(const AlterTableExpr* msg);
  static const ::greptime::v1::SetTableOptions& set_table_options(const AlterTableExpr* msg);
  static const ::greptime::v1::UnsetTableOptions& unset_table_options(const AlterTableExpr* msg);
  static const ::greptime::v1::SetIndex& set_index(const AlterTableExpr* msg);
  static const ::greptime::v1::UnsetIndex& unset_index(const AlterTableExpr* msg);
  static const ::greptime::v1::DropDefaults& drop_defaults(const AlterTableExpr* msg);
  static const ::greptime::v1::SetIndexes& set_indexes(const AlterTableExpr* msg);
  static const ::greptime::v1::UnsetIndexes& unset_indexes(const AlterTableExpr* msg);
  static const ::greptime::v1::SetDefaults& set_defaults(const AlterTableExpr* msg);
  static const ::greptime::v1::Repartition& repartition(const AlterTableExpr* msg);
};

const ::greptime::v1::AddColumns&
AlterTableExpr::_Internal::add_columns(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.add_columns_;
}
const ::greptime::v1::DropColumns&
AlterTableExpr::_Internal::drop_columns(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.drop_columns_;
}
const ::greptime::v1::RenameTable&
AlterTableExpr::_Internal::rename_table(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.rename_table_;
}
const ::greptime::v1::ModifyColumnTypes&
AlterTableExpr::_Internal::modify_column_types(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.modify_column_types_;
}
const ::greptime::v1::SetTableOptions&
AlterTableExpr::_Internal::set_table_options(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.set_table_options_;
}
const ::greptime::v1::UnsetTableOptions&
AlterTableExpr::_Internal::unset_table_options(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.unset_table_options_;
}
const ::greptime::v1::SetIndex&
AlterTableExpr::_Internal::set_index(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.set_index_;
}
const ::greptime::v1::UnsetIndex&
AlterTableExpr::_Internal::unset_index(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.unset_index_;
}
const ::greptime::v1::DropDefaults&
AlterTableExpr::_Internal::drop_defaults(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.drop_defaults_;
}
const ::greptime::v1::SetIndexes&
AlterTableExpr::_Internal::set_indexes(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.set_indexes_;
}
const ::greptime::v1::UnsetIndexes&
AlterTableExpr::_Internal::unset_indexes(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.unset_indexes_;
}
const ::greptime::v1::SetDefaults&
AlterTableExpr::_Internal::set_defaults(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.set_defaults_;
}
const ::greptime::v1::Repartition&
AlterTableExpr::_Internal::repartition(const AlterTableExpr* msg) {
  return *msg->_impl_.kind_.repartition_;
}
void AlterTableExpr::set_allocated_add_columns(::greptime::v1::AddColumns* add_columns) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (add_columns) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(add_columns);
    if (message_arena != submessage_arena) {
      add_columns = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, add_columns, submessage_arena);
    }
    set_has_add_columns();
    _impl_.kind_.add_columns_ = add_columns;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.add_columns)
}
void AlterTableExpr::set_allocated_drop_columns(::greptime::v1::DropColumns* drop_columns) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (drop_columns) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(drop_columns);
    if (message_arena != submessage_arena) {
      drop_columns = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, drop_columns, submessage_arena);
    }
    set_has_drop_columns();
    _impl_.kind_.drop_columns_ = drop_columns;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.drop_columns)
}
void AlterTableExpr::set_allocated_rename_table(::greptime::v1::RenameTable* rename_table) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (rename_table) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(rename_table);
    if (message_arena != submessage_arena) {
      rename_table = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, rename_table, submessage_arena);
    }
    set_has_rename_table();
    _impl_.kind_.rename_table_ = rename_table;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.rename_table)
}
void AlterTableExpr::set_allocated_modify_column_types(::greptime::v1::ModifyColumnTypes* modify_column_types) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (modify_column_types) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(modify_column_types);
    if (message_arena != submessage_arena) {
      modify_column_types = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, modify_column_types, submessage_arena);
    }
    set_has_modify_column_types();
    _impl_.kind_.modify_column_types_ = modify_column_types;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.modify_column_types)
}
void AlterTableExpr::set_allocated_set_table_options(::greptime::v1::SetTableOptions* set_table_options) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (set_table_options) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(set_table_options);
    if (message_arena != submessage_arena) {
      set_table_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, set_table_options, submessage_arena);
    }
    set_has_set_table_options();
    _impl_.kind_.set_table_options_ = set_table_options;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.set_table_options)
}
void AlterTableExpr::set_allocated_unset_table_options(::greptime::v1::UnsetTableOptions* unset_table_options) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (unset_table_options) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(unset_table_options);
    if (message_arena != submessage_arena) {
      unset_table_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, unset_table_options, submessage_arena);
    }
    set_has_unset_table_options();
    _impl_.kind_.unset_table_options_ = unset_table_options;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.unset_table_options)
}
void AlterTableExpr::set_allocated_set_index(::greptime::v1::SetIndex* set_index) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (set_index) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(set_index);
    if (message_arena != submessage_arena) {
      set_index = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, set_index, submessage_arena);
    }
    set_has_set_index();
    _impl_.kind_.set_index_ = set_index;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.set_index)
}
void AlterTableExpr::set_allocated_unset_index(::greptime::v1::UnsetIndex* unset_index) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (unset_index) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(unset_index);
    if (message_arena != submessage_arena) {
      unset_index = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, unset_index, submessage_arena);
    }
    set_has_unset_index();
    _impl_.kind_.unset_index_ = unset_index;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.unset_index)
}
void AlterTableExpr::set_allocated_drop_defaults(::greptime::v1::DropDefaults* drop_defaults) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (drop_defaults) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(drop_defaults);
    if (message_arena != submessage_arena) {
      drop_defaults = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, drop_defaults, submessage_arena);
    }
    set_has_drop_defaults();
    _impl_.kind_.drop_defaults_ = drop_defaults;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.drop_defaults)
}
void AlterTableExpr::set_allocated_set_indexes(::greptime::v1::SetIndexes* set_indexes) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (set_indexes) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(set_indexes);
    if (message_arena != submessage_arena) {
      set_indexes = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, set_indexes, submessage_arena);
    }
    set_has_set_indexes();
    _impl_.kind_.set_indexes_ = set_indexes;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.set_indexes)
}
void AlterTableExpr::set_allocated_unset_indexes(::greptime::v1::UnsetIndexes* unset_indexes) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (unset_indexes) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(unset_indexes);
    if (message_arena != submessage_arena) {
      unset_indexes = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, unset_indexes, submessage_arena);
    }
    set_has_unset_indexes();
    _impl_.kind_.unset_indexes_ = unset_indexes;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.unset_indexes)
}
void AlterTableExpr::set_allocated_set_defaults(::greptime::v1::SetDefaults* set_defaults) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (set_defaults) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(set_defaults);
    if (message_arena != submessage_arena) {
      set_defaults = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, set_defaults, submessage_arena);
    }
    set_has_set_defaults();
    _impl_.kind_.set_defaults_ = set_defaults;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.set_defaults)
}
void AlterTableExpr::set_allocated_repartition(::greptime::v1::Repartition* repartition) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (repartition) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(repartition);
    if (message_arena != submessage_arena) {
      repartition = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, repartition, submessage_arena);
    }
    set_has_repartition();
    _impl_.kind_.repartition_ = repartition;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterTableExpr.repartition)
}
AlterTableExpr::AlterTableExpr(::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:greptime.v1.AlterTableExpr)
}
AlterTableExpr::AlterTableExpr(const AlterTableExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AlterTableExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.table_name_){}
    , decltype(_impl_.kind_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.table_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.table_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_table_name().empty()) {
    _this->_impl_.table_name_.Set(from._internal_table_name(), 
      _this->GetArenaForAllocation());
  }
  clear_has_kind();
  switch (from.kind_case()) {
    case kAddColumns: {
      _this->_internal_mutable_add_columns()->::greptime::v1::AddColumns::MergeFrom(
          from._internal_add_columns());
      break;
    }
    case kDropColumns: {
      _this->_internal_mutable_drop_columns()->::greptime::v1::DropColumns::MergeFrom(
          from._internal_drop_columns());
      break;
    }
    case kRenameTable: {
      _this->_internal_mutable_rename_table()->::greptime::v1::RenameTable::MergeFrom(
          from._internal_rename_table());
      break;
    }
    case kModifyColumnTypes: {
      _this->_internal_mutable_modify_column_types()->::greptime::v1::ModifyColumnTypes::MergeFrom(
          from._internal_modify_column_types());
      break;
    }
    case kSetTableOptions: {
      _this->_internal_mutable_set_table_options()->::greptime::v1::SetTableOptions::MergeFrom(
          from._internal_set_table_options());
      break;
    }
    case kUnsetTableOptions: {
      _this->_internal_mutable_unset_table_options()->::greptime::v1::UnsetTableOptions::MergeFrom(
          from._internal_unset_table_options());
      break;
    }
    case kSetIndex: {
      _this->_internal_mutable_set_index()->::greptime::v1::SetIndex::MergeFrom(
          from._internal_set_index());
      break;
    }
    case kUnsetIndex: {
      _this->_internal_mutable_unset_index()->::greptime::v1::UnsetIndex::MergeFrom(
          from._internal_unset_index());
      break;
    }
    case kDropDefaults: {
      _this->_internal_mutable_drop_defaults()->::greptime::v1::DropDefaults::MergeFrom(
          from._internal_drop_defaults());
      break;
    }
    case kSetIndexes: {
      _this->_internal_mutable_set_indexes()->::greptime::v1::SetIndexes::MergeFrom(
          from._internal_set_indexes());
      break;
    }
    case kUnsetIndexes: {
      _this->_internal_mutable_unset_indexes()->::greptime::v1::UnsetIndexes::MergeFrom(
          from._internal_unset_indexes());
      break;
    }
    case kSetDefaults: {
      _this->_internal_mutable_set_defaults()->::greptime::v1::SetDefaults::MergeFrom(
          from._internal_set_defaults());
      break;
    }
    case kRepartition: {
      _this->_internal_mutable_repartition()->::greptime::v1::Repartition::MergeFrom(
          from._internal_repartition());
      break;
    }
    case KIND_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.AlterTableExpr)
}

inline void AlterTableExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.table_name_){}
    , decltype(_impl_.kind_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.table_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.table_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  clear_has_kind();
}

AlterTableExpr::~AlterTableExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.AlterTableExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void AlterTableExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
  _impl_.table_name_.Destroy();
  if (has_kind()) {
    clear_kind();
  }
}

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

void AlterTableExpr::clear_kind() {
// @@protoc_insertion_point(one_of_clear_start:greptime.v1.AlterTableExpr)
  switch (kind_case()) {
    case kAddColumns: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.add_columns_;
      }
      break;
    }
    case kDropColumns: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.drop_columns_;
      }
      break;
    }
    case kRenameTable: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.rename_table_;
      }
      break;
    }
    case kModifyColumnTypes: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.modify_column_types_;
      }
      break;
    }
    case kSetTableOptions: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.set_table_options_;
      }
      break;
    }
    case kUnsetTableOptions: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.unset_table_options_;
      }
      break;
    }
    case kSetIndex: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.set_index_;
      }
      break;
    }
    case kUnsetIndex: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.unset_index_;
      }
      break;
    }
    case kDropDefaults: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.drop_defaults_;
      }
      break;
    }
    case kSetIndexes: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.set_indexes_;
      }
      break;
    }
    case kUnsetIndexes: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.unset_indexes_;
      }
      break;
    }
    case kSetDefaults: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.set_defaults_;
      }
      break;
    }
    case kRepartition: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.repartition_;
      }
      break;
    }
    case KIND_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = KIND_NOT_SET;
}


void AlterTableExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.AlterTableExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  _impl_.table_name_.ClearToEmpty();
  clear_kind();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* AlterTableExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.AlterTableExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.AlterTableExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // string table_name = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_table_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.AlterTableExpr.table_name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.AddColumns add_columns = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_add_columns(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.DropColumns drop_columns = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_drop_columns(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.RenameTable rename_table = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr = ctx->ParseMessage(_internal_mutable_rename_table(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.ModifyColumnTypes modify_column_types = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_modify_column_types(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.SetTableOptions set_table_options = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_table_options(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.UnsetTableOptions unset_table_options = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          ptr = ctx->ParseMessage(_internal_mutable_unset_table_options(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.SetIndex set_index = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_index(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.UnsetIndex unset_index = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 106)) {
          ptr = ctx->ParseMessage(_internal_mutable_unset_index(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.DropDefaults drop_defaults = 14;
      case 14:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 114)) {
          ptr = ctx->ParseMessage(_internal_mutable_drop_defaults(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.SetIndexes set_indexes = 15;
      case 15:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 122)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_indexes(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.UnsetIndexes unset_indexes = 16;
      case 16:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 130)) {
          ptr = ctx->ParseMessage(_internal_mutable_unset_indexes(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.SetDefaults set_defaults = 17;
      case 17:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 138)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_defaults(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.Repartition repartition = 18;
      case 18:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 146)) {
          ptr = ctx->ParseMessage(_internal_mutable_repartition(), 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* AlterTableExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.AlterTableExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.AlterTableExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.AlterTableExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

  // string table_name = 3;
  if (!this->_internal_table_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_table_name().data(), static_cast<int>(this->_internal_table_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.AlterTableExpr.table_name");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_table_name(), target);
  }

  // .greptime.v1.AddColumns add_columns = 4;
  if (_internal_has_add_columns()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::add_columns(this),
        _Internal::add_columns(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.DropColumns drop_columns = 5;
  if (_internal_has_drop_columns()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::drop_columns(this),
        _Internal::drop_columns(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.RenameTable rename_table = 6;
  if (_internal_has_rename_table()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(6, _Internal::rename_table(this),
        _Internal::rename_table(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.ModifyColumnTypes modify_column_types = 7;
  if (_internal_has_modify_column_types()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::modify_column_types(this),
        _Internal::modify_column_types(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.SetTableOptions set_table_options = 8;
  if (_internal_has_set_table_options()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(8, _Internal::set_table_options(this),
        _Internal::set_table_options(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.UnsetTableOptions unset_table_options = 11;
  if (_internal_has_unset_table_options()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(11, _Internal::unset_table_options(this),
        _Internal::unset_table_options(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.SetIndex set_index = 12;
  if (_internal_has_set_index()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(12, _Internal::set_index(this),
        _Internal::set_index(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.UnsetIndex unset_index = 13;
  if (_internal_has_unset_index()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(13, _Internal::unset_index(this),
        _Internal::unset_index(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.DropDefaults drop_defaults = 14;
  if (_internal_has_drop_defaults()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(14, _Internal::drop_defaults(this),
        _Internal::drop_defaults(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.SetIndexes set_indexes = 15;
  if (_internal_has_set_indexes()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(15, _Internal::set_indexes(this),
        _Internal::set_indexes(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.UnsetIndexes unset_indexes = 16;
  if (_internal_has_unset_indexes()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(16, _Internal::unset_indexes(this),
        _Internal::unset_indexes(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.SetDefaults set_defaults = 17;
  if (_internal_has_set_defaults()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(17, _Internal::set_defaults(this),
        _Internal::set_defaults(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.Repartition repartition = 18;
  if (_internal_has_repartition()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(18, _Internal::repartition(this),
        _Internal::repartition(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:greptime.v1.AlterTableExpr)
  return target;
}

size_t AlterTableExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.AlterTableExpr)
  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 catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_catalog_name());
  }

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

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

  switch (kind_case()) {
    // .greptime.v1.AddColumns add_columns = 4;
    case kAddColumns: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.add_columns_);
      break;
    }
    // .greptime.v1.DropColumns drop_columns = 5;
    case kDropColumns: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.drop_columns_);
      break;
    }
    // .greptime.v1.RenameTable rename_table = 6;
    case kRenameTable: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.rename_table_);
      break;
    }
    // .greptime.v1.ModifyColumnTypes modify_column_types = 7;
    case kModifyColumnTypes: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.modify_column_types_);
      break;
    }
    // .greptime.v1.SetTableOptions set_table_options = 8;
    case kSetTableOptions: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.set_table_options_);
      break;
    }
    // .greptime.v1.UnsetTableOptions unset_table_options = 11;
    case kUnsetTableOptions: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.unset_table_options_);
      break;
    }
    // .greptime.v1.SetIndex set_index = 12;
    case kSetIndex: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.set_index_);
      break;
    }
    // .greptime.v1.UnsetIndex unset_index = 13;
    case kUnsetIndex: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.unset_index_);
      break;
    }
    // .greptime.v1.DropDefaults drop_defaults = 14;
    case kDropDefaults: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.drop_defaults_);
      break;
    }
    // .greptime.v1.SetIndexes set_indexes = 15;
    case kSetIndexes: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.set_indexes_);
      break;
    }
    // .greptime.v1.UnsetIndexes unset_indexes = 16;
    case kUnsetIndexes: {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.unset_indexes_);
      break;
    }
    // .greptime.v1.SetDefaults set_defaults = 17;
    case kSetDefaults: {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.set_defaults_);
      break;
    }
    // .greptime.v1.Repartition repartition = 18;
    case kRepartition: {
      total_size += 2 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.repartition_);
      break;
    }
    case KIND_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

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


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

  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  if (!from._internal_table_name().empty()) {
    _this->_internal_set_table_name(from._internal_table_name());
  }
  switch (from.kind_case()) {
    case kAddColumns: {
      _this->_internal_mutable_add_columns()->::greptime::v1::AddColumns::MergeFrom(
          from._internal_add_columns());
      break;
    }
    case kDropColumns: {
      _this->_internal_mutable_drop_columns()->::greptime::v1::DropColumns::MergeFrom(
          from._internal_drop_columns());
      break;
    }
    case kRenameTable: {
      _this->_internal_mutable_rename_table()->::greptime::v1::RenameTable::MergeFrom(
          from._internal_rename_table());
      break;
    }
    case kModifyColumnTypes: {
      _this->_internal_mutable_modify_column_types()->::greptime::v1::ModifyColumnTypes::MergeFrom(
          from._internal_modify_column_types());
      break;
    }
    case kSetTableOptions: {
      _this->_internal_mutable_set_table_options()->::greptime::v1::SetTableOptions::MergeFrom(
          from._internal_set_table_options());
      break;
    }
    case kUnsetTableOptions: {
      _this->_internal_mutable_unset_table_options()->::greptime::v1::UnsetTableOptions::MergeFrom(
          from._internal_unset_table_options());
      break;
    }
    case kSetIndex: {
      _this->_internal_mutable_set_index()->::greptime::v1::SetIndex::MergeFrom(
          from._internal_set_index());
      break;
    }
    case kUnsetIndex: {
      _this->_internal_mutable_unset_index()->::greptime::v1::UnsetIndex::MergeFrom(
          from._internal_unset_index());
      break;
    }
    case kDropDefaults: {
      _this->_internal_mutable_drop_defaults()->::greptime::v1::DropDefaults::MergeFrom(
          from._internal_drop_defaults());
      break;
    }
    case kSetIndexes: {
      _this->_internal_mutable_set_indexes()->::greptime::v1::SetIndexes::MergeFrom(
          from._internal_set_indexes());
      break;
    }
    case kUnsetIndexes: {
      _this->_internal_mutable_unset_indexes()->::greptime::v1::UnsetIndexes::MergeFrom(
          from._internal_unset_indexes());
      break;
    }
    case kSetDefaults: {
      _this->_internal_mutable_set_defaults()->::greptime::v1::SetDefaults::MergeFrom(
          from._internal_set_defaults());
      break;
    }
    case kRepartition: {
      _this->_internal_mutable_repartition()->::greptime::v1::Repartition::MergeFrom(
          from._internal_repartition());
      break;
    }
    case KIND_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void AlterTableExpr::CopyFrom(const AlterTableExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.AlterTableExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void AlterTableExpr::InternalSwap(AlterTableExpr* 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_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.table_name_, lhs_arena,
      &other->_impl_.table_name_, rhs_arena
  );
  swap(_impl_.kind_, other->_impl_.kind_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata AlterTableExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[8]);
}

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

class DropDefault::_Internal {
 public:
};

DropDefault::DropDefault(::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:greptime.v1.DropDefault)
}
DropDefault::DropDefault(const DropDefault& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DropDefault* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DropDefault)
}

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

DropDefault::~DropDefault() {
  // @@protoc_insertion_point(destructor:greptime.v1.DropDefault)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DropDefault::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_name_.Destroy();
}

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

void DropDefault::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DropDefault)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* DropDefault::_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 column_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropDefault.column_name"));
        } 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* DropDefault::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DropDefault)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string column_name = 1;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropDefault.column_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_column_name(), 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:greptime.v1.DropDefault)
  return target;
}

size_t DropDefault::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DropDefault)
  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 column_name = 1;
  if (!this->_internal_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_column_name());
  }

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

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


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

  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DropDefault::CopyFrom(const DropDefault& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DropDefault)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void DropDefault::InternalSwap(DropDefault* 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_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata DropDefault::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[9]);
}

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

class SetIndexes::_Internal {
 public:
};

SetIndexes::SetIndexes(::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:greptime.v1.SetIndexes)
}
SetIndexes::SetIndexes(const SetIndexes& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SetIndexes* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.set_indexes_){from._impl_.set_indexes_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.SetIndexes)
}

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

SetIndexes::~SetIndexes() {
  // @@protoc_insertion_point(destructor:greptime.v1.SetIndexes)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void SetIndexes::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.SetIndexes)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* SetIndexes::_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 .greptime.v1.SetIndex set_indexes = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_set_indexes(), ptr);
            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* SetIndexes::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.SetIndexes)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .greptime.v1.SetIndex set_indexes = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_set_indexes_size()); i < n; i++) {
    const auto& repfield = this->_internal_set_indexes(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, 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:greptime.v1.SetIndexes)
  return target;
}

size_t SetIndexes::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.SetIndexes)
  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 .greptime.v1.SetIndex set_indexes = 1;
  total_size += 1UL * this->_internal_set_indexes_size();
  for (const auto& msg : this->_impl_.set_indexes_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

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

void SetIndexes::CopyFrom(const SetIndexes& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.SetIndexes)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata SetIndexes::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[10]);
}

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

class UnsetIndexes::_Internal {
 public:
};

UnsetIndexes::UnsetIndexes(::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:greptime.v1.UnsetIndexes)
}
UnsetIndexes::UnsetIndexes(const UnsetIndexes& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UnsetIndexes* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.unset_indexes_){from._impl_.unset_indexes_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.UnsetIndexes)
}

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

UnsetIndexes::~UnsetIndexes() {
  // @@protoc_insertion_point(destructor:greptime.v1.UnsetIndexes)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void UnsetIndexes::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.UnsetIndexes)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* UnsetIndexes::_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 .greptime.v1.UnsetIndex unset_indexes = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_unset_indexes(), ptr);
            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* UnsetIndexes::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.UnsetIndexes)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .greptime.v1.UnsetIndex unset_indexes = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_unset_indexes_size()); i < n; i++) {
    const auto& repfield = this->_internal_unset_indexes(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, 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:greptime.v1.UnsetIndexes)
  return target;
}

size_t UnsetIndexes::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.UnsetIndexes)
  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 .greptime.v1.UnsetIndex unset_indexes = 1;
  total_size += 1UL * this->_internal_unset_indexes_size();
  for (const auto& msg : this->_impl_.unset_indexes_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

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

void UnsetIndexes::CopyFrom(const UnsetIndexes& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.UnsetIndexes)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata UnsetIndexes::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[11]);
}

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

class SetDefault::_Internal {
 public:
};

SetDefault::SetDefault(::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:greptime.v1.SetDefault)
}
SetDefault::SetDefault(const SetDefault& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SetDefault* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , decltype(_impl_.default_constraint_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.default_constraint_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.default_constraint_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_default_constraint().empty()) {
    _this->_impl_.default_constraint_.Set(from._internal_default_constraint(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.SetDefault)
}

inline void SetDefault::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , decltype(_impl_.default_constraint_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.default_constraint_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.default_constraint_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

SetDefault::~SetDefault() {
  // @@protoc_insertion_point(destructor:greptime.v1.SetDefault)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void SetDefault::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_name_.Destroy();
  _impl_.default_constraint_.Destroy();
}

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

void SetDefault::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.SetDefault)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.column_name_.ClearToEmpty();
  _impl_.default_constraint_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* SetDefault::_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 column_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.SetDefault.column_name"));
        } else
          goto handle_unusual;
        continue;
      // bytes default_constraint = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_default_constraint();
          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* SetDefault::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.SetDefault)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string column_name = 1;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.SetDefault.column_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_column_name(), target);
  }

  // bytes default_constraint = 2;
  if (!this->_internal_default_constraint().empty()) {
    target = stream->WriteBytesMaybeAliased(
        2, this->_internal_default_constraint(), 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:greptime.v1.SetDefault)
  return target;
}

size_t SetDefault::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.SetDefault)
  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 column_name = 1;
  if (!this->_internal_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_column_name());
  }

  // bytes default_constraint = 2;
  if (!this->_internal_default_constraint().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
        this->_internal_default_constraint());
  }

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

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


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

  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  if (!from._internal_default_constraint().empty()) {
    _this->_internal_set_default_constraint(from._internal_default_constraint());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void SetDefault::CopyFrom(const SetDefault& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.SetDefault)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void SetDefault::InternalSwap(SetDefault* 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_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.default_constraint_, lhs_arena,
      &other->_impl_.default_constraint_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata SetDefault::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[12]);
}

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

class SetIndex::_Internal {
 public:
  static const ::greptime::v1::SetFulltext& fulltext(const SetIndex* msg);
  static const ::greptime::v1::SetInverted& inverted(const SetIndex* msg);
  static const ::greptime::v1::SetSkipping& skipping(const SetIndex* msg);
};

const ::greptime::v1::SetFulltext&
SetIndex::_Internal::fulltext(const SetIndex* msg) {
  return *msg->_impl_.options_.fulltext_;
}
const ::greptime::v1::SetInverted&
SetIndex::_Internal::inverted(const SetIndex* msg) {
  return *msg->_impl_.options_.inverted_;
}
const ::greptime::v1::SetSkipping&
SetIndex::_Internal::skipping(const SetIndex* msg) {
  return *msg->_impl_.options_.skipping_;
}
void SetIndex::set_allocated_fulltext(::greptime::v1::SetFulltext* fulltext) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_options();
  if (fulltext) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(fulltext);
    if (message_arena != submessage_arena) {
      fulltext = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, fulltext, submessage_arena);
    }
    set_has_fulltext();
    _impl_.options_.fulltext_ = fulltext;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.SetIndex.fulltext)
}
void SetIndex::set_allocated_inverted(::greptime::v1::SetInverted* inverted) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_options();
  if (inverted) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(inverted);
    if (message_arena != submessage_arena) {
      inverted = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, inverted, submessage_arena);
    }
    set_has_inverted();
    _impl_.options_.inverted_ = inverted;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.SetIndex.inverted)
}
void SetIndex::set_allocated_skipping(::greptime::v1::SetSkipping* skipping) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_options();
  if (skipping) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(skipping);
    if (message_arena != submessage_arena) {
      skipping = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, skipping, submessage_arena);
    }
    set_has_skipping();
    _impl_.options_.skipping_ = skipping;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.SetIndex.skipping)
}
SetIndex::SetIndex(::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:greptime.v1.SetIndex)
}
SetIndex::SetIndex(const SetIndex& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SetIndex* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.options_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_options();
  switch (from.options_case()) {
    case kFulltext: {
      _this->_internal_mutable_fulltext()->::greptime::v1::SetFulltext::MergeFrom(
          from._internal_fulltext());
      break;
    }
    case kInverted: {
      _this->_internal_mutable_inverted()->::greptime::v1::SetInverted::MergeFrom(
          from._internal_inverted());
      break;
    }
    case kSkipping: {
      _this->_internal_mutable_skipping()->::greptime::v1::SetSkipping::MergeFrom(
          from._internal_skipping());
      break;
    }
    case OPTIONS_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.SetIndex)
}

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

SetIndex::~SetIndex() {
  // @@protoc_insertion_point(destructor:greptime.v1.SetIndex)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void SetIndex::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_options()) {
    clear_options();
  }
}

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

void SetIndex::clear_options() {
// @@protoc_insertion_point(one_of_clear_start:greptime.v1.SetIndex)
  switch (options_case()) {
    case kFulltext: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.options_.fulltext_;
      }
      break;
    }
    case kInverted: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.options_.inverted_;
      }
      break;
    }
    case kSkipping: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.options_.skipping_;
      }
      break;
    }
    case OPTIONS_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = OPTIONS_NOT_SET;
}


void SetIndex::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.SetIndex)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* SetIndex::_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) {
      // .greptime.v1.SetFulltext fulltext = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_fulltext(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.SetInverted inverted = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_inverted(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.SetSkipping skipping = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_skipping(), 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* SetIndex::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.SetIndex)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .greptime.v1.SetFulltext fulltext = 1;
  if (_internal_has_fulltext()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::fulltext(this),
        _Internal::fulltext(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.SetInverted inverted = 2;
  if (_internal_has_inverted()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::inverted(this),
        _Internal::inverted(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.SetSkipping skipping = 3;
  if (_internal_has_skipping()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::skipping(this),
        _Internal::skipping(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:greptime.v1.SetIndex)
  return target;
}

size_t SetIndex::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.SetIndex)
  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 (options_case()) {
    // .greptime.v1.SetFulltext fulltext = 1;
    case kFulltext: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.options_.fulltext_);
      break;
    }
    // .greptime.v1.SetInverted inverted = 2;
    case kInverted: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.options_.inverted_);
      break;
    }
    // .greptime.v1.SetSkipping skipping = 3;
    case kSkipping: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.options_.skipping_);
      break;
    }
    case OPTIONS_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

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


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

  switch (from.options_case()) {
    case kFulltext: {
      _this->_internal_mutable_fulltext()->::greptime::v1::SetFulltext::MergeFrom(
          from._internal_fulltext());
      break;
    }
    case kInverted: {
      _this->_internal_mutable_inverted()->::greptime::v1::SetInverted::MergeFrom(
          from._internal_inverted());
      break;
    }
    case kSkipping: {
      _this->_internal_mutable_skipping()->::greptime::v1::SetSkipping::MergeFrom(
          from._internal_skipping());
      break;
    }
    case OPTIONS_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void SetIndex::CopyFrom(const SetIndex& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.SetIndex)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata SetIndex::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[13]);
}

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

class UnsetIndex::_Internal {
 public:
  static const ::greptime::v1::UnsetFulltext& fulltext(const UnsetIndex* msg);
  static const ::greptime::v1::UnsetInverted& inverted(const UnsetIndex* msg);
  static const ::greptime::v1::UnsetSkipping& skipping(const UnsetIndex* msg);
};

const ::greptime::v1::UnsetFulltext&
UnsetIndex::_Internal::fulltext(const UnsetIndex* msg) {
  return *msg->_impl_.options_.fulltext_;
}
const ::greptime::v1::UnsetInverted&
UnsetIndex::_Internal::inverted(const UnsetIndex* msg) {
  return *msg->_impl_.options_.inverted_;
}
const ::greptime::v1::UnsetSkipping&
UnsetIndex::_Internal::skipping(const UnsetIndex* msg) {
  return *msg->_impl_.options_.skipping_;
}
void UnsetIndex::set_allocated_fulltext(::greptime::v1::UnsetFulltext* fulltext) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_options();
  if (fulltext) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(fulltext);
    if (message_arena != submessage_arena) {
      fulltext = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, fulltext, submessage_arena);
    }
    set_has_fulltext();
    _impl_.options_.fulltext_ = fulltext;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.UnsetIndex.fulltext)
}
void UnsetIndex::set_allocated_inverted(::greptime::v1::UnsetInverted* inverted) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_options();
  if (inverted) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(inverted);
    if (message_arena != submessage_arena) {
      inverted = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, inverted, submessage_arena);
    }
    set_has_inverted();
    _impl_.options_.inverted_ = inverted;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.UnsetIndex.inverted)
}
void UnsetIndex::set_allocated_skipping(::greptime::v1::UnsetSkipping* skipping) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_options();
  if (skipping) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(skipping);
    if (message_arena != submessage_arena) {
      skipping = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, skipping, submessage_arena);
    }
    set_has_skipping();
    _impl_.options_.skipping_ = skipping;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.UnsetIndex.skipping)
}
UnsetIndex::UnsetIndex(::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:greptime.v1.UnsetIndex)
}
UnsetIndex::UnsetIndex(const UnsetIndex& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UnsetIndex* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.options_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_options();
  switch (from.options_case()) {
    case kFulltext: {
      _this->_internal_mutable_fulltext()->::greptime::v1::UnsetFulltext::MergeFrom(
          from._internal_fulltext());
      break;
    }
    case kInverted: {
      _this->_internal_mutable_inverted()->::greptime::v1::UnsetInverted::MergeFrom(
          from._internal_inverted());
      break;
    }
    case kSkipping: {
      _this->_internal_mutable_skipping()->::greptime::v1::UnsetSkipping::MergeFrom(
          from._internal_skipping());
      break;
    }
    case OPTIONS_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.UnsetIndex)
}

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

UnsetIndex::~UnsetIndex() {
  // @@protoc_insertion_point(destructor:greptime.v1.UnsetIndex)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UnsetIndex::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (has_options()) {
    clear_options();
  }
}

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

void UnsetIndex::clear_options() {
// @@protoc_insertion_point(one_of_clear_start:greptime.v1.UnsetIndex)
  switch (options_case()) {
    case kFulltext: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.options_.fulltext_;
      }
      break;
    }
    case kInverted: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.options_.inverted_;
      }
      break;
    }
    case kSkipping: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.options_.skipping_;
      }
      break;
    }
    case OPTIONS_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = OPTIONS_NOT_SET;
}


void UnsetIndex::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.UnsetIndex)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* UnsetIndex::_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) {
      // .greptime.v1.UnsetFulltext fulltext = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_fulltext(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.UnsetInverted inverted = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_inverted(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.UnsetSkipping skipping = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_skipping(), 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* UnsetIndex::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.UnsetIndex)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .greptime.v1.UnsetFulltext fulltext = 1;
  if (_internal_has_fulltext()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::fulltext(this),
        _Internal::fulltext(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.UnsetInverted inverted = 2;
  if (_internal_has_inverted()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::inverted(this),
        _Internal::inverted(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.UnsetSkipping skipping = 3;
  if (_internal_has_skipping()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::skipping(this),
        _Internal::skipping(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:greptime.v1.UnsetIndex)
  return target;
}

size_t UnsetIndex::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.UnsetIndex)
  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 (options_case()) {
    // .greptime.v1.UnsetFulltext fulltext = 1;
    case kFulltext: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.options_.fulltext_);
      break;
    }
    // .greptime.v1.UnsetInverted inverted = 2;
    case kInverted: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.options_.inverted_);
      break;
    }
    // .greptime.v1.UnsetSkipping skipping = 3;
    case kSkipping: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.options_.skipping_);
      break;
    }
    case OPTIONS_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

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


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

  switch (from.options_case()) {
    case kFulltext: {
      _this->_internal_mutable_fulltext()->::greptime::v1::UnsetFulltext::MergeFrom(
          from._internal_fulltext());
      break;
    }
    case kInverted: {
      _this->_internal_mutable_inverted()->::greptime::v1::UnsetInverted::MergeFrom(
          from._internal_inverted());
      break;
    }
    case kSkipping: {
      _this->_internal_mutable_skipping()->::greptime::v1::UnsetSkipping::MergeFrom(
          from._internal_skipping());
      break;
    }
    case OPTIONS_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UnsetIndex::CopyFrom(const UnsetIndex& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.UnsetIndex)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata UnsetIndex::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[14]);
}

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

class Repartition::_Internal {
 public:
  static const ::greptime::v1::PartitionExprs& partition_exprs(const Repartition* msg);
  static const ::greptime::v1::UnpartitionedSource& unpartitioned(const Repartition* msg);
};

const ::greptime::v1::PartitionExprs&
Repartition::_Internal::partition_exprs(const Repartition* msg) {
  return *msg->_impl_.source_.partition_exprs_;
}
const ::greptime::v1::UnpartitionedSource&
Repartition::_Internal::unpartitioned(const Repartition* msg) {
  return *msg->_impl_.source_.unpartitioned_;
}
void Repartition::set_allocated_partition_exprs(::greptime::v1::PartitionExprs* partition_exprs) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_source();
  if (partition_exprs) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(partition_exprs);
    if (message_arena != submessage_arena) {
      partition_exprs = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, partition_exprs, submessage_arena);
    }
    set_has_partition_exprs();
    _impl_.source_.partition_exprs_ = partition_exprs;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.Repartition.partition_exprs)
}
void Repartition::set_allocated_unpartitioned(::greptime::v1::UnpartitionedSource* unpartitioned) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_source();
  if (unpartitioned) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(unpartitioned);
    if (message_arena != submessage_arena) {
      unpartitioned = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, unpartitioned, submessage_arena);
    }
    set_has_unpartitioned();
    _impl_.source_.unpartitioned_ = unpartitioned;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.Repartition.unpartitioned)
}
Repartition::Repartition(::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:greptime.v1.Repartition)
}
Repartition::Repartition(const Repartition& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  Repartition* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.from_partition_exprs_){from._impl_.from_partition_exprs_}
    , decltype(_impl_.into_partition_exprs_){from._impl_.into_partition_exprs_}
    , decltype(_impl_.source_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  clear_has_source();
  switch (from.source_case()) {
    case kPartitionExprs: {
      _this->_internal_mutable_partition_exprs()->::greptime::v1::PartitionExprs::MergeFrom(
          from._internal_partition_exprs());
      break;
    }
    case kUnpartitioned: {
      _this->_internal_mutable_unpartitioned()->::greptime::v1::UnpartitionedSource::MergeFrom(
          from._internal_unpartitioned());
      break;
    }
    case SOURCE_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.Repartition)
}

inline void Repartition::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.from_partition_exprs_){arena}
    , decltype(_impl_.into_partition_exprs_){arena}
    , decltype(_impl_.source_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  clear_has_source();
}

Repartition::~Repartition() {
  // @@protoc_insertion_point(destructor:greptime.v1.Repartition)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void Repartition::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.from_partition_exprs_.~RepeatedPtrField();
  _impl_.into_partition_exprs_.~RepeatedPtrField();
  if (has_source()) {
    clear_source();
  }
}

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

void Repartition::clear_source() {
// @@protoc_insertion_point(one_of_clear_start:greptime.v1.Repartition)
  switch (source_case()) {
    case kPartitionExprs: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.source_.partition_exprs_;
      }
      break;
    }
    case kUnpartitioned: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.source_.unpartitioned_;
      }
      break;
    }
    case SOURCE_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = SOURCE_NOT_SET;
}


void Repartition::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.Repartition)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.from_partition_exprs_.Clear();
  _impl_.into_partition_exprs_.Clear();
  clear_source();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* Repartition::_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 from_partition_exprs = 1 [deprecated = true];
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_from_partition_exprs();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.Repartition.from_partition_exprs"));
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
        } else
          goto handle_unusual;
        continue;
      // repeated string into_partition_exprs = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_into_partition_exprs();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.Repartition.into_partition_exprs"));
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.PartitionExprs partition_exprs = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_partition_exprs(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.UnpartitionedSource unpartitioned = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_unpartitioned(), 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* Repartition::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.Repartition)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated string from_partition_exprs = 1 [deprecated = true];
  for (int i = 0, n = this->_internal_from_partition_exprs_size(); i < n; i++) {
    const auto& s = this->_internal_from_partition_exprs(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.Repartition.from_partition_exprs");
    target = stream->WriteString(1, s, target);
  }

  // repeated string into_partition_exprs = 2;
  for (int i = 0, n = this->_internal_into_partition_exprs_size(); i < n; i++) {
    const auto& s = this->_internal_into_partition_exprs(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.Repartition.into_partition_exprs");
    target = stream->WriteString(2, s, target);
  }

  // .greptime.v1.PartitionExprs partition_exprs = 3;
  if (_internal_has_partition_exprs()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::partition_exprs(this),
        _Internal::partition_exprs(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.UnpartitionedSource unpartitioned = 4;
  if (_internal_has_unpartitioned()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::unpartitioned(this),
        _Internal::unpartitioned(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:greptime.v1.Repartition)
  return target;
}

size_t Repartition::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.Repartition)
  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 from_partition_exprs = 1 [deprecated = true];
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.from_partition_exprs_.size());
  for (int i = 0, n = _impl_.from_partition_exprs_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.from_partition_exprs_.Get(i));
  }

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

  switch (source_case()) {
    // .greptime.v1.PartitionExprs partition_exprs = 3;
    case kPartitionExprs: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.source_.partition_exprs_);
      break;
    }
    // .greptime.v1.UnpartitionedSource unpartitioned = 4;
    case kUnpartitioned: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.source_.unpartitioned_);
      break;
    }
    case SOURCE_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

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


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

  _this->_impl_.from_partition_exprs_.MergeFrom(from._impl_.from_partition_exprs_);
  _this->_impl_.into_partition_exprs_.MergeFrom(from._impl_.into_partition_exprs_);
  switch (from.source_case()) {
    case kPartitionExprs: {
      _this->_internal_mutable_partition_exprs()->::greptime::v1::PartitionExprs::MergeFrom(
          from._internal_partition_exprs());
      break;
    }
    case kUnpartitioned: {
      _this->_internal_mutable_unpartitioned()->::greptime::v1::UnpartitionedSource::MergeFrom(
          from._internal_unpartitioned());
      break;
    }
    case SOURCE_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void Repartition::CopyFrom(const Repartition& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.Repartition)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata Repartition::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[15]);
}

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

class PartitionExprs::_Internal {
 public:
};

PartitionExprs::PartitionExprs(::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:greptime.v1.PartitionExprs)
}
PartitionExprs::PartitionExprs(const PartitionExprs& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  PartitionExprs* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.exprs_){from._impl_.exprs_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.PartitionExprs)
}

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

PartitionExprs::~PartitionExprs() {
  // @@protoc_insertion_point(destructor:greptime.v1.PartitionExprs)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void PartitionExprs::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.PartitionExprs)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* PartitionExprs::_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 exprs = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_exprs();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.PartitionExprs.exprs"));
            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* PartitionExprs::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.PartitionExprs)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated string exprs = 1;
  for (int i = 0, n = this->_internal_exprs_size(); i < n; i++) {
    const auto& s = this->_internal_exprs(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.PartitionExprs.exprs");
    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:greptime.v1.PartitionExprs)
  return target;
}

size_t PartitionExprs::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.PartitionExprs)
  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 exprs = 1;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.exprs_.size());
  for (int i = 0, n = _impl_.exprs_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.exprs_.Get(i));
  }

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

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


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

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

void PartitionExprs::CopyFrom(const PartitionExprs& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.PartitionExprs)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata PartitionExprs::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[16]);
}

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

class UnpartitionedSource::_Internal {
 public:
};

UnpartitionedSource::UnpartitionedSource(::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:greptime.v1.UnpartitionedSource)
}
UnpartitionedSource::UnpartitionedSource(const UnpartitionedSource& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UnpartitionedSource* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.partition_columns_){from._impl_.partition_columns_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.UnpartitionedSource)
}

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

UnpartitionedSource::~UnpartitionedSource() {
  // @@protoc_insertion_point(destructor:greptime.v1.UnpartitionedSource)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void UnpartitionedSource::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.UnpartitionedSource)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* UnpartitionedSource::_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 partition_columns = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_partition_columns();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.UnpartitionedSource.partition_columns"));
            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* UnpartitionedSource::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.UnpartitionedSource)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated string partition_columns = 1;
  for (int i = 0, n = this->_internal_partition_columns_size(); i < n; i++) {
    const auto& s = this->_internal_partition_columns(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.UnpartitionedSource.partition_columns");
    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:greptime.v1.UnpartitionedSource)
  return target;
}

size_t UnpartitionedSource::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.UnpartitionedSource)
  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 partition_columns = 1;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.partition_columns_.size());
  for (int i = 0, n = _impl_.partition_columns_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.partition_columns_.Get(i));
  }

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

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


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

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

void UnpartitionedSource::CopyFrom(const UnpartitionedSource& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.UnpartitionedSource)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata UnpartitionedSource::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[17]);
}

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

class DropTableExpr::_Internal {
 public:
  static const ::greptime::v1::TableId& table_id(const DropTableExpr* msg);
};

const ::greptime::v1::TableId&
DropTableExpr::_Internal::table_id(const DropTableExpr* msg) {
  return *msg->_impl_.table_id_;
}
DropTableExpr::DropTableExpr(::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:greptime.v1.DropTableExpr)
}
DropTableExpr::DropTableExpr(const DropTableExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DropTableExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.table_name_){}
    , decltype(_impl_.table_id_){nullptr}
    , decltype(_impl_.drop_if_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.table_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.table_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_table_name().empty()) {
    _this->_impl_.table_name_.Set(from._internal_table_name(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_table_id()) {
    _this->_impl_.table_id_ = new ::greptime::v1::TableId(*from._impl_.table_id_);
  }
  _this->_impl_.drop_if_exists_ = from._impl_.drop_if_exists_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DropTableExpr)
}

inline void DropTableExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.table_name_){}
    , decltype(_impl_.table_id_){nullptr}
    , decltype(_impl_.drop_if_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.table_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.table_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

DropTableExpr::~DropTableExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.DropTableExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DropTableExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
  _impl_.table_name_.Destroy();
  if (this != internal_default_instance()) delete _impl_.table_id_;
}

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

void DropTableExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DropTableExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  _impl_.table_name_.ClearToEmpty();
  if (GetArenaForAllocation() == nullptr && _impl_.table_id_ != nullptr) {
    delete _impl_.table_id_;
  }
  _impl_.table_id_ = nullptr;
  _impl_.drop_if_exists_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* DropTableExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropTableExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropTableExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // string table_name = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_table_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropTableExpr.table_name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.TableId table_id = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_table_id(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool drop_if_exists = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
          _impl_.drop_if_exists_ = ::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* DropTableExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DropTableExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropTableExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropTableExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

  // string table_name = 3;
  if (!this->_internal_table_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_table_name().data(), static_cast<int>(this->_internal_table_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropTableExpr.table_name");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_table_name(), target);
  }

  // .greptime.v1.TableId table_id = 4;
  if (this->_internal_has_table_id()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::table_id(this),
        _Internal::table_id(this).GetCachedSize(), target, stream);
  }

  // bool drop_if_exists = 5;
  if (this->_internal_drop_if_exists() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(5, this->_internal_drop_if_exists(), 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:greptime.v1.DropTableExpr)
  return target;
}

size_t DropTableExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DropTableExpr)
  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 catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_catalog_name());
  }

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

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

  // .greptime.v1.TableId table_id = 4;
  if (this->_internal_has_table_id()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.table_id_);
  }

  // bool drop_if_exists = 5;
  if (this->_internal_drop_if_exists() != 0) {
    total_size += 1 + 1;
  }

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

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


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

  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  if (!from._internal_table_name().empty()) {
    _this->_internal_set_table_name(from._internal_table_name());
  }
  if (from._internal_has_table_id()) {
    _this->_internal_mutable_table_id()->::greptime::v1::TableId::MergeFrom(
        from._internal_table_id());
  }
  if (from._internal_drop_if_exists() != 0) {
    _this->_internal_set_drop_if_exists(from._internal_drop_if_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DropTableExpr::CopyFrom(const DropTableExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DropTableExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void DropTableExpr::InternalSwap(DropTableExpr* 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_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.table_name_, lhs_arena,
      &other->_impl_.table_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(DropTableExpr, _impl_.drop_if_exists_)
      + sizeof(DropTableExpr::_impl_.drop_if_exists_)
      - PROTOBUF_FIELD_OFFSET(DropTableExpr, _impl_.table_id_)>(
          reinterpret_cast<char*>(&_impl_.table_id_),
          reinterpret_cast<char*>(&other->_impl_.table_id_));
}

::PROTOBUF_NAMESPACE_ID::Metadata DropTableExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[18]);
}

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

CreateDatabaseExpr_OptionsEntry_DoNotUse::CreateDatabaseExpr_OptionsEntry_DoNotUse() {}
CreateDatabaseExpr_OptionsEntry_DoNotUse::CreateDatabaseExpr_OptionsEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena)
    : SuperType(arena) {}
void CreateDatabaseExpr_OptionsEntry_DoNotUse::MergeFrom(const CreateDatabaseExpr_OptionsEntry_DoNotUse& other) {
  MergeFromInternal(other);
}
::PROTOBUF_NAMESPACE_ID::Metadata CreateDatabaseExpr_OptionsEntry_DoNotUse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[19]);
}

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

class CreateDatabaseExpr::_Internal {
 public:
};

CreateDatabaseExpr::CreateDatabaseExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  if (arena != nullptr && !is_message_owned) {
    arena->OwnCustomDestructor(this, &CreateDatabaseExpr::ArenaDtor);
  }
  // @@protoc_insertion_point(arena_constructor:greptime.v1.CreateDatabaseExpr)
}
CreateDatabaseExpr::CreateDatabaseExpr(const CreateDatabaseExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CreateDatabaseExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      /*decltype(_impl_.options_)*/{}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.create_if_not_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.options_.MergeFrom(from._impl_.options_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.create_if_not_exists_ = from._impl_.create_if_not_exists_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.CreateDatabaseExpr)
}

inline void CreateDatabaseExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      /*decltype(_impl_.options_)*/{::_pbi::ArenaInitialized(), arena}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.create_if_not_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CreateDatabaseExpr::~CreateDatabaseExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.CreateDatabaseExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    ArenaDtor(this);
    return;
  }
  SharedDtor();
}

inline void CreateDatabaseExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.options_.Destruct();
  _impl_.options_.~MapField();
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
}

void CreateDatabaseExpr::ArenaDtor(void* object) {
  CreateDatabaseExpr* _this = reinterpret_cast< CreateDatabaseExpr* >(object);
  _this->_impl_.options_.Destruct();
}
void CreateDatabaseExpr::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CreateDatabaseExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.CreateDatabaseExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.options_.Clear();
  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  _impl_.create_if_not_exists_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CreateDatabaseExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateDatabaseExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateDatabaseExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // bool create_if_not_exists = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _impl_.create_if_not_exists_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // map<string, string> options = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(&_impl_.options_, 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* CreateDatabaseExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.CreateDatabaseExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateDatabaseExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateDatabaseExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

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

  // map<string, string> options = 4;
  if (!this->_internal_options().empty()) {
    using MapType = ::_pb::Map<std::string, std::string>;
    using WireHelper = CreateDatabaseExpr_OptionsEntry_DoNotUse::Funcs;
    const auto& map_field = this->_internal_options();
    auto check_utf8 = [](const MapType::value_type& entry) {
      (void)entry;
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.first.data(), static_cast<int>(entry.first.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateDatabaseExpr.OptionsEntry.key");
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.second.data(), static_cast<int>(entry.second.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateDatabaseExpr.OptionsEntry.value");
    };

    if (stream->IsSerializationDeterministic() && map_field.size() > 1) {
      for (const auto& entry : ::_pbi::MapSorterPtr<MapType>(map_field)) {
        target = WireHelper::InternalSerialize(4, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    } else {
      for (const auto& entry : map_field) {
        target = WireHelper::InternalSerialize(4, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    }
  }

  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:greptime.v1.CreateDatabaseExpr)
  return target;
}

size_t CreateDatabaseExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.CreateDatabaseExpr)
  size_t total_size = 0;

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

  // map<string, string> options = 4;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_options_size());
  for (::PROTOBUF_NAMESPACE_ID::Map< std::string, std::string >::const_iterator
      it = this->_internal_options().begin();
      it != this->_internal_options().end(); ++it) {
    total_size += CreateDatabaseExpr_OptionsEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
  }

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

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

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

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

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


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

  _this->_impl_.options_.MergeFrom(from._impl_.options_);
  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  if (from._internal_create_if_not_exists() != 0) {
    _this->_internal_set_create_if_not_exists(from._internal_create_if_not_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CreateDatabaseExpr::CopyFrom(const CreateDatabaseExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.CreateDatabaseExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void CreateDatabaseExpr::InternalSwap(CreateDatabaseExpr* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.options_.InternalSwap(&other->_impl_.options_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  swap(_impl_.create_if_not_exists_, other->_impl_.create_if_not_exists_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CreateDatabaseExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[20]);
}

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

class TruncateTableExpr::_Internal {
 public:
  static const ::greptime::v1::TableId& table_id(const TruncateTableExpr* msg);
  static const ::greptime::v1::TimeRanges& time_ranges(const TruncateTableExpr* msg);
};

const ::greptime::v1::TableId&
TruncateTableExpr::_Internal::table_id(const TruncateTableExpr* msg) {
  return *msg->_impl_.table_id_;
}
const ::greptime::v1::TimeRanges&
TruncateTableExpr::_Internal::time_ranges(const TruncateTableExpr* msg) {
  return *msg->_impl_.time_ranges_;
}
void TruncateTableExpr::clear_time_ranges() {
  if (GetArenaForAllocation() == nullptr && _impl_.time_ranges_ != nullptr) {
    delete _impl_.time_ranges_;
  }
  _impl_.time_ranges_ = nullptr;
}
TruncateTableExpr::TruncateTableExpr(::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:greptime.v1.TruncateTableExpr)
}
TruncateTableExpr::TruncateTableExpr(const TruncateTableExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  TruncateTableExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.table_name_){}
    , decltype(_impl_.table_id_){nullptr}
    , decltype(_impl_.time_ranges_){nullptr}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.table_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.table_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_table_name().empty()) {
    _this->_impl_.table_name_.Set(from._internal_table_name(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_table_id()) {
    _this->_impl_.table_id_ = new ::greptime::v1::TableId(*from._impl_.table_id_);
  }
  if (from._internal_has_time_ranges()) {
    _this->_impl_.time_ranges_ = new ::greptime::v1::TimeRanges(*from._impl_.time_ranges_);
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.TruncateTableExpr)
}

inline void TruncateTableExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.table_name_){}
    , decltype(_impl_.table_id_){nullptr}
    , decltype(_impl_.time_ranges_){nullptr}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.table_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.table_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

TruncateTableExpr::~TruncateTableExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.TruncateTableExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void TruncateTableExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
  _impl_.table_name_.Destroy();
  if (this != internal_default_instance()) delete _impl_.table_id_;
  if (this != internal_default_instance()) delete _impl_.time_ranges_;
}

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

void TruncateTableExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.TruncateTableExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  _impl_.table_name_.ClearToEmpty();
  if (GetArenaForAllocation() == nullptr && _impl_.table_id_ != nullptr) {
    delete _impl_.table_id_;
  }
  _impl_.table_id_ = nullptr;
  if (GetArenaForAllocation() == nullptr && _impl_.time_ranges_ != nullptr) {
    delete _impl_.time_ranges_;
  }
  _impl_.time_ranges_ = nullptr;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* TruncateTableExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.TruncateTableExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.TruncateTableExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // string table_name = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          auto str = _internal_mutable_table_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.TruncateTableExpr.table_name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.TableId table_id = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_table_id(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.TimeRanges time_ranges = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr = ctx->ParseMessage(_internal_mutable_time_ranges(), 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* TruncateTableExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.TruncateTableExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.TruncateTableExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.TruncateTableExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

  // string table_name = 3;
  if (!this->_internal_table_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_table_name().data(), static_cast<int>(this->_internal_table_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.TruncateTableExpr.table_name");
    target = stream->WriteStringMaybeAliased(
        3, this->_internal_table_name(), target);
  }

  // .greptime.v1.TableId table_id = 4;
  if (this->_internal_has_table_id()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::table_id(this),
        _Internal::table_id(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.TimeRanges time_ranges = 5;
  if (this->_internal_has_time_ranges()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(5, _Internal::time_ranges(this),
        _Internal::time_ranges(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:greptime.v1.TruncateTableExpr)
  return target;
}

size_t TruncateTableExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.TruncateTableExpr)
  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 catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_catalog_name());
  }

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

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

  // .greptime.v1.TableId table_id = 4;
  if (this->_internal_has_table_id()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.table_id_);
  }

  // .greptime.v1.TimeRanges time_ranges = 5;
  if (this->_internal_has_time_ranges()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.time_ranges_);
  }

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

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


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

  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  if (!from._internal_table_name().empty()) {
    _this->_internal_set_table_name(from._internal_table_name());
  }
  if (from._internal_has_table_id()) {
    _this->_internal_mutable_table_id()->::greptime::v1::TableId::MergeFrom(
        from._internal_table_id());
  }
  if (from._internal_has_time_ranges()) {
    _this->_internal_mutable_time_ranges()->::greptime::v1::TimeRanges::MergeFrom(
        from._internal_time_ranges());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void TruncateTableExpr::CopyFrom(const TruncateTableExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.TruncateTableExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void TruncateTableExpr::InternalSwap(TruncateTableExpr* 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_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.table_name_, lhs_arena,
      &other->_impl_.table_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(TruncateTableExpr, _impl_.time_ranges_)
      + sizeof(TruncateTableExpr::_impl_.time_ranges_)
      - PROTOBUF_FIELD_OFFSET(TruncateTableExpr, _impl_.table_id_)>(
          reinterpret_cast<char*>(&_impl_.table_id_),
          reinterpret_cast<char*>(&other->_impl_.table_id_));
}

::PROTOBUF_NAMESPACE_ID::Metadata TruncateTableExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[21]);
}

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

class DropDatabaseExpr::_Internal {
 public:
};

DropDatabaseExpr::DropDatabaseExpr(::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:greptime.v1.DropDatabaseExpr)
}
DropDatabaseExpr::DropDatabaseExpr(const DropDatabaseExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DropDatabaseExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.drop_if_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.drop_if_exists_ = from._impl_.drop_if_exists_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DropDatabaseExpr)
}

inline void DropDatabaseExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.drop_if_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

DropDatabaseExpr::~DropDatabaseExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.DropDatabaseExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DropDatabaseExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
}

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

void DropDatabaseExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DropDatabaseExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  _impl_.drop_if_exists_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* DropDatabaseExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropDatabaseExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropDatabaseExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // bool drop_if_exists = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _impl_.drop_if_exists_ = ::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* DropDatabaseExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DropDatabaseExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropDatabaseExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropDatabaseExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

  // bool drop_if_exists = 3;
  if (this->_internal_drop_if_exists() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_drop_if_exists(), 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:greptime.v1.DropDatabaseExpr)
  return target;
}

size_t DropDatabaseExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DropDatabaseExpr)
  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 catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_catalog_name());
  }

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

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

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

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


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

  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  if (from._internal_drop_if_exists() != 0) {
    _this->_internal_set_drop_if_exists(from._internal_drop_if_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DropDatabaseExpr::CopyFrom(const DropDatabaseExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DropDatabaseExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void DropDatabaseExpr::InternalSwap(DropDatabaseExpr* 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_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  swap(_impl_.drop_if_exists_, other->_impl_.drop_if_exists_);
}

::PROTOBUF_NAMESPACE_ID::Metadata DropDatabaseExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[22]);
}

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

class AddColumns::_Internal {
 public:
};

AddColumns::AddColumns(::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:greptime.v1.AddColumns)
}
AddColumns::AddColumns(const AddColumns& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AddColumns* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.add_columns_){from._impl_.add_columns_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.AddColumns)
}

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

AddColumns::~AddColumns() {
  // @@protoc_insertion_point(destructor:greptime.v1.AddColumns)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void AddColumns::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.AddColumns)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* AddColumns::_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 .greptime.v1.AddColumn add_columns = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_add_columns(), ptr);
            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* AddColumns::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.AddColumns)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .greptime.v1.AddColumn add_columns = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_add_columns_size()); i < n; i++) {
    const auto& repfield = this->_internal_add_columns(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, 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:greptime.v1.AddColumns)
  return target;
}

size_t AddColumns::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.AddColumns)
  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 .greptime.v1.AddColumn add_columns = 1;
  total_size += 1UL * this->_internal_add_columns_size();
  for (const auto& msg : this->_impl_.add_columns_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

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

void AddColumns::CopyFrom(const AddColumns& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.AddColumns)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata AddColumns::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[23]);
}

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

class DropDefaults::_Internal {
 public:
};

DropDefaults::DropDefaults(::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:greptime.v1.DropDefaults)
}
DropDefaults::DropDefaults(const DropDefaults& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DropDefaults* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.drop_defaults_){from._impl_.drop_defaults_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DropDefaults)
}

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

DropDefaults::~DropDefaults() {
  // @@protoc_insertion_point(destructor:greptime.v1.DropDefaults)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void DropDefaults::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DropDefaults)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* DropDefaults::_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 .greptime.v1.DropDefault drop_defaults = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_drop_defaults(), ptr);
            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* DropDefaults::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DropDefaults)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .greptime.v1.DropDefault drop_defaults = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_drop_defaults_size()); i < n; i++) {
    const auto& repfield = this->_internal_drop_defaults(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, 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:greptime.v1.DropDefaults)
  return target;
}

size_t DropDefaults::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DropDefaults)
  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 .greptime.v1.DropDefault drop_defaults = 1;
  total_size += 1UL * this->_internal_drop_defaults_size();
  for (const auto& msg : this->_impl_.drop_defaults_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

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

void DropDefaults::CopyFrom(const DropDefaults& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DropDefaults)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata DropDefaults::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[24]);
}

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

class SetDefaults::_Internal {
 public:
};

SetDefaults::SetDefaults(::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:greptime.v1.SetDefaults)
}
SetDefaults::SetDefaults(const SetDefaults& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SetDefaults* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.set_defaults_){from._impl_.set_defaults_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.SetDefaults)
}

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

SetDefaults::~SetDefaults() {
  // @@protoc_insertion_point(destructor:greptime.v1.SetDefaults)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void SetDefaults::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.SetDefaults)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* SetDefaults::_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 .greptime.v1.SetDefault set_defaults = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_set_defaults(), ptr);
            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* SetDefaults::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.SetDefaults)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .greptime.v1.SetDefault set_defaults = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_set_defaults_size()); i < n; i++) {
    const auto& repfield = this->_internal_set_defaults(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, 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:greptime.v1.SetDefaults)
  return target;
}

size_t SetDefaults::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.SetDefaults)
  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 .greptime.v1.SetDefault set_defaults = 1;
  total_size += 1UL * this->_internal_set_defaults_size();
  for (const auto& msg : this->_impl_.set_defaults_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

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

void SetDefaults::CopyFrom(const SetDefaults& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.SetDefaults)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata SetDefaults::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[25]);
}

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

class DropColumns::_Internal {
 public:
};

DropColumns::DropColumns(::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:greptime.v1.DropColumns)
}
DropColumns::DropColumns(const DropColumns& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DropColumns* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.drop_columns_){from._impl_.drop_columns_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DropColumns)
}

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

DropColumns::~DropColumns() {
  // @@protoc_insertion_point(destructor:greptime.v1.DropColumns)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void DropColumns::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DropColumns)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* DropColumns::_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 .greptime.v1.DropColumn drop_columns = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_drop_columns(), ptr);
            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* DropColumns::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DropColumns)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .greptime.v1.DropColumn drop_columns = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_drop_columns_size()); i < n; i++) {
    const auto& repfield = this->_internal_drop_columns(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, 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:greptime.v1.DropColumns)
  return target;
}

size_t DropColumns::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DropColumns)
  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 .greptime.v1.DropColumn drop_columns = 1;
  total_size += 1UL * this->_internal_drop_columns_size();
  for (const auto& msg : this->_impl_.drop_columns_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

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

void DropColumns::CopyFrom(const DropColumns& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DropColumns)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata DropColumns::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[26]);
}

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

class ModifyColumnTypes::_Internal {
 public:
};

ModifyColumnTypes::ModifyColumnTypes(::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:greptime.v1.ModifyColumnTypes)
}
ModifyColumnTypes::ModifyColumnTypes(const ModifyColumnTypes& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ModifyColumnTypes* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.modify_column_types_){from._impl_.modify_column_types_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.ModifyColumnTypes)
}

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

ModifyColumnTypes::~ModifyColumnTypes() {
  // @@protoc_insertion_point(destructor:greptime.v1.ModifyColumnTypes)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void ModifyColumnTypes::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.ModifyColumnTypes)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* ModifyColumnTypes::_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 .greptime.v1.ModifyColumnType modify_column_types = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_modify_column_types(), ptr);
            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* ModifyColumnTypes::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.ModifyColumnTypes)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .greptime.v1.ModifyColumnType modify_column_types = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_modify_column_types_size()); i < n; i++) {
    const auto& repfield = this->_internal_modify_column_types(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, 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:greptime.v1.ModifyColumnTypes)
  return target;
}

size_t ModifyColumnTypes::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.ModifyColumnTypes)
  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 .greptime.v1.ModifyColumnType modify_column_types = 1;
  total_size += 1UL * this->_internal_modify_column_types_size();
  for (const auto& msg : this->_impl_.modify_column_types_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

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

void ModifyColumnTypes::CopyFrom(const ModifyColumnTypes& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.ModifyColumnTypes)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata ModifyColumnTypes::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[27]);
}

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

class RenameTable::_Internal {
 public:
};

RenameTable::RenameTable(::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:greptime.v1.RenameTable)
}
RenameTable::RenameTable(const RenameTable& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  RenameTable* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.new_table_name_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.new_table_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.new_table_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_new_table_name().empty()) {
    _this->_impl_.new_table_name_.Set(from._internal_new_table_name(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.RenameTable)
}

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

RenameTable::~RenameTable() {
  // @@protoc_insertion_point(destructor:greptime.v1.RenameTable)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void RenameTable::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.new_table_name_.Destroy();
}

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

void RenameTable::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.RenameTable)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* RenameTable::_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 new_table_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_new_table_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.RenameTable.new_table_name"));
        } 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* RenameTable::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.RenameTable)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string new_table_name = 1;
  if (!this->_internal_new_table_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_new_table_name().data(), static_cast<int>(this->_internal_new_table_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.RenameTable.new_table_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_new_table_name(), 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:greptime.v1.RenameTable)
  return target;
}

size_t RenameTable::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.RenameTable)
  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 new_table_name = 1;
  if (!this->_internal_new_table_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_new_table_name());
  }

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

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


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

  if (!from._internal_new_table_name().empty()) {
    _this->_internal_set_new_table_name(from._internal_new_table_name());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void RenameTable::CopyFrom(const RenameTable& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.RenameTable)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void RenameTable::InternalSwap(RenameTable* 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_.new_table_name_, lhs_arena,
      &other->_impl_.new_table_name_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata RenameTable::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[28]);
}

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

class AddColumn::_Internal {
 public:
  static const ::greptime::v1::ColumnDef& column_def(const AddColumn* msg);
  static const ::greptime::v1::AddColumnLocation& location(const AddColumn* msg);
};

const ::greptime::v1::ColumnDef&
AddColumn::_Internal::column_def(const AddColumn* msg) {
  return *msg->_impl_.column_def_;
}
const ::greptime::v1::AddColumnLocation&
AddColumn::_Internal::location(const AddColumn* msg) {
  return *msg->_impl_.location_;
}
AddColumn::AddColumn(::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:greptime.v1.AddColumn)
}
AddColumn::AddColumn(const AddColumn& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AddColumn* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_def_){nullptr}
    , decltype(_impl_.location_){nullptr}
    , decltype(_impl_.add_if_not_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  if (from._internal_has_column_def()) {
    _this->_impl_.column_def_ = new ::greptime::v1::ColumnDef(*from._impl_.column_def_);
  }
  if (from._internal_has_location()) {
    _this->_impl_.location_ = new ::greptime::v1::AddColumnLocation(*from._impl_.location_);
  }
  _this->_impl_.add_if_not_exists_ = from._impl_.add_if_not_exists_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.AddColumn)
}

inline void AddColumn::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.column_def_){nullptr}
    , decltype(_impl_.location_){nullptr}
    , decltype(_impl_.add_if_not_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
}

AddColumn::~AddColumn() {
  // @@protoc_insertion_point(destructor:greptime.v1.AddColumn)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void AddColumn::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  if (this != internal_default_instance()) delete _impl_.column_def_;
  if (this != internal_default_instance()) delete _impl_.location_;
}

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

void AddColumn::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.AddColumn)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  if (GetArenaForAllocation() == nullptr && _impl_.column_def_ != nullptr) {
    delete _impl_.column_def_;
  }
  _impl_.column_def_ = nullptr;
  if (GetArenaForAllocation() == nullptr && _impl_.location_ != nullptr) {
    delete _impl_.location_;
  }
  _impl_.location_ = nullptr;
  _impl_.add_if_not_exists_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* AddColumn::_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) {
      // .greptime.v1.ColumnDef column_def = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr = ctx->ParseMessage(_internal_mutable_column_def(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.AddColumnLocation location = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_location(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bool add_if_not_exists = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _impl_.add_if_not_exists_ = ::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* AddColumn::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.AddColumn)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .greptime.v1.ColumnDef column_def = 1;
  if (this->_internal_has_column_def()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(1, _Internal::column_def(this),
        _Internal::column_def(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.AddColumnLocation location = 3;
  if (this->_internal_has_location()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::location(this),
        _Internal::location(this).GetCachedSize(), target, stream);
  }

  // bool add_if_not_exists = 4;
  if (this->_internal_add_if_not_exists() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_add_if_not_exists(), 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:greptime.v1.AddColumn)
  return target;
}

size_t AddColumn::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.AddColumn)
  size_t total_size = 0;

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

  // .greptime.v1.ColumnDef column_def = 1;
  if (this->_internal_has_column_def()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.column_def_);
  }

  // .greptime.v1.AddColumnLocation location = 3;
  if (this->_internal_has_location()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.location_);
  }

  // bool add_if_not_exists = 4;
  if (this->_internal_add_if_not_exists() != 0) {
    total_size += 1 + 1;
  }

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

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


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

  if (from._internal_has_column_def()) {
    _this->_internal_mutable_column_def()->::greptime::v1::ColumnDef::MergeFrom(
        from._internal_column_def());
  }
  if (from._internal_has_location()) {
    _this->_internal_mutable_location()->::greptime::v1::AddColumnLocation::MergeFrom(
        from._internal_location());
  }
  if (from._internal_add_if_not_exists() != 0) {
    _this->_internal_set_add_if_not_exists(from._internal_add_if_not_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void AddColumn::CopyFrom(const AddColumn& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.AddColumn)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void AddColumn::InternalSwap(AddColumn* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(AddColumn, _impl_.add_if_not_exists_)
      + sizeof(AddColumn::_impl_.add_if_not_exists_)
      - PROTOBUF_FIELD_OFFSET(AddColumn, _impl_.column_def_)>(
          reinterpret_cast<char*>(&_impl_.column_def_),
          reinterpret_cast<char*>(&other->_impl_.column_def_));
}

::PROTOBUF_NAMESPACE_ID::Metadata AddColumn::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[29]);
}

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

class ModifyColumnType::_Internal {
 public:
  static const ::greptime::v1::ColumnDataTypeExtension& target_type_extension(const ModifyColumnType* msg);
};

const ::greptime::v1::ColumnDataTypeExtension&
ModifyColumnType::_Internal::target_type_extension(const ModifyColumnType* msg) {
  return *msg->_impl_.target_type_extension_;
}
void ModifyColumnType::clear_target_type_extension() {
  if (GetArenaForAllocation() == nullptr && _impl_.target_type_extension_ != nullptr) {
    delete _impl_.target_type_extension_;
  }
  _impl_.target_type_extension_ = nullptr;
}
ModifyColumnType::ModifyColumnType(::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:greptime.v1.ModifyColumnType)
}
ModifyColumnType::ModifyColumnType(const ModifyColumnType& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ModifyColumnType* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , decltype(_impl_.target_type_extension_){nullptr}
    , decltype(_impl_.target_type_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_target_type_extension()) {
    _this->_impl_.target_type_extension_ = new ::greptime::v1::ColumnDataTypeExtension(*from._impl_.target_type_extension_);
  }
  _this->_impl_.target_type_ = from._impl_.target_type_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.ModifyColumnType)
}

inline void ModifyColumnType::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , decltype(_impl_.target_type_extension_){nullptr}
    , decltype(_impl_.target_type_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

ModifyColumnType::~ModifyColumnType() {
  // @@protoc_insertion_point(destructor:greptime.v1.ModifyColumnType)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void ModifyColumnType::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_name_.Destroy();
  if (this != internal_default_instance()) delete _impl_.target_type_extension_;
}

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

void ModifyColumnType::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.ModifyColumnType)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.column_name_.ClearToEmpty();
  if (GetArenaForAllocation() == nullptr && _impl_.target_type_extension_ != nullptr) {
    delete _impl_.target_type_extension_;
  }
  _impl_.target_type_extension_ = nullptr;
  _impl_.target_type_ = 0;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* ModifyColumnType::_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 column_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.ModifyColumnType.column_name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.ColumnDataType target_type = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_target_type(static_cast<::greptime::v1::ColumnDataType>(val));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.ColumnDataTypeExtension target_type_extension = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_target_type_extension(), 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* ModifyColumnType::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.ModifyColumnType)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string column_name = 1;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.ModifyColumnType.column_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_column_name(), target);
  }

  // .greptime.v1.ColumnDataType target_type = 2;
  if (this->_internal_target_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      2, this->_internal_target_type(), target);
  }

  // .greptime.v1.ColumnDataTypeExtension target_type_extension = 3;
  if (this->_internal_has_target_type_extension()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::target_type_extension(this),
        _Internal::target_type_extension(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:greptime.v1.ModifyColumnType)
  return target;
}

size_t ModifyColumnType::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.ModifyColumnType)
  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 column_name = 1;
  if (!this->_internal_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_column_name());
  }

  // .greptime.v1.ColumnDataTypeExtension target_type_extension = 3;
  if (this->_internal_has_target_type_extension()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.target_type_extension_);
  }

  // .greptime.v1.ColumnDataType target_type = 2;
  if (this->_internal_target_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_target_type());
  }

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

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


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

  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  if (from._internal_has_target_type_extension()) {
    _this->_internal_mutable_target_type_extension()->::greptime::v1::ColumnDataTypeExtension::MergeFrom(
        from._internal_target_type_extension());
  }
  if (from._internal_target_type() != 0) {
    _this->_internal_set_target_type(from._internal_target_type());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void ModifyColumnType::CopyFrom(const ModifyColumnType& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.ModifyColumnType)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void ModifyColumnType::InternalSwap(ModifyColumnType* 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_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(ModifyColumnType, _impl_.target_type_)
      + sizeof(ModifyColumnType::_impl_.target_type_)
      - PROTOBUF_FIELD_OFFSET(ModifyColumnType, _impl_.target_type_extension_)>(
          reinterpret_cast<char*>(&_impl_.target_type_extension_),
          reinterpret_cast<char*>(&other->_impl_.target_type_extension_));
}

::PROTOBUF_NAMESPACE_ID::Metadata ModifyColumnType::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[30]);
}

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

class Option::_Internal {
 public:
};

Option::Option(::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:greptime.v1.Option)
}
Option::Option(const Option& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  Option* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.key_){}
    , decltype(_impl_.value_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.key_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.key_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_key().empty()) {
    _this->_impl_.key_.Set(from._internal_key(), 
      _this->GetArenaForAllocation());
  }
  _impl_.value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_value().empty()) {
    _this->_impl_.value_.Set(from._internal_value(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.Option)
}

inline void Option::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.key_){}
    , decltype(_impl_.value_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.key_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.key_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.value_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.value_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

Option::~Option() {
  // @@protoc_insertion_point(destructor:greptime.v1.Option)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void Option::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.key_.Destroy();
  _impl_.value_.Destroy();
}

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

void Option::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.Option)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.key_.ClearToEmpty();
  _impl_.value_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* Option::_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 key = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_key();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.Option.key"));
        } else
          goto handle_unusual;
        continue;
      // string value = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_value();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.Option.value"));
        } 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* Option::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.Option)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string key = 1;
  if (!this->_internal_key().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_key().data(), static_cast<int>(this->_internal_key().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.Option.key");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_key(), target);
  }

  // string value = 2;
  if (!this->_internal_value().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_value().data(), static_cast<int>(this->_internal_value().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.Option.value");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_value(), 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:greptime.v1.Option)
  return target;
}

size_t Option::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.Option)
  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 key = 1;
  if (!this->_internal_key().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_key());
  }

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

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

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


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

  if (!from._internal_key().empty()) {
    _this->_internal_set_key(from._internal_key());
  }
  if (!from._internal_value().empty()) {
    _this->_internal_set_value(from._internal_value());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void Option::CopyFrom(const Option& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.Option)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void Option::InternalSwap(Option* 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_.key_, lhs_arena,
      &other->_impl_.key_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.value_, lhs_arena,
      &other->_impl_.value_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata Option::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[31]);
}

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

class SetTableOptions::_Internal {
 public:
};

SetTableOptions::SetTableOptions(::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:greptime.v1.SetTableOptions)
}
SetTableOptions::SetTableOptions(const SetTableOptions& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SetTableOptions* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.table_options_){from._impl_.table_options_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.SetTableOptions)
}

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

SetTableOptions::~SetTableOptions() {
  // @@protoc_insertion_point(destructor:greptime.v1.SetTableOptions)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void SetTableOptions::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.SetTableOptions)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* SetTableOptions::_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 .greptime.v1.Option table_options = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_table_options(), ptr);
            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* SetTableOptions::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.SetTableOptions)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .greptime.v1.Option table_options = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_table_options_size()); i < n; i++) {
    const auto& repfield = this->_internal_table_options(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, 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:greptime.v1.SetTableOptions)
  return target;
}

size_t SetTableOptions::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.SetTableOptions)
  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 .greptime.v1.Option table_options = 1;
  total_size += 1UL * this->_internal_table_options_size();
  for (const auto& msg : this->_impl_.table_options_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

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

void SetTableOptions::CopyFrom(const SetTableOptions& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.SetTableOptions)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata SetTableOptions::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[32]);
}

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

class UnsetTableOptions::_Internal {
 public:
};

UnsetTableOptions::UnsetTableOptions(::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:greptime.v1.UnsetTableOptions)
}
UnsetTableOptions::UnsetTableOptions(const UnsetTableOptions& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UnsetTableOptions* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.keys_){from._impl_.keys_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.UnsetTableOptions)
}

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

UnsetTableOptions::~UnsetTableOptions() {
  // @@protoc_insertion_point(destructor:greptime.v1.UnsetTableOptions)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void UnsetTableOptions::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.UnsetTableOptions)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* UnsetTableOptions::_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 keys = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_keys();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.UnsetTableOptions.keys"));
            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* UnsetTableOptions::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.UnsetTableOptions)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated string keys = 1;
  for (int i = 0, n = this->_internal_keys_size(); i < n; i++) {
    const auto& s = this->_internal_keys(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.UnsetTableOptions.keys");
    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:greptime.v1.UnsetTableOptions)
  return target;
}

size_t UnsetTableOptions::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.UnsetTableOptions)
  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 keys = 1;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.keys_.size());
  for (int i = 0, n = _impl_.keys_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.keys_.Get(i));
  }

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

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


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

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

void UnsetTableOptions::CopyFrom(const UnsetTableOptions& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.UnsetTableOptions)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata UnsetTableOptions::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[33]);
}

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

class DropColumn::_Internal {
 public:
};

DropColumn::DropColumn(::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:greptime.v1.DropColumn)
}
DropColumn::DropColumn(const DropColumn& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DropColumn* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.name_){}
    , /*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());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DropColumn)
}

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

DropColumn::~DropColumn() {
  // @@protoc_insertion_point(destructor:greptime.v1.DropColumn)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DropColumn::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.name_.Destroy();
}

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

void DropColumn::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DropColumn)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* DropColumn::_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, "greptime.v1.DropColumn.name"));
        } 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* DropColumn::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DropColumn)
  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,
      "greptime.v1.DropColumn.name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_name(), 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:greptime.v1.DropColumn)
  return target;
}

size_t DropColumn::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DropColumn)
  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 name = 1;
  if (!this->_internal_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_name());
  }

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

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


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

  if (!from._internal_name().empty()) {
    _this->_internal_set_name(from._internal_name());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DropColumn::CopyFrom(const DropColumn& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DropColumn)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void DropColumn::InternalSwap(DropColumn* 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_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata DropColumn::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[34]);
}

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

class TableId::_Internal {
 public:
};

TableId::TableId(::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:greptime.v1.TableId)
}
TableId::TableId(const TableId& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  TableId* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.id_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.id_ = from._impl_.id_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.TableId)
}

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

TableId::~TableId() {
  // @@protoc_insertion_point(destructor:greptime.v1.TableId)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void TableId::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

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

void TableId::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.TableId)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.id_ = 0u;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* TableId::_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) {
      // uint32 id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.id_ = ::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* TableId::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.TableId)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // uint32 id = 1;
  if (this->_internal_id() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_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:greptime.v1.TableId)
  return target;
}

size_t TableId::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.TableId)
  size_t total_size = 0;

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

  // uint32 id = 1;
  if (this->_internal_id() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id());
  }

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

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


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

  if (from._internal_id() != 0) {
    _this->_internal_set_id(from._internal_id());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void TableId::CopyFrom(const TableId& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.TableId)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void TableId::InternalSwap(TableId* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.id_, other->_impl_.id_);
}

::PROTOBUF_NAMESPACE_ID::Metadata TableId::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[35]);
}

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

class FlowId::_Internal {
 public:
};

FlowId::FlowId(::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:greptime.v1.FlowId)
}
FlowId::FlowId(const FlowId& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  FlowId* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.id_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.id_ = from._impl_.id_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.FlowId)
}

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

FlowId::~FlowId() {
  // @@protoc_insertion_point(destructor:greptime.v1.FlowId)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void FlowId::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
}

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

void FlowId::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.FlowId)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.id_ = 0u;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* FlowId::_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) {
      // uint32 id = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
          _impl_.id_ = ::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* FlowId::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.FlowId)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // uint32 id = 1;
  if (this->_internal_id() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(1, this->_internal_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:greptime.v1.FlowId)
  return target;
}

size_t FlowId::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.FlowId)
  size_t total_size = 0;

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

  // uint32 id = 1;
  if (this->_internal_id() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(this->_internal_id());
  }

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

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


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

  if (from._internal_id() != 0) {
    _this->_internal_set_id(from._internal_id());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void FlowId::CopyFrom(const FlowId& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.FlowId)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void FlowId::InternalSwap(FlowId* other) {
  using std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.id_, other->_impl_.id_);
}

::PROTOBUF_NAMESPACE_ID::Metadata FlowId::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[36]);
}

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

class ColumnDef::_Internal {
 public:
  static const ::greptime::v1::ColumnDataTypeExtension& datatype_extension(const ColumnDef* msg);
  static const ::greptime::v1::ColumnOptions& options(const ColumnDef* msg);
};

const ::greptime::v1::ColumnDataTypeExtension&
ColumnDef::_Internal::datatype_extension(const ColumnDef* msg) {
  return *msg->_impl_.datatype_extension_;
}
const ::greptime::v1::ColumnOptions&
ColumnDef::_Internal::options(const ColumnDef* msg) {
  return *msg->_impl_.options_;
}
void ColumnDef::clear_datatype_extension() {
  if (GetArenaForAllocation() == nullptr && _impl_.datatype_extension_ != nullptr) {
    delete _impl_.datatype_extension_;
  }
  _impl_.datatype_extension_ = nullptr;
}
void ColumnDef::clear_options() {
  if (GetArenaForAllocation() == nullptr && _impl_.options_ != nullptr) {
    delete _impl_.options_;
  }
  _impl_.options_ = nullptr;
}
ColumnDef::ColumnDef(::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:greptime.v1.ColumnDef)
}
ColumnDef::ColumnDef(const ColumnDef& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  ColumnDef* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.name_){}
    , decltype(_impl_.default_constraint_){}
    , decltype(_impl_.comment_){}
    , decltype(_impl_.datatype_extension_){nullptr}
    , decltype(_impl_.options_){nullptr}
    , decltype(_impl_.data_type_){}
    , decltype(_impl_.is_nullable_){}
    , decltype(_impl_.semantic_type_){}
    , /*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_.default_constraint_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.default_constraint_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_default_constraint().empty()) {
    _this->_impl_.default_constraint_.Set(from._internal_default_constraint(), 
      _this->GetArenaForAllocation());
  }
  _impl_.comment_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.comment_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_comment().empty()) {
    _this->_impl_.comment_.Set(from._internal_comment(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_datatype_extension()) {
    _this->_impl_.datatype_extension_ = new ::greptime::v1::ColumnDataTypeExtension(*from._impl_.datatype_extension_);
  }
  if (from._internal_has_options()) {
    _this->_impl_.options_ = new ::greptime::v1::ColumnOptions(*from._impl_.options_);
  }
  ::memcpy(&_impl_.data_type_, &from._impl_.data_type_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.semantic_type_) -
    reinterpret_cast<char*>(&_impl_.data_type_)) + sizeof(_impl_.semantic_type_));
  // @@protoc_insertion_point(copy_constructor:greptime.v1.ColumnDef)
}

inline void ColumnDef::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.name_){}
    , decltype(_impl_.default_constraint_){}
    , decltype(_impl_.comment_){}
    , decltype(_impl_.datatype_extension_){nullptr}
    , decltype(_impl_.options_){nullptr}
    , decltype(_impl_.data_type_){0}
    , decltype(_impl_.is_nullable_){false}
    , decltype(_impl_.semantic_type_){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_.default_constraint_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.default_constraint_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.comment_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.comment_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

ColumnDef::~ColumnDef() {
  // @@protoc_insertion_point(destructor:greptime.v1.ColumnDef)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void ColumnDef::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.name_.Destroy();
  _impl_.default_constraint_.Destroy();
  _impl_.comment_.Destroy();
  if (this != internal_default_instance()) delete _impl_.datatype_extension_;
  if (this != internal_default_instance()) delete _impl_.options_;
}

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

void ColumnDef::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.ColumnDef)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.name_.ClearToEmpty();
  _impl_.default_constraint_.ClearToEmpty();
  _impl_.comment_.ClearToEmpty();
  if (GetArenaForAllocation() == nullptr && _impl_.datatype_extension_ != nullptr) {
    delete _impl_.datatype_extension_;
  }
  _impl_.datatype_extension_ = nullptr;
  if (GetArenaForAllocation() == nullptr && _impl_.options_ != nullptr) {
    delete _impl_.options_;
  }
  _impl_.options_ = nullptr;
  ::memset(&_impl_.data_type_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.semantic_type_) -
      reinterpret_cast<char*>(&_impl_.data_type_)) + sizeof(_impl_.semantic_type_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* ColumnDef::_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, "greptime.v1.ColumnDef.name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.ColumnDataType data_type = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_data_type(static_cast<::greptime::v1::ColumnDataType>(val));
        } else
          goto handle_unusual;
        continue;
      // bool is_nullable = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _impl_.is_nullable_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // bytes default_constraint = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_default_constraint();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.SemanticType semantic_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_semantic_type(static_cast<::greptime::v1::SemanticType>(val));
        } else
          goto handle_unusual;
        continue;
      // string comment = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          auto str = _internal_mutable_comment();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.ColumnDef.comment"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.ColumnDataTypeExtension datatype_extension = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr = ctx->ParseMessage(_internal_mutable_datatype_extension(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.ColumnOptions options = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_options(), 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* ColumnDef::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.ColumnDef)
  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,
      "greptime.v1.ColumnDef.name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_name(), target);
  }

  // .greptime.v1.ColumnDataType data_type = 2;
  if (this->_internal_data_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      2, this->_internal_data_type(), target);
  }

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

  // bytes default_constraint = 4;
  if (!this->_internal_default_constraint().empty()) {
    target = stream->WriteBytesMaybeAliased(
        4, this->_internal_default_constraint(), target);
  }

  // .greptime.v1.SemanticType semantic_type = 5;
  if (this->_internal_semantic_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      5, this->_internal_semantic_type(), target);
  }

  // string comment = 6;
  if (!this->_internal_comment().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_comment().data(), static_cast<int>(this->_internal_comment().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.ColumnDef.comment");
    target = stream->WriteStringMaybeAliased(
        6, this->_internal_comment(), target);
  }

  // .greptime.v1.ColumnDataTypeExtension datatype_extension = 7;
  if (this->_internal_has_datatype_extension()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(7, _Internal::datatype_extension(this),
        _Internal::datatype_extension(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.ColumnOptions options = 8;
  if (this->_internal_has_options()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(8, _Internal::options(this),
        _Internal::options(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:greptime.v1.ColumnDef)
  return target;
}

size_t ColumnDef::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.ColumnDef)
  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 name = 1;
  if (!this->_internal_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_name());
  }

  // bytes default_constraint = 4;
  if (!this->_internal_default_constraint().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::BytesSize(
        this->_internal_default_constraint());
  }

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

  // .greptime.v1.ColumnDataTypeExtension datatype_extension = 7;
  if (this->_internal_has_datatype_extension()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.datatype_extension_);
  }

  // .greptime.v1.ColumnOptions options = 8;
  if (this->_internal_has_options()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.options_);
  }

  // .greptime.v1.ColumnDataType data_type = 2;
  if (this->_internal_data_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_data_type());
  }

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

  // .greptime.v1.SemanticType semantic_type = 5;
  if (this->_internal_semantic_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_semantic_type());
  }

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

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


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

  if (!from._internal_name().empty()) {
    _this->_internal_set_name(from._internal_name());
  }
  if (!from._internal_default_constraint().empty()) {
    _this->_internal_set_default_constraint(from._internal_default_constraint());
  }
  if (!from._internal_comment().empty()) {
    _this->_internal_set_comment(from._internal_comment());
  }
  if (from._internal_has_datatype_extension()) {
    _this->_internal_mutable_datatype_extension()->::greptime::v1::ColumnDataTypeExtension::MergeFrom(
        from._internal_datatype_extension());
  }
  if (from._internal_has_options()) {
    _this->_internal_mutable_options()->::greptime::v1::ColumnOptions::MergeFrom(
        from._internal_options());
  }
  if (from._internal_data_type() != 0) {
    _this->_internal_set_data_type(from._internal_data_type());
  }
  if (from._internal_is_nullable() != 0) {
    _this->_internal_set_is_nullable(from._internal_is_nullable());
  }
  if (from._internal_semantic_type() != 0) {
    _this->_internal_set_semantic_type(from._internal_semantic_type());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void ColumnDef::CopyFrom(const ColumnDef& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.ColumnDef)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void ColumnDef::InternalSwap(ColumnDef* 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_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.default_constraint_, lhs_arena,
      &other->_impl_.default_constraint_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.comment_, lhs_arena,
      &other->_impl_.comment_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(ColumnDef, _impl_.semantic_type_)
      + sizeof(ColumnDef::_impl_.semantic_type_)
      - PROTOBUF_FIELD_OFFSET(ColumnDef, _impl_.datatype_extension_)>(
          reinterpret_cast<char*>(&_impl_.datatype_extension_),
          reinterpret_cast<char*>(&other->_impl_.datatype_extension_));
}

::PROTOBUF_NAMESPACE_ID::Metadata ColumnDef::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[37]);
}

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

class AddColumnLocation::_Internal {
 public:
};

AddColumnLocation::AddColumnLocation(::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:greptime.v1.AddColumnLocation)
}
AddColumnLocation::AddColumnLocation(const AddColumnLocation& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AddColumnLocation* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.after_column_name_){}
    , decltype(_impl_.location_type_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.after_column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.after_column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_after_column_name().empty()) {
    _this->_impl_.after_column_name_.Set(from._internal_after_column_name(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.location_type_ = from._impl_.location_type_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.AddColumnLocation)
}

inline void AddColumnLocation::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.after_column_name_){}
    , decltype(_impl_.location_type_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.after_column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.after_column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

AddColumnLocation::~AddColumnLocation() {
  // @@protoc_insertion_point(destructor:greptime.v1.AddColumnLocation)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void AddColumnLocation::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.after_column_name_.Destroy();
}

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

void AddColumnLocation::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.AddColumnLocation)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.after_column_name_.ClearToEmpty();
  _impl_.location_type_ = 0;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* AddColumnLocation::_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) {
      // .greptime.v1.AddColumnLocation.LocationType location_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_location_type(static_cast<::greptime::v1::AddColumnLocation_LocationType>(val));
        } else
          goto handle_unusual;
        continue;
      // string after_column_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_after_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.AddColumnLocation.after_column_name"));
        } 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* AddColumnLocation::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.AddColumnLocation)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // .greptime.v1.AddColumnLocation.LocationType location_type = 1;
  if (this->_internal_location_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      1, this->_internal_location_type(), target);
  }

  // string after_column_name = 2;
  if (!this->_internal_after_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_after_column_name().data(), static_cast<int>(this->_internal_after_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.AddColumnLocation.after_column_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_after_column_name(), 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:greptime.v1.AddColumnLocation)
  return target;
}

size_t AddColumnLocation::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.AddColumnLocation)
  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 after_column_name = 2;
  if (!this->_internal_after_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_after_column_name());
  }

  // .greptime.v1.AddColumnLocation.LocationType location_type = 1;
  if (this->_internal_location_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_location_type());
  }

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

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


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

  if (!from._internal_after_column_name().empty()) {
    _this->_internal_set_after_column_name(from._internal_after_column_name());
  }
  if (from._internal_location_type() != 0) {
    _this->_internal_set_location_type(from._internal_location_type());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void AddColumnLocation::CopyFrom(const AddColumnLocation& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.AddColumnLocation)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void AddColumnLocation::InternalSwap(AddColumnLocation* 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_.after_column_name_, lhs_arena,
      &other->_impl_.after_column_name_, rhs_arena
  );
  swap(_impl_.location_type_, other->_impl_.location_type_);
}

::PROTOBUF_NAMESPACE_ID::Metadata AddColumnLocation::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[38]);
}

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

class SetFulltext::_Internal {
 public:
};

SetFulltext::SetFulltext(::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:greptime.v1.SetFulltext)
}
SetFulltext::SetFulltext(const SetFulltext& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SetFulltext* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , decltype(_impl_.analyzer_){}
    , decltype(_impl_.enable_){}
    , decltype(_impl_.case_sensitive_){}
    , decltype(_impl_.granularity_){}
    , decltype(_impl_.false_positive_rate_){}
    , decltype(_impl_.backend_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.analyzer_, &from._impl_.analyzer_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.backend_) -
    reinterpret_cast<char*>(&_impl_.analyzer_)) + sizeof(_impl_.backend_));
  // @@protoc_insertion_point(copy_constructor:greptime.v1.SetFulltext)
}

inline void SetFulltext::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , decltype(_impl_.analyzer_){0}
    , decltype(_impl_.enable_){false}
    , decltype(_impl_.case_sensitive_){false}
    , decltype(_impl_.granularity_){uint64_t{0u}}
    , decltype(_impl_.false_positive_rate_){0}
    , decltype(_impl_.backend_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

SetFulltext::~SetFulltext() {
  // @@protoc_insertion_point(destructor:greptime.v1.SetFulltext)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void SetFulltext::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_name_.Destroy();
}

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

void SetFulltext::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.SetFulltext)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.column_name_.ClearToEmpty();
  ::memset(&_impl_.analyzer_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.backend_) -
      reinterpret_cast<char*>(&_impl_.analyzer_)) + sizeof(_impl_.backend_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* SetFulltext::_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 column_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.SetFulltext.column_name"));
        } else
          goto handle_unusual;
        continue;
      // bool enable = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _impl_.enable_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.Analyzer analyzer = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_analyzer(static_cast<::greptime::v1::Analyzer>(val));
        } else
          goto handle_unusual;
        continue;
      // bool case_sensitive = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          _impl_.case_sensitive_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.FulltextBackend backend = 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_backend(static_cast<::greptime::v1::FulltextBackend>(val));
        } else
          goto handle_unusual;
        continue;
      // uint64 granularity = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 48)) {
          _impl_.granularity_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // double false_positive_rate = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 57)) {
          _impl_.false_positive_rate_ = ::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* SetFulltext::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.SetFulltext)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string column_name = 1;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.SetFulltext.column_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_column_name(), target);
  }

  // bool enable = 2;
  if (this->_internal_enable() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_enable(), target);
  }

  // .greptime.v1.Analyzer analyzer = 3;
  if (this->_internal_analyzer() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      3, this->_internal_analyzer(), target);
  }

  // bool case_sensitive = 4;
  if (this->_internal_case_sensitive() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(4, this->_internal_case_sensitive(), target);
  }

  // .greptime.v1.FulltextBackend backend = 5;
  if (this->_internal_backend() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      5, this->_internal_backend(), target);
  }

  // uint64 granularity = 6;
  if (this->_internal_granularity() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(6, this->_internal_granularity(), target);
  }

  // double false_positive_rate = 7;
  static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
  double tmp_false_positive_rate = this->_internal_false_positive_rate();
  uint64_t raw_false_positive_rate;
  memcpy(&raw_false_positive_rate, &tmp_false_positive_rate, sizeof(tmp_false_positive_rate));
  if (raw_false_positive_rate != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteDoubleToArray(7, this->_internal_false_positive_rate(), 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:greptime.v1.SetFulltext)
  return target;
}

size_t SetFulltext::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.SetFulltext)
  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 column_name = 1;
  if (!this->_internal_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_column_name());
  }

  // .greptime.v1.Analyzer analyzer = 3;
  if (this->_internal_analyzer() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_analyzer());
  }

  // bool enable = 2;
  if (this->_internal_enable() != 0) {
    total_size += 1 + 1;
  }

  // bool case_sensitive = 4;
  if (this->_internal_case_sensitive() != 0) {
    total_size += 1 + 1;
  }

  // uint64 granularity = 6;
  if (this->_internal_granularity() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_granularity());
  }

  // double false_positive_rate = 7;
  static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
  double tmp_false_positive_rate = this->_internal_false_positive_rate();
  uint64_t raw_false_positive_rate;
  memcpy(&raw_false_positive_rate, &tmp_false_positive_rate, sizeof(tmp_false_positive_rate));
  if (raw_false_positive_rate != 0) {
    total_size += 1 + 8;
  }

  // .greptime.v1.FulltextBackend backend = 5;
  if (this->_internal_backend() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_backend());
  }

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

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


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

  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  if (from._internal_analyzer() != 0) {
    _this->_internal_set_analyzer(from._internal_analyzer());
  }
  if (from._internal_enable() != 0) {
    _this->_internal_set_enable(from._internal_enable());
  }
  if (from._internal_case_sensitive() != 0) {
    _this->_internal_set_case_sensitive(from._internal_case_sensitive());
  }
  if (from._internal_granularity() != 0) {
    _this->_internal_set_granularity(from._internal_granularity());
  }
  static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
  double tmp_false_positive_rate = from._internal_false_positive_rate();
  uint64_t raw_false_positive_rate;
  memcpy(&raw_false_positive_rate, &tmp_false_positive_rate, sizeof(tmp_false_positive_rate));
  if (raw_false_positive_rate != 0) {
    _this->_internal_set_false_positive_rate(from._internal_false_positive_rate());
  }
  if (from._internal_backend() != 0) {
    _this->_internal_set_backend(from._internal_backend());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void SetFulltext::CopyFrom(const SetFulltext& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.SetFulltext)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void SetFulltext::InternalSwap(SetFulltext* 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_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(SetFulltext, _impl_.backend_)
      + sizeof(SetFulltext::_impl_.backend_)
      - PROTOBUF_FIELD_OFFSET(SetFulltext, _impl_.analyzer_)>(
          reinterpret_cast<char*>(&_impl_.analyzer_),
          reinterpret_cast<char*>(&other->_impl_.analyzer_));
}

::PROTOBUF_NAMESPACE_ID::Metadata SetFulltext::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[39]);
}

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

class UnsetFulltext::_Internal {
 public:
};

UnsetFulltext::UnsetFulltext(::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:greptime.v1.UnsetFulltext)
}
UnsetFulltext::UnsetFulltext(const UnsetFulltext& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UnsetFulltext* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.UnsetFulltext)
}

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

UnsetFulltext::~UnsetFulltext() {
  // @@protoc_insertion_point(destructor:greptime.v1.UnsetFulltext)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UnsetFulltext::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_name_.Destroy();
}

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

void UnsetFulltext::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.UnsetFulltext)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* UnsetFulltext::_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 column_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.UnsetFulltext.column_name"));
        } 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* UnsetFulltext::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.UnsetFulltext)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string column_name = 1;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.UnsetFulltext.column_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_column_name(), 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:greptime.v1.UnsetFulltext)
  return target;
}

size_t UnsetFulltext::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.UnsetFulltext)
  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 column_name = 1;
  if (!this->_internal_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_column_name());
  }

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

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


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

  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UnsetFulltext::CopyFrom(const UnsetFulltext& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.UnsetFulltext)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void UnsetFulltext::InternalSwap(UnsetFulltext* 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_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata UnsetFulltext::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[40]);
}

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

class SetInverted::_Internal {
 public:
};

SetInverted::SetInverted(::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:greptime.v1.SetInverted)
}
SetInverted::SetInverted(const SetInverted& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SetInverted* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.SetInverted)
}

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

SetInverted::~SetInverted() {
  // @@protoc_insertion_point(destructor:greptime.v1.SetInverted)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void SetInverted::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_name_.Destroy();
}

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

void SetInverted::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.SetInverted)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* SetInverted::_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 column_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.SetInverted.column_name"));
        } 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* SetInverted::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.SetInverted)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string column_name = 1;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.SetInverted.column_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_column_name(), 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:greptime.v1.SetInverted)
  return target;
}

size_t SetInverted::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.SetInverted)
  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 column_name = 1;
  if (!this->_internal_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_column_name());
  }

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

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


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

  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void SetInverted::CopyFrom(const SetInverted& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.SetInverted)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void SetInverted::InternalSwap(SetInverted* 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_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata SetInverted::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[41]);
}

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

class UnsetInverted::_Internal {
 public:
};

UnsetInverted::UnsetInverted(::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:greptime.v1.UnsetInverted)
}
UnsetInverted::UnsetInverted(const UnsetInverted& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UnsetInverted* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.UnsetInverted)
}

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

UnsetInverted::~UnsetInverted() {
  // @@protoc_insertion_point(destructor:greptime.v1.UnsetInverted)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UnsetInverted::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_name_.Destroy();
}

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

void UnsetInverted::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.UnsetInverted)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* UnsetInverted::_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 column_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.UnsetInverted.column_name"));
        } 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* UnsetInverted::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.UnsetInverted)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string column_name = 1;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.UnsetInverted.column_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_column_name(), 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:greptime.v1.UnsetInverted)
  return target;
}

size_t UnsetInverted::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.UnsetInverted)
  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 column_name = 1;
  if (!this->_internal_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_column_name());
  }

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

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


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

  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UnsetInverted::CopyFrom(const UnsetInverted& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.UnsetInverted)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void UnsetInverted::InternalSwap(UnsetInverted* 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_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata UnsetInverted::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[42]);
}

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

class SetSkipping::_Internal {
 public:
};

SetSkipping::SetSkipping(::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:greptime.v1.SetSkipping)
}
SetSkipping::SetSkipping(const SetSkipping& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SetSkipping* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , decltype(_impl_.granularity_){}
    , decltype(_impl_.enable_){}
    , decltype(_impl_.skipping_index_type_){}
    , decltype(_impl_.false_positive_rate_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  ::memcpy(&_impl_.granularity_, &from._impl_.granularity_,
    static_cast<size_t>(reinterpret_cast<char*>(&_impl_.false_positive_rate_) -
    reinterpret_cast<char*>(&_impl_.granularity_)) + sizeof(_impl_.false_positive_rate_));
  // @@protoc_insertion_point(copy_constructor:greptime.v1.SetSkipping)
}

inline void SetSkipping::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , decltype(_impl_.granularity_){uint64_t{0u}}
    , decltype(_impl_.enable_){false}
    , decltype(_impl_.skipping_index_type_){0}
    , decltype(_impl_.false_positive_rate_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

SetSkipping::~SetSkipping() {
  // @@protoc_insertion_point(destructor:greptime.v1.SetSkipping)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void SetSkipping::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_name_.Destroy();
}

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

void SetSkipping::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.SetSkipping)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.column_name_.ClearToEmpty();
  ::memset(&_impl_.granularity_, 0, static_cast<size_t>(
      reinterpret_cast<char*>(&_impl_.false_positive_rate_) -
      reinterpret_cast<char*>(&_impl_.granularity_)) + sizeof(_impl_.false_positive_rate_));
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* SetSkipping::_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 column_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.SetSkipping.column_name"));
        } else
          goto handle_unusual;
        continue;
      // bool enable = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
          _impl_.enable_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // uint64 granularity = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _impl_.granularity_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.SkippingIndexType skipping_index_type = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_skipping_index_type(static_cast<::greptime::v1::SkippingIndexType>(val));
        } else
          goto handle_unusual;
        continue;
      // double false_positive_rate = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 41)) {
          _impl_.false_positive_rate_ = ::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* SetSkipping::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.SetSkipping)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string column_name = 1;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.SetSkipping.column_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_column_name(), target);
  }

  // bool enable = 2;
  if (this->_internal_enable() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(2, this->_internal_enable(), target);
  }

  // uint64 granularity = 3;
  if (this->_internal_granularity() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(3, this->_internal_granularity(), target);
  }

  // .greptime.v1.SkippingIndexType skipping_index_type = 4;
  if (this->_internal_skipping_index_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      4, this->_internal_skipping_index_type(), target);
  }

  // double false_positive_rate = 5;
  static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
  double tmp_false_positive_rate = this->_internal_false_positive_rate();
  uint64_t raw_false_positive_rate;
  memcpy(&raw_false_positive_rate, &tmp_false_positive_rate, sizeof(tmp_false_positive_rate));
  if (raw_false_positive_rate != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteDoubleToArray(5, this->_internal_false_positive_rate(), 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:greptime.v1.SetSkipping)
  return target;
}

size_t SetSkipping::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.SetSkipping)
  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 column_name = 1;
  if (!this->_internal_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_column_name());
  }

  // uint64 granularity = 3;
  if (this->_internal_granularity() != 0) {
    total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(this->_internal_granularity());
  }

  // bool enable = 2;
  if (this->_internal_enable() != 0) {
    total_size += 1 + 1;
  }

  // .greptime.v1.SkippingIndexType skipping_index_type = 4;
  if (this->_internal_skipping_index_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_skipping_index_type());
  }

  // double false_positive_rate = 5;
  static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
  double tmp_false_positive_rate = this->_internal_false_positive_rate();
  uint64_t raw_false_positive_rate;
  memcpy(&raw_false_positive_rate, &tmp_false_positive_rate, sizeof(tmp_false_positive_rate));
  if (raw_false_positive_rate != 0) {
    total_size += 1 + 8;
  }

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

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


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

  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  if (from._internal_granularity() != 0) {
    _this->_internal_set_granularity(from._internal_granularity());
  }
  if (from._internal_enable() != 0) {
    _this->_internal_set_enable(from._internal_enable());
  }
  if (from._internal_skipping_index_type() != 0) {
    _this->_internal_set_skipping_index_type(from._internal_skipping_index_type());
  }
  static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
  double tmp_false_positive_rate = from._internal_false_positive_rate();
  uint64_t raw_false_positive_rate;
  memcpy(&raw_false_positive_rate, &tmp_false_positive_rate, sizeof(tmp_false_positive_rate));
  if (raw_false_positive_rate != 0) {
    _this->_internal_set_false_positive_rate(from._internal_false_positive_rate());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void SetSkipping::CopyFrom(const SetSkipping& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.SetSkipping)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void SetSkipping::InternalSwap(SetSkipping* 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_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(SetSkipping, _impl_.false_positive_rate_)
      + sizeof(SetSkipping::_impl_.false_positive_rate_)
      - PROTOBUF_FIELD_OFFSET(SetSkipping, _impl_.granularity_)>(
          reinterpret_cast<char*>(&_impl_.granularity_),
          reinterpret_cast<char*>(&other->_impl_.granularity_));
}

::PROTOBUF_NAMESPACE_ID::Metadata SetSkipping::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[43]);
}

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

class UnsetSkipping::_Internal {
 public:
};

UnsetSkipping::UnsetSkipping(::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:greptime.v1.UnsetSkipping)
}
UnsetSkipping::UnsetSkipping(const UnsetSkipping& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UnsetSkipping* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.column_name_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.UnsetSkipping)
}

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

UnsetSkipping::~UnsetSkipping() {
  // @@protoc_insertion_point(destructor:greptime.v1.UnsetSkipping)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void UnsetSkipping::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.column_name_.Destroy();
}

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

void UnsetSkipping::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.UnsetSkipping)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* UnsetSkipping::_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 column_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.UnsetSkipping.column_name"));
        } 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* UnsetSkipping::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.UnsetSkipping)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string column_name = 1;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.UnsetSkipping.column_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_column_name(), 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:greptime.v1.UnsetSkipping)
  return target;
}

size_t UnsetSkipping::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.UnsetSkipping)
  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 column_name = 1;
  if (!this->_internal_column_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_column_name());
  }

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

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


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

  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void UnsetSkipping::CopyFrom(const UnsetSkipping& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.UnsetSkipping)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void UnsetSkipping::InternalSwap(UnsetSkipping* 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_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata UnsetSkipping::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[44]);
}

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

class AlterDatabaseExpr::_Internal {
 public:
  static const ::greptime::v1::SetDatabaseOptions& set_database_options(const AlterDatabaseExpr* msg);
  static const ::greptime::v1::UnsetDatabaseOptions& unset_database_options(const AlterDatabaseExpr* msg);
};

const ::greptime::v1::SetDatabaseOptions&
AlterDatabaseExpr::_Internal::set_database_options(const AlterDatabaseExpr* msg) {
  return *msg->_impl_.kind_.set_database_options_;
}
const ::greptime::v1::UnsetDatabaseOptions&
AlterDatabaseExpr::_Internal::unset_database_options(const AlterDatabaseExpr* msg) {
  return *msg->_impl_.kind_.unset_database_options_;
}
void AlterDatabaseExpr::set_allocated_set_database_options(::greptime::v1::SetDatabaseOptions* set_database_options) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (set_database_options) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(set_database_options);
    if (message_arena != submessage_arena) {
      set_database_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, set_database_options, submessage_arena);
    }
    set_has_set_database_options();
    _impl_.kind_.set_database_options_ = set_database_options;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterDatabaseExpr.set_database_options)
}
void AlterDatabaseExpr::set_allocated_unset_database_options(::greptime::v1::UnsetDatabaseOptions* unset_database_options) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_kind();
  if (unset_database_options) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(unset_database_options);
    if (message_arena != submessage_arena) {
      unset_database_options = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, unset_database_options, submessage_arena);
    }
    set_has_unset_database_options();
    _impl_.kind_.unset_database_options_ = unset_database_options;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.AlterDatabaseExpr.unset_database_options)
}
AlterDatabaseExpr::AlterDatabaseExpr(::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:greptime.v1.AlterDatabaseExpr)
}
AlterDatabaseExpr::AlterDatabaseExpr(const AlterDatabaseExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  AlterDatabaseExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.kind_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  clear_has_kind();
  switch (from.kind_case()) {
    case kSetDatabaseOptions: {
      _this->_internal_mutable_set_database_options()->::greptime::v1::SetDatabaseOptions::MergeFrom(
          from._internal_set_database_options());
      break;
    }
    case kUnsetDatabaseOptions: {
      _this->_internal_mutable_unset_database_options()->::greptime::v1::UnsetDatabaseOptions::MergeFrom(
          from._internal_unset_database_options());
      break;
    }
    case KIND_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.AlterDatabaseExpr)
}

inline void AlterDatabaseExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.kind_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  clear_has_kind();
}

AlterDatabaseExpr::~AlterDatabaseExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.AlterDatabaseExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void AlterDatabaseExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
  if (has_kind()) {
    clear_kind();
  }
}

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

void AlterDatabaseExpr::clear_kind() {
// @@protoc_insertion_point(one_of_clear_start:greptime.v1.AlterDatabaseExpr)
  switch (kind_case()) {
    case kSetDatabaseOptions: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.set_database_options_;
      }
      break;
    }
    case kUnsetDatabaseOptions: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.kind_.unset_database_options_;
      }
      break;
    }
    case KIND_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = KIND_NOT_SET;
}


void AlterDatabaseExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.AlterDatabaseExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  clear_kind();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* AlterDatabaseExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.AlterDatabaseExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.AlterDatabaseExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.SetDatabaseOptions set_database_options = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 26)) {
          ptr = ctx->ParseMessage(_internal_mutable_set_database_options(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.UnsetDatabaseOptions unset_database_options = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          ptr = ctx->ParseMessage(_internal_mutable_unset_database_options(), 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* AlterDatabaseExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.AlterDatabaseExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.AlterDatabaseExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.AlterDatabaseExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

  // .greptime.v1.SetDatabaseOptions set_database_options = 3;
  if (_internal_has_set_database_options()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(3, _Internal::set_database_options(this),
        _Internal::set_database_options(this).GetCachedSize(), target, stream);
  }

  // .greptime.v1.UnsetDatabaseOptions unset_database_options = 4;
  if (_internal_has_unset_database_options()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(4, _Internal::unset_database_options(this),
        _Internal::unset_database_options(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:greptime.v1.AlterDatabaseExpr)
  return target;
}

size_t AlterDatabaseExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.AlterDatabaseExpr)
  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 catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_catalog_name());
  }

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

  switch (kind_case()) {
    // .greptime.v1.SetDatabaseOptions set_database_options = 3;
    case kSetDatabaseOptions: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.set_database_options_);
      break;
    }
    // .greptime.v1.UnsetDatabaseOptions unset_database_options = 4;
    case kUnsetDatabaseOptions: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.kind_.unset_database_options_);
      break;
    }
    case KIND_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

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


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

  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  switch (from.kind_case()) {
    case kSetDatabaseOptions: {
      _this->_internal_mutable_set_database_options()->::greptime::v1::SetDatabaseOptions::MergeFrom(
          from._internal_set_database_options());
      break;
    }
    case kUnsetDatabaseOptions: {
      _this->_internal_mutable_unset_database_options()->::greptime::v1::UnsetDatabaseOptions::MergeFrom(
          from._internal_unset_database_options());
      break;
    }
    case KIND_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void AlterDatabaseExpr::CopyFrom(const AlterDatabaseExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.AlterDatabaseExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void AlterDatabaseExpr::InternalSwap(AlterDatabaseExpr* 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_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  swap(_impl_.kind_, other->_impl_.kind_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata AlterDatabaseExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[45]);
}

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

class SetDatabaseOptions::_Internal {
 public:
};

SetDatabaseOptions::SetDatabaseOptions(::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:greptime.v1.SetDatabaseOptions)
}
SetDatabaseOptions::SetDatabaseOptions(const SetDatabaseOptions& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  SetDatabaseOptions* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.set_database_options_){from._impl_.set_database_options_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.SetDatabaseOptions)
}

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

SetDatabaseOptions::~SetDatabaseOptions() {
  // @@protoc_insertion_point(destructor:greptime.v1.SetDatabaseOptions)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void SetDatabaseOptions::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.SetDatabaseOptions)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* SetDatabaseOptions::_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 .greptime.v1.Option set_database_options = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_set_database_options(), ptr);
            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* SetDatabaseOptions::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.SetDatabaseOptions)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated .greptime.v1.Option set_database_options = 1;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_set_database_options_size()); i < n; i++) {
    const auto& repfield = this->_internal_set_database_options(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(1, 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:greptime.v1.SetDatabaseOptions)
  return target;
}

size_t SetDatabaseOptions::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.SetDatabaseOptions)
  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 .greptime.v1.Option set_database_options = 1;
  total_size += 1UL * this->_internal_set_database_options_size();
  for (const auto& msg : this->_impl_.set_database_options_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

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

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


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

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

void SetDatabaseOptions::CopyFrom(const SetDatabaseOptions& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.SetDatabaseOptions)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata SetDatabaseOptions::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[46]);
}

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

class UnsetDatabaseOptions::_Internal {
 public:
};

UnsetDatabaseOptions::UnsetDatabaseOptions(::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:greptime.v1.UnsetDatabaseOptions)
}
UnsetDatabaseOptions::UnsetDatabaseOptions(const UnsetDatabaseOptions& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  UnsetDatabaseOptions* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.keys_){from._impl_.keys_}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  // @@protoc_insertion_point(copy_constructor:greptime.v1.UnsetDatabaseOptions)
}

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

UnsetDatabaseOptions::~UnsetDatabaseOptions() {
  // @@protoc_insertion_point(destructor:greptime.v1.UnsetDatabaseOptions)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

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

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

void UnsetDatabaseOptions::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.UnsetDatabaseOptions)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

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

const char* UnsetDatabaseOptions::_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 keys = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          ptr -= 1;
          do {
            ptr += 1;
            auto str = _internal_add_keys();
            ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
            CHK_(ptr);
            CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.UnsetDatabaseOptions.keys"));
            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* UnsetDatabaseOptions::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.UnsetDatabaseOptions)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // repeated string keys = 1;
  for (int i = 0, n = this->_internal_keys_size(); i < n; i++) {
    const auto& s = this->_internal_keys(i);
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      s.data(), static_cast<int>(s.length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.UnsetDatabaseOptions.keys");
    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:greptime.v1.UnsetDatabaseOptions)
  return target;
}

size_t UnsetDatabaseOptions::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.UnsetDatabaseOptions)
  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 keys = 1;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(_impl_.keys_.size());
  for (int i = 0, n = _impl_.keys_.size(); i < n; i++) {
    total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
      _impl_.keys_.Get(i));
  }

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

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


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

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

void UnsetDatabaseOptions::CopyFrom(const UnsetDatabaseOptions& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.UnsetDatabaseOptions)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

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

::PROTOBUF_NAMESPACE_ID::Metadata UnsetDatabaseOptions::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[47]);
}

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

CreateTriggerExpr_LabelsEntry_DoNotUse::CreateTriggerExpr_LabelsEntry_DoNotUse() {}
CreateTriggerExpr_LabelsEntry_DoNotUse::CreateTriggerExpr_LabelsEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena)
    : SuperType(arena) {}
void CreateTriggerExpr_LabelsEntry_DoNotUse::MergeFrom(const CreateTriggerExpr_LabelsEntry_DoNotUse& other) {
  MergeFromInternal(other);
}
::PROTOBUF_NAMESPACE_ID::Metadata CreateTriggerExpr_LabelsEntry_DoNotUse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[48]);
}

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

CreateTriggerExpr_AnnotationsEntry_DoNotUse::CreateTriggerExpr_AnnotationsEntry_DoNotUse() {}
CreateTriggerExpr_AnnotationsEntry_DoNotUse::CreateTriggerExpr_AnnotationsEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena)
    : SuperType(arena) {}
void CreateTriggerExpr_AnnotationsEntry_DoNotUse::MergeFrom(const CreateTriggerExpr_AnnotationsEntry_DoNotUse& other) {
  MergeFromInternal(other);
}
::PROTOBUF_NAMESPACE_ID::Metadata CreateTriggerExpr_AnnotationsEntry_DoNotUse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[49]);
}

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

class CreateTriggerExpr::_Internal {
 public:
  static const ::PROTOBUF_NAMESPACE_ID::Duration& interval(const CreateTriggerExpr* msg);
  static const ::PROTOBUF_NAMESPACE_ID::Duration& for_(const CreateTriggerExpr* msg);
  static const ::PROTOBUF_NAMESPACE_ID::Duration& keep_firing_for(const CreateTriggerExpr* msg);
};

const ::PROTOBUF_NAMESPACE_ID::Duration&
CreateTriggerExpr::_Internal::interval(const CreateTriggerExpr* msg) {
  return *msg->_impl_.interval_;
}
const ::PROTOBUF_NAMESPACE_ID::Duration&
CreateTriggerExpr::_Internal::for_(const CreateTriggerExpr* msg) {
  return *msg->_impl_.for__;
}
const ::PROTOBUF_NAMESPACE_ID::Duration&
CreateTriggerExpr::_Internal::keep_firing_for(const CreateTriggerExpr* msg) {
  return *msg->_impl_.keep_firing_for_;
}
void CreateTriggerExpr::clear_interval() {
  if (GetArenaForAllocation() == nullptr && _impl_.interval_ != nullptr) {
    delete _impl_.interval_;
  }
  _impl_.interval_ = nullptr;
}
void CreateTriggerExpr::clear_for_() {
  if (GetArenaForAllocation() == nullptr && _impl_.for__ != nullptr) {
    delete _impl_.for__;
  }
  _impl_.for__ = nullptr;
}
void CreateTriggerExpr::clear_keep_firing_for() {
  if (GetArenaForAllocation() == nullptr && _impl_.keep_firing_for_ != nullptr) {
    delete _impl_.keep_firing_for_;
  }
  _impl_.keep_firing_for_ = nullptr;
}
CreateTriggerExpr::CreateTriggerExpr(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  if (arena != nullptr && !is_message_owned) {
    arena->OwnCustomDestructor(this, &CreateTriggerExpr::ArenaDtor);
  }
  // @@protoc_insertion_point(arena_constructor:greptime.v1.CreateTriggerExpr)
}
CreateTriggerExpr::CreateTriggerExpr(const CreateTriggerExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CreateTriggerExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.channels_){from._impl_.channels_}
    , /*decltype(_impl_.labels_)*/{}
    , /*decltype(_impl_.annotations_)*/{}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.trigger_name_){}
    , decltype(_impl_.sql_){}
    , decltype(_impl_.raw_interval_expr_){}
    , decltype(_impl_.for_raw_expr_){}
    , decltype(_impl_.keep_firing_for_raw_expr_){}
    , decltype(_impl_.interval_){nullptr}
    , decltype(_impl_.for__){nullptr}
    , decltype(_impl_.keep_firing_for_){nullptr}
    , decltype(_impl_.create_if_not_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.labels_.MergeFrom(from._impl_.labels_);
  _this->_impl_.annotations_.MergeFrom(from._impl_.annotations_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.trigger_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.trigger_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_trigger_name().empty()) {
    _this->_impl_.trigger_name_.Set(from._internal_trigger_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.sql_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sql_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_sql().empty()) {
    _this->_impl_.sql_.Set(from._internal_sql(), 
      _this->GetArenaForAllocation());
  }
  _impl_.raw_interval_expr_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.raw_interval_expr_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_raw_interval_expr().empty()) {
    _this->_impl_.raw_interval_expr_.Set(from._internal_raw_interval_expr(), 
      _this->GetArenaForAllocation());
  }
  _impl_.for_raw_expr_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.for_raw_expr_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_for_raw_expr().empty()) {
    _this->_impl_.for_raw_expr_.Set(from._internal_for_raw_expr(), 
      _this->GetArenaForAllocation());
  }
  _impl_.keep_firing_for_raw_expr_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.keep_firing_for_raw_expr_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_keep_firing_for_raw_expr().empty()) {
    _this->_impl_.keep_firing_for_raw_expr_.Set(from._internal_keep_firing_for_raw_expr(), 
      _this->GetArenaForAllocation());
  }
  if (from._internal_has_interval()) {
    _this->_impl_.interval_ = new ::PROTOBUF_NAMESPACE_ID::Duration(*from._impl_.interval_);
  }
  if (from._internal_has_for_()) {
    _this->_impl_.for__ = new ::PROTOBUF_NAMESPACE_ID::Duration(*from._impl_.for__);
  }
  if (from._internal_has_keep_firing_for()) {
    _this->_impl_.keep_firing_for_ = new ::PROTOBUF_NAMESPACE_ID::Duration(*from._impl_.keep_firing_for_);
  }
  _this->_impl_.create_if_not_exists_ = from._impl_.create_if_not_exists_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.CreateTriggerExpr)
}

inline void CreateTriggerExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.channels_){arena}
    , /*decltype(_impl_.labels_)*/{::_pbi::ArenaInitialized(), arena}
    , /*decltype(_impl_.annotations_)*/{::_pbi::ArenaInitialized(), arena}
    , decltype(_impl_.catalog_name_){}
    , decltype(_impl_.trigger_name_){}
    , decltype(_impl_.sql_){}
    , decltype(_impl_.raw_interval_expr_){}
    , decltype(_impl_.for_raw_expr_){}
    , decltype(_impl_.keep_firing_for_raw_expr_){}
    , decltype(_impl_.interval_){nullptr}
    , decltype(_impl_.for__){nullptr}
    , decltype(_impl_.keep_firing_for_){nullptr}
    , decltype(_impl_.create_if_not_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.trigger_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.trigger_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.sql_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.sql_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.raw_interval_expr_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.raw_interval_expr_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.for_raw_expr_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.for_raw_expr_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.keep_firing_for_raw_expr_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.keep_firing_for_raw_expr_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CreateTriggerExpr::~CreateTriggerExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.CreateTriggerExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    ArenaDtor(this);
    return;
  }
  SharedDtor();
}

inline void CreateTriggerExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.channels_.~RepeatedPtrField();
  _impl_.labels_.Destruct();
  _impl_.labels_.~MapField();
  _impl_.annotations_.Destruct();
  _impl_.annotations_.~MapField();
  _impl_.catalog_name_.Destroy();
  _impl_.trigger_name_.Destroy();
  _impl_.sql_.Destroy();
  _impl_.raw_interval_expr_.Destroy();
  _impl_.for_raw_expr_.Destroy();
  _impl_.keep_firing_for_raw_expr_.Destroy();
  if (this != internal_default_instance()) delete _impl_.interval_;
  if (this != internal_default_instance()) delete _impl_.for__;
  if (this != internal_default_instance()) delete _impl_.keep_firing_for_;
}

void CreateTriggerExpr::ArenaDtor(void* object) {
  CreateTriggerExpr* _this = reinterpret_cast< CreateTriggerExpr* >(object);
  _this->_impl_.labels_.Destruct();
  _this->_impl_.annotations_.Destruct();
}
void CreateTriggerExpr::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void CreateTriggerExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.CreateTriggerExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.channels_.Clear();
  _impl_.labels_.Clear();
  _impl_.annotations_.Clear();
  _impl_.catalog_name_.ClearToEmpty();
  _impl_.trigger_name_.ClearToEmpty();
  _impl_.sql_.ClearToEmpty();
  _impl_.raw_interval_expr_.ClearToEmpty();
  _impl_.for_raw_expr_.ClearToEmpty();
  _impl_.keep_firing_for_raw_expr_.ClearToEmpty();
  if (GetArenaForAllocation() == nullptr && _impl_.interval_ != nullptr) {
    delete _impl_.interval_;
  }
  _impl_.interval_ = nullptr;
  if (GetArenaForAllocation() == nullptr && _impl_.for__ != nullptr) {
    delete _impl_.for__;
  }
  _impl_.for__ = nullptr;
  if (GetArenaForAllocation() == nullptr && _impl_.keep_firing_for_ != nullptr) {
    delete _impl_.keep_firing_for_;
  }
  _impl_.keep_firing_for_ = nullptr;
  _impl_.create_if_not_exists_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CreateTriggerExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTriggerExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string trigger_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_trigger_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTriggerExpr.trigger_name"));
        } else
          goto handle_unusual;
        continue;
      // bool create_if_not_exists = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _impl_.create_if_not_exists_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string sql = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_sql();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTriggerExpr.sql"));
        } else
          goto handle_unusual;
        continue;
      // repeated .greptime.v1.NotifyChannel channels = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(_internal_add_channels(), ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<42>(ptr));
        } else
          goto handle_unusual;
        continue;
      // map<string, string> labels = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(&_impl_.labels_, ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<50>(ptr));
        } else
          goto handle_unusual;
        continue;
      // map<string, string> annotations = 7;
      case 7:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 58)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(&_impl_.annotations_, ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
        } else
          goto handle_unusual;
        continue;
      // .google.protobuf.Duration interval = 8;
      case 8:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 66)) {
          ptr = ctx->ParseMessage(_internal_mutable_interval(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string raw_interval_expr = 9;
      case 9:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 74)) {
          auto str = _internal_mutable_raw_interval_expr();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTriggerExpr.raw_interval_expr"));
        } else
          goto handle_unusual;
        continue;
      // .google.protobuf.Duration for = 10;
      case 10:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 82)) {
          ptr = ctx->ParseMessage(_internal_mutable_for_(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string for_raw_expr = 11;
      case 11:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 90)) {
          auto str = _internal_mutable_for_raw_expr();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTriggerExpr.for_raw_expr"));
        } else
          goto handle_unusual;
        continue;
      // .google.protobuf.Duration keep_firing_for = 12;
      case 12:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 98)) {
          ptr = ctx->ParseMessage(_internal_mutable_keep_firing_for(), ptr);
          CHK_(ptr);
        } else
          goto handle_unusual;
        continue;
      // string keep_firing_for_raw_expr = 13;
      case 13:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 106)) {
          auto str = _internal_mutable_keep_firing_for_raw_expr();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CreateTriggerExpr.keep_firing_for_raw_expr"));
        } 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* CreateTriggerExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.CreateTriggerExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTriggerExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string trigger_name = 2;
  if (!this->_internal_trigger_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_trigger_name().data(), static_cast<int>(this->_internal_trigger_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTriggerExpr.trigger_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_trigger_name(), target);
  }

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

  // string sql = 4;
  if (!this->_internal_sql().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_sql().data(), static_cast<int>(this->_internal_sql().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTriggerExpr.sql");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_sql(), target);
  }

  // repeated .greptime.v1.NotifyChannel channels = 5;
  for (unsigned i = 0,
      n = static_cast<unsigned>(this->_internal_channels_size()); i < n; i++) {
    const auto& repfield = this->_internal_channels(i);
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
        InternalWriteMessage(5, repfield, repfield.GetCachedSize(), target, stream);
  }

  // map<string, string> labels = 6;
  if (!this->_internal_labels().empty()) {
    using MapType = ::_pb::Map<std::string, std::string>;
    using WireHelper = CreateTriggerExpr_LabelsEntry_DoNotUse::Funcs;
    const auto& map_field = this->_internal_labels();
    auto check_utf8 = [](const MapType::value_type& entry) {
      (void)entry;
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.first.data(), static_cast<int>(entry.first.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateTriggerExpr.LabelsEntry.key");
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.second.data(), static_cast<int>(entry.second.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateTriggerExpr.LabelsEntry.value");
    };

    if (stream->IsSerializationDeterministic() && map_field.size() > 1) {
      for (const auto& entry : ::_pbi::MapSorterPtr<MapType>(map_field)) {
        target = WireHelper::InternalSerialize(6, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    } else {
      for (const auto& entry : map_field) {
        target = WireHelper::InternalSerialize(6, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    }
  }

  // map<string, string> annotations = 7;
  if (!this->_internal_annotations().empty()) {
    using MapType = ::_pb::Map<std::string, std::string>;
    using WireHelper = CreateTriggerExpr_AnnotationsEntry_DoNotUse::Funcs;
    const auto& map_field = this->_internal_annotations();
    auto check_utf8 = [](const MapType::value_type& entry) {
      (void)entry;
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.first.data(), static_cast<int>(entry.first.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateTriggerExpr.AnnotationsEntry.key");
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.second.data(), static_cast<int>(entry.second.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.CreateTriggerExpr.AnnotationsEntry.value");
    };

    if (stream->IsSerializationDeterministic() && map_field.size() > 1) {
      for (const auto& entry : ::_pbi::MapSorterPtr<MapType>(map_field)) {
        target = WireHelper::InternalSerialize(7, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    } else {
      for (const auto& entry : map_field) {
        target = WireHelper::InternalSerialize(7, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    }
  }

  // .google.protobuf.Duration interval = 8;
  if (this->_internal_has_interval()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(8, _Internal::interval(this),
        _Internal::interval(this).GetCachedSize(), target, stream);
  }

  // string raw_interval_expr = 9;
  if (!this->_internal_raw_interval_expr().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_raw_interval_expr().data(), static_cast<int>(this->_internal_raw_interval_expr().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTriggerExpr.raw_interval_expr");
    target = stream->WriteStringMaybeAliased(
        9, this->_internal_raw_interval_expr(), target);
  }

  // .google.protobuf.Duration for = 10;
  if (this->_internal_has_for_()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(10, _Internal::for_(this),
        _Internal::for_(this).GetCachedSize(), target, stream);
  }

  // string for_raw_expr = 11;
  if (!this->_internal_for_raw_expr().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_for_raw_expr().data(), static_cast<int>(this->_internal_for_raw_expr().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTriggerExpr.for_raw_expr");
    target = stream->WriteStringMaybeAliased(
        11, this->_internal_for_raw_expr(), target);
  }

  // .google.protobuf.Duration keep_firing_for = 12;
  if (this->_internal_has_keep_firing_for()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(12, _Internal::keep_firing_for(this),
        _Internal::keep_firing_for(this).GetCachedSize(), target, stream);
  }

  // string keep_firing_for_raw_expr = 13;
  if (!this->_internal_keep_firing_for_raw_expr().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_keep_firing_for_raw_expr().data(), static_cast<int>(this->_internal_keep_firing_for_raw_expr().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CreateTriggerExpr.keep_firing_for_raw_expr");
    target = stream->WriteStringMaybeAliased(
        13, this->_internal_keep_firing_for_raw_expr(), 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:greptime.v1.CreateTriggerExpr)
  return target;
}

size_t CreateTriggerExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.CreateTriggerExpr)
  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 .greptime.v1.NotifyChannel channels = 5;
  total_size += 1UL * this->_internal_channels_size();
  for (const auto& msg : this->_impl_.channels_) {
    total_size +=
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
  }

  // map<string, string> labels = 6;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_labels_size());
  for (::PROTOBUF_NAMESPACE_ID::Map< std::string, std::string >::const_iterator
      it = this->_internal_labels().begin();
      it != this->_internal_labels().end(); ++it) {
    total_size += CreateTriggerExpr_LabelsEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
  }

  // map<string, string> annotations = 7;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_annotations_size());
  for (::PROTOBUF_NAMESPACE_ID::Map< std::string, std::string >::const_iterator
      it = this->_internal_annotations().begin();
      it != this->_internal_annotations().end(); ++it) {
    total_size += CreateTriggerExpr_AnnotationsEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
  }

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

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

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

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

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

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

  // .google.protobuf.Duration interval = 8;
  if (this->_internal_has_interval()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.interval_);
  }

  // .google.protobuf.Duration for = 10;
  if (this->_internal_has_for_()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.for__);
  }

  // .google.protobuf.Duration keep_firing_for = 12;
  if (this->_internal_has_keep_firing_for()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
        *_impl_.keep_firing_for_);
  }

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

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

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


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

  _this->_impl_.channels_.MergeFrom(from._impl_.channels_);
  _this->_impl_.labels_.MergeFrom(from._impl_.labels_);
  _this->_impl_.annotations_.MergeFrom(from._impl_.annotations_);
  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_trigger_name().empty()) {
    _this->_internal_set_trigger_name(from._internal_trigger_name());
  }
  if (!from._internal_sql().empty()) {
    _this->_internal_set_sql(from._internal_sql());
  }
  if (!from._internal_raw_interval_expr().empty()) {
    _this->_internal_set_raw_interval_expr(from._internal_raw_interval_expr());
  }
  if (!from._internal_for_raw_expr().empty()) {
    _this->_internal_set_for_raw_expr(from._internal_for_raw_expr());
  }
  if (!from._internal_keep_firing_for_raw_expr().empty()) {
    _this->_internal_set_keep_firing_for_raw_expr(from._internal_keep_firing_for_raw_expr());
  }
  if (from._internal_has_interval()) {
    _this->_internal_mutable_interval()->::PROTOBUF_NAMESPACE_ID::Duration::MergeFrom(
        from._internal_interval());
  }
  if (from._internal_has_for_()) {
    _this->_internal_mutable_for_()->::PROTOBUF_NAMESPACE_ID::Duration::MergeFrom(
        from._internal_for_());
  }
  if (from._internal_has_keep_firing_for()) {
    _this->_internal_mutable_keep_firing_for()->::PROTOBUF_NAMESPACE_ID::Duration::MergeFrom(
        from._internal_keep_firing_for());
  }
  if (from._internal_create_if_not_exists() != 0) {
    _this->_internal_set_create_if_not_exists(from._internal_create_if_not_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CreateTriggerExpr::CopyFrom(const CreateTriggerExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.CreateTriggerExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void CreateTriggerExpr::InternalSwap(CreateTriggerExpr* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.channels_.InternalSwap(&other->_impl_.channels_);
  _impl_.labels_.InternalSwap(&other->_impl_.labels_);
  _impl_.annotations_.InternalSwap(&other->_impl_.annotations_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.trigger_name_, lhs_arena,
      &other->_impl_.trigger_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.sql_, lhs_arena,
      &other->_impl_.sql_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.raw_interval_expr_, lhs_arena,
      &other->_impl_.raw_interval_expr_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.for_raw_expr_, lhs_arena,
      &other->_impl_.for_raw_expr_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.keep_firing_for_raw_expr_, lhs_arena,
      &other->_impl_.keep_firing_for_raw_expr_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::memswap<
      PROTOBUF_FIELD_OFFSET(CreateTriggerExpr, _impl_.create_if_not_exists_)
      + sizeof(CreateTriggerExpr::_impl_.create_if_not_exists_)
      - PROTOBUF_FIELD_OFFSET(CreateTriggerExpr, _impl_.interval_)>(
          reinterpret_cast<char*>(&_impl_.interval_),
          reinterpret_cast<char*>(&other->_impl_.interval_));
}

::PROTOBUF_NAMESPACE_ID::Metadata CreateTriggerExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[50]);
}

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

class NotifyChannel::_Internal {
 public:
  static const ::greptime::v1::WebhookOptions& webhook(const NotifyChannel* msg);
};

const ::greptime::v1::WebhookOptions&
NotifyChannel::_Internal::webhook(const NotifyChannel* msg) {
  return *msg->_impl_.channel_type_.webhook_;
}
void NotifyChannel::set_allocated_webhook(::greptime::v1::WebhookOptions* webhook) {
  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
  clear_channel_type();
  if (webhook) {
    ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
      ::PROTOBUF_NAMESPACE_ID::Arena::InternalGetOwningArena(webhook);
    if (message_arena != submessage_arena) {
      webhook = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
          message_arena, webhook, submessage_arena);
    }
    set_has_webhook();
    _impl_.channel_type_.webhook_ = webhook;
  }
  // @@protoc_insertion_point(field_set_allocated:greptime.v1.NotifyChannel.webhook)
}
NotifyChannel::NotifyChannel(::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:greptime.v1.NotifyChannel)
}
NotifyChannel::NotifyChannel(const NotifyChannel& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  NotifyChannel* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.name_){}
    , decltype(_impl_.channel_type_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}};

  _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());
  }
  clear_has_channel_type();
  switch (from.channel_type_case()) {
    case kWebhook: {
      _this->_internal_mutable_webhook()->::greptime::v1::WebhookOptions::MergeFrom(
          from._internal_webhook());
      break;
    }
    case CHANNEL_TYPE_NOT_SET: {
      break;
    }
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.NotifyChannel)
}

inline void NotifyChannel::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.name_){}
    , decltype(_impl_.channel_type_){}
    , /*decltype(_impl_._cached_size_)*/{}
    , /*decltype(_impl_._oneof_case_)*/{}
  };
  _impl_.name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  clear_has_channel_type();
}

NotifyChannel::~NotifyChannel() {
  // @@protoc_insertion_point(destructor:greptime.v1.NotifyChannel)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void NotifyChannel::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.name_.Destroy();
  if (has_channel_type()) {
    clear_channel_type();
  }
}

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

void NotifyChannel::clear_channel_type() {
// @@protoc_insertion_point(one_of_clear_start:greptime.v1.NotifyChannel)
  switch (channel_type_case()) {
    case kWebhook: {
      if (GetArenaForAllocation() == nullptr) {
        delete _impl_.channel_type_.webhook_;
      }
      break;
    }
    case CHANNEL_TYPE_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = CHANNEL_TYPE_NOT_SET;
}


void NotifyChannel::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.NotifyChannel)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.name_.ClearToEmpty();
  clear_channel_type();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* NotifyChannel::_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, "greptime.v1.NotifyChannel.name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.WebhookOptions webhook = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr = ctx->ParseMessage(_internal_mutable_webhook(), 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* NotifyChannel::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.NotifyChannel)
  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,
      "greptime.v1.NotifyChannel.name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_name(), target);
  }

  // .greptime.v1.WebhookOptions webhook = 2;
  if (_internal_has_webhook()) {
    target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
      InternalWriteMessage(2, _Internal::webhook(this),
        _Internal::webhook(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:greptime.v1.NotifyChannel)
  return target;
}

size_t NotifyChannel::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.NotifyChannel)
  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 name = 1;
  if (!this->_internal_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_name());
  }

  switch (channel_type_case()) {
    // .greptime.v1.WebhookOptions webhook = 2;
    case kWebhook: {
      total_size += 1 +
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
          *_impl_.channel_type_.webhook_);
      break;
    }
    case CHANNEL_TYPE_NOT_SET: {
      break;
    }
  }
  return MaybeComputeUnknownFieldsSize(total_size, &_impl_._cached_size_);
}

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


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

  if (!from._internal_name().empty()) {
    _this->_internal_set_name(from._internal_name());
  }
  switch (from.channel_type_case()) {
    case kWebhook: {
      _this->_internal_mutable_webhook()->::greptime::v1::WebhookOptions::MergeFrom(
          from._internal_webhook());
      break;
    }
    case CHANNEL_TYPE_NOT_SET: {
      break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void NotifyChannel::CopyFrom(const NotifyChannel& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.NotifyChannel)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void NotifyChannel::InternalSwap(NotifyChannel* 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_.name_, lhs_arena,
      &other->_impl_.name_, rhs_arena
  );
  swap(_impl_.channel_type_, other->_impl_.channel_type_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

::PROTOBUF_NAMESPACE_ID::Metadata NotifyChannel::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[51]);
}

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

WebhookOptions_OptsEntry_DoNotUse::WebhookOptions_OptsEntry_DoNotUse() {}
WebhookOptions_OptsEntry_DoNotUse::WebhookOptions_OptsEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena)
    : SuperType(arena) {}
void WebhookOptions_OptsEntry_DoNotUse::MergeFrom(const WebhookOptions_OptsEntry_DoNotUse& other) {
  MergeFromInternal(other);
}
::PROTOBUF_NAMESPACE_ID::Metadata WebhookOptions_OptsEntry_DoNotUse::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[52]);
}

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

class WebhookOptions::_Internal {
 public:
};

WebhookOptions::WebhookOptions(::PROTOBUF_NAMESPACE_ID::Arena* arena,
                         bool is_message_owned)
  : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
  SharedCtor(arena, is_message_owned);
  if (arena != nullptr && !is_message_owned) {
    arena->OwnCustomDestructor(this, &WebhookOptions::ArenaDtor);
  }
  // @@protoc_insertion_point(arena_constructor:greptime.v1.WebhookOptions)
}
WebhookOptions::WebhookOptions(const WebhookOptions& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  WebhookOptions* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      /*decltype(_impl_.opts_)*/{}
    , decltype(_impl_.url_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _this->_impl_.opts_.MergeFrom(from._impl_.opts_);
  _impl_.url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_url().empty()) {
    _this->_impl_.url_.Set(from._internal_url(), 
      _this->GetArenaForAllocation());
  }
  // @@protoc_insertion_point(copy_constructor:greptime.v1.WebhookOptions)
}

inline void WebhookOptions::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      /*decltype(_impl_.opts_)*/{::_pbi::ArenaInitialized(), arena}
    , decltype(_impl_.url_){}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.url_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.url_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

WebhookOptions::~WebhookOptions() {
  // @@protoc_insertion_point(destructor:greptime.v1.WebhookOptions)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    ArenaDtor(this);
    return;
  }
  SharedDtor();
}

inline void WebhookOptions::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.opts_.Destruct();
  _impl_.opts_.~MapField();
  _impl_.url_.Destroy();
}

void WebhookOptions::ArenaDtor(void* object) {
  WebhookOptions* _this = reinterpret_cast< WebhookOptions* >(object);
  _this->_impl_.opts_.Destruct();
}
void WebhookOptions::SetCachedSize(int size) const {
  _impl_._cached_size_.Set(size);
}

void WebhookOptions::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.WebhookOptions)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.opts_.Clear();
  _impl_.url_.ClearToEmpty();
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* WebhookOptions::_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 url = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_url();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.WebhookOptions.url"));
        } else
          goto handle_unusual;
        continue;
      // map<string, string> opts = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          ptr -= 1;
          do {
            ptr += 1;
            ptr = ctx->ParseMessage(&_impl_.opts_, ptr);
            CHK_(ptr);
            if (!ctx->DataAvailable(ptr)) break;
          } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(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* WebhookOptions::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.WebhookOptions)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string url = 1;
  if (!this->_internal_url().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_url().data(), static_cast<int>(this->_internal_url().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.WebhookOptions.url");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_url(), target);
  }

  // map<string, string> opts = 2;
  if (!this->_internal_opts().empty()) {
    using MapType = ::_pb::Map<std::string, std::string>;
    using WireHelper = WebhookOptions_OptsEntry_DoNotUse::Funcs;
    const auto& map_field = this->_internal_opts();
    auto check_utf8 = [](const MapType::value_type& entry) {
      (void)entry;
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.first.data(), static_cast<int>(entry.first.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.WebhookOptions.OptsEntry.key");
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
        entry.second.data(), static_cast<int>(entry.second.length()),
        ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
        "greptime.v1.WebhookOptions.OptsEntry.value");
    };

    if (stream->IsSerializationDeterministic() && map_field.size() > 1) {
      for (const auto& entry : ::_pbi::MapSorterPtr<MapType>(map_field)) {
        target = WireHelper::InternalSerialize(2, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    } else {
      for (const auto& entry : map_field) {
        target = WireHelper::InternalSerialize(2, entry.first, entry.second, target, stream);
        check_utf8(entry);
      }
    }
  }

  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:greptime.v1.WebhookOptions)
  return target;
}

size_t WebhookOptions::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.WebhookOptions)
  size_t total_size = 0;

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

  // map<string, string> opts = 2;
  total_size += 1 *
      ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_opts_size());
  for (::PROTOBUF_NAMESPACE_ID::Map< std::string, std::string >::const_iterator
      it = this->_internal_opts().begin();
      it != this->_internal_opts().end(); ++it) {
    total_size += WebhookOptions_OptsEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
  }

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

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

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


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

  _this->_impl_.opts_.MergeFrom(from._impl_.opts_);
  if (!from._internal_url().empty()) {
    _this->_internal_set_url(from._internal_url());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void WebhookOptions::CopyFrom(const WebhookOptions& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.WebhookOptions)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void WebhookOptions::InternalSwap(WebhookOptions* other) {
  using std::swap;
  auto* lhs_arena = GetArenaForAllocation();
  auto* rhs_arena = other->GetArenaForAllocation();
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  _impl_.opts_.InternalSwap(&other->_impl_.opts_);
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.url_, lhs_arena,
      &other->_impl_.url_, rhs_arena
  );
}

::PROTOBUF_NAMESPACE_ID::Metadata WebhookOptions::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[53]);
}

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

class DropTriggerExpr::_Internal {
 public:
};

DropTriggerExpr::DropTriggerExpr(::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:greptime.v1.DropTriggerExpr)
}
DropTriggerExpr::DropTriggerExpr(const DropTriggerExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  DropTriggerExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.trigger_name_){}
    , decltype(_impl_.drop_if_exists_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.trigger_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.trigger_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_trigger_name().empty()) {
    _this->_impl_.trigger_name_.Set(from._internal_trigger_name(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.drop_if_exists_ = from._impl_.drop_if_exists_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.DropTriggerExpr)
}

inline void DropTriggerExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.trigger_name_){}
    , decltype(_impl_.drop_if_exists_){false}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.trigger_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.trigger_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

DropTriggerExpr::~DropTriggerExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.DropTriggerExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void DropTriggerExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.catalog_name_.Destroy();
  _impl_.trigger_name_.Destroy();
}

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

void DropTriggerExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.DropTriggerExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.catalog_name_.ClearToEmpty();
  _impl_.trigger_name_.ClearToEmpty();
  _impl_.drop_if_exists_ = false;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* DropTriggerExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropTriggerExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string trigger_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_trigger_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.DropTriggerExpr.trigger_name"));
        } else
          goto handle_unusual;
        continue;
      // bool drop_if_exists = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          _impl_.drop_if_exists_ = ::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* DropTriggerExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.DropTriggerExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropTriggerExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string trigger_name = 2;
  if (!this->_internal_trigger_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_trigger_name().data(), static_cast<int>(this->_internal_trigger_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.DropTriggerExpr.trigger_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_trigger_name(), target);
  }

  // bool drop_if_exists = 3;
  if (this->_internal_drop_if_exists() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(3, this->_internal_drop_if_exists(), 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:greptime.v1.DropTriggerExpr)
  return target;
}

size_t DropTriggerExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.DropTriggerExpr)
  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 catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_catalog_name());
  }

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

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

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

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


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

  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_trigger_name().empty()) {
    _this->_internal_set_trigger_name(from._internal_trigger_name());
  }
  if (from._internal_drop_if_exists() != 0) {
    _this->_internal_set_drop_if_exists(from._internal_drop_if_exists());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void DropTriggerExpr::CopyFrom(const DropTriggerExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.DropTriggerExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void DropTriggerExpr::InternalSwap(DropTriggerExpr* 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_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.trigger_name_, lhs_arena,
      &other->_impl_.trigger_name_, rhs_arena
  );
  swap(_impl_.drop_if_exists_, other->_impl_.drop_if_exists_);
}

::PROTOBUF_NAMESPACE_ID::Metadata DropTriggerExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[54]);
}

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

class CommentOnExpr::_Internal {
 public:
};

CommentOnExpr::CommentOnExpr(::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:greptime.v1.CommentOnExpr)
}
CommentOnExpr::CommentOnExpr(const CommentOnExpr& from)
  : ::PROTOBUF_NAMESPACE_ID::Message() {
  CommentOnExpr* const _this = this; (void)_this;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.object_name_){}
    , decltype(_impl_.column_name_){}
    , decltype(_impl_.comment_){}
    , decltype(_impl_.object_type_){}
    , /*decltype(_impl_._cached_size_)*/{}};

  _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_catalog_name().empty()) {
    _this->_impl_.catalog_name_.Set(from._internal_catalog_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_schema_name().empty()) {
    _this->_impl_.schema_name_.Set(from._internal_schema_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.object_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.object_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_object_name().empty()) {
    _this->_impl_.object_name_.Set(from._internal_object_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_column_name().empty()) {
    _this->_impl_.column_name_.Set(from._internal_column_name(), 
      _this->GetArenaForAllocation());
  }
  _impl_.comment_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.comment_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  if (!from._internal_comment().empty()) {
    _this->_impl_.comment_.Set(from._internal_comment(), 
      _this->GetArenaForAllocation());
  }
  _this->_impl_.object_type_ = from._impl_.object_type_;
  // @@protoc_insertion_point(copy_constructor:greptime.v1.CommentOnExpr)
}

inline void CommentOnExpr::SharedCtor(
    ::_pb::Arena* arena, bool is_message_owned) {
  (void)arena;
  (void)is_message_owned;
  new (&_impl_) Impl_{
      decltype(_impl_.catalog_name_){}
    , decltype(_impl_.schema_name_){}
    , decltype(_impl_.object_name_){}
    , decltype(_impl_.column_name_){}
    , decltype(_impl_.comment_){}
    , decltype(_impl_.object_type_){0}
    , /*decltype(_impl_._cached_size_)*/{}
  };
  _impl_.catalog_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.catalog_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.schema_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.schema_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.object_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.object_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.column_name_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.column_name_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
  _impl_.comment_.InitDefault();
  #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
    _impl_.comment_.Set("", GetArenaForAllocation());
  #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
}

CommentOnExpr::~CommentOnExpr() {
  // @@protoc_insertion_point(destructor:greptime.v1.CommentOnExpr)
  if (auto *arena = _internal_metadata_.DeleteReturnArena<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>()) {
  (void)arena;
    return;
  }
  SharedDtor();
}

inline void CommentOnExpr::SharedDtor() {
  GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
  _impl_.catalog_name_.Destroy();
  _impl_.schema_name_.Destroy();
  _impl_.object_name_.Destroy();
  _impl_.column_name_.Destroy();
  _impl_.comment_.Destroy();
}

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

void CommentOnExpr::Clear() {
// @@protoc_insertion_point(message_clear_start:greptime.v1.CommentOnExpr)
  uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.catalog_name_.ClearToEmpty();
  _impl_.schema_name_.ClearToEmpty();
  _impl_.object_name_.ClearToEmpty();
  _impl_.column_name_.ClearToEmpty();
  _impl_.comment_.ClearToEmpty();
  _impl_.object_type_ = 0;
  _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
}

const char* CommentOnExpr::_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 catalog_name = 1;
      case 1:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
          auto str = _internal_mutable_catalog_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CommentOnExpr.catalog_name"));
        } else
          goto handle_unusual;
        continue;
      // string schema_name = 2;
      case 2:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
          auto str = _internal_mutable_schema_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CommentOnExpr.schema_name"));
        } else
          goto handle_unusual;
        continue;
      // .greptime.v1.CommentObjectType object_type = 3;
      case 3:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
          uint64_t val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
          CHK_(ptr);
          _internal_set_object_type(static_cast<::greptime::v1::CommentObjectType>(val));
        } else
          goto handle_unusual;
        continue;
      // string object_name = 4;
      case 4:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 34)) {
          auto str = _internal_mutable_object_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CommentOnExpr.object_name"));
        } else
          goto handle_unusual;
        continue;
      // string column_name = 5;
      case 5:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 42)) {
          auto str = _internal_mutable_column_name();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CommentOnExpr.column_name"));
        } else
          goto handle_unusual;
        continue;
      // string comment = 6;
      case 6:
        if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
          auto str = _internal_mutable_comment();
          ptr = ::_pbi::InlineGreedyStringParser(str, ptr, ctx);
          CHK_(ptr);
          CHK_(::_pbi::VerifyUTF8(str, "greptime.v1.CommentOnExpr.comment"));
        } 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* CommentOnExpr::_InternalSerialize(
    uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
  // @@protoc_insertion_point(serialize_to_array_start:greptime.v1.CommentOnExpr)
  uint32_t cached_has_bits = 0;
  (void) cached_has_bits;

  // string catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_catalog_name().data(), static_cast<int>(this->_internal_catalog_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CommentOnExpr.catalog_name");
    target = stream->WriteStringMaybeAliased(
        1, this->_internal_catalog_name(), target);
  }

  // string schema_name = 2;
  if (!this->_internal_schema_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_schema_name().data(), static_cast<int>(this->_internal_schema_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CommentOnExpr.schema_name");
    target = stream->WriteStringMaybeAliased(
        2, this->_internal_schema_name(), target);
  }

  // .greptime.v1.CommentObjectType object_type = 3;
  if (this->_internal_object_type() != 0) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteEnumToArray(
      3, this->_internal_object_type(), target);
  }

  // string object_name = 4;
  if (!this->_internal_object_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_object_name().data(), static_cast<int>(this->_internal_object_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CommentOnExpr.object_name");
    target = stream->WriteStringMaybeAliased(
        4, this->_internal_object_name(), target);
  }

  // string column_name = 5;
  if (!this->_internal_column_name().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_column_name().data(), static_cast<int>(this->_internal_column_name().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CommentOnExpr.column_name");
    target = stream->WriteStringMaybeAliased(
        5, this->_internal_column_name(), target);
  }

  // string comment = 6;
  if (!this->_internal_comment().empty()) {
    ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
      this->_internal_comment().data(), static_cast<int>(this->_internal_comment().length()),
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
      "greptime.v1.CommentOnExpr.comment");
    target = stream->WriteStringMaybeAliased(
        6, this->_internal_comment(), 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:greptime.v1.CommentOnExpr)
  return target;
}

size_t CommentOnExpr::ByteSizeLong() const {
// @@protoc_insertion_point(message_byte_size_start:greptime.v1.CommentOnExpr)
  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 catalog_name = 1;
  if (!this->_internal_catalog_name().empty()) {
    total_size += 1 +
      ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
        this->_internal_catalog_name());
  }

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

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

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

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

  // .greptime.v1.CommentObjectType object_type = 3;
  if (this->_internal_object_type() != 0) {
    total_size += 1 +
      ::_pbi::WireFormatLite::EnumSize(this->_internal_object_type());
  }

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

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


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

  if (!from._internal_catalog_name().empty()) {
    _this->_internal_set_catalog_name(from._internal_catalog_name());
  }
  if (!from._internal_schema_name().empty()) {
    _this->_internal_set_schema_name(from._internal_schema_name());
  }
  if (!from._internal_object_name().empty()) {
    _this->_internal_set_object_name(from._internal_object_name());
  }
  if (!from._internal_column_name().empty()) {
    _this->_internal_set_column_name(from._internal_column_name());
  }
  if (!from._internal_comment().empty()) {
    _this->_internal_set_comment(from._internal_comment());
  }
  if (from._internal_object_type() != 0) {
    _this->_internal_set_object_type(from._internal_object_type());
  }
  _this->_internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
}

void CommentOnExpr::CopyFrom(const CommentOnExpr& from) {
// @@protoc_insertion_point(class_specific_copy_from_start:greptime.v1.CommentOnExpr)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}

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

void CommentOnExpr::InternalSwap(CommentOnExpr* 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_.catalog_name_, lhs_arena,
      &other->_impl_.catalog_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.schema_name_, lhs_arena,
      &other->_impl_.schema_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.object_name_, lhs_arena,
      &other->_impl_.object_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.column_name_, lhs_arena,
      &other->_impl_.column_name_, rhs_arena
  );
  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
      &_impl_.comment_, lhs_arena,
      &other->_impl_.comment_, rhs_arena
  );
  swap(_impl_.object_type_, other->_impl_.object_type_);
}

::PROTOBUF_NAMESPACE_ID::Metadata CommentOnExpr::GetMetadata() const {
  return ::_pbi::AssignDescriptors(
      &descriptor_table_greptime_2fv1_2fddl_2eproto_getter, &descriptor_table_greptime_2fv1_2fddl_2eproto_once,
      file_level_metadata_greptime_2fv1_2fddl_2eproto[55]);
}

// @@protoc_insertion_point(namespace_scope)
}  // namespace v1
}  // namespace greptime
PROTOBUF_NAMESPACE_OPEN
template<> PROTOBUF_NOINLINE ::greptime::v1::DdlRequest*
Arena::CreateMaybeMessage< ::greptime::v1::DdlRequest >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DdlRequest >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateFlowExpr_FlowOptionsEntry_DoNotUse*
Arena::CreateMaybeMessage< ::greptime::v1::CreateFlowExpr_FlowOptionsEntry_DoNotUse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateFlowExpr_FlowOptionsEntry_DoNotUse >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateFlowExpr*
Arena::CreateMaybeMessage< ::greptime::v1::CreateFlowExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateFlowExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DropFlowExpr*
Arena::CreateMaybeMessage< ::greptime::v1::DropFlowExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DropFlowExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateViewExpr*
Arena::CreateMaybeMessage< ::greptime::v1::CreateViewExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateViewExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DropViewExpr*
Arena::CreateMaybeMessage< ::greptime::v1::DropViewExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DropViewExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateTableExpr_TableOptionsEntry_DoNotUse*
Arena::CreateMaybeMessage< ::greptime::v1::CreateTableExpr_TableOptionsEntry_DoNotUse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateTableExpr_TableOptionsEntry_DoNotUse >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateTableExpr*
Arena::CreateMaybeMessage< ::greptime::v1::CreateTableExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateTableExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::AlterTableExpr*
Arena::CreateMaybeMessage< ::greptime::v1::AlterTableExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::AlterTableExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DropDefault*
Arena::CreateMaybeMessage< ::greptime::v1::DropDefault >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DropDefault >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::SetIndexes*
Arena::CreateMaybeMessage< ::greptime::v1::SetIndexes >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::SetIndexes >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::UnsetIndexes*
Arena::CreateMaybeMessage< ::greptime::v1::UnsetIndexes >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::UnsetIndexes >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::SetDefault*
Arena::CreateMaybeMessage< ::greptime::v1::SetDefault >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::SetDefault >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::SetIndex*
Arena::CreateMaybeMessage< ::greptime::v1::SetIndex >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::SetIndex >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::UnsetIndex*
Arena::CreateMaybeMessage< ::greptime::v1::UnsetIndex >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::UnsetIndex >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::Repartition*
Arena::CreateMaybeMessage< ::greptime::v1::Repartition >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::Repartition >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::PartitionExprs*
Arena::CreateMaybeMessage< ::greptime::v1::PartitionExprs >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::PartitionExprs >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::UnpartitionedSource*
Arena::CreateMaybeMessage< ::greptime::v1::UnpartitionedSource >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::UnpartitionedSource >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DropTableExpr*
Arena::CreateMaybeMessage< ::greptime::v1::DropTableExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DropTableExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateDatabaseExpr_OptionsEntry_DoNotUse*
Arena::CreateMaybeMessage< ::greptime::v1::CreateDatabaseExpr_OptionsEntry_DoNotUse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateDatabaseExpr_OptionsEntry_DoNotUse >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateDatabaseExpr*
Arena::CreateMaybeMessage< ::greptime::v1::CreateDatabaseExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateDatabaseExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::TruncateTableExpr*
Arena::CreateMaybeMessage< ::greptime::v1::TruncateTableExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::TruncateTableExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DropDatabaseExpr*
Arena::CreateMaybeMessage< ::greptime::v1::DropDatabaseExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DropDatabaseExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::AddColumns*
Arena::CreateMaybeMessage< ::greptime::v1::AddColumns >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::AddColumns >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DropDefaults*
Arena::CreateMaybeMessage< ::greptime::v1::DropDefaults >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DropDefaults >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::SetDefaults*
Arena::CreateMaybeMessage< ::greptime::v1::SetDefaults >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::SetDefaults >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DropColumns*
Arena::CreateMaybeMessage< ::greptime::v1::DropColumns >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DropColumns >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::ModifyColumnTypes*
Arena::CreateMaybeMessage< ::greptime::v1::ModifyColumnTypes >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::ModifyColumnTypes >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::RenameTable*
Arena::CreateMaybeMessage< ::greptime::v1::RenameTable >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::RenameTable >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::AddColumn*
Arena::CreateMaybeMessage< ::greptime::v1::AddColumn >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::AddColumn >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::ModifyColumnType*
Arena::CreateMaybeMessage< ::greptime::v1::ModifyColumnType >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::ModifyColumnType >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::Option*
Arena::CreateMaybeMessage< ::greptime::v1::Option >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::Option >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::SetTableOptions*
Arena::CreateMaybeMessage< ::greptime::v1::SetTableOptions >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::SetTableOptions >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::UnsetTableOptions*
Arena::CreateMaybeMessage< ::greptime::v1::UnsetTableOptions >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::UnsetTableOptions >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DropColumn*
Arena::CreateMaybeMessage< ::greptime::v1::DropColumn >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DropColumn >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::TableId*
Arena::CreateMaybeMessage< ::greptime::v1::TableId >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::TableId >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::FlowId*
Arena::CreateMaybeMessage< ::greptime::v1::FlowId >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::FlowId >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::ColumnDef*
Arena::CreateMaybeMessage< ::greptime::v1::ColumnDef >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::ColumnDef >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::AddColumnLocation*
Arena::CreateMaybeMessage< ::greptime::v1::AddColumnLocation >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::AddColumnLocation >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::SetFulltext*
Arena::CreateMaybeMessage< ::greptime::v1::SetFulltext >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::SetFulltext >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::UnsetFulltext*
Arena::CreateMaybeMessage< ::greptime::v1::UnsetFulltext >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::UnsetFulltext >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::SetInverted*
Arena::CreateMaybeMessage< ::greptime::v1::SetInverted >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::SetInverted >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::UnsetInverted*
Arena::CreateMaybeMessage< ::greptime::v1::UnsetInverted >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::UnsetInverted >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::SetSkipping*
Arena::CreateMaybeMessage< ::greptime::v1::SetSkipping >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::SetSkipping >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::UnsetSkipping*
Arena::CreateMaybeMessage< ::greptime::v1::UnsetSkipping >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::UnsetSkipping >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::AlterDatabaseExpr*
Arena::CreateMaybeMessage< ::greptime::v1::AlterDatabaseExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::AlterDatabaseExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::SetDatabaseOptions*
Arena::CreateMaybeMessage< ::greptime::v1::SetDatabaseOptions >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::SetDatabaseOptions >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::UnsetDatabaseOptions*
Arena::CreateMaybeMessage< ::greptime::v1::UnsetDatabaseOptions >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::UnsetDatabaseOptions >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateTriggerExpr_LabelsEntry_DoNotUse*
Arena::CreateMaybeMessage< ::greptime::v1::CreateTriggerExpr_LabelsEntry_DoNotUse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateTriggerExpr_LabelsEntry_DoNotUse >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateTriggerExpr_AnnotationsEntry_DoNotUse*
Arena::CreateMaybeMessage< ::greptime::v1::CreateTriggerExpr_AnnotationsEntry_DoNotUse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateTriggerExpr_AnnotationsEntry_DoNotUse >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CreateTriggerExpr*
Arena::CreateMaybeMessage< ::greptime::v1::CreateTriggerExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CreateTriggerExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::NotifyChannel*
Arena::CreateMaybeMessage< ::greptime::v1::NotifyChannel >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::NotifyChannel >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::WebhookOptions_OptsEntry_DoNotUse*
Arena::CreateMaybeMessage< ::greptime::v1::WebhookOptions_OptsEntry_DoNotUse >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::WebhookOptions_OptsEntry_DoNotUse >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::WebhookOptions*
Arena::CreateMaybeMessage< ::greptime::v1::WebhookOptions >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::WebhookOptions >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::DropTriggerExpr*
Arena::CreateMaybeMessage< ::greptime::v1::DropTriggerExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::DropTriggerExpr >(arena);
}
template<> PROTOBUF_NOINLINE ::greptime::v1::CommentOnExpr*
Arena::CreateMaybeMessage< ::greptime::v1::CommentOnExpr >(Arena* arena) {
  return Arena::CreateMessageInternal< ::greptime::v1::CommentOnExpr >(arena);
}
PROTOBUF_NAMESPACE_CLOSE

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