// 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_.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 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 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_._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 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_.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_._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_;
}  // namespace v1
}  // namespace greptime
static ::_pb::Metadata file_level_metadata_greptime_2fv1_2fddl_2eproto[39];
static const ::_pb::EnumDescriptor* file_level_enum_descriptors_greptime_2fv1_2fddl_2eproto[4];
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,
  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_.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,
  PROTOBUF_FIELD_OFFSET(::greptime::v1::AlterTableExpr, _impl_.kind_),
  ~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::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_),
  ~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::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_),
  ~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_),
  ~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_),
};
static const ::_pbi::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
  { 0, -1, -1, sizeof(::greptime::v1::DdlRequest)},
  { 17, 25, -1, sizeof(::greptime::v1::CreateFlowExpr_FlowOptionsEntry_DoNotUse)},
  { 27, -1, -1, sizeof(::greptime::v1::CreateFlowExpr)},
  { 43, -1, -1, sizeof(::greptime::v1::DropFlowExpr)},
  { 53, -1, -1, sizeof(::greptime::v1::CreateViewExpr)},
  { 69, -1, -1, sizeof(::greptime::v1::DropViewExpr)},
  { 80, 88, -1, sizeof(::greptime::v1::CreateTableExpr_TableOptionsEntry_DoNotUse)},
  { 90, -1, -1, sizeof(::greptime::v1::CreateTableExpr)},
  { 107, -1, -1, sizeof(::greptime::v1::AlterTableExpr)},
  { 125, -1, -1, sizeof(::greptime::v1::SetIndex)},
  { 135, -1, -1, sizeof(::greptime::v1::UnsetIndex)},
  { 145, -1, -1, sizeof(::greptime::v1::DropTableExpr)},
  { 156, 164, -1, sizeof(::greptime::v1::CreateDatabaseExpr_OptionsEntry_DoNotUse)},
  { 166, -1, -1, sizeof(::greptime::v1::CreateDatabaseExpr)},
  { 176, -1, -1, sizeof(::greptime::v1::TruncateTableExpr)},
  { 186, -1, -1, sizeof(::greptime::v1::DropDatabaseExpr)},
  { 195, -1, -1, sizeof(::greptime::v1::AddColumns)},
  { 202, -1, -1, sizeof(::greptime::v1::DropColumns)},
  { 209, -1, -1, sizeof(::greptime::v1::ModifyColumnTypes)},
  { 216, -1, -1, sizeof(::greptime::v1::RenameTable)},
  { 223, -1, -1, sizeof(::greptime::v1::AddColumn)},
  { 232, -1, -1, sizeof(::greptime::v1::ModifyColumnType)},
  { 241, -1, -1, sizeof(::greptime::v1::Option)},
  { 249, -1, -1, sizeof(::greptime::v1::SetTableOptions)},
  { 256, -1, -1, sizeof(::greptime::v1::UnsetTableOptions)},
  { 263, -1, -1, sizeof(::greptime::v1::DropColumn)},
  { 270, -1, -1, sizeof(::greptime::v1::TableId)},
  { 277, -1, -1, sizeof(::greptime::v1::FlowId)},
  { 284, -1, -1, sizeof(::greptime::v1::ColumnDef)},
  { 298, -1, -1, sizeof(::greptime::v1::AddColumnLocation)},
  { 306, -1, -1, sizeof(::greptime::v1::SetFulltext)},
  { 317, -1, -1, sizeof(::greptime::v1::UnsetFulltext)},
  { 324, -1, -1, sizeof(::greptime::v1::SetInverted)},
  { 331, -1, -1, sizeof(::greptime::v1::UnsetInverted)},
  { 338, -1, -1, sizeof(::greptime::v1::SetSkipping)},
  { 348, -1, -1, sizeof(::greptime::v1::UnsetSkipping)},
  { 355, -1, -1, sizeof(::greptime::v1::AlterDatabaseExpr)},
  { 366, -1, -1, sizeof(::greptime::v1::SetDatabaseOptions)},
  { 373, -1, -1, sizeof(::greptime::v1::UnsetDatabaseOptions)},
};

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::_SetIndex_default_instance_._instance,
  &::greptime::v1::_UnsetIndex_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::_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,
};

const char descriptor_table_protodef_greptime_2fv1_2fddl_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
  "\n\025greptime/v1/ddl.proto\022\013greptime.v1\032\030gr"
  "eptime/v1/common.proto\"\250\004\n\nDdlRequest\022:\n"
  "\017create_database\030\001 \001(\0132\037.greptime.v1.Cre"
  "ateDatabaseExprH\000\0224\n\014create_table\030\002 \001(\0132"
  "\034.greptime.v1.CreateTableExprH\000\0222\n\013alter"
  "_table\030\003 \001(\0132\033.greptime.v1.AlterTableExp"
  "rH\000\0220\n\ndrop_table\030\004 \001(\0132\032.greptime.v1.Dr"
  "opTableExprH\000\0228\n\016truncate_table\030\007 \001(\0132\036."
  "greptime.v1.TruncateTableExprH\000\0222\n\013creat"
  "e_flow\030\010 \001(\0132\033.greptime.v1.CreateFlowExp"
  "rH\000\022.\n\tdrop_flow\030\t \001(\0132\031.greptime.v1.Dro"
  "pFlowExprH\000\0222\n\013create_view\030\n \001(\0132\033.grept"
  "ime.v1.CreateViewExprH\000\022.\n\tdrop_view\030\013 \001"
  "(\0132\031.greptime.v1.DropViewExprH\000\0228\n\016alter"
  "_database\030\014 \001(\0132\036.greptime.v1.AlterDatab"
  "aseExprH\000B\006\n\004expr\"\226\003\n\016CreateFlowExpr\022\024\n\014"
  "catalog_name\030\001 \001(\t\022\021\n\tflow_name\030\002 \001(\t\0222\n"
  "\022source_table_names\030\003 \003(\0132\026.greptime.v1."
  "TableName\022/\n\017sink_table_name\030\004 \001(\0132\026.gre"
  "ptime.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_a"
  "fter\030\007 \001(\0132\030.greptime.v1.ExpireAfter\022\017\n\007"
  "comment\030\010 \001(\t\022\013\n\003sql\030\t \001(\t\022B\n\014flow_optio"
  "ns\030\n \003(\0132,.greptime.v1.CreateFlowExpr.Fl"
  "owOptionsEntry\0322\n\020FlowOptionsEntry\022\013\n\003ke"
  "y\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"u\n\014DropFlowEx"
  "pr\022\024\n\014catalog_name\030\001 \001(\t\022\021\n\tflow_name\030\002 "
  "\001(\t\022$\n\007flow_id\030\003 \001(\0132\023.greptime.v1.FlowI"
  "d\022\026\n\016drop_if_exists\030\005 \001(\010\"\376\001\n\016CreateView"
  "Expr\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013schema_nam"
  "e\030\002 \001(\t\022\021\n\tview_name\030\003 \001(\t\022\024\n\014logical_pl"
  "an\030\004 \001(\014\022\034\n\024create_if_not_exists\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\007columns\030\010 \003(\t"
  "\022\024\n\014plan_columns\030\t \003(\t\022\022\n\ndefinition\030\n \001"
  "(\t\"\213\001\n\014DropViewExpr\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%\n\007view_id\030\004 \001(\0132\024.greptime.v1.TableId"
  "\022\026\n\016drop_if_exists\030\005 \001(\010\"\207\003\n\017CreateTable"
  "Expr\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013schema_nam"
  "e\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.greptime.v1.Col"
  "umnDef\022\022\n\ntime_index\030\006 \001(\t\022\024\n\014primary_ke"
  "ys\030\007 \003(\t\022\034\n\024create_if_not_exists\030\010 \001(\010\022E"
  "\n\rtable_options\030\t \003(\0132..greptime.v1.Crea"
  "teTableExpr.TableOptionsEntry\022&\n\010table_i"
  "d\030\n \001(\0132\024.greptime.v1.TableId\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\"\200\004\n\016AlterTableExpr\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\013add_columns\030\004 \001("
  "\0132\027.greptime.v1.AddColumnsH\000\0220\n\014drop_col"
  "umns\030\005 \001(\0132\030.greptime.v1.DropColumnsH\000\0220"
  "\n\014rename_table\030\006 \001(\0132\030.greptime.v1.Renam"
  "eTableH\000\022=\n\023modify_column_types\030\007 \001(\0132\036."
  "greptime.v1.ModifyColumnTypesH\000\0229\n\021set_t"
  "able_options\030\010 \001(\0132\034.greptime.v1.SetTabl"
  "eOptionsH\000\022=\n\023unset_table_options\030\013 \001(\0132"
  "\036.greptime.v1.UnsetTableOptionsH\000\022*\n\tset"
  "_index\030\014 \001(\0132\025.greptime.v1.SetIndexH\000\022.\n"
  "\013unset_index\030\r \001(\0132\027.greptime.v1.UnsetIn"
  "dexH\000B\006\n\004kind\"\237\001\n\010SetIndex\022,\n\010fulltext\030\001"
  " \001(\0132\030.greptime.v1.SetFulltextH\000\022,\n\010inve"
  "rted\030\002 \001(\0132\030.greptime.v1.SetInvertedH\000\022,"
  "\n\010skipping\030\003 \001(\0132\030.greptime.v1.SetSkippi"
  "ngH\000B\t\n\007options\"\247\001\n\nUnsetIndex\022.\n\010fullte"
  "xt\030\001 \001(\0132\032.greptime.v1.UnsetFulltextH\000\022."
  "\n\010inverted\030\002 \001(\0132\032.greptime.v1.UnsetInve"
  "rtedH\000\022.\n\010skipping\030\003 \001(\0132\032.greptime.v1.U"
  "nsetSkippingH\000B\t\n\007options\"\216\001\n\rDropTableE"
  "xpr\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_ex"
  "ists\030\005 \001(\010\"\314\001\n\022CreateDatabaseExpr\022\024\n\014cat"
  "alog_name\030\001 \001(\t\022\023\n\013schema_name\030\002 \001(\t\022\034\n\024"
  "create_if_not_exists\030\003 \001(\010\022=\n\007options\030\004 "
  "\003(\0132,.greptime.v1.CreateDatabaseExpr.Opt"
  "ionsEntry\032.\n\014OptionsEntry\022\013\n\003key\030\001 \001(\t\022\r"
  "\n\005value\030\002 \001(\t:\0028\001\"z\n\021TruncateTableExpr\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\"U\n\020DropDatabaseExp"
  "r\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013schema_name\030\002"
  " \001(\t\022\026\n\016drop_if_exists\030\003 \001(\010\"9\n\nAddColum"
  "ns\022+\n\013add_columns\030\001 \003(\0132\026.greptime.v1.Ad"
  "dColumn\"<\n\013DropColumns\022-\n\014drop_columns\030\001"
  " \003(\0132\027.greptime.v1.DropColumn\"O\n\021ModifyC"
  "olumnTypes\022:\n\023modify_column_types\030\001 \003(\0132"
  "\035.greptime.v1.ModifyColumnType\"%\n\013Rename"
  "Table\022\026\n\016new_table_name\030\001 \001(\t\"\204\001\n\tAddCol"
  "umn\022*\n\ncolumn_def\030\001 \001(\0132\026.greptime.v1.Co"
  "lumnDef\0220\n\010location\030\003 \001(\0132\036.greptime.v1."
  "AddColumnLocation\022\031\n\021add_if_not_exists\030\004"
  " \001(\010\"\236\001\n\020ModifyColumnType\022\023\n\013column_name"
  "\030\001 \001(\t\0220\n\013target_type\030\002 \001(\0162\033.greptime.v"
  "1.ColumnDataType\022C\n\025target_type_extensio"
  "n\030\003 \001(\0132$.greptime.v1.ColumnDataTypeExte"
  "nsion\"$\n\006Option\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 "
  "\001(\t\"=\n\017SetTableOptions\022*\n\rtable_options\030"
  "\001 \003(\0132\023.greptime.v1.Option\"!\n\021UnsetTable"
  "Options\022\014\n\004keys\030\001 \003(\t\"\032\n\nDropColumn\022\014\n\004n"
  "ame\030\001 \001(\t\"\025\n\007TableId\022\n\n\002id\030\001 \001(\r\"\024\n\006Flow"
  "Id\022\n\n\002id\030\001 \001(\r\"\254\002\n\tColumnDef\022\014\n\004name\030\001 \001"
  "(\t\022.\n\tdata_type\030\002 \001(\0162\033.greptime.v1.Colu"
  "mnDataType\022\023\n\013is_nullable\030\003 \001(\010\022\032\n\022defau"
  "lt_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\022datatype_extension\030\007 \001(\0132$.gre"
  "ptime.v1.ColumnDataTypeExtension\022+\n\007opti"
  "ons\030\010 \001(\0132\032.greptime.v1.ColumnOptions\"\230\001"
  "\n\021AddColumnLocation\022B\n\rlocation_type\030\001 \001"
  "(\0162+.greptime.v1.AddColumnLocation.Locat"
  "ionType\022\031\n\021after_column_name\030\002 \001(\t\"$\n\014Lo"
  "cationType\022\t\n\005FIRST\020\000\022\t\n\005AFTER\020\001\"\242\001\n\013Set"
  "Fulltext\022\023\n\013column_name\030\001 \001(\t\022\016\n\006enable\030"
  "\002 \001(\010\022\'\n\010analyzer\030\003 \001(\0162\025.greptime.v1.An"
  "alyzer\022\026\n\016case_sensitive\030\004 \001(\010\022-\n\007backen"
  "d\030\005 \001(\0162\034.greptime.v1.FulltextBackend\"$\n"
  "\rUnsetFulltext\022\023\n\013column_name\030\001 \001(\t\"\"\n\013S"
  "etInverted\022\023\n\013column_name\030\001 \001(\t\"$\n\rUnset"
  "Inverted\022\023\n\013column_name\030\001 \001(\t\"\204\001\n\013SetSki"
  "pping\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_inde"
  "x_type\030\004 \001(\0162\036.greptime.v1.SkippingIndex"
  "Type\"$\n\rUnsetSkipping\022\023\n\013column_name\030\001 \001"
  "(\t\"\314\001\n\021AlterDatabaseExpr\022\024\n\014catalog_name"
  "\030\001 \001(\t\022\023\n\013schema_name\030\002 \001(\t\022\?\n\024set_datab"
  "ase_options\030\003 \001(\0132\037.greptime.v1.SetDatab"
  "aseOptionsH\000\022C\n\026unset_database_options\030\004"
  " \001(\0132!.greptime.v1.UnsetDatabaseOptionsH"
  "\000B\006\n\004kind\"G\n\022SetDatabaseOptions\0221\n\024set_d"
  "atabase_options\030\001 \003(\0132\023.greptime.v1.Opti"
  "on\"$\n\024UnsetDatabaseOptions\022\014\n\004keys\030\001 \003(\t"
  "*$\n\010Analyzer\022\013\n\007ENGLISH\020\000\022\013\n\007CHINESE\020\001*)"
  "\n\017FulltextBackend\022\013\n\007TANTIVY\020\000\022\t\n\005BLOOM\020"
  "\001*%\n\021SkippingIndexType\022\020\n\014BLOOM_FILTER\020\000"
  "BL\n\016io.greptime.v1B\003DdlZ5github.com/Grep"
  "timeTeam/greptime-proto/go/greptime/v1b\006"
  "proto3"
  ;
static const ::_pbi::DescriptorTable* const descriptor_table_greptime_2fv1_2fddl_2eproto_deps[1] = {
  &::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, 5526, 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, 1, 39,
    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;
  }
}


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

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);
};

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_;
}
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)
}
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 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 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;
      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);
  }

  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;
    }
    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 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);
};

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_;
}
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;
}
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_.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_);
  }
  ::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_.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_;
}

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;
  ::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;
      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);
      }
    }
  }

  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_);
  }

  // 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_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);
};

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_;
}
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)
}
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 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 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;
      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);
  }

  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;
    }
    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 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 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[9]);
}

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

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[10]);
}

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

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[11]);
}

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

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[12]);
}

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

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[13]);
}

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

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

const ::greptime::v1::TableId&
TruncateTableExpr::_Internal::table_id(const TruncateTableExpr* msg) {
  return *msg->_impl_.table_id_;
}
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_._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_);
  }
  // @@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_._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_;
}

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;
  _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;
      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);
  }

  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_);
  }

  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());
  }
  _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
  );
  swap(_impl_.table_id_, 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[14]);
}

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

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[15]);
}

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

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[16]);
}

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

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[17]);
}

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

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[18]);
}

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

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[19]);
}

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

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[20]);
}

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

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[21]);
}

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

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[22]);
}

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

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[23]);
}

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

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[24]);
}

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

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[25]);
}

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

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[26]);
}

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

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[27]);
}

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

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[28]);
}

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

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[29]);
}

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

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_.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_.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;
      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);
  }

  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;
  }

  // .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_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[30]);
}

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

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[31]);
}

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

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[32]);
}

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

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[33]);
}

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

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_._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_.skipping_index_type_) -
    reinterpret_cast<char*>(&_impl_.granularity_)) + sizeof(_impl_.skipping_index_type_));
  // @@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_._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_.skipping_index_type_) -
      reinterpret_cast<char*>(&_impl_.granularity_)) + sizeof(_impl_.skipping_index_type_));
  _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;
      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);
  }

  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());
  }

  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());
  }
  _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_.skipping_index_type_)
      + sizeof(SetSkipping::_impl_.skipping_index_type_)
      - 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[34]);
}

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

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[35]);
}

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

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[36]);
}

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

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[37]);
}

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

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[38]);
}

// @@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::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::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::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);
}
PROTOBUF_NAMESPACE_CLOSE

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