DRILL-7188: Revert DRILL-6642: Update protocol-buffers version

1. Updated protobuf to version 3.6.1
2. Added protobuf to the root pom dependency management
3. Added classes BoundedByteString and LiteralByteString for compatibility with HBase
4. Added ProtobufPatcher to provide compatibility with MapR-DB and HBase
diff --git a/.travis.yml b/.travis.yml
index b8db94d..b953f6c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -25,26 +25,15 @@
 cache:
   directories:
   - "$HOME/.m2"
-  - "$HOME/protobuf"
 before_install:
   - git fetch --unshallow
   # Install libraries required for protobuf generation
   - |
     if [ $PHASE = "build_checkstyle_protobuf" ]; then \
-      sudo apt-get install -y libboost-all-dev libzookeeper-mt-dev libsasl2-dev cmake libcppunit-dev checkinstall && \
-      pushd .. && \
-      if [ -f $HOME/protobuf/protobuf_3.6.1* ]; then \
-        sudo dpkg -i $HOME/protobuf/protobuf_3.6.1*; \
-      else \
-        wget https://github.com/protocolbuffers/protobuf/releases/download/v3.6.1/protobuf-java-3.6.1.zip && \
-        unzip protobuf-java-3.6.1.zip && pushd protobuf-3.6.1 && \
-        ./configure && sudo make && sudo checkinstall -y && \
-        if [ ! -d $HOME/protobuf ]; then \
-          mkdir -p $HOME/protobuf; \
-        fi && \
-        mv protobuf_3.6.1* $HOME/protobuf/ && popd; \
-      fi && \
-      sudo ldconfig && popd; \
+      sudo apt-get install -y libboost-all-dev libzookeeper-mt-dev libsasl2-dev cmake libcppunit-dev && \
+      pushd .. && wget https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz && \
+      tar -xzvf protobuf-2.5.0.tar.gz && \
+      pushd protobuf-2.5.0 && ./configure --prefix=/usr && make && sudo make install && popd && popd; \
     fi
 install:
   # For tests phase runs unit tests
diff --git a/contrib/native/client/readme.linux b/contrib/native/client/readme.linux
index dab0023..92fe519 100644
--- a/contrib/native/client/readme.linux
+++ b/contrib/native/client/readme.linux
@@ -27,15 +27,15 @@
 1) CMAKE 3.0
     $> yum install cmake3
 
-2.1) Download protobuf 3.6 from :
-    https://github.com/protocolbuffers/protobuf/releases/download/v3.6.1/protobuf-java-3.6.1.zip
+2.1) Download protobuf 2.5 from :
+    http://rpm.pbone.net/index.php3/stat/4/idpl/23552166/dir/centos_6/com/protobuf-2.5.0-16.1.x86_64.rpm.html
+    http://rpm.pbone.net/index.php3/stat/4/idpl/23552167/dir/centos_6/com/protobuf-compiler-2.5.0-16.1.x86_64.rpm.html
+    http://rpm.pbone.net/index.php3/stat/4/idpl/23552169/dir/centos_6/com/protobuf-devel-2.5.0-16.1.x86_64.rpm.html
 
 2.2) Install Protobufs
-    $> unzip protobuf-java-3.6.1.zip
-    $> cd protobuf-3.6.1
-    $> ./configure
-    $> sudo make
-    $> sudo make install
+    $> sudo yum install protobuf
+    $> sudo yum install protobuf-compiler
+    $> sudo yum install protobuf-devel
 
 3)
 3.1) Install Zookeeper prerequisites
diff --git a/contrib/native/client/readme.macos b/contrib/native/client/readme.macos
index ccee806..f50c30a 100644
--- a/contrib/native/client/readme.macos
+++ b/contrib/native/client/readme.macos
@@ -36,7 +36,7 @@
 2.0) Install cppunit 
   $> brew install cppunit 
 
-2.1) Install protobuf 3.6.1 (or higher)
+2.1) Install protobuf 2.5.0 (or higher)
   $> brew install protobuf
 
 2.2) Install zookeeper
diff --git a/contrib/native/client/readme.win.txt b/contrib/native/client/readme.win.txt
index c4ed704..bd84b91 100644
--- a/contrib/native/client/readme.win.txt
+++ b/contrib/native/client/readme.win.txt
@@ -118,8 +118,8 @@
         iii) If you do not have the 64 bit assembler installed, boost-context does not
         build. It is safe to ignore it as boost-context is not needed for Drill
 
-2.2 Protobuf (3.6.1)
-    Get protobuf from here: https://github.com/protocolbuffers/protobuf/releases/download/v3.6.1/protoc-3.6.1-win32.zip
+2.2 Protobuf (2.5.0)
+    Get protobuf from here: https://protobuf.googlecode.com/files/protobuf-2.5.0.zip
 
     a) Protobuf builds static libraries
     b) In Visual Studio, open <PROTOBUF_HOME>/vsprojects/protobuf.sln. The IDE may
diff --git a/contrib/native/client/src/include/drill/protobuf/Types.pb.h b/contrib/native/client/src/include/drill/protobuf/Types.pb.h
index ed99a61..b1dec7b 100644
--- a/contrib/native/client/src/include/drill/protobuf/Types.pb.h
+++ b/contrib/native/client/src/include/drill/protobuf/Types.pb.h
@@ -1,62 +1,40 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: Types.proto
 
-#ifndef PROTOBUF_INCLUDED_Types_2eproto
-#define PROTOBUF_INCLUDED_Types_2eproto
+#ifndef PROTOBUF_Types_2eproto__INCLUDED
+#define PROTOBUF_Types_2eproto__INCLUDED
 
 #include <string>
 
 #include <google/protobuf/stubs/common.h>
 
-#if GOOGLE_PROTOBUF_VERSION < 3006001
+#if GOOGLE_PROTOBUF_VERSION < 2005000
 #error This file was generated by a newer version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please update
 #error your headers.
 #endif
-#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
+#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
 #error This file was generated by an older version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please
 #error regenerate this file with a newer version of protoc.
 #endif
 
-#include <google/protobuf/io/coded_stream.h>
-#include <google/protobuf/arena.h>
-#include <google/protobuf/arenastring.h>
-#include <google/protobuf/generated_message_table_driven.h>
 #include <google/protobuf/generated_message_util.h>
-#include <google/protobuf/inlined_string_field.h>
-#include <google/protobuf/metadata.h>
 #include <google/protobuf/message.h>
-#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
-#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/repeated_field.h>
+#include <google/protobuf/extension_set.h>
 #include <google/protobuf/generated_enum_reflection.h>
 #include <google/protobuf/unknown_field_set.h>
 // @@protoc_insertion_point(includes)
-#define PROTOBUF_INTERNAL_EXPORT_protobuf_Types_2eproto 
 
-namespace protobuf_Types_2eproto {
-// Internal implementation detail -- do not use these members.
-struct TableStruct {
-  static const ::google::protobuf::internal::ParseTableField entries[];
-  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
-  static const ::google::protobuf::internal::ParseTable schema[1];
-  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
-  static const ::google::protobuf::internal::SerializationTable serialization_table[];
-  static const ::google::protobuf::uint32 offsets[];
-};
-void AddDescriptors();
-}  // namespace protobuf_Types_2eproto
 namespace common {
+
+// Internal implementation detail -- do not call these.
+void  protobuf_AddDesc_Types_2eproto();
+void protobuf_AssignDesc_Types_2eproto();
+void protobuf_ShutdownFile_Types_2eproto();
+
 class MajorType;
-class MajorTypeDefaultTypeInternal;
-extern MajorTypeDefaultTypeInternal _MajorType_default_instance_;
-}  // namespace common
-namespace google {
-namespace protobuf {
-template<> ::common::MajorType* Arena::CreateMaybeMessage<::common::MajorType>(Arena*);
-}  // namespace protobuf
-}  // namespace google
-namespace common {
 
 enum MinorType {
   LATE = 0,
@@ -136,7 +114,7 @@
 }
 // ===================================================================
 
-class MajorType : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:common.MajorType) */ {
+class MajorType : public ::google::protobuf::Message {
  public:
   MajorType();
   virtual ~MajorType();
@@ -147,177 +125,141 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  MajorType(MajorType&& from) noexcept
-    : MajorType() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline MajorType& operator=(MajorType&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const MajorType& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const MajorType* internal_default_instance() {
-    return reinterpret_cast<const MajorType*>(
-               &_MajorType_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    0;
-
   void Swap(MajorType* other);
-  friend void swap(MajorType& a, MajorType& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline MajorType* New() const final {
-    return CreateMaybeMessage<MajorType>(NULL);
-  }
-
-  MajorType* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<MajorType>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  MajorType* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const MajorType& from);
   void MergeFrom(const MajorType& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(MajorType* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .common.MinorType sub_type = 7;
-  int sub_type_size() const;
-  void clear_sub_type();
-  static const int kSubTypeFieldNumber = 7;
-  ::common::MinorType sub_type(int index) const;
-  void set_sub_type(int index, ::common::MinorType value);
-  void add_sub_type(::common::MinorType value);
-  const ::google::protobuf::RepeatedField<int>& sub_type() const;
-  ::google::protobuf::RepeatedField<int>* mutable_sub_type();
-
   // optional .common.MinorType minor_type = 1;
-  bool has_minor_type() const;
-  void clear_minor_type();
+  inline bool has_minor_type() const;
+  inline void clear_minor_type();
   static const int kMinorTypeFieldNumber = 1;
-  ::common::MinorType minor_type() const;
-  void set_minor_type(::common::MinorType value);
+  inline ::common::MinorType minor_type() const;
+  inline void set_minor_type(::common::MinorType value);
 
   // optional .common.DataMode mode = 2;
-  bool has_mode() const;
-  void clear_mode();
+  inline bool has_mode() const;
+  inline void clear_mode();
   static const int kModeFieldNumber = 2;
-  ::common::DataMode mode() const;
-  void set_mode(::common::DataMode value);
+  inline ::common::DataMode mode() const;
+  inline void set_mode(::common::DataMode value);
 
   // optional int32 width = 3;
-  bool has_width() const;
-  void clear_width();
+  inline bool has_width() const;
+  inline void clear_width();
   static const int kWidthFieldNumber = 3;
-  ::google::protobuf::int32 width() const;
-  void set_width(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 width() const;
+  inline void set_width(::google::protobuf::int32 value);
 
   // optional int32 precision = 4;
-  bool has_precision() const;
-  void clear_precision();
+  inline bool has_precision() const;
+  inline void clear_precision();
   static const int kPrecisionFieldNumber = 4;
-  ::google::protobuf::int32 precision() const;
-  void set_precision(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 precision() const;
+  inline void set_precision(::google::protobuf::int32 value);
 
   // optional int32 scale = 5;
-  bool has_scale() const;
-  void clear_scale();
+  inline bool has_scale() const;
+  inline void clear_scale();
   static const int kScaleFieldNumber = 5;
-  ::google::protobuf::int32 scale() const;
-  void set_scale(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 scale() const;
+  inline void set_scale(::google::protobuf::int32 value);
 
   // optional int32 timeZone = 6;
-  bool has_timezone() const;
-  void clear_timezone();
+  inline bool has_timezone() const;
+  inline void clear_timezone();
   static const int kTimeZoneFieldNumber = 6;
-  ::google::protobuf::int32 timezone() const;
-  void set_timezone(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 timezone() const;
+  inline void set_timezone(::google::protobuf::int32 value);
+
+  // repeated .common.MinorType sub_type = 7;
+  inline int sub_type_size() const;
+  inline void clear_sub_type();
+  static const int kSubTypeFieldNumber = 7;
+  inline ::common::MinorType sub_type(int index) const;
+  inline void set_sub_type(int index, ::common::MinorType value);
+  inline void add_sub_type(::common::MinorType value);
+  inline const ::google::protobuf::RepeatedField<int>& sub_type() const;
+  inline ::google::protobuf::RepeatedField<int>* mutable_sub_type();
 
   // @@protoc_insertion_point(class_scope:common.MajorType)
  private:
-  void set_has_minor_type();
-  void clear_has_minor_type();
-  void set_has_mode();
-  void clear_has_mode();
-  void set_has_width();
-  void clear_has_width();
-  void set_has_precision();
-  void clear_has_precision();
-  void set_has_scale();
-  void clear_has_scale();
-  void set_has_timezone();
-  void clear_has_timezone();
+  inline void set_has_minor_type();
+  inline void clear_has_minor_type();
+  inline void set_has_mode();
+  inline void clear_has_mode();
+  inline void set_has_width();
+  inline void clear_has_width();
+  inline void set_has_precision();
+  inline void clear_has_precision();
+  inline void set_has_scale();
+  inline void clear_has_scale();
+  inline void set_has_timezone();
+  inline void clear_has_timezone();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedField<int> sub_type_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   int minor_type_;
   int mode_;
   ::google::protobuf::int32 width_;
   ::google::protobuf::int32 precision_;
   ::google::protobuf::int32 scale_;
   ::google::protobuf::int32 timezone_;
-  friend struct ::protobuf_Types_2eproto::TableStruct;
+  ::google::protobuf::RepeatedField<int> sub_type_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(7 + 31) / 32];
+
+  friend void  protobuf_AddDesc_Types_2eproto();
+  friend void protobuf_AssignDesc_Types_2eproto();
+  friend void protobuf_ShutdownFile_Types_2eproto();
+
+  void InitAsDefaultInstance();
+  static MajorType* default_instance_;
 };
 // ===================================================================
 
 
 // ===================================================================
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic push
-  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
-#endif  // __GNUC__
 // MajorType
 
 // optional .common.MinorType minor_type = 1;
@@ -335,14 +277,12 @@
   clear_has_minor_type();
 }
 inline ::common::MinorType MajorType::minor_type() const {
-  // @@protoc_insertion_point(field_get:common.MajorType.minor_type)
   return static_cast< ::common::MinorType >(minor_type_);
 }
 inline void MajorType::set_minor_type(::common::MinorType value) {
   assert(::common::MinorType_IsValid(value));
   set_has_minor_type();
   minor_type_ = value;
-  // @@protoc_insertion_point(field_set:common.MajorType.minor_type)
 }
 
 // optional .common.DataMode mode = 2;
@@ -360,14 +300,12 @@
   clear_has_mode();
 }
 inline ::common::DataMode MajorType::mode() const {
-  // @@protoc_insertion_point(field_get:common.MajorType.mode)
   return static_cast< ::common::DataMode >(mode_);
 }
 inline void MajorType::set_mode(::common::DataMode value) {
   assert(::common::DataMode_IsValid(value));
   set_has_mode();
   mode_ = value;
-  // @@protoc_insertion_point(field_set:common.MajorType.mode)
 }
 
 // optional int32 width = 3;
@@ -385,13 +323,11 @@
   clear_has_width();
 }
 inline ::google::protobuf::int32 MajorType::width() const {
-  // @@protoc_insertion_point(field_get:common.MajorType.width)
   return width_;
 }
 inline void MajorType::set_width(::google::protobuf::int32 value) {
   set_has_width();
   width_ = value;
-  // @@protoc_insertion_point(field_set:common.MajorType.width)
 }
 
 // optional int32 precision = 4;
@@ -409,13 +345,11 @@
   clear_has_precision();
 }
 inline ::google::protobuf::int32 MajorType::precision() const {
-  // @@protoc_insertion_point(field_get:common.MajorType.precision)
   return precision_;
 }
 inline void MajorType::set_precision(::google::protobuf::int32 value) {
   set_has_precision();
   precision_ = value;
-  // @@protoc_insertion_point(field_set:common.MajorType.precision)
 }
 
 // optional int32 scale = 5;
@@ -433,13 +367,11 @@
   clear_has_scale();
 }
 inline ::google::protobuf::int32 MajorType::scale() const {
-  // @@protoc_insertion_point(field_get:common.MajorType.scale)
   return scale_;
 }
 inline void MajorType::set_scale(::google::protobuf::int32 value) {
   set_has_scale();
   scale_ = value;
-  // @@protoc_insertion_point(field_set:common.MajorType.scale)
 }
 
 // optional int32 timeZone = 6;
@@ -457,13 +389,11 @@
   clear_has_timezone();
 }
 inline ::google::protobuf::int32 MajorType::timezone() const {
-  // @@protoc_insertion_point(field_get:common.MajorType.timeZone)
   return timezone_;
 }
 inline void MajorType::set_timezone(::google::protobuf::int32 value) {
   set_has_timezone();
   timezone_ = value;
-  // @@protoc_insertion_point(field_set:common.MajorType.timeZone)
 }
 
 // repeated .common.MinorType sub_type = 7;
@@ -474,55 +404,47 @@
   sub_type_.Clear();
 }
 inline ::common::MinorType MajorType::sub_type(int index) const {
-  // @@protoc_insertion_point(field_get:common.MajorType.sub_type)
   return static_cast< ::common::MinorType >(sub_type_.Get(index));
 }
 inline void MajorType::set_sub_type(int index, ::common::MinorType value) {
   assert(::common::MinorType_IsValid(value));
   sub_type_.Set(index, value);
-  // @@protoc_insertion_point(field_set:common.MajorType.sub_type)
 }
 inline void MajorType::add_sub_type(::common::MinorType value) {
   assert(::common::MinorType_IsValid(value));
   sub_type_.Add(value);
-  // @@protoc_insertion_point(field_add:common.MajorType.sub_type)
 }
 inline const ::google::protobuf::RepeatedField<int>&
 MajorType::sub_type() const {
-  // @@protoc_insertion_point(field_list:common.MajorType.sub_type)
   return sub_type_;
 }
 inline ::google::protobuf::RepeatedField<int>*
 MajorType::mutable_sub_type() {
-  // @@protoc_insertion_point(field_mutable_list:common.MajorType.sub_type)
   return &sub_type_;
 }
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic pop
-#endif  // __GNUC__
 
 // @@protoc_insertion_point(namespace_scope)
 
 }  // namespace common
 
+#ifndef SWIG
 namespace google {
 namespace protobuf {
 
-template <> struct is_proto_enum< ::common::MinorType> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::common::MinorType>() {
   return ::common::MinorType_descriptor();
 }
-template <> struct is_proto_enum< ::common::DataMode> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::common::DataMode>() {
   return ::common::DataMode_descriptor();
 }
 
-}  // namespace protobuf
 }  // namespace google
+}  // namespace protobuf
+#endif  // SWIG
 
 // @@protoc_insertion_point(global_scope)
 
-#endif  // PROTOBUF_INCLUDED_Types_2eproto
+#endif  // PROTOBUF_Types_2eproto__INCLUDED
diff --git a/contrib/native/client/src/protobuf/BitControl.pb.cc b/contrib/native/client/src/protobuf/BitControl.pb.cc
index 3bf9db5..53e53ea 100644
--- a/contrib/native/client/src/protobuf/BitControl.pb.cc
+++ b/contrib/native/client/src/protobuf/BitControl.pb.cc
@@ -1,520 +1,403 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: BitControl.proto
 
+#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
 #include "BitControl.pb.h"
 
 #include <algorithm>
 
 #include <google/protobuf/stubs/common.h>
-#include <google/protobuf/stubs/port.h>
+#include <google/protobuf/stubs/once.h>
 #include <google/protobuf/io/coded_stream.h>
 #include <google/protobuf/wire_format_lite_inl.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>
-// This is a temporary google only hack
-#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
-#include "third_party/protobuf/version.h"
-#endif
 // @@protoc_insertion_point(includes)
 
-namespace protobuf_BitControl_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_BitControl_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_Collector;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_BitControl_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_QueryContextInformation;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_BitControl_2eproto ::google::protobuf::internal::SCCInfo<2> scc_info_FragmentStatus;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_BitControl_2eproto ::google::protobuf::internal::SCCInfo<5> scc_info_PlanFragment;
-}  // namespace protobuf_BitControl_2eproto
-namespace protobuf_Coordination_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_Coordination_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_DrillbitEndpoint;
-}  // namespace protobuf_Coordination_2eproto
-namespace protobuf_ExecutionProtos_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_ExecutionProtos_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_FragmentHandle;
-}  // namespace protobuf_ExecutionProtos_2eproto
-namespace protobuf_UserBitShared_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_UserCredentials;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<3> scc_info_MinorFragmentProfile;
-}  // namespace protobuf_UserBitShared_2eproto
 namespace exec {
 namespace bit {
 namespace control {
-class BitControlHandshakeDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<BitControlHandshake>
-      _instance;
-} _BitControlHandshake_default_instance_;
-class BitStatusDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<BitStatus>
-      _instance;
-} _BitStatus_default_instance_;
-class FragmentStatusDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<FragmentStatus>
-      _instance;
-} _FragmentStatus_default_instance_;
-class InitializeFragmentsDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<InitializeFragments>
-      _instance;
-} _InitializeFragments_default_instance_;
-class CustomMessageDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<CustomMessage>
-      _instance;
-} _CustomMessage_default_instance_;
-class PlanFragmentDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<PlanFragment>
-      _instance;
-} _PlanFragment_default_instance_;
-class CollectorDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<Collector>
-      _instance;
-} _Collector_default_instance_;
-class QueryContextInformationDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<QueryContextInformation>
-      _instance;
-} _QueryContextInformation_default_instance_;
-class WorkQueueStatusDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<WorkQueueStatus>
-      _instance;
-} _WorkQueueStatus_default_instance_;
-class FinishedReceiverDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<FinishedReceiver>
-      _instance;
-} _FinishedReceiver_default_instance_;
-}  // namespace control
-}  // namespace bit
-}  // namespace exec
-namespace protobuf_BitControl_2eproto {
-static void InitDefaultsBitControlHandshake() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
 
-  {
-    void* ptr = &::exec::bit::control::_BitControlHandshake_default_instance_;
-    new (ptr) ::exec::bit::control::BitControlHandshake();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::BitControlHandshake::InitAsDefaultInstance();
+namespace {
+
+const ::google::protobuf::Descriptor* BitControlHandshake_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  BitControlHandshake_reflection_ = NULL;
+const ::google::protobuf::Descriptor* BitStatus_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  BitStatus_reflection_ = NULL;
+const ::google::protobuf::Descriptor* FragmentStatus_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  FragmentStatus_reflection_ = NULL;
+const ::google::protobuf::Descriptor* InitializeFragments_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  InitializeFragments_reflection_ = NULL;
+const ::google::protobuf::Descriptor* CustomMessage_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  CustomMessage_reflection_ = NULL;
+const ::google::protobuf::Descriptor* PlanFragment_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  PlanFragment_reflection_ = NULL;
+const ::google::protobuf::Descriptor* Collector_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  Collector_reflection_ = NULL;
+const ::google::protobuf::Descriptor* QueryContextInformation_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  QueryContextInformation_reflection_ = NULL;
+const ::google::protobuf::Descriptor* WorkQueueStatus_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  WorkQueueStatus_reflection_ = NULL;
+const ::google::protobuf::Descriptor* FinishedReceiver_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  FinishedReceiver_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* RpcType_descriptor_ = NULL;
+
+}  // namespace
+
+
+void protobuf_AssignDesc_BitControl_2eproto() {
+  protobuf_AddDesc_BitControl_2eproto();
+  const ::google::protobuf::FileDescriptor* file =
+    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
+      "BitControl.proto");
+  GOOGLE_CHECK(file != NULL);
+  BitControlHandshake_descriptor_ = file->message_type(0);
+  static const int BitControlHandshake_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitControlHandshake, rpc_version_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitControlHandshake, channel_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitControlHandshake, endpoint_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitControlHandshake, authenticationmechanisms_),
+  };
+  BitControlHandshake_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      BitControlHandshake_descriptor_,
+      BitControlHandshake::default_instance_,
+      BitControlHandshake_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitControlHandshake, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitControlHandshake, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(BitControlHandshake));
+  BitStatus_descriptor_ = file->message_type(1);
+  static const int BitStatus_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitStatus, fragment_status_),
+  };
+  BitStatus_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      BitStatus_descriptor_,
+      BitStatus::default_instance_,
+      BitStatus_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitStatus, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitStatus, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(BitStatus));
+  FragmentStatus_descriptor_ = file->message_type(2);
+  static const int FragmentStatus_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentStatus, profile_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentStatus, handle_),
+  };
+  FragmentStatus_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      FragmentStatus_descriptor_,
+      FragmentStatus::default_instance_,
+      FragmentStatus_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentStatus, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentStatus, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(FragmentStatus));
+  InitializeFragments_descriptor_ = file->message_type(3);
+  static const int InitializeFragments_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(InitializeFragments, fragment_),
+  };
+  InitializeFragments_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      InitializeFragments_descriptor_,
+      InitializeFragments::default_instance_,
+      InitializeFragments_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(InitializeFragments, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(InitializeFragments, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(InitializeFragments));
+  CustomMessage_descriptor_ = file->message_type(4);
+  static const int CustomMessage_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CustomMessage, type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CustomMessage, message_),
+  };
+  CustomMessage_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      CustomMessage_descriptor_,
+      CustomMessage::default_instance_,
+      CustomMessage_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CustomMessage, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CustomMessage, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(CustomMessage));
+  PlanFragment_descriptor_ = file->message_type(5);
+  static const int PlanFragment_offsets_[15] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, handle_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, network_cost_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, cpu_cost_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, disk_cost_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, memory_cost_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, fragment_json_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, leaf_fragment_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, assignment_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, foreman_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, mem_initial_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, mem_max_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, credentials_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, options_json_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, context_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, collector_),
+  };
+  PlanFragment_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      PlanFragment_descriptor_,
+      PlanFragment::default_instance_,
+      PlanFragment_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PlanFragment, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(PlanFragment));
+  Collector_descriptor_ = file->message_type(6);
+  static const int Collector_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Collector, opposite_major_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Collector, incoming_minor_fragment_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Collector, supports_out_of_order_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Collector, is_spooling_),
+  };
+  Collector_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      Collector_descriptor_,
+      Collector::default_instance_,
+      Collector_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Collector, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Collector, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(Collector));
+  QueryContextInformation_descriptor_ = file->message_type(7);
+  static const int QueryContextInformation_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryContextInformation, query_start_time_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryContextInformation, time_zone_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryContextInformation, default_schema_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryContextInformation, session_id_),
+  };
+  QueryContextInformation_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      QueryContextInformation_descriptor_,
+      QueryContextInformation::default_instance_,
+      QueryContextInformation_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryContextInformation, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryContextInformation, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(QueryContextInformation));
+  WorkQueueStatus_descriptor_ = file->message_type(8);
+  static const int WorkQueueStatus_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(WorkQueueStatus, endpoint_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(WorkQueueStatus, queue_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(WorkQueueStatus, report_time_),
+  };
+  WorkQueueStatus_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      WorkQueueStatus_descriptor_,
+      WorkQueueStatus::default_instance_,
+      WorkQueueStatus_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(WorkQueueStatus, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(WorkQueueStatus, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(WorkQueueStatus));
+  FinishedReceiver_descriptor_ = file->message_type(9);
+  static const int FinishedReceiver_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FinishedReceiver, receiver_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FinishedReceiver, sender_),
+  };
+  FinishedReceiver_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      FinishedReceiver_descriptor_,
+      FinishedReceiver::default_instance_,
+      FinishedReceiver_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FinishedReceiver, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FinishedReceiver, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(FinishedReceiver));
+  RpcType_descriptor_ = file->enum_type(0);
 }
 
-::google::protobuf::internal::SCCInfo<1> scc_info_BitControlHandshake =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsBitControlHandshake}, {
-      &protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base,}};
+namespace {
 
-static void InitDefaultsBitStatus() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::control::_BitStatus_default_instance_;
-    new (ptr) ::exec::bit::control::BitStatus();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::BitStatus::InitAsDefaultInstance();
+GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
+inline void protobuf_AssignDescriptorsOnce() {
+  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
+                 &protobuf_AssignDesc_BitControl_2eproto);
 }
 
-::google::protobuf::internal::SCCInfo<1> scc_info_BitStatus =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsBitStatus}, {
-      &protobuf_BitControl_2eproto::scc_info_FragmentStatus.base,}};
-
-static void InitDefaultsFragmentStatus() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::control::_FragmentStatus_default_instance_;
-    new (ptr) ::exec::bit::control::FragmentStatus();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::FragmentStatus::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_FragmentStatus =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsFragmentStatus}, {
-      &protobuf_UserBitShared_2eproto::scc_info_MinorFragmentProfile.base,
-      &protobuf_ExecutionProtos_2eproto::scc_info_FragmentHandle.base,}};
-
-static void InitDefaultsInitializeFragments() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::control::_InitializeFragments_default_instance_;
-    new (ptr) ::exec::bit::control::InitializeFragments();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::InitializeFragments::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_InitializeFragments =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsInitializeFragments}, {
-      &protobuf_BitControl_2eproto::scc_info_PlanFragment.base,}};
-
-static void InitDefaultsCustomMessage() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::control::_CustomMessage_default_instance_;
-    new (ptr) ::exec::bit::control::CustomMessage();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::CustomMessage::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_CustomMessage =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsCustomMessage}, {}};
-
-static void InitDefaultsPlanFragment() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::control::_PlanFragment_default_instance_;
-    new (ptr) ::exec::bit::control::PlanFragment();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::PlanFragment::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<5> scc_info_PlanFragment =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 5, InitDefaultsPlanFragment}, {
-      &protobuf_ExecutionProtos_2eproto::scc_info_FragmentHandle.base,
-      &protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base,
-      &protobuf_UserBitShared_2eproto::scc_info_UserCredentials.base,
-      &protobuf_BitControl_2eproto::scc_info_QueryContextInformation.base,
-      &protobuf_BitControl_2eproto::scc_info_Collector.base,}};
-
-static void InitDefaultsCollector() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::control::_Collector_default_instance_;
-    new (ptr) ::exec::bit::control::Collector();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::Collector::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_Collector =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsCollector}, {}};
-
-static void InitDefaultsQueryContextInformation() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::control::_QueryContextInformation_default_instance_;
-    new (ptr) ::exec::bit::control::QueryContextInformation();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::QueryContextInformation::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_QueryContextInformation =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsQueryContextInformation}, {}};
-
-static void InitDefaultsWorkQueueStatus() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::control::_WorkQueueStatus_default_instance_;
-    new (ptr) ::exec::bit::control::WorkQueueStatus();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::WorkQueueStatus::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_WorkQueueStatus =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsWorkQueueStatus}, {
-      &protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base,}};
-
-static void InitDefaultsFinishedReceiver() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::control::_FinishedReceiver_default_instance_;
-    new (ptr) ::exec::bit::control::FinishedReceiver();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::control::FinishedReceiver::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_FinishedReceiver =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsFinishedReceiver}, {
-      &protobuf_ExecutionProtos_2eproto::scc_info_FragmentHandle.base,}};
-
-void InitDefaults() {
-  ::google::protobuf::internal::InitSCC(&scc_info_BitControlHandshake.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_BitStatus.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_FragmentStatus.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_InitializeFragments.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_CustomMessage.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_PlanFragment.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_Collector.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_QueryContextInformation.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_WorkQueueStatus.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_FinishedReceiver.base);
-}
-
-::google::protobuf::Metadata file_level_metadata[10];
-const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors[1];
-
-const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::BitControlHandshake, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::BitControlHandshake, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::BitControlHandshake, rpc_version_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::BitControlHandshake, channel_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::BitControlHandshake, endpoint_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::BitControlHandshake, authenticationmechanisms_),
-  1,
-  2,
-  0,
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::BitStatus, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::BitStatus, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::BitStatus, fragment_status_),
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::FragmentStatus, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::FragmentStatus, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::FragmentStatus, profile_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::FragmentStatus, handle_),
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::InitializeFragments, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::InitializeFragments, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::InitializeFragments, fragment_),
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::CustomMessage, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::CustomMessage, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::CustomMessage, type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::CustomMessage, message_),
-  1,
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, handle_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, network_cost_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, cpu_cost_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, disk_cost_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, memory_cost_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, fragment_json_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, leaf_fragment_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, assignment_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, foreman_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, mem_initial_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, mem_max_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, credentials_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, options_json_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, context_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::PlanFragment, collector_),
-  2,
-  7,
-  8,
-  9,
-  10,
-  0,
-  11,
-  3,
-  4,
-  12,
-  13,
-  5,
-  1,
-  6,
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::Collector, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::Collector, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::Collector, opposite_major_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::Collector, incoming_minor_fragment_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::Collector, supports_out_of_order_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::Collector, is_spooling_),
-  0,
-  ~0u,
-  1,
-  2,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::QueryContextInformation, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::QueryContextInformation, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::QueryContextInformation, query_start_time_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::QueryContextInformation, time_zone_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::QueryContextInformation, default_schema_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::QueryContextInformation, session_id_),
-  2,
-  3,
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::WorkQueueStatus, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::WorkQueueStatus, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::WorkQueueStatus, endpoint_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::WorkQueueStatus, queue_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::WorkQueueStatus, report_time_),
-  0,
-  2,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::FinishedReceiver, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::FinishedReceiver, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::FinishedReceiver, receiver_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::control::FinishedReceiver, sender_),
-  0,
-  1,
-};
-static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  { 0, 9, sizeof(::exec::bit::control::BitControlHandshake)},
-  { 13, 19, sizeof(::exec::bit::control::BitStatus)},
-  { 20, 27, sizeof(::exec::bit::control::FragmentStatus)},
-  { 29, 35, sizeof(::exec::bit::control::InitializeFragments)},
-  { 36, 43, sizeof(::exec::bit::control::CustomMessage)},
-  { 45, 65, sizeof(::exec::bit::control::PlanFragment)},
-  { 80, 89, sizeof(::exec::bit::control::Collector)},
-  { 93, 102, sizeof(::exec::bit::control::QueryContextInformation)},
-  { 106, 114, sizeof(::exec::bit::control::WorkQueueStatus)},
-  { 117, 124, sizeof(::exec::bit::control::FinishedReceiver)},
-};
-
-static ::google::protobuf::Message const * const file_default_instances[] = {
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_BitControlHandshake_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_BitStatus_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_FragmentStatus_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_InitializeFragments_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_CustomMessage_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_PlanFragment_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_Collector_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_QueryContextInformation_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_WorkQueueStatus_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::control::_FinishedReceiver_default_instance_),
-};
-
-void protobuf_AssignDescriptors() {
-  AddDescriptors();
-  AssignDescriptors(
-      "BitControl.proto", schemas, file_default_instances, TableStruct::offsets,
-      file_level_metadata, file_level_enum_descriptors, NULL);
-}
-
-void protobuf_AssignDescriptorsOnce() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, protobuf_AssignDescriptors);
-}
-
-void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
 void protobuf_RegisterTypes(const ::std::string&) {
   protobuf_AssignDescriptorsOnce();
-  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 10);
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    BitControlHandshake_descriptor_, &BitControlHandshake::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    BitStatus_descriptor_, &BitStatus::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    FragmentStatus_descriptor_, &FragmentStatus::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    InitializeFragments_descriptor_, &InitializeFragments::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    CustomMessage_descriptor_, &CustomMessage::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    PlanFragment_descriptor_, &PlanFragment::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    Collector_descriptor_, &Collector::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    QueryContextInformation_descriptor_, &QueryContextInformation::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    WorkQueueStatus_descriptor_, &WorkQueueStatus::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    FinishedReceiver_descriptor_, &FinishedReceiver::default_instance());
 }
 
-void AddDescriptorsImpl() {
-  InitDefaults();
-  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-      "\n\020BitControl.proto\022\020exec.bit.control\032\025Ex"
-      "ecutionProtos.proto\032\022Coordination.proto\032"
-      "\023UserBitShared.proto\"\255\001\n\023BitControlHands"
-      "hake\022\023\n\013rpc_version\030\001 \001(\005\0225\n\007channel\030\002 \001"
-      "(\0162\027.exec.shared.RpcChannel:\013BIT_CONTROL"
-      "\022(\n\010endpoint\030\003 \001(\0132\026.exec.DrillbitEndpoi"
-      "nt\022 \n\030authenticationMechanisms\030\004 \003(\t\"F\n\t"
-      "BitStatus\0229\n\017fragment_status\030\001 \003(\0132 .exe"
-      "c.bit.control.FragmentStatus\"n\n\016Fragment"
-      "Status\0222\n\007profile\030\001 \001(\0132!.exec.shared.Mi"
-      "norFragmentProfile\022(\n\006handle\030\002 \001(\0132\030.exe"
-      "c.bit.FragmentHandle\"G\n\023InitializeFragme"
-      "nts\0220\n\010fragment\030\001 \003(\0132\036.exec.bit.control"
-      ".PlanFragment\".\n\rCustomMessage\022\014\n\004type\030\001"
-      " \001(\005\022\017\n\007message\030\002 \001(\014\"\374\003\n\014PlanFragment\022("
-      "\n\006handle\030\001 \001(\0132\030.exec.bit.FragmentHandle"
-      "\022\024\n\014network_cost\030\004 \001(\002\022\020\n\010cpu_cost\030\005 \001(\002"
-      "\022\021\n\tdisk_cost\030\006 \001(\002\022\023\n\013memory_cost\030\007 \001(\002"
-      "\022\025\n\rfragment_json\030\010 \001(\t\022\025\n\rleaf_fragment"
-      "\030\t \001(\010\022*\n\nassignment\030\n \001(\0132\026.exec.Drillb"
-      "itEndpoint\022\'\n\007foreman\030\013 \001(\0132\026.exec.Drill"
-      "bitEndpoint\022\035\n\013mem_initial\030\014 \001(\003:\010200000"
-      "00\022\033\n\007mem_max\030\r \001(\003:\n2000000000\0221\n\013crede"
-      "ntials\030\016 \001(\0132\034.exec.shared.UserCredentia"
-      "ls\022\024\n\014options_json\030\017 \001(\t\022:\n\007context\030\020 \001("
-      "\0132).exec.bit.control.QueryContextInforma"
-      "tion\022.\n\tcollector\030\021 \003(\0132\033.exec.bit.contr"
-      "ol.Collector\"\210\001\n\tCollector\022\"\n\032opposite_m"
-      "ajor_fragment_id\030\001 \001(\005\022#\n\027incoming_minor"
-      "_fragment\030\002 \003(\005B\002\020\001\022\035\n\025supports_out_of_o"
-      "rder\030\003 \001(\010\022\023\n\013is_spooling\030\004 \001(\010\"w\n\027Query"
-      "ContextInformation\022\030\n\020query_start_time\030\001"
-      " \001(\003\022\021\n\ttime_zone\030\002 \001(\005\022\033\n\023default_schem"
-      "a_name\030\003 \001(\t\022\022\n\nsession_id\030\004 \001(\t\"f\n\017Work"
-      "QueueStatus\022(\n\010endpoint\030\001 \001(\0132\026.exec.Dri"
-      "llbitEndpoint\022\024\n\014queue_length\030\002 \001(\005\022\023\n\013r"
-      "eport_time\030\003 \001(\003\"h\n\020FinishedReceiver\022*\n\010"
-      "receiver\030\001 \001(\0132\030.exec.bit.FragmentHandle"
-      "\022(\n\006sender\030\002 \001(\0132\030.exec.bit.FragmentHand"
-      "le*\206\003\n\007RpcType\022\r\n\tHANDSHAKE\020\000\022\007\n\003ACK\020\001\022\013"
-      "\n\007GOODBYE\020\002\022\034\n\030REQ_INITIALIZE_FRAGMENTS\020"
-      "\003\022\027\n\023REQ_CANCEL_FRAGMENT\020\006\022\031\n\025REQ_RECEIV"
-      "ER_FINISHED\020\007\022\027\n\023REQ_FRAGMENT_STATUS\020\010\022\022"
-      "\n\016REQ_BIT_STATUS\020\t\022\024\n\020REQ_QUERY_STATUS\020\n"
-      "\022\024\n\020REQ_QUERY_CANCEL\020\017\022\030\n\024REQ_UNPAUSE_FR"
-      "AGMENT\020\020\022\016\n\nREQ_CUSTOM\020\021\022\030\n\024RESP_FRAGMEN"
-      "T_HANDLE\020\013\022\030\n\024RESP_FRAGMENT_STATUS\020\014\022\023\n\017"
-      "RESP_BIT_STATUS\020\r\022\025\n\021RESP_QUERY_STATUS\020\016"
-      "\022\017\n\013RESP_CUSTOM\020\022\022\020\n\014SASL_MESSAGE\020\023B+\n\033o"
-      "rg.apache.drill.exec.protoB\nBitControlH\001"
-  };
+}  // namespace
+
+void protobuf_ShutdownFile_BitControl_2eproto() {
+  delete BitControlHandshake::default_instance_;
+  delete BitControlHandshake_reflection_;
+  delete BitStatus::default_instance_;
+  delete BitStatus_reflection_;
+  delete FragmentStatus::default_instance_;
+  delete FragmentStatus_reflection_;
+  delete InitializeFragments::default_instance_;
+  delete InitializeFragments_reflection_;
+  delete CustomMessage::default_instance_;
+  delete CustomMessage_reflection_;
+  delete PlanFragment::default_instance_;
+  delete PlanFragment_reflection_;
+  delete Collector::default_instance_;
+  delete Collector_reflection_;
+  delete QueryContextInformation::default_instance_;
+  delete QueryContextInformation_reflection_;
+  delete WorkQueueStatus::default_instance_;
+  delete WorkQueueStatus_reflection_;
+  delete FinishedReceiver::default_instance_;
+  delete FinishedReceiver_reflection_;
+}
+
+void protobuf_AddDesc_BitControl_2eproto() {
+  static bool already_here = false;
+  if (already_here) return;
+  already_here = true;
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  ::exec::bit::protobuf_AddDesc_ExecutionProtos_2eproto();
+  ::exec::protobuf_AddDesc_Coordination_2eproto();
+  ::exec::shared::protobuf_AddDesc_UserBitShared_2eproto();
   ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
-      descriptor, 2000);
+    "\n\020BitControl.proto\022\020exec.bit.control\032\025Ex"
+    "ecutionProtos.proto\032\022Coordination.proto\032"
+    "\023UserBitShared.proto\"\255\001\n\023BitControlHands"
+    "hake\022\023\n\013rpc_version\030\001 \001(\005\0225\n\007channel\030\002 \001"
+    "(\0162\027.exec.shared.RpcChannel:\013BIT_CONTROL"
+    "\022(\n\010endpoint\030\003 \001(\0132\026.exec.DrillbitEndpoi"
+    "nt\022 \n\030authenticationMechanisms\030\004 \003(\t\"F\n\t"
+    "BitStatus\0229\n\017fragment_status\030\001 \003(\0132 .exe"
+    "c.bit.control.FragmentStatus\"n\n\016Fragment"
+    "Status\0222\n\007profile\030\001 \001(\0132!.exec.shared.Mi"
+    "norFragmentProfile\022(\n\006handle\030\002 \001(\0132\030.exe"
+    "c.bit.FragmentHandle\"G\n\023InitializeFragme"
+    "nts\0220\n\010fragment\030\001 \003(\0132\036.exec.bit.control"
+    ".PlanFragment\".\n\rCustomMessage\022\014\n\004type\030\001"
+    " \001(\005\022\017\n\007message\030\002 \001(\014\"\374\003\n\014PlanFragment\022("
+    "\n\006handle\030\001 \001(\0132\030.exec.bit.FragmentHandle"
+    "\022\024\n\014network_cost\030\004 \001(\002\022\020\n\010cpu_cost\030\005 \001(\002"
+    "\022\021\n\tdisk_cost\030\006 \001(\002\022\023\n\013memory_cost\030\007 \001(\002"
+    "\022\025\n\rfragment_json\030\010 \001(\t\022\025\n\rleaf_fragment"
+    "\030\t \001(\010\022*\n\nassignment\030\n \001(\0132\026.exec.Drillb"
+    "itEndpoint\022\'\n\007foreman\030\013 \001(\0132\026.exec.Drill"
+    "bitEndpoint\022\035\n\013mem_initial\030\014 \001(\003:\010200000"
+    "00\022\033\n\007mem_max\030\r \001(\003:\n2000000000\0221\n\013crede"
+    "ntials\030\016 \001(\0132\034.exec.shared.UserCredentia"
+    "ls\022\024\n\014options_json\030\017 \001(\t\022:\n\007context\030\020 \001("
+    "\0132).exec.bit.control.QueryContextInforma"
+    "tion\022.\n\tcollector\030\021 \003(\0132\033.exec.bit.contr"
+    "ol.Collector\"\210\001\n\tCollector\022\"\n\032opposite_m"
+    "ajor_fragment_id\030\001 \001(\005\022#\n\027incoming_minor"
+    "_fragment\030\002 \003(\005B\002\020\001\022\035\n\025supports_out_of_o"
+    "rder\030\003 \001(\010\022\023\n\013is_spooling\030\004 \001(\010\"w\n\027Query"
+    "ContextInformation\022\030\n\020query_start_time\030\001"
+    " \001(\003\022\021\n\ttime_zone\030\002 \001(\005\022\033\n\023default_schem"
+    "a_name\030\003 \001(\t\022\022\n\nsession_id\030\004 \001(\t\"f\n\017Work"
+    "QueueStatus\022(\n\010endpoint\030\001 \001(\0132\026.exec.Dri"
+    "llbitEndpoint\022\024\n\014queue_length\030\002 \001(\005\022\023\n\013r"
+    "eport_time\030\003 \001(\003\"h\n\020FinishedReceiver\022*\n\010"
+    "receiver\030\001 \001(\0132\030.exec.bit.FragmentHandle"
+    "\022(\n\006sender\030\002 \001(\0132\030.exec.bit.FragmentHand"
+    "le*\206\003\n\007RpcType\022\r\n\tHANDSHAKE\020\000\022\007\n\003ACK\020\001\022\013"
+    "\n\007GOODBYE\020\002\022\034\n\030REQ_INITIALIZE_FRAGMENTS\020"
+    "\003\022\027\n\023REQ_CANCEL_FRAGMENT\020\006\022\031\n\025REQ_RECEIV"
+    "ER_FINISHED\020\007\022\027\n\023REQ_FRAGMENT_STATUS\020\010\022\022"
+    "\n\016REQ_BIT_STATUS\020\t\022\024\n\020REQ_QUERY_STATUS\020\n"
+    "\022\024\n\020REQ_QUERY_CANCEL\020\017\022\030\n\024REQ_UNPAUSE_FR"
+    "AGMENT\020\020\022\016\n\nREQ_CUSTOM\020\021\022\030\n\024RESP_FRAGMEN"
+    "T_HANDLE\020\013\022\030\n\024RESP_FRAGMENT_STATUS\020\014\022\023\n\017"
+    "RESP_BIT_STATUS\020\r\022\025\n\021RESP_QUERY_STATUS\020\016"
+    "\022\017\n\013RESP_CUSTOM\020\022\022\020\n\014SASL_MESSAGE\020\023B+\n\033o"
+    "rg.apache.drill.exec.protoB\nBitControlH\001", 2000);
   ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
     "BitControl.proto", &protobuf_RegisterTypes);
-  ::protobuf_ExecutionProtos_2eproto::AddDescriptors();
-  ::protobuf_Coordination_2eproto::AddDescriptors();
-  ::protobuf_UserBitShared_2eproto::AddDescriptors();
+  BitControlHandshake::default_instance_ = new BitControlHandshake();
+  BitStatus::default_instance_ = new BitStatus();
+  FragmentStatus::default_instance_ = new FragmentStatus();
+  InitializeFragments::default_instance_ = new InitializeFragments();
+  CustomMessage::default_instance_ = new CustomMessage();
+  PlanFragment::default_instance_ = new PlanFragment();
+  Collector::default_instance_ = new Collector();
+  QueryContextInformation::default_instance_ = new QueryContextInformation();
+  WorkQueueStatus::default_instance_ = new WorkQueueStatus();
+  FinishedReceiver::default_instance_ = new FinishedReceiver();
+  BitControlHandshake::default_instance_->InitAsDefaultInstance();
+  BitStatus::default_instance_->InitAsDefaultInstance();
+  FragmentStatus::default_instance_->InitAsDefaultInstance();
+  InitializeFragments::default_instance_->InitAsDefaultInstance();
+  CustomMessage::default_instance_->InitAsDefaultInstance();
+  PlanFragment::default_instance_->InitAsDefaultInstance();
+  Collector::default_instance_->InitAsDefaultInstance();
+  QueryContextInformation::default_instance_->InitAsDefaultInstance();
+  WorkQueueStatus::default_instance_->InitAsDefaultInstance();
+  FinishedReceiver::default_instance_->InitAsDefaultInstance();
+  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_BitControl_2eproto);
 }
 
-void AddDescriptors() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, AddDescriptorsImpl);
-}
-// Force AddDescriptors() to be called at dynamic initialization time.
-struct StaticDescriptorInitializer {
-  StaticDescriptorInitializer() {
-    AddDescriptors();
+// Force AddDescriptors() to be called at static initialization time.
+struct StaticDescriptorInitializer_BitControl_2eproto {
+  StaticDescriptorInitializer_BitControl_2eproto() {
+    protobuf_AddDesc_BitControl_2eproto();
   }
-} static_descriptor_initializer;
-}  // namespace protobuf_BitControl_2eproto
-namespace exec {
-namespace bit {
-namespace control {
+} static_descriptor_initializer_BitControl_2eproto_;
 const ::google::protobuf::EnumDescriptor* RpcType_descriptor() {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_BitControl_2eproto::file_level_enum_descriptors[0];
+  protobuf_AssignDescriptorsOnce();
+  return RpcType_descriptor_;
 }
 bool RpcType_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -542,123 +425,106 @@
 
 // ===================================================================
 
-void BitControlHandshake::InitAsDefaultInstance() {
-  ::exec::bit::control::_BitControlHandshake_default_instance_._instance.get_mutable()->endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(
-      ::exec::DrillbitEndpoint::internal_default_instance());
-}
-void BitControlHandshake::clear_endpoint() {
-  if (endpoint_ != NULL) endpoint_->Clear();
-  clear_has_endpoint();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int BitControlHandshake::kRpcVersionFieldNumber;
 const int BitControlHandshake::kChannelFieldNumber;
 const int BitControlHandshake::kEndpointFieldNumber;
 const int BitControlHandshake::kAuthenticationMechanismsFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 BitControlHandshake::BitControlHandshake()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_BitControlHandshake.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.BitControlHandshake)
 }
+
+void BitControlHandshake::InitAsDefaultInstance() {
+  endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(&::exec::DrillbitEndpoint::default_instance());
+}
+
 BitControlHandshake::BitControlHandshake(const BitControlHandshake& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      authenticationmechanisms_(from.authenticationmechanisms_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_endpoint()) {
-    endpoint_ = new ::exec::DrillbitEndpoint(*from.endpoint_);
-  } else {
-    endpoint_ = NULL;
-  }
-  ::memcpy(&rpc_version_, &from.rpc_version_,
-    static_cast<size_t>(reinterpret_cast<char*>(&channel_) -
-    reinterpret_cast<char*>(&rpc_version_)) + sizeof(channel_));
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.BitControlHandshake)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void BitControlHandshake::SharedCtor() {
-  ::memset(&endpoint_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&channel_) -
-      reinterpret_cast<char*>(&endpoint_)) + sizeof(channel_));
+  _cached_size_ = 0;
+  rpc_version_ = 0;
+  channel_ = 0;
+  endpoint_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 BitControlHandshake::~BitControlHandshake() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.BitControlHandshake)
   SharedDtor();
 }
 
 void BitControlHandshake::SharedDtor() {
-  if (this != internal_default_instance()) delete endpoint_;
+  if (this != default_instance_) {
+    delete endpoint_;
+  }
 }
 
 void BitControlHandshake::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* BitControlHandshake::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return BitControlHandshake_descriptor_;
 }
 
 const BitControlHandshake& BitControlHandshake::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_BitControlHandshake.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+BitControlHandshake* BitControlHandshake::default_instance_ = NULL;
+
+BitControlHandshake* BitControlHandshake::New() const {
+  return new BitControlHandshake;
+}
 
 void BitControlHandshake::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.BitControlHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    rpc_version_ = 0;
+    channel_ = 0;
+    if (has_endpoint()) {
+      if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
+    }
+  }
   authenticationmechanisms_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(endpoint_ != NULL);
-    endpoint_->Clear();
-  }
-  if (cached_has_bits & 6u) {
-    ::memset(&rpc_version_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&channel_) -
-        reinterpret_cast<char*>(&rpc_version_)) + sizeof(channel_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool BitControlHandshake::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.BitControlHandshake)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 rpc_version = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_rpc_version();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &rpc_version_)));
+          set_has_rpc_version();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_channel;
         break;
       }
 
       // optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_channel:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -666,174 +532,138 @@
           if (::exec::shared::RpcChannel_IsValid(value)) {
             set_channel(static_cast< ::exec::shared::RpcChannel >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                2, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(2, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_endpoint;
         break;
       }
 
       // optional .exec.DrillbitEndpoint endpoint = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_endpoint:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_endpoint()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_authenticationMechanisms;
         break;
       }
 
       // repeated string authenticationMechanisms = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_authenticationMechanisms:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_authenticationmechanisms()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->authenticationmechanisms(this->authenticationmechanisms_size() - 1).data(),
-            static_cast<int>(this->authenticationmechanisms(this->authenticationmechanisms_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.bit.control.BitControlHandshake.authenticationMechanisms");
+            this->authenticationmechanisms(this->authenticationmechanisms_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_authenticationMechanisms;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.BitControlHandshake)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.BitControlHandshake)
-  return false;
 #undef DO_
 }
 
 void BitControlHandshake::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.BitControlHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 rpc_version = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_rpc_version()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->rpc_version(), output);
   }
 
   // optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];
-  if (cached_has_bits & 0x00000004u) {
+  if (has_channel()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       2, this->channel(), output);
   }
 
   // optional .exec.DrillbitEndpoint endpoint = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_endpoint()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_endpoint(), output);
+      3, this->endpoint(), output);
   }
 
   // repeated string authenticationMechanisms = 4;
-  for (int i = 0, n = this->authenticationmechanisms_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->authenticationmechanisms(i).data(), static_cast<int>(this->authenticationmechanisms(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.BitControlHandshake.authenticationMechanisms");
+  for (int i = 0; i < this->authenticationmechanisms_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->authenticationmechanisms(i).data(), this->authenticationmechanisms(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->authenticationmechanisms(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.BitControlHandshake)
 }
 
-::google::protobuf::uint8* BitControlHandshake::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.BitControlHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* BitControlHandshake::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 rpc_version = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_rpc_version()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->rpc_version(), target);
   }
 
   // optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];
-  if (cached_has_bits & 0x00000004u) {
+  if (has_channel()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       2, this->channel(), target);
   }
 
   // optional .exec.DrillbitEndpoint endpoint = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_endpoint()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_endpoint(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->endpoint(), target);
   }
 
   // repeated string authenticationMechanisms = 4;
-  for (int i = 0, n = this->authenticationmechanisms_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->authenticationmechanisms(i).data(), static_cast<int>(this->authenticationmechanisms(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.BitControlHandshake.authenticationMechanisms");
+  for (int i = 0; i < this->authenticationmechanisms_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->authenticationmechanisms(i).data(), this->authenticationmechanisms(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(4, this->authenticationmechanisms(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.BitControlHandshake)
   return target;
 }
 
-size_t BitControlHandshake::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.BitControlHandshake)
-  size_t total_size = 0;
+int BitControlHandshake::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated string authenticationMechanisms = 4;
-  total_size += 1 *
-      ::google::protobuf::internal::FromIntSize(this->authenticationmechanisms_size());
-  for (int i = 0, n = this->authenticationmechanisms_size(); i < n; i++) {
-    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
-      this->authenticationmechanisms(i));
-  }
-
-  if (_has_bits_[0 / 32] & 7u) {
-    // optional .exec.DrillbitEndpoint endpoint = 3;
-    if (has_endpoint()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *endpoint_);
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional int32 rpc_version = 1;
     if (has_rpc_version()) {
       total_size += 1 +
@@ -847,1056 +677,932 @@
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->channel());
     }
 
+    // optional .exec.DrillbitEndpoint endpoint = 3;
+    if (has_endpoint()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->endpoint());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated string authenticationMechanisms = 4;
+  total_size += 1 * this->authenticationmechanisms_size();
+  for (int i = 0; i < this->authenticationmechanisms_size(); i++) {
+    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
+      this->authenticationmechanisms(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void BitControlHandshake::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.BitControlHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const BitControlHandshake* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const BitControlHandshake>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const BitControlHandshake*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.BitControlHandshake)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.BitControlHandshake)
     MergeFrom(*source);
   }
 }
 
 void BitControlHandshake::MergeFrom(const BitControlHandshake& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.BitControlHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   authenticationmechanisms_.MergeFrom(from.authenticationmechanisms_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_rpc_version()) {
+      set_rpc_version(from.rpc_version());
+    }
+    if (from.has_channel()) {
+      set_channel(from.channel());
+    }
+    if (from.has_endpoint()) {
       mutable_endpoint()->::exec::DrillbitEndpoint::MergeFrom(from.endpoint());
     }
-    if (cached_has_bits & 0x00000002u) {
-      rpc_version_ = from.rpc_version_;
-    }
-    if (cached_has_bits & 0x00000004u) {
-      channel_ = from.channel_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void BitControlHandshake::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.BitControlHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void BitControlHandshake::CopyFrom(const BitControlHandshake& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.BitControlHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool BitControlHandshake::IsInitialized() const {
+
   return true;
 }
 
 void BitControlHandshake::Swap(BitControlHandshake* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void BitControlHandshake::InternalSwap(BitControlHandshake* other) {
-  using std::swap;
-  authenticationmechanisms_.InternalSwap(CastToBase(&other->authenticationmechanisms_));
-  swap(endpoint_, other->endpoint_);
-  swap(rpc_version_, other->rpc_version_);
-  swap(channel_, other->channel_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(rpc_version_, other->rpc_version_);
+    std::swap(channel_, other->channel_);
+    std::swap(endpoint_, other->endpoint_);
+    authenticationmechanisms_.Swap(&other->authenticationmechanisms_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata BitControlHandshake::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = BitControlHandshake_descriptor_;
+  metadata.reflection = BitControlHandshake_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void BitStatus::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int BitStatus::kFragmentStatusFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 BitStatus::BitStatus()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_BitStatus.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.BitStatus)
 }
+
+void BitStatus::InitAsDefaultInstance() {
+}
+
 BitStatus::BitStatus(const BitStatus& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      fragment_status_(from.fragment_status_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.BitStatus)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void BitStatus::SharedCtor() {
+  _cached_size_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 BitStatus::~BitStatus() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.BitStatus)
   SharedDtor();
 }
 
 void BitStatus::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void BitStatus::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* BitStatus::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return BitStatus_descriptor_;
 }
 
 const BitStatus& BitStatus::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_BitStatus.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+BitStatus* BitStatus::default_instance_ = NULL;
+
+BitStatus* BitStatus::New() const {
+  return new BitStatus;
+}
 
 void BitStatus::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.BitStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
   fragment_status_.Clear();
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool BitStatus::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.BitStatus)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // repeated .exec.bit.control.FragmentStatus fragment_status = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_fragment_status:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_fragment_status()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(10)) goto parse_fragment_status;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.BitStatus)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.BitStatus)
-  return false;
 #undef DO_
 }
 
 void BitStatus::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.BitStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
   // repeated .exec.bit.control.FragmentStatus fragment_status = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragment_status_size()); i < n; i++) {
+  for (int i = 0; i < this->fragment_status_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1,
-      this->fragment_status(static_cast<int>(i)),
-      output);
+      1, this->fragment_status(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.BitStatus)
 }
 
-::google::protobuf::uint8* BitStatus::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.BitStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+::google::protobuf::uint8* BitStatus::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // repeated .exec.bit.control.FragmentStatus fragment_status = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragment_status_size()); i < n; i++) {
+  for (int i = 0; i < this->fragment_status_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->fragment_status(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->fragment_status(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.BitStatus)
   return target;
 }
 
-size_t BitStatus::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.BitStatus)
-  size_t total_size = 0;
+int BitStatus::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  // repeated .exec.bit.control.FragmentStatus fragment_status = 1;
+  total_size += 1 * this->fragment_status_size();
+  for (int i = 0; i < this->fragment_status_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->fragment_status(i));
+  }
+
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // repeated .exec.bit.control.FragmentStatus fragment_status = 1;
-  {
-    unsigned int count = static_cast<unsigned int>(this->fragment_status_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->fragment_status(static_cast<int>(i)));
-    }
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void BitStatus::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.BitStatus)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const BitStatus* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const BitStatus>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const BitStatus*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.BitStatus)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.BitStatus)
     MergeFrom(*source);
   }
 }
 
 void BitStatus::MergeFrom(const BitStatus& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.BitStatus)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   fragment_status_.MergeFrom(from.fragment_status_);
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void BitStatus::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.BitStatus)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void BitStatus::CopyFrom(const BitStatus& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.BitStatus)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool BitStatus::IsInitialized() const {
+
   return true;
 }
 
 void BitStatus::Swap(BitStatus* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void BitStatus::InternalSwap(BitStatus* other) {
-  using std::swap;
-  CastToBase(&fragment_status_)->InternalSwap(CastToBase(&other->fragment_status_));
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    fragment_status_.Swap(&other->fragment_status_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata BitStatus::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = BitStatus_descriptor_;
+  metadata.reflection = BitStatus_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void FragmentStatus::InitAsDefaultInstance() {
-  ::exec::bit::control::_FragmentStatus_default_instance_._instance.get_mutable()->profile_ = const_cast< ::exec::shared::MinorFragmentProfile*>(
-      ::exec::shared::MinorFragmentProfile::internal_default_instance());
-  ::exec::bit::control::_FragmentStatus_default_instance_._instance.get_mutable()->handle_ = const_cast< ::exec::bit::FragmentHandle*>(
-      ::exec::bit::FragmentHandle::internal_default_instance());
-}
-void FragmentStatus::clear_profile() {
-  if (profile_ != NULL) profile_->Clear();
-  clear_has_profile();
-}
-void FragmentStatus::clear_handle() {
-  if (handle_ != NULL) handle_->Clear();
-  clear_has_handle();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int FragmentStatus::kProfileFieldNumber;
 const int FragmentStatus::kHandleFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 FragmentStatus::FragmentStatus()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_FragmentStatus.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.FragmentStatus)
 }
+
+void FragmentStatus::InitAsDefaultInstance() {
+  profile_ = const_cast< ::exec::shared::MinorFragmentProfile*>(&::exec::shared::MinorFragmentProfile::default_instance());
+  handle_ = const_cast< ::exec::bit::FragmentHandle*>(&::exec::bit::FragmentHandle::default_instance());
+}
+
 FragmentStatus::FragmentStatus(const FragmentStatus& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_profile()) {
-    profile_ = new ::exec::shared::MinorFragmentProfile(*from.profile_);
-  } else {
-    profile_ = NULL;
-  }
-  if (from.has_handle()) {
-    handle_ = new ::exec::bit::FragmentHandle(*from.handle_);
-  } else {
-    handle_ = NULL;
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.FragmentStatus)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void FragmentStatus::SharedCtor() {
-  ::memset(&profile_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&handle_) -
-      reinterpret_cast<char*>(&profile_)) + sizeof(handle_));
+  _cached_size_ = 0;
+  profile_ = NULL;
+  handle_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 FragmentStatus::~FragmentStatus() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.FragmentStatus)
   SharedDtor();
 }
 
 void FragmentStatus::SharedDtor() {
-  if (this != internal_default_instance()) delete profile_;
-  if (this != internal_default_instance()) delete handle_;
+  if (this != default_instance_) {
+    delete profile_;
+    delete handle_;
+  }
 }
 
 void FragmentStatus::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* FragmentStatus::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return FragmentStatus_descriptor_;
 }
 
 const FragmentStatus& FragmentStatus::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_FragmentStatus.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+FragmentStatus* FragmentStatus::default_instance_ = NULL;
+
+FragmentStatus* FragmentStatus::New() const {
+  return new FragmentStatus;
+}
 
 void FragmentStatus::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.FragmentStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(profile_ != NULL);
-      profile_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_profile()) {
+      if (profile_ != NULL) profile_->::exec::shared::MinorFragmentProfile::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(handle_ != NULL);
-      handle_->Clear();
+    if (has_handle()) {
+      if (handle_ != NULL) handle_->::exec::bit::FragmentHandle::Clear();
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool FragmentStatus::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.FragmentStatus)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.MinorFragmentProfile profile = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_profile()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_handle;
         break;
       }
 
       // optional .exec.bit.FragmentHandle handle = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_handle:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_handle()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.FragmentStatus)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.FragmentStatus)
-  return false;
 #undef DO_
 }
 
 void FragmentStatus::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.FragmentStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.MinorFragmentProfile profile = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_profile()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_profile(), output);
+      1, this->profile(), output);
   }
 
   // optional .exec.bit.FragmentHandle handle = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_handle()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_handle(), output);
+      2, this->handle(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.FragmentStatus)
 }
 
-::google::protobuf::uint8* FragmentStatus::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.FragmentStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* FragmentStatus::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.MinorFragmentProfile profile = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_profile()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_profile(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->profile(), target);
   }
 
   // optional .exec.bit.FragmentHandle handle = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_handle()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_handle(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->handle(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.FragmentStatus)
   return target;
 }
 
-size_t FragmentStatus::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.FragmentStatus)
-  size_t total_size = 0;
+int FragmentStatus::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 3u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.shared.MinorFragmentProfile profile = 1;
     if (has_profile()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *profile_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->profile());
     }
 
     // optional .exec.bit.FragmentHandle handle = 2;
     if (has_handle()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *handle_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->handle());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void FragmentStatus::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.FragmentStatus)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const FragmentStatus* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const FragmentStatus>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const FragmentStatus*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.FragmentStatus)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.FragmentStatus)
     MergeFrom(*source);
   }
 }
 
 void FragmentStatus::MergeFrom(const FragmentStatus& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.FragmentStatus)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_profile()) {
       mutable_profile()->::exec::shared::MinorFragmentProfile::MergeFrom(from.profile());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_handle()) {
       mutable_handle()->::exec::bit::FragmentHandle::MergeFrom(from.handle());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void FragmentStatus::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.FragmentStatus)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void FragmentStatus::CopyFrom(const FragmentStatus& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.FragmentStatus)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool FragmentStatus::IsInitialized() const {
+
   return true;
 }
 
 void FragmentStatus::Swap(FragmentStatus* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void FragmentStatus::InternalSwap(FragmentStatus* other) {
-  using std::swap;
-  swap(profile_, other->profile_);
-  swap(handle_, other->handle_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(profile_, other->profile_);
+    std::swap(handle_, other->handle_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata FragmentStatus::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = FragmentStatus_descriptor_;
+  metadata.reflection = FragmentStatus_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void InitializeFragments::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int InitializeFragments::kFragmentFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 InitializeFragments::InitializeFragments()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_InitializeFragments.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.InitializeFragments)
 }
+
+void InitializeFragments::InitAsDefaultInstance() {
+}
+
 InitializeFragments::InitializeFragments(const InitializeFragments& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      fragment_(from.fragment_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.InitializeFragments)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void InitializeFragments::SharedCtor() {
+  _cached_size_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 InitializeFragments::~InitializeFragments() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.InitializeFragments)
   SharedDtor();
 }
 
 void InitializeFragments::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void InitializeFragments::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* InitializeFragments::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return InitializeFragments_descriptor_;
 }
 
 const InitializeFragments& InitializeFragments::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_InitializeFragments.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+InitializeFragments* InitializeFragments::default_instance_ = NULL;
+
+InitializeFragments* InitializeFragments::New() const {
+  return new InitializeFragments;
+}
 
 void InitializeFragments::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.InitializeFragments)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
   fragment_.Clear();
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool InitializeFragments::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.InitializeFragments)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // repeated .exec.bit.control.PlanFragment fragment = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_fragment:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_fragment()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(10)) goto parse_fragment;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.InitializeFragments)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.InitializeFragments)
-  return false;
 #undef DO_
 }
 
 void InitializeFragments::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.InitializeFragments)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
   // repeated .exec.bit.control.PlanFragment fragment = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragment_size()); i < n; i++) {
+  for (int i = 0; i < this->fragment_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1,
-      this->fragment(static_cast<int>(i)),
-      output);
+      1, this->fragment(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.InitializeFragments)
 }
 
-::google::protobuf::uint8* InitializeFragments::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.InitializeFragments)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+::google::protobuf::uint8* InitializeFragments::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // repeated .exec.bit.control.PlanFragment fragment = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragment_size()); i < n; i++) {
+  for (int i = 0; i < this->fragment_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->fragment(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->fragment(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.InitializeFragments)
   return target;
 }
 
-size_t InitializeFragments::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.InitializeFragments)
-  size_t total_size = 0;
+int InitializeFragments::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  // repeated .exec.bit.control.PlanFragment fragment = 1;
+  total_size += 1 * this->fragment_size();
+  for (int i = 0; i < this->fragment_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->fragment(i));
+  }
+
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // repeated .exec.bit.control.PlanFragment fragment = 1;
-  {
-    unsigned int count = static_cast<unsigned int>(this->fragment_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->fragment(static_cast<int>(i)));
-    }
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void InitializeFragments::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.InitializeFragments)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const InitializeFragments* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const InitializeFragments>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const InitializeFragments*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.InitializeFragments)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.InitializeFragments)
     MergeFrom(*source);
   }
 }
 
 void InitializeFragments::MergeFrom(const InitializeFragments& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.InitializeFragments)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   fragment_.MergeFrom(from.fragment_);
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void InitializeFragments::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.InitializeFragments)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void InitializeFragments::CopyFrom(const InitializeFragments& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.InitializeFragments)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool InitializeFragments::IsInitialized() const {
+
   return true;
 }
 
 void InitializeFragments::Swap(InitializeFragments* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void InitializeFragments::InternalSwap(InitializeFragments* other) {
-  using std::swap;
-  CastToBase(&fragment_)->InternalSwap(CastToBase(&other->fragment_));
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    fragment_.Swap(&other->fragment_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata InitializeFragments::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = InitializeFragments_descriptor_;
+  metadata.reflection = InitializeFragments_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void CustomMessage::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int CustomMessage::kTypeFieldNumber;
 const int CustomMessage::kMessageFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 CustomMessage::CustomMessage()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_CustomMessage.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.CustomMessage)
 }
+
+void CustomMessage::InitAsDefaultInstance() {
+}
+
 CustomMessage::CustomMessage(const CustomMessage& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  message_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_message()) {
-    message_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.message_);
-  }
-  type_ = from.type_;
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.CustomMessage)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void CustomMessage::SharedCtor() {
-  message_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
   type_ = 0;
+  message_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 CustomMessage::~CustomMessage() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.CustomMessage)
   SharedDtor();
 }
 
 void CustomMessage::SharedDtor() {
-  message_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ != &::google::protobuf::internal::kEmptyString) {
+    delete message_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void CustomMessage::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* CustomMessage::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return CustomMessage_descriptor_;
 }
 
 const CustomMessage& CustomMessage::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_CustomMessage.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+CustomMessage* CustomMessage::default_instance_ = NULL;
+
+CustomMessage* CustomMessage::New() const {
+  return new CustomMessage;
+}
 
 void CustomMessage::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.CustomMessage)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    message_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    type_ = 0;
+    if (has_message()) {
+      if (message_ != &::google::protobuf::internal::kEmptyString) {
+        message_->clear();
+      }
+    }
   }
-  type_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool CustomMessage::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.CustomMessage)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 type = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_type();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &type_)));
+          set_has_type();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_message;
         break;
       }
 
       // optional bytes message = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_message:
           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                 input, this->mutable_message()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.CustomMessage)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.CustomMessage)
-  return false;
 #undef DO_
 }
 
 void CustomMessage::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.CustomMessage)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 type = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->type(), output);
   }
 
   // optional bytes message = 2;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
+  if (has_message()) {
+    ::google::protobuf::internal::WireFormatLite::WriteBytes(
       2, this->message(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.CustomMessage)
 }
 
-::google::protobuf::uint8* CustomMessage::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.CustomMessage)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* CustomMessage::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 type = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_type()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->type(), target);
   }
 
   // optional bytes message = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_message()) {
     target =
       ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
         2, this->message(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.CustomMessage)
   return target;
 }
 
-size_t CustomMessage::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.CustomMessage)
-  size_t total_size = 0;
+int CustomMessage::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 3u) {
-    // optional bytes message = 2;
-    if (has_message()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::BytesSize(
-          this->message());
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional int32 type = 1;
     if (has_type()) {
       total_size += 1 +
@@ -1904,115 +1610,89 @@
           this->type());
     }
 
+    // optional bytes message = 2;
+    if (has_message()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::BytesSize(
+          this->message());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void CustomMessage::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.CustomMessage)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const CustomMessage* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const CustomMessage>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const CustomMessage*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.CustomMessage)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.CustomMessage)
     MergeFrom(*source);
   }
 }
 
 void CustomMessage::MergeFrom(const CustomMessage& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.CustomMessage)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_message();
-      message_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.message_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_type()) {
+      set_type(from.type());
     }
-    if (cached_has_bits & 0x00000002u) {
-      type_ = from.type_;
+    if (from.has_message()) {
+      set_message(from.message());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void CustomMessage::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.CustomMessage)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void CustomMessage::CopyFrom(const CustomMessage& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.CustomMessage)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool CustomMessage::IsInitialized() const {
+
   return true;
 }
 
 void CustomMessage::Swap(CustomMessage* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void CustomMessage::InternalSwap(CustomMessage* other) {
-  using std::swap;
-  message_.Swap(&other->message_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(type_, other->type_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(type_, other->type_);
+    std::swap(message_, other->message_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata CustomMessage::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = CustomMessage_descriptor_;
+  metadata.reflection = CustomMessage_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void PlanFragment::InitAsDefaultInstance() {
-  ::exec::bit::control::_PlanFragment_default_instance_._instance.get_mutable()->handle_ = const_cast< ::exec::bit::FragmentHandle*>(
-      ::exec::bit::FragmentHandle::internal_default_instance());
-  ::exec::bit::control::_PlanFragment_default_instance_._instance.get_mutable()->assignment_ = const_cast< ::exec::DrillbitEndpoint*>(
-      ::exec::DrillbitEndpoint::internal_default_instance());
-  ::exec::bit::control::_PlanFragment_default_instance_._instance.get_mutable()->foreman_ = const_cast< ::exec::DrillbitEndpoint*>(
-      ::exec::DrillbitEndpoint::internal_default_instance());
-  ::exec::bit::control::_PlanFragment_default_instance_._instance.get_mutable()->credentials_ = const_cast< ::exec::shared::UserCredentials*>(
-      ::exec::shared::UserCredentials::internal_default_instance());
-  ::exec::bit::control::_PlanFragment_default_instance_._instance.get_mutable()->context_ = const_cast< ::exec::bit::control::QueryContextInformation*>(
-      ::exec::bit::control::QueryContextInformation::internal_default_instance());
-}
-void PlanFragment::clear_handle() {
-  if (handle_ != NULL) handle_->Clear();
-  clear_has_handle();
-}
-void PlanFragment::clear_assignment() {
-  if (assignment_ != NULL) assignment_->Clear();
-  clear_has_assignment();
-}
-void PlanFragment::clear_foreman() {
-  if (foreman_ != NULL) foreman_->Clear();
-  clear_has_foreman();
-}
-void PlanFragment::clear_credentials() {
-  if (credentials_ != NULL) credentials_->Clear();
-  clear_has_credentials();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int PlanFragment::kHandleFieldNumber;
 const int PlanFragment::kNetworkCostFieldNumber;
 const int PlanFragment::kCpuCostFieldNumber;
@@ -2028,671 +1708,593 @@
 const int PlanFragment::kOptionsJsonFieldNumber;
 const int PlanFragment::kContextFieldNumber;
 const int PlanFragment::kCollectorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 PlanFragment::PlanFragment()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_PlanFragment.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.PlanFragment)
 }
+
+void PlanFragment::InitAsDefaultInstance() {
+  handle_ = const_cast< ::exec::bit::FragmentHandle*>(&::exec::bit::FragmentHandle::default_instance());
+  assignment_ = const_cast< ::exec::DrillbitEndpoint*>(&::exec::DrillbitEndpoint::default_instance());
+  foreman_ = const_cast< ::exec::DrillbitEndpoint*>(&::exec::DrillbitEndpoint::default_instance());
+  credentials_ = const_cast< ::exec::shared::UserCredentials*>(&::exec::shared::UserCredentials::default_instance());
+  context_ = const_cast< ::exec::bit::control::QueryContextInformation*>(&::exec::bit::control::QueryContextInformation::default_instance());
+}
+
 PlanFragment::PlanFragment(const PlanFragment& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      collector_(from.collector_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  fragment_json_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_fragment_json()) {
-    fragment_json_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.fragment_json_);
-  }
-  options_json_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_options_json()) {
-    options_json_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.options_json_);
-  }
-  if (from.has_handle()) {
-    handle_ = new ::exec::bit::FragmentHandle(*from.handle_);
-  } else {
-    handle_ = NULL;
-  }
-  if (from.has_assignment()) {
-    assignment_ = new ::exec::DrillbitEndpoint(*from.assignment_);
-  } else {
-    assignment_ = NULL;
-  }
-  if (from.has_foreman()) {
-    foreman_ = new ::exec::DrillbitEndpoint(*from.foreman_);
-  } else {
-    foreman_ = NULL;
-  }
-  if (from.has_credentials()) {
-    credentials_ = new ::exec::shared::UserCredentials(*from.credentials_);
-  } else {
-    credentials_ = NULL;
-  }
-  if (from.has_context()) {
-    context_ = new ::exec::bit::control::QueryContextInformation(*from.context_);
-  } else {
-    context_ = NULL;
-  }
-  ::memcpy(&network_cost_, &from.network_cost_,
-    static_cast<size_t>(reinterpret_cast<char*>(&mem_max_) -
-    reinterpret_cast<char*>(&network_cost_)) + sizeof(mem_max_));
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.PlanFragment)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void PlanFragment::SharedCtor() {
-  fragment_json_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  options_json_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&handle_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&leaf_fragment_) -
-      reinterpret_cast<char*>(&handle_)) + sizeof(leaf_fragment_));
+  _cached_size_ = 0;
+  handle_ = NULL;
+  network_cost_ = 0;
+  cpu_cost_ = 0;
+  disk_cost_ = 0;
+  memory_cost_ = 0;
+  fragment_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  leaf_fragment_ = false;
+  assignment_ = NULL;
+  foreman_ = NULL;
   mem_initial_ = GOOGLE_LONGLONG(20000000);
   mem_max_ = GOOGLE_LONGLONG(2000000000);
+  credentials_ = NULL;
+  options_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  context_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 PlanFragment::~PlanFragment() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.PlanFragment)
   SharedDtor();
 }
 
 void PlanFragment::SharedDtor() {
-  fragment_json_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  options_json_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete handle_;
-  if (this != internal_default_instance()) delete assignment_;
-  if (this != internal_default_instance()) delete foreman_;
-  if (this != internal_default_instance()) delete credentials_;
-  if (this != internal_default_instance()) delete context_;
+  if (fragment_json_ != &::google::protobuf::internal::kEmptyString) {
+    delete fragment_json_;
+  }
+  if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+    delete options_json_;
+  }
+  if (this != default_instance_) {
+    delete handle_;
+    delete assignment_;
+    delete foreman_;
+    delete credentials_;
+    delete context_;
+  }
 }
 
 void PlanFragment::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* PlanFragment::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return PlanFragment_descriptor_;
 }
 
 const PlanFragment& PlanFragment::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_PlanFragment.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+PlanFragment* PlanFragment::default_instance_ = NULL;
+
+PlanFragment* PlanFragment::New() const {
+  return new PlanFragment;
+}
 
 void PlanFragment::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.PlanFragment)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  collector_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 127u) {
-    if (cached_has_bits & 0x00000001u) {
-      fragment_json_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_handle()) {
+      if (handle_ != NULL) handle_->::exec::bit::FragmentHandle::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      options_json_.ClearNonDefaultToEmptyNoArena();
+    network_cost_ = 0;
+    cpu_cost_ = 0;
+    disk_cost_ = 0;
+    memory_cost_ = 0;
+    if (has_fragment_json()) {
+      if (fragment_json_ != &::google::protobuf::internal::kEmptyString) {
+        fragment_json_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      GOOGLE_DCHECK(handle_ != NULL);
-      handle_->Clear();
-    }
-    if (cached_has_bits & 0x00000008u) {
-      GOOGLE_DCHECK(assignment_ != NULL);
-      assignment_->Clear();
-    }
-    if (cached_has_bits & 0x00000010u) {
-      GOOGLE_DCHECK(foreman_ != NULL);
-      foreman_->Clear();
-    }
-    if (cached_has_bits & 0x00000020u) {
-      GOOGLE_DCHECK(credentials_ != NULL);
-      credentials_->Clear();
-    }
-    if (cached_has_bits & 0x00000040u) {
-      GOOGLE_DCHECK(context_ != NULL);
-      context_->Clear();
+    leaf_fragment_ = false;
+    if (has_assignment()) {
+      if (assignment_ != NULL) assignment_->::exec::DrillbitEndpoint::Clear();
     }
   }
-  network_cost_ = 0;
-  if (cached_has_bits & 16128u) {
-    ::memset(&cpu_cost_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&leaf_fragment_) -
-        reinterpret_cast<char*>(&cpu_cost_)) + sizeof(leaf_fragment_));
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (has_foreman()) {
+      if (foreman_ != NULL) foreman_->::exec::DrillbitEndpoint::Clear();
+    }
     mem_initial_ = GOOGLE_LONGLONG(20000000);
     mem_max_ = GOOGLE_LONGLONG(2000000000);
+    if (has_credentials()) {
+      if (credentials_ != NULL) credentials_->::exec::shared::UserCredentials::Clear();
+    }
+    if (has_options_json()) {
+      if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+        options_json_->clear();
+      }
+    }
+    if (has_context()) {
+      if (context_ != NULL) context_->::exec::bit::control::QueryContextInformation::Clear();
+    }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  collector_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool PlanFragment::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.PlanFragment)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(16383u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.bit.FragmentHandle handle = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_handle()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(37)) goto parse_network_cost;
         break;
       }
 
       // optional float network_cost = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(37u /* 37 & 0xFF */)) {
-          set_has_network_cost();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
+         parse_network_cost:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                  input, &network_cost_)));
+          set_has_network_cost();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(45)) goto parse_cpu_cost;
         break;
       }
 
       // optional float cpu_cost = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(45u /* 45 & 0xFF */)) {
-          set_has_cpu_cost();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
+         parse_cpu_cost:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                  input, &cpu_cost_)));
+          set_has_cpu_cost();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(53)) goto parse_disk_cost;
         break;
       }
 
       // optional float disk_cost = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(53u /* 53 & 0xFF */)) {
-          set_has_disk_cost();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
+         parse_disk_cost:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                  input, &disk_cost_)));
+          set_has_disk_cost();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(61)) goto parse_memory_cost;
         break;
       }
 
       // optional float memory_cost = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(61u /* 61 & 0xFF */)) {
-          set_has_memory_cost();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) {
+         parse_memory_cost:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>(
                  input, &memory_cost_)));
+          set_has_memory_cost();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(66)) goto parse_fragment_json;
         break;
       }
 
       // optional string fragment_json = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(66u /* 66 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_fragment_json:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_fragment_json()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->fragment_json().data(), static_cast<int>(this->fragment_json().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.bit.control.PlanFragment.fragment_json");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->fragment_json().data(), this->fragment_json().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(72)) goto parse_leaf_fragment;
         break;
       }
 
       // optional bool leaf_fragment = 9;
       case 9: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(72u /* 72 & 0xFF */)) {
-          set_has_leaf_fragment();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_leaf_fragment:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &leaf_fragment_)));
+          set_has_leaf_fragment();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(82)) goto parse_assignment;
         break;
       }
 
       // optional .exec.DrillbitEndpoint assignment = 10;
       case 10: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(82u /* 82 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_assignment:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_assignment()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(90)) goto parse_foreman;
         break;
       }
 
       // optional .exec.DrillbitEndpoint foreman = 11;
       case 11: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(90u /* 90 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_foreman:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_foreman()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(96)) goto parse_mem_initial;
         break;
       }
 
       // optional int64 mem_initial = 12 [default = 20000000];
       case 12: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(96u /* 96 & 0xFF */)) {
-          set_has_mem_initial();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_mem_initial:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &mem_initial_)));
+          set_has_mem_initial();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(104)) goto parse_mem_max;
         break;
       }
 
       // optional int64 mem_max = 13 [default = 2000000000];
       case 13: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(104u /* 104 & 0xFF */)) {
-          set_has_mem_max();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_mem_max:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &mem_max_)));
+          set_has_mem_max();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(114)) goto parse_credentials;
         break;
       }
 
       // optional .exec.shared.UserCredentials credentials = 14;
       case 14: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(114u /* 114 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_credentials:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_credentials()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(122)) goto parse_options_json;
         break;
       }
 
       // optional string options_json = 15;
       case 15: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(122u /* 122 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_options_json:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_options_json()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->options_json().data(), static_cast<int>(this->options_json().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.bit.control.PlanFragment.options_json");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->options_json().data(), this->options_json().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(130)) goto parse_context;
         break;
       }
 
       // optional .exec.bit.control.QueryContextInformation context = 16;
       case 16: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(130u /* 130 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_context:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_context()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(138)) goto parse_collector;
         break;
       }
 
       // repeated .exec.bit.control.Collector collector = 17;
       case 17: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(138u /* 138 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_collector:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_collector()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(138)) goto parse_collector;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.PlanFragment)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.PlanFragment)
-  return false;
 #undef DO_
 }
 
 void PlanFragment::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.PlanFragment)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.bit.FragmentHandle handle = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_handle()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_handle(), output);
+      1, this->handle(), output);
   }
 
   // optional float network_cost = 4;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_network_cost()) {
     ::google::protobuf::internal::WireFormatLite::WriteFloat(4, this->network_cost(), output);
   }
 
   // optional float cpu_cost = 5;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_cpu_cost()) {
     ::google::protobuf::internal::WireFormatLite::WriteFloat(5, this->cpu_cost(), output);
   }
 
   // optional float disk_cost = 6;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_disk_cost()) {
     ::google::protobuf::internal::WireFormatLite::WriteFloat(6, this->disk_cost(), output);
   }
 
   // optional float memory_cost = 7;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_memory_cost()) {
     ::google::protobuf::internal::WireFormatLite::WriteFloat(7, this->memory_cost(), output);
   }
 
   // optional string fragment_json = 8;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->fragment_json().data(), static_cast<int>(this->fragment_json().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.PlanFragment.fragment_json");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_fragment_json()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->fragment_json().data(), this->fragment_json().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       8, this->fragment_json(), output);
   }
 
   // optional bool leaf_fragment = 9;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_leaf_fragment()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(9, this->leaf_fragment(), output);
   }
 
   // optional .exec.DrillbitEndpoint assignment = 10;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_assignment()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      10, this->_internal_assignment(), output);
+      10, this->assignment(), output);
   }
 
   // optional .exec.DrillbitEndpoint foreman = 11;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_foreman()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      11, this->_internal_foreman(), output);
+      11, this->foreman(), output);
   }
 
   // optional int64 mem_initial = 12 [default = 20000000];
-  if (cached_has_bits & 0x00001000u) {
+  if (has_mem_initial()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(12, this->mem_initial(), output);
   }
 
   // optional int64 mem_max = 13 [default = 2000000000];
-  if (cached_has_bits & 0x00002000u) {
+  if (has_mem_max()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(13, this->mem_max(), output);
   }
 
   // optional .exec.shared.UserCredentials credentials = 14;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_credentials()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      14, this->_internal_credentials(), output);
+      14, this->credentials(), output);
   }
 
   // optional string options_json = 15;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->options_json().data(), static_cast<int>(this->options_json().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.PlanFragment.options_json");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_options_json()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->options_json().data(), this->options_json().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       15, this->options_json(), output);
   }
 
   // optional .exec.bit.control.QueryContextInformation context = 16;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_context()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      16, this->_internal_context(), output);
+      16, this->context(), output);
   }
 
   // repeated .exec.bit.control.Collector collector = 17;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->collector_size()); i < n; i++) {
+  for (int i = 0; i < this->collector_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      17,
-      this->collector(static_cast<int>(i)),
-      output);
+      17, this->collector(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.PlanFragment)
 }
 
-::google::protobuf::uint8* PlanFragment::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.PlanFragment)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* PlanFragment::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.bit.FragmentHandle handle = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_handle()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_handle(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->handle(), target);
   }
 
   // optional float network_cost = 4;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_network_cost()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(4, this->network_cost(), target);
   }
 
   // optional float cpu_cost = 5;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_cpu_cost()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(5, this->cpu_cost(), target);
   }
 
   // optional float disk_cost = 6;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_disk_cost()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(6, this->disk_cost(), target);
   }
 
   // optional float memory_cost = 7;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_memory_cost()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteFloatToArray(7, this->memory_cost(), target);
   }
 
   // optional string fragment_json = 8;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->fragment_json().data(), static_cast<int>(this->fragment_json().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.PlanFragment.fragment_json");
+  if (has_fragment_json()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->fragment_json().data(), this->fragment_json().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         8, this->fragment_json(), target);
   }
 
   // optional bool leaf_fragment = 9;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_leaf_fragment()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(9, this->leaf_fragment(), target);
   }
 
   // optional .exec.DrillbitEndpoint assignment = 10;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_assignment()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        10, this->_internal_assignment(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        10, this->assignment(), target);
   }
 
   // optional .exec.DrillbitEndpoint foreman = 11;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_foreman()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        11, this->_internal_foreman(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        11, this->foreman(), target);
   }
 
   // optional int64 mem_initial = 12 [default = 20000000];
-  if (cached_has_bits & 0x00001000u) {
+  if (has_mem_initial()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(12, this->mem_initial(), target);
   }
 
   // optional int64 mem_max = 13 [default = 2000000000];
-  if (cached_has_bits & 0x00002000u) {
+  if (has_mem_max()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(13, this->mem_max(), target);
   }
 
   // optional .exec.shared.UserCredentials credentials = 14;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_credentials()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        14, this->_internal_credentials(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        14, this->credentials(), target);
   }
 
   // optional string options_json = 15;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->options_json().data(), static_cast<int>(this->options_json().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.PlanFragment.options_json");
+  if (has_options_json()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->options_json().data(), this->options_json().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         15, this->options_json(), target);
   }
 
   // optional .exec.bit.control.QueryContextInformation context = 16;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_context()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        16, this->_internal_context(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        16, this->context(), target);
   }
 
   // repeated .exec.bit.control.Collector collector = 17;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->collector_size()); i < n; i++) {
+  for (int i = 0; i < this->collector_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        17, this->collector(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        17, this->collector(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.PlanFragment)
   return target;
 }
 
-size_t PlanFragment::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.PlanFragment)
-  size_t total_size = 0;
+int PlanFragment::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.bit.control.Collector collector = 17;
-  {
-    unsigned int count = static_cast<unsigned int>(this->collector_size());
-    total_size += 2UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->collector(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 255u) {
-    // optional string fragment_json = 8;
-    if (has_fragment_json()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->fragment_json());
-    }
-
-    // optional string options_json = 15;
-    if (has_options_json()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->options_json());
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.bit.FragmentHandle handle = 1;
     if (has_handle()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *handle_);
-    }
-
-    // optional .exec.DrillbitEndpoint assignment = 10;
-    if (has_assignment()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *assignment_);
-    }
-
-    // optional .exec.DrillbitEndpoint foreman = 11;
-    if (has_foreman()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *foreman_);
-    }
-
-    // optional .exec.shared.UserCredentials credentials = 14;
-    if (has_credentials()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *credentials_);
-    }
-
-    // optional .exec.bit.control.QueryContextInformation context = 16;
-    if (has_context()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *context_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->handle());
     }
 
     // optional float network_cost = 4;
@@ -2700,8 +2302,6 @@
       total_size += 1 + 4;
     }
 
-  }
-  if (_has_bits_[8 / 32] & 16128u) {
     // optional float cpu_cost = 5;
     if (has_cpu_cost()) {
       total_size += 1 + 4;
@@ -2717,11 +2317,34 @@
       total_size += 1 + 4;
     }
 
+    // optional string fragment_json = 8;
+    if (has_fragment_json()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->fragment_json());
+    }
+
     // optional bool leaf_fragment = 9;
     if (has_leaf_fragment()) {
       total_size += 1 + 1;
     }
 
+    // optional .exec.DrillbitEndpoint assignment = 10;
+    if (has_assignment()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->assignment());
+    }
+
+  }
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    // optional .exec.DrillbitEndpoint foreman = 11;
+    if (has_foreman()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->foreman());
+    }
+
     // optional int64 mem_initial = 12 [default = 20000000];
     if (has_mem_initial()) {
       total_size += 1 +
@@ -2736,355 +2359,359 @@
           this->mem_max());
     }
 
+    // optional .exec.shared.UserCredentials credentials = 14;
+    if (has_credentials()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->credentials());
+    }
+
+    // optional string options_json = 15;
+    if (has_options_json()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->options_json());
+    }
+
+    // optional .exec.bit.control.QueryContextInformation context = 16;
+    if (has_context()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->context());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.bit.control.Collector collector = 17;
+  total_size += 2 * this->collector_size();
+  for (int i = 0; i < this->collector_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->collector(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void PlanFragment::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.PlanFragment)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const PlanFragment* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const PlanFragment>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const PlanFragment*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.PlanFragment)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.PlanFragment)
     MergeFrom(*source);
   }
 }
 
 void PlanFragment::MergeFrom(const PlanFragment& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.PlanFragment)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   collector_.MergeFrom(from.collector_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_fragment_json();
-      fragment_json_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.fragment_json_);
-    }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_options_json();
-      options_json_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.options_json_);
-    }
-    if (cached_has_bits & 0x00000004u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_handle()) {
       mutable_handle()->::exec::bit::FragmentHandle::MergeFrom(from.handle());
     }
-    if (cached_has_bits & 0x00000008u) {
+    if (from.has_network_cost()) {
+      set_network_cost(from.network_cost());
+    }
+    if (from.has_cpu_cost()) {
+      set_cpu_cost(from.cpu_cost());
+    }
+    if (from.has_disk_cost()) {
+      set_disk_cost(from.disk_cost());
+    }
+    if (from.has_memory_cost()) {
+      set_memory_cost(from.memory_cost());
+    }
+    if (from.has_fragment_json()) {
+      set_fragment_json(from.fragment_json());
+    }
+    if (from.has_leaf_fragment()) {
+      set_leaf_fragment(from.leaf_fragment());
+    }
+    if (from.has_assignment()) {
       mutable_assignment()->::exec::DrillbitEndpoint::MergeFrom(from.assignment());
     }
-    if (cached_has_bits & 0x00000010u) {
+  }
+  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (from.has_foreman()) {
       mutable_foreman()->::exec::DrillbitEndpoint::MergeFrom(from.foreman());
     }
-    if (cached_has_bits & 0x00000020u) {
+    if (from.has_mem_initial()) {
+      set_mem_initial(from.mem_initial());
+    }
+    if (from.has_mem_max()) {
+      set_mem_max(from.mem_max());
+    }
+    if (from.has_credentials()) {
       mutable_credentials()->::exec::shared::UserCredentials::MergeFrom(from.credentials());
     }
-    if (cached_has_bits & 0x00000040u) {
+    if (from.has_options_json()) {
+      set_options_json(from.options_json());
+    }
+    if (from.has_context()) {
       mutable_context()->::exec::bit::control::QueryContextInformation::MergeFrom(from.context());
     }
-    if (cached_has_bits & 0x00000080u) {
-      network_cost_ = from.network_cost_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 16128u) {
-    if (cached_has_bits & 0x00000100u) {
-      cpu_cost_ = from.cpu_cost_;
-    }
-    if (cached_has_bits & 0x00000200u) {
-      disk_cost_ = from.disk_cost_;
-    }
-    if (cached_has_bits & 0x00000400u) {
-      memory_cost_ = from.memory_cost_;
-    }
-    if (cached_has_bits & 0x00000800u) {
-      leaf_fragment_ = from.leaf_fragment_;
-    }
-    if (cached_has_bits & 0x00001000u) {
-      mem_initial_ = from.mem_initial_;
-    }
-    if (cached_has_bits & 0x00002000u) {
-      mem_max_ = from.mem_max_;
-    }
-    _has_bits_[0] |= cached_has_bits;
-  }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void PlanFragment::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.PlanFragment)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void PlanFragment::CopyFrom(const PlanFragment& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.PlanFragment)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool PlanFragment::IsInitialized() const {
+
   return true;
 }
 
 void PlanFragment::Swap(PlanFragment* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void PlanFragment::InternalSwap(PlanFragment* other) {
-  using std::swap;
-  CastToBase(&collector_)->InternalSwap(CastToBase(&other->collector_));
-  fragment_json_.Swap(&other->fragment_json_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  options_json_.Swap(&other->options_json_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(handle_, other->handle_);
-  swap(assignment_, other->assignment_);
-  swap(foreman_, other->foreman_);
-  swap(credentials_, other->credentials_);
-  swap(context_, other->context_);
-  swap(network_cost_, other->network_cost_);
-  swap(cpu_cost_, other->cpu_cost_);
-  swap(disk_cost_, other->disk_cost_);
-  swap(memory_cost_, other->memory_cost_);
-  swap(leaf_fragment_, other->leaf_fragment_);
-  swap(mem_initial_, other->mem_initial_);
-  swap(mem_max_, other->mem_max_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(handle_, other->handle_);
+    std::swap(network_cost_, other->network_cost_);
+    std::swap(cpu_cost_, other->cpu_cost_);
+    std::swap(disk_cost_, other->disk_cost_);
+    std::swap(memory_cost_, other->memory_cost_);
+    std::swap(fragment_json_, other->fragment_json_);
+    std::swap(leaf_fragment_, other->leaf_fragment_);
+    std::swap(assignment_, other->assignment_);
+    std::swap(foreman_, other->foreman_);
+    std::swap(mem_initial_, other->mem_initial_);
+    std::swap(mem_max_, other->mem_max_);
+    std::swap(credentials_, other->credentials_);
+    std::swap(options_json_, other->options_json_);
+    std::swap(context_, other->context_);
+    collector_.Swap(&other->collector_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata PlanFragment::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = PlanFragment_descriptor_;
+  metadata.reflection = PlanFragment_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void Collector::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int Collector::kOppositeMajorFragmentIdFieldNumber;
 const int Collector::kIncomingMinorFragmentFieldNumber;
 const int Collector::kSupportsOutOfOrderFieldNumber;
 const int Collector::kIsSpoolingFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 Collector::Collector()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_Collector.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.Collector)
 }
+
+void Collector::InitAsDefaultInstance() {
+}
+
 Collector::Collector(const Collector& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      incoming_minor_fragment_(from.incoming_minor_fragment_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&opposite_major_fragment_id_, &from.opposite_major_fragment_id_,
-    static_cast<size_t>(reinterpret_cast<char*>(&is_spooling_) -
-    reinterpret_cast<char*>(&opposite_major_fragment_id_)) + sizeof(is_spooling_));
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.Collector)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void Collector::SharedCtor() {
-  ::memset(&opposite_major_fragment_id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&is_spooling_) -
-      reinterpret_cast<char*>(&opposite_major_fragment_id_)) + sizeof(is_spooling_));
+  _cached_size_ = 0;
+  opposite_major_fragment_id_ = 0;
+  supports_out_of_order_ = false;
+  is_spooling_ = false;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 Collector::~Collector() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.Collector)
   SharedDtor();
 }
 
 void Collector::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void Collector::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* Collector::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return Collector_descriptor_;
 }
 
 const Collector& Collector::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_Collector.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+Collector* Collector::default_instance_ = NULL;
+
+Collector* Collector::New() const {
+  return new Collector;
+}
 
 void Collector::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.Collector)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  incoming_minor_fragment_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    ::memset(&opposite_major_fragment_id_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&is_spooling_) -
-        reinterpret_cast<char*>(&opposite_major_fragment_id_)) + sizeof(is_spooling_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    opposite_major_fragment_id_ = 0;
+    supports_out_of_order_ = false;
+    is_spooling_ = false;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  incoming_minor_fragment_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool Collector::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.Collector)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 opposite_major_fragment_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_opposite_major_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &opposite_major_fragment_id_)));
+          set_has_opposite_major_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_incoming_minor_fragment;
         break;
       }
 
       // repeated int32 incoming_minor_fragment = 2 [packed = true];
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_incoming_minor_fragment:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, this->mutable_incoming_minor_fragment())));
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitiveNoInline<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
-                 1, 18u, input, this->mutable_incoming_minor_fragment())));
+                 1, 18, input, this->mutable_incoming_minor_fragment())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_supports_out_of_order;
         break;
       }
 
       // optional bool supports_out_of_order = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_supports_out_of_order();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_supports_out_of_order:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &supports_out_of_order_)));
+          set_has_supports_out_of_order();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_is_spooling;
         break;
       }
 
       // optional bool is_spooling = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_is_spooling();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_is_spooling:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &is_spooling_)));
+          set_has_is_spooling();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.Collector)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.Collector)
-  return false;
 #undef DO_
 }
 
 void Collector::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.Collector)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 opposite_major_fragment_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_opposite_major_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->opposite_major_fragment_id(), output);
   }
 
   // repeated int32 incoming_minor_fragment = 2 [packed = true];
   if (this->incoming_minor_fragment_size() > 0) {
     ::google::protobuf::internal::WireFormatLite::WriteTag(2, ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED, output);
-    output->WriteVarint32(static_cast< ::google::protobuf::uint32>(
-        _incoming_minor_fragment_cached_byte_size_));
+    output->WriteVarint32(_incoming_minor_fragment_cached_byte_size_);
   }
-  for (int i = 0, n = this->incoming_minor_fragment_size(); i < n; i++) {
+  for (int i = 0; i < this->incoming_minor_fragment_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32NoTag(
       this->incoming_minor_fragment(i), output);
   }
 
   // optional bool supports_out_of_order = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_supports_out_of_order()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->supports_out_of_order(), output);
   }
 
   // optional bool is_spooling = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_is_spooling()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(4, this->is_spooling(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.Collector)
 }
 
-::google::protobuf::uint8* Collector::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.Collector)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* Collector::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 opposite_major_fragment_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_opposite_major_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->opposite_major_fragment_id(), target);
   }
 
@@ -3095,56 +2722,34 @@
       ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED,
       target);
     target = ::google::protobuf::io::CodedOutputStream::WriteVarint32ToArray(
-        static_cast< ::google::protobuf::int32>(
-            _incoming_minor_fragment_cached_byte_size_), target);
+      _incoming_minor_fragment_cached_byte_size_, target);
+  }
+  for (int i = 0; i < this->incoming_minor_fragment_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      WriteInt32NoTagToArray(this->incoming_minor_fragment_, target);
+      WriteInt32NoTagToArray(this->incoming_minor_fragment(i), target);
   }
 
   // optional bool supports_out_of_order = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_supports_out_of_order()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->supports_out_of_order(), target);
   }
 
   // optional bool is_spooling = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_is_spooling()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(4, this->is_spooling(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.Collector)
   return target;
 }
 
-size_t Collector::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.Collector)
-  size_t total_size = 0;
+int Collector::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated int32 incoming_minor_fragment = 2 [packed = true];
-  {
-    size_t data_size = ::google::protobuf::internal::WireFormatLite::
-      Int32Size(this->incoming_minor_fragment_);
-    if (data_size > 0) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int32Size(
-            static_cast< ::google::protobuf::int32>(data_size));
-    }
-    int cached_size = ::google::protobuf::internal::ToCachedSize(data_size);
-    GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
-    _incoming_minor_fragment_cached_byte_size_ = cached_size;
-    GOOGLE_SAFE_CONCURRENT_WRITES_END();
-    total_size += data_size;
-  }
-
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional int32 opposite_major_fragment_id = 1;
     if (has_opposite_major_fragment_id()) {
       total_size += 1 +
@@ -3163,386 +2768,354 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated int32 incoming_minor_fragment = 2 [packed = true];
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->incoming_minor_fragment_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::
+        Int32Size(this->incoming_minor_fragment(i));
+    }
+    if (data_size > 0) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(data_size);
+    }
+    GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+    _incoming_minor_fragment_cached_byte_size_ = data_size;
+    GOOGLE_SAFE_CONCURRENT_WRITES_END();
+    total_size += data_size;
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void Collector::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.Collector)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const Collector* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const Collector>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const Collector*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.Collector)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.Collector)
     MergeFrom(*source);
   }
 }
 
 void Collector::MergeFrom(const Collector& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.Collector)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   incoming_minor_fragment_.MergeFrom(from.incoming_minor_fragment_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      opposite_major_fragment_id_ = from.opposite_major_fragment_id_;
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_opposite_major_fragment_id()) {
+      set_opposite_major_fragment_id(from.opposite_major_fragment_id());
     }
-    if (cached_has_bits & 0x00000002u) {
-      supports_out_of_order_ = from.supports_out_of_order_;
+    if (from.has_supports_out_of_order()) {
+      set_supports_out_of_order(from.supports_out_of_order());
     }
-    if (cached_has_bits & 0x00000004u) {
-      is_spooling_ = from.is_spooling_;
+    if (from.has_is_spooling()) {
+      set_is_spooling(from.is_spooling());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void Collector::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.Collector)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void Collector::CopyFrom(const Collector& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.Collector)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool Collector::IsInitialized() const {
+
   return true;
 }
 
 void Collector::Swap(Collector* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void Collector::InternalSwap(Collector* other) {
-  using std::swap;
-  incoming_minor_fragment_.InternalSwap(&other->incoming_minor_fragment_);
-  swap(opposite_major_fragment_id_, other->opposite_major_fragment_id_);
-  swap(supports_out_of_order_, other->supports_out_of_order_);
-  swap(is_spooling_, other->is_spooling_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(opposite_major_fragment_id_, other->opposite_major_fragment_id_);
+    incoming_minor_fragment_.Swap(&other->incoming_minor_fragment_);
+    std::swap(supports_out_of_order_, other->supports_out_of_order_);
+    std::swap(is_spooling_, other->is_spooling_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata Collector::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = Collector_descriptor_;
+  metadata.reflection = Collector_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void QueryContextInformation::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int QueryContextInformation::kQueryStartTimeFieldNumber;
 const int QueryContextInformation::kTimeZoneFieldNumber;
 const int QueryContextInformation::kDefaultSchemaNameFieldNumber;
 const int QueryContextInformation::kSessionIdFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 QueryContextInformation::QueryContextInformation()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_QueryContextInformation.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.QueryContextInformation)
 }
+
+void QueryContextInformation::InitAsDefaultInstance() {
+}
+
 QueryContextInformation::QueryContextInformation(const QueryContextInformation& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  default_schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_default_schema_name()) {
-    default_schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.default_schema_name_);
-  }
-  session_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_session_id()) {
-    session_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.session_id_);
-  }
-  ::memcpy(&query_start_time_, &from.query_start_time_,
-    static_cast<size_t>(reinterpret_cast<char*>(&time_zone_) -
-    reinterpret_cast<char*>(&query_start_time_)) + sizeof(time_zone_));
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.QueryContextInformation)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void QueryContextInformation::SharedCtor() {
-  default_schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  session_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&query_start_time_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&time_zone_) -
-      reinterpret_cast<char*>(&query_start_time_)) + sizeof(time_zone_));
+  _cached_size_ = 0;
+  query_start_time_ = GOOGLE_LONGLONG(0);
+  time_zone_ = 0;
+  default_schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  session_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 QueryContextInformation::~QueryContextInformation() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.QueryContextInformation)
   SharedDtor();
 }
 
 void QueryContextInformation::SharedDtor() {
-  default_schema_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  session_id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (default_schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete default_schema_name_;
+  }
+  if (session_id_ != &::google::protobuf::internal::kEmptyString) {
+    delete session_id_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void QueryContextInformation::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* QueryContextInformation::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return QueryContextInformation_descriptor_;
 }
 
 const QueryContextInformation& QueryContextInformation::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_QueryContextInformation.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+QueryContextInformation* QueryContextInformation::default_instance_ = NULL;
+
+QueryContextInformation* QueryContextInformation::New() const {
+  return new QueryContextInformation;
+}
 
 void QueryContextInformation::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.QueryContextInformation)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      default_schema_name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    query_start_time_ = GOOGLE_LONGLONG(0);
+    time_zone_ = 0;
+    if (has_default_schema_name()) {
+      if (default_schema_name_ != &::google::protobuf::internal::kEmptyString) {
+        default_schema_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      session_id_.ClearNonDefaultToEmptyNoArena();
+    if (has_session_id()) {
+      if (session_id_ != &::google::protobuf::internal::kEmptyString) {
+        session_id_->clear();
+      }
     }
   }
-  if (cached_has_bits & 12u) {
-    ::memset(&query_start_time_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&time_zone_) -
-        reinterpret_cast<char*>(&query_start_time_)) + sizeof(time_zone_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool QueryContextInformation::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.QueryContextInformation)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int64 query_start_time = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_query_start_time();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &query_start_time_)));
+          set_has_query_start_time();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_time_zone;
         break;
       }
 
       // optional int32 time_zone = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_time_zone();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_time_zone:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &time_zone_)));
+          set_has_time_zone();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_default_schema_name;
         break;
       }
 
       // optional string default_schema_name = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_default_schema_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_default_schema_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->default_schema_name().data(), static_cast<int>(this->default_schema_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.bit.control.QueryContextInformation.default_schema_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->default_schema_name().data(), this->default_schema_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_session_id;
         break;
       }
 
       // optional string session_id = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_session_id:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_session_id()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->session_id().data(), static_cast<int>(this->session_id().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.bit.control.QueryContextInformation.session_id");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->session_id().data(), this->session_id().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.QueryContextInformation)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.QueryContextInformation)
-  return false;
 #undef DO_
 }
 
 void QueryContextInformation::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.QueryContextInformation)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int64 query_start_time = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_query_start_time()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(1, this->query_start_time(), output);
   }
 
   // optional int32 time_zone = 2;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_time_zone()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->time_zone(), output);
   }
 
   // optional string default_schema_name = 3;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->default_schema_name().data(), static_cast<int>(this->default_schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.QueryContextInformation.default_schema_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_default_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->default_schema_name().data(), this->default_schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       3, this->default_schema_name(), output);
   }
 
   // optional string session_id = 4;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->session_id().data(), static_cast<int>(this->session_id().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.QueryContextInformation.session_id");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_session_id()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->session_id().data(), this->session_id().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->session_id(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.QueryContextInformation)
 }
 
-::google::protobuf::uint8* QueryContextInformation::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.QueryContextInformation)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* QueryContextInformation::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int64 query_start_time = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_query_start_time()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(1, this->query_start_time(), target);
   }
 
   // optional int32 time_zone = 2;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_time_zone()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->time_zone(), target);
   }
 
   // optional string default_schema_name = 3;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->default_schema_name().data(), static_cast<int>(this->default_schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.QueryContextInformation.default_schema_name");
+  if (has_default_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->default_schema_name().data(), this->default_schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         3, this->default_schema_name(), target);
   }
 
   // optional string session_id = 4;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->session_id().data(), static_cast<int>(this->session_id().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.control.QueryContextInformation.session_id");
+  if (has_session_id()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->session_id().data(), this->session_id().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->session_id(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.QueryContextInformation)
   return target;
 }
 
-size_t QueryContextInformation::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.QueryContextInformation)
-  size_t total_size = 0;
+int QueryContextInformation::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 15u) {
-    // optional string default_schema_name = 3;
-    if (has_default_schema_name()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->default_schema_name());
-    }
-
-    // optional string session_id = 4;
-    if (has_session_id()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->session_id());
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional int64 query_start_time = 1;
     if (has_query_start_time()) {
       total_size += 1 +
@@ -3557,337 +3130,301 @@
           this->time_zone());
     }
 
+    // optional string default_schema_name = 3;
+    if (has_default_schema_name()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->default_schema_name());
+    }
+
+    // optional string session_id = 4;
+    if (has_session_id()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->session_id());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void QueryContextInformation::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.QueryContextInformation)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const QueryContextInformation* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const QueryContextInformation>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const QueryContextInformation*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.QueryContextInformation)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.QueryContextInformation)
     MergeFrom(*source);
   }
 }
 
 void QueryContextInformation::MergeFrom(const QueryContextInformation& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.QueryContextInformation)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_default_schema_name();
-      default_schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.default_schema_name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_query_start_time()) {
+      set_query_start_time(from.query_start_time());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_session_id();
-      session_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.session_id_);
+    if (from.has_time_zone()) {
+      set_time_zone(from.time_zone());
     }
-    if (cached_has_bits & 0x00000004u) {
-      query_start_time_ = from.query_start_time_;
+    if (from.has_default_schema_name()) {
+      set_default_schema_name(from.default_schema_name());
     }
-    if (cached_has_bits & 0x00000008u) {
-      time_zone_ = from.time_zone_;
+    if (from.has_session_id()) {
+      set_session_id(from.session_id());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void QueryContextInformation::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.QueryContextInformation)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void QueryContextInformation::CopyFrom(const QueryContextInformation& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.QueryContextInformation)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool QueryContextInformation::IsInitialized() const {
+
   return true;
 }
 
 void QueryContextInformation::Swap(QueryContextInformation* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void QueryContextInformation::InternalSwap(QueryContextInformation* other) {
-  using std::swap;
-  default_schema_name_.Swap(&other->default_schema_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  session_id_.Swap(&other->session_id_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(query_start_time_, other->query_start_time_);
-  swap(time_zone_, other->time_zone_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(query_start_time_, other->query_start_time_);
+    std::swap(time_zone_, other->time_zone_);
+    std::swap(default_schema_name_, other->default_schema_name_);
+    std::swap(session_id_, other->session_id_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata QueryContextInformation::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = QueryContextInformation_descriptor_;
+  metadata.reflection = QueryContextInformation_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void WorkQueueStatus::InitAsDefaultInstance() {
-  ::exec::bit::control::_WorkQueueStatus_default_instance_._instance.get_mutable()->endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(
-      ::exec::DrillbitEndpoint::internal_default_instance());
-}
-void WorkQueueStatus::clear_endpoint() {
-  if (endpoint_ != NULL) endpoint_->Clear();
-  clear_has_endpoint();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int WorkQueueStatus::kEndpointFieldNumber;
 const int WorkQueueStatus::kQueueLengthFieldNumber;
 const int WorkQueueStatus::kReportTimeFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 WorkQueueStatus::WorkQueueStatus()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_WorkQueueStatus.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.WorkQueueStatus)
 }
+
+void WorkQueueStatus::InitAsDefaultInstance() {
+  endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(&::exec::DrillbitEndpoint::default_instance());
+}
+
 WorkQueueStatus::WorkQueueStatus(const WorkQueueStatus& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_endpoint()) {
-    endpoint_ = new ::exec::DrillbitEndpoint(*from.endpoint_);
-  } else {
-    endpoint_ = NULL;
-  }
-  ::memcpy(&report_time_, &from.report_time_,
-    static_cast<size_t>(reinterpret_cast<char*>(&queue_length_) -
-    reinterpret_cast<char*>(&report_time_)) + sizeof(queue_length_));
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.WorkQueueStatus)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void WorkQueueStatus::SharedCtor() {
-  ::memset(&endpoint_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&queue_length_) -
-      reinterpret_cast<char*>(&endpoint_)) + sizeof(queue_length_));
+  _cached_size_ = 0;
+  endpoint_ = NULL;
+  queue_length_ = 0;
+  report_time_ = GOOGLE_LONGLONG(0);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 WorkQueueStatus::~WorkQueueStatus() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.WorkQueueStatus)
   SharedDtor();
 }
 
 void WorkQueueStatus::SharedDtor() {
-  if (this != internal_default_instance()) delete endpoint_;
+  if (this != default_instance_) {
+    delete endpoint_;
+  }
 }
 
 void WorkQueueStatus::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* WorkQueueStatus::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return WorkQueueStatus_descriptor_;
 }
 
 const WorkQueueStatus& WorkQueueStatus::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_WorkQueueStatus.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+WorkQueueStatus* WorkQueueStatus::default_instance_ = NULL;
+
+WorkQueueStatus* WorkQueueStatus::New() const {
+  return new WorkQueueStatus;
+}
 
 void WorkQueueStatus::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.WorkQueueStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(endpoint_ != NULL);
-    endpoint_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_endpoint()) {
+      if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
+    }
+    queue_length_ = 0;
+    report_time_ = GOOGLE_LONGLONG(0);
   }
-  if (cached_has_bits & 6u) {
-    ::memset(&report_time_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&queue_length_) -
-        reinterpret_cast<char*>(&report_time_)) + sizeof(queue_length_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool WorkQueueStatus::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.WorkQueueStatus)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.DrillbitEndpoint endpoint = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_endpoint()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_queue_length;
         break;
       }
 
       // optional int32 queue_length = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_queue_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_queue_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &queue_length_)));
+          set_has_queue_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_report_time;
         break;
       }
 
       // optional int64 report_time = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_report_time();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_report_time:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &report_time_)));
+          set_has_report_time();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.WorkQueueStatus)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.WorkQueueStatus)
-  return false;
 #undef DO_
 }
 
 void WorkQueueStatus::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.WorkQueueStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.DrillbitEndpoint endpoint = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_endpoint()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_endpoint(), output);
+      1, this->endpoint(), output);
   }
 
   // optional int32 queue_length = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_queue_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->queue_length(), output);
   }
 
   // optional int64 report_time = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_report_time()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(3, this->report_time(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.WorkQueueStatus)
 }
 
-::google::protobuf::uint8* WorkQueueStatus::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.WorkQueueStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* WorkQueueStatus::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.DrillbitEndpoint endpoint = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_endpoint()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_endpoint(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->endpoint(), target);
   }
 
   // optional int32 queue_length = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_queue_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->queue_length(), target);
   }
 
   // optional int64 report_time = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_report_time()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(3, this->report_time(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.WorkQueueStatus)
   return target;
 }
 
-size_t WorkQueueStatus::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.WorkQueueStatus)
-  size_t total_size = 0;
+int WorkQueueStatus::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.DrillbitEndpoint endpoint = 1;
     if (has_endpoint()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *endpoint_);
-    }
-
-    // optional int64 report_time = 3;
-    if (has_report_time()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int64Size(
-          this->report_time());
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->endpoint());
     }
 
     // optional int32 queue_length = 2;
@@ -3897,429 +3434,352 @@
           this->queue_length());
     }
 
+    // optional int64 report_time = 3;
+    if (has_report_time()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int64Size(
+          this->report_time());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void WorkQueueStatus::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.WorkQueueStatus)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const WorkQueueStatus* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const WorkQueueStatus>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const WorkQueueStatus*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.WorkQueueStatus)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.WorkQueueStatus)
     MergeFrom(*source);
   }
 }
 
 void WorkQueueStatus::MergeFrom(const WorkQueueStatus& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.WorkQueueStatus)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_endpoint()) {
       mutable_endpoint()->::exec::DrillbitEndpoint::MergeFrom(from.endpoint());
     }
-    if (cached_has_bits & 0x00000002u) {
-      report_time_ = from.report_time_;
+    if (from.has_queue_length()) {
+      set_queue_length(from.queue_length());
     }
-    if (cached_has_bits & 0x00000004u) {
-      queue_length_ = from.queue_length_;
+    if (from.has_report_time()) {
+      set_report_time(from.report_time());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void WorkQueueStatus::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.WorkQueueStatus)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void WorkQueueStatus::CopyFrom(const WorkQueueStatus& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.WorkQueueStatus)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool WorkQueueStatus::IsInitialized() const {
+
   return true;
 }
 
 void WorkQueueStatus::Swap(WorkQueueStatus* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void WorkQueueStatus::InternalSwap(WorkQueueStatus* other) {
-  using std::swap;
-  swap(endpoint_, other->endpoint_);
-  swap(report_time_, other->report_time_);
-  swap(queue_length_, other->queue_length_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(endpoint_, other->endpoint_);
+    std::swap(queue_length_, other->queue_length_);
+    std::swap(report_time_, other->report_time_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata WorkQueueStatus::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = WorkQueueStatus_descriptor_;
+  metadata.reflection = WorkQueueStatus_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void FinishedReceiver::InitAsDefaultInstance() {
-  ::exec::bit::control::_FinishedReceiver_default_instance_._instance.get_mutable()->receiver_ = const_cast< ::exec::bit::FragmentHandle*>(
-      ::exec::bit::FragmentHandle::internal_default_instance());
-  ::exec::bit::control::_FinishedReceiver_default_instance_._instance.get_mutable()->sender_ = const_cast< ::exec::bit::FragmentHandle*>(
-      ::exec::bit::FragmentHandle::internal_default_instance());
-}
-void FinishedReceiver::clear_receiver() {
-  if (receiver_ != NULL) receiver_->Clear();
-  clear_has_receiver();
-}
-void FinishedReceiver::clear_sender() {
-  if (sender_ != NULL) sender_->Clear();
-  clear_has_sender();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int FinishedReceiver::kReceiverFieldNumber;
 const int FinishedReceiver::kSenderFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 FinishedReceiver::FinishedReceiver()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitControl_2eproto::scc_info_FinishedReceiver.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.control.FinishedReceiver)
 }
+
+void FinishedReceiver::InitAsDefaultInstance() {
+  receiver_ = const_cast< ::exec::bit::FragmentHandle*>(&::exec::bit::FragmentHandle::default_instance());
+  sender_ = const_cast< ::exec::bit::FragmentHandle*>(&::exec::bit::FragmentHandle::default_instance());
+}
+
 FinishedReceiver::FinishedReceiver(const FinishedReceiver& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_receiver()) {
-    receiver_ = new ::exec::bit::FragmentHandle(*from.receiver_);
-  } else {
-    receiver_ = NULL;
-  }
-  if (from.has_sender()) {
-    sender_ = new ::exec::bit::FragmentHandle(*from.sender_);
-  } else {
-    sender_ = NULL;
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.bit.control.FinishedReceiver)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void FinishedReceiver::SharedCtor() {
-  ::memset(&receiver_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&sender_) -
-      reinterpret_cast<char*>(&receiver_)) + sizeof(sender_));
+  _cached_size_ = 0;
+  receiver_ = NULL;
+  sender_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 FinishedReceiver::~FinishedReceiver() {
-  // @@protoc_insertion_point(destructor:exec.bit.control.FinishedReceiver)
   SharedDtor();
 }
 
 void FinishedReceiver::SharedDtor() {
-  if (this != internal_default_instance()) delete receiver_;
-  if (this != internal_default_instance()) delete sender_;
+  if (this != default_instance_) {
+    delete receiver_;
+    delete sender_;
+  }
 }
 
 void FinishedReceiver::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* FinishedReceiver::descriptor() {
-  ::protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return FinishedReceiver_descriptor_;
 }
 
 const FinishedReceiver& FinishedReceiver::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitControl_2eproto::scc_info_FinishedReceiver.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitControl_2eproto();
+  return *default_instance_;
 }
 
+FinishedReceiver* FinishedReceiver::default_instance_ = NULL;
+
+FinishedReceiver* FinishedReceiver::New() const {
+  return new FinishedReceiver;
+}
 
 void FinishedReceiver::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.control.FinishedReceiver)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(receiver_ != NULL);
-      receiver_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_receiver()) {
+      if (receiver_ != NULL) receiver_->::exec::bit::FragmentHandle::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(sender_ != NULL);
-      sender_->Clear();
+    if (has_sender()) {
+      if (sender_ != NULL) sender_->::exec::bit::FragmentHandle::Clear();
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool FinishedReceiver::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.control.FinishedReceiver)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.bit.FragmentHandle receiver = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_receiver()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_sender;
         break;
       }
 
       // optional .exec.bit.FragmentHandle sender = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_sender:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_sender()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.control.FinishedReceiver)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.control.FinishedReceiver)
-  return false;
 #undef DO_
 }
 
 void FinishedReceiver::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.control.FinishedReceiver)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.bit.FragmentHandle receiver = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_receiver()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_receiver(), output);
+      1, this->receiver(), output);
   }
 
   // optional .exec.bit.FragmentHandle sender = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_sender()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_sender(), output);
+      2, this->sender(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.control.FinishedReceiver)
 }
 
-::google::protobuf::uint8* FinishedReceiver::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.control.FinishedReceiver)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* FinishedReceiver::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.bit.FragmentHandle receiver = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_receiver()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_receiver(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->receiver(), target);
   }
 
   // optional .exec.bit.FragmentHandle sender = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_sender()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_sender(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->sender(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.control.FinishedReceiver)
   return target;
 }
 
-size_t FinishedReceiver::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.control.FinishedReceiver)
-  size_t total_size = 0;
+int FinishedReceiver::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 3u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.bit.FragmentHandle receiver = 1;
     if (has_receiver()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *receiver_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->receiver());
     }
 
     // optional .exec.bit.FragmentHandle sender = 2;
     if (has_sender()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *sender_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->sender());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void FinishedReceiver::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.control.FinishedReceiver)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const FinishedReceiver* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const FinishedReceiver>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const FinishedReceiver*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.control.FinishedReceiver)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.control.FinishedReceiver)
     MergeFrom(*source);
   }
 }
 
 void FinishedReceiver::MergeFrom(const FinishedReceiver& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.control.FinishedReceiver)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_receiver()) {
       mutable_receiver()->::exec::bit::FragmentHandle::MergeFrom(from.receiver());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_sender()) {
       mutable_sender()->::exec::bit::FragmentHandle::MergeFrom(from.sender());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void FinishedReceiver::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.control.FinishedReceiver)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void FinishedReceiver::CopyFrom(const FinishedReceiver& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.control.FinishedReceiver)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool FinishedReceiver::IsInitialized() const {
+
   return true;
 }
 
 void FinishedReceiver::Swap(FinishedReceiver* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void FinishedReceiver::InternalSwap(FinishedReceiver* other) {
-  using std::swap;
-  swap(receiver_, other->receiver_);
-  swap(sender_, other->sender_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(receiver_, other->receiver_);
+    std::swap(sender_, other->sender_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata FinishedReceiver::GetMetadata() const {
-  protobuf_BitControl_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitControl_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = FinishedReceiver_descriptor_;
+  metadata.reflection = FinishedReceiver_reflection_;
+  return metadata;
 }
 
 
 // @@protoc_insertion_point(namespace_scope)
+
 }  // namespace control
 }  // namespace bit
 }  // namespace exec
-namespace google {
-namespace protobuf {
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::BitControlHandshake* Arena::CreateMaybeMessage< ::exec::bit::control::BitControlHandshake >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::BitControlHandshake >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::BitStatus* Arena::CreateMaybeMessage< ::exec::bit::control::BitStatus >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::BitStatus >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::FragmentStatus* Arena::CreateMaybeMessage< ::exec::bit::control::FragmentStatus >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::FragmentStatus >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::InitializeFragments* Arena::CreateMaybeMessage< ::exec::bit::control::InitializeFragments >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::InitializeFragments >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::CustomMessage* Arena::CreateMaybeMessage< ::exec::bit::control::CustomMessage >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::CustomMessage >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::PlanFragment* Arena::CreateMaybeMessage< ::exec::bit::control::PlanFragment >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::PlanFragment >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::Collector* Arena::CreateMaybeMessage< ::exec::bit::control::Collector >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::Collector >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::QueryContextInformation* Arena::CreateMaybeMessage< ::exec::bit::control::QueryContextInformation >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::QueryContextInformation >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::WorkQueueStatus* Arena::CreateMaybeMessage< ::exec::bit::control::WorkQueueStatus >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::WorkQueueStatus >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::control::FinishedReceiver* Arena::CreateMaybeMessage< ::exec::bit::control::FinishedReceiver >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::control::FinishedReceiver >(arena);
-}
-}  // namespace protobuf
-}  // namespace google
 
 // @@protoc_insertion_point(global_scope)
diff --git a/contrib/native/client/src/protobuf/BitControl.pb.h b/contrib/native/client/src/protobuf/BitControl.pb.h
index abfda10..400c901 100644
--- a/contrib/native/client/src/protobuf/BitControl.pb.h
+++ b/contrib/native/client/src/protobuf/BitControl.pb.h
@@ -1,107 +1,54 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: BitControl.proto
 
-#ifndef PROTOBUF_INCLUDED_BitControl_2eproto
-#define PROTOBUF_INCLUDED_BitControl_2eproto
+#ifndef PROTOBUF_BitControl_2eproto__INCLUDED
+#define PROTOBUF_BitControl_2eproto__INCLUDED
 
 #include <string>
 
 #include <google/protobuf/stubs/common.h>
 
-#if GOOGLE_PROTOBUF_VERSION < 3006001
+#if GOOGLE_PROTOBUF_VERSION < 2005000
 #error This file was generated by a newer version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please update
 #error your headers.
 #endif
-#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
+#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
 #error This file was generated by an older version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please
 #error regenerate this file with a newer version of protoc.
 #endif
 
-#include <google/protobuf/io/coded_stream.h>
-#include <google/protobuf/arena.h>
-#include <google/protobuf/arenastring.h>
-#include <google/protobuf/generated_message_table_driven.h>
 #include <google/protobuf/generated_message_util.h>
-#include <google/protobuf/inlined_string_field.h>
-#include <google/protobuf/metadata.h>
 #include <google/protobuf/message.h>
-#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
-#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/repeated_field.h>
+#include <google/protobuf/extension_set.h>
 #include <google/protobuf/generated_enum_reflection.h>
 #include <google/protobuf/unknown_field_set.h>
 #include "ExecutionProtos.pb.h"
 #include "Coordination.pb.h"
 #include "UserBitShared.pb.h"
 // @@protoc_insertion_point(includes)
-#define PROTOBUF_INTERNAL_EXPORT_protobuf_BitControl_2eproto 
 
-namespace protobuf_BitControl_2eproto {
-// Internal implementation detail -- do not use these members.
-struct TableStruct {
-  static const ::google::protobuf::internal::ParseTableField entries[];
-  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
-  static const ::google::protobuf::internal::ParseTable schema[10];
-  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
-  static const ::google::protobuf::internal::SerializationTable serialization_table[];
-  static const ::google::protobuf::uint32 offsets[];
-};
-void AddDescriptors();
-}  // namespace protobuf_BitControl_2eproto
 namespace exec {
 namespace bit {
 namespace control {
+
+// Internal implementation detail -- do not call these.
+void  protobuf_AddDesc_BitControl_2eproto();
+void protobuf_AssignDesc_BitControl_2eproto();
+void protobuf_ShutdownFile_BitControl_2eproto();
+
 class BitControlHandshake;
-class BitControlHandshakeDefaultTypeInternal;
-extern BitControlHandshakeDefaultTypeInternal _BitControlHandshake_default_instance_;
 class BitStatus;
-class BitStatusDefaultTypeInternal;
-extern BitStatusDefaultTypeInternal _BitStatus_default_instance_;
-class Collector;
-class CollectorDefaultTypeInternal;
-extern CollectorDefaultTypeInternal _Collector_default_instance_;
-class CustomMessage;
-class CustomMessageDefaultTypeInternal;
-extern CustomMessageDefaultTypeInternal _CustomMessage_default_instance_;
-class FinishedReceiver;
-class FinishedReceiverDefaultTypeInternal;
-extern FinishedReceiverDefaultTypeInternal _FinishedReceiver_default_instance_;
 class FragmentStatus;
-class FragmentStatusDefaultTypeInternal;
-extern FragmentStatusDefaultTypeInternal _FragmentStatus_default_instance_;
 class InitializeFragments;
-class InitializeFragmentsDefaultTypeInternal;
-extern InitializeFragmentsDefaultTypeInternal _InitializeFragments_default_instance_;
+class CustomMessage;
 class PlanFragment;
-class PlanFragmentDefaultTypeInternal;
-extern PlanFragmentDefaultTypeInternal _PlanFragment_default_instance_;
+class Collector;
 class QueryContextInformation;
-class QueryContextInformationDefaultTypeInternal;
-extern QueryContextInformationDefaultTypeInternal _QueryContextInformation_default_instance_;
 class WorkQueueStatus;
-class WorkQueueStatusDefaultTypeInternal;
-extern WorkQueueStatusDefaultTypeInternal _WorkQueueStatus_default_instance_;
-}  // namespace control
-}  // namespace bit
-}  // namespace exec
-namespace google {
-namespace protobuf {
-template<> ::exec::bit::control::BitControlHandshake* Arena::CreateMaybeMessage<::exec::bit::control::BitControlHandshake>(Arena*);
-template<> ::exec::bit::control::BitStatus* Arena::CreateMaybeMessage<::exec::bit::control::BitStatus>(Arena*);
-template<> ::exec::bit::control::Collector* Arena::CreateMaybeMessage<::exec::bit::control::Collector>(Arena*);
-template<> ::exec::bit::control::CustomMessage* Arena::CreateMaybeMessage<::exec::bit::control::CustomMessage>(Arena*);
-template<> ::exec::bit::control::FinishedReceiver* Arena::CreateMaybeMessage<::exec::bit::control::FinishedReceiver>(Arena*);
-template<> ::exec::bit::control::FragmentStatus* Arena::CreateMaybeMessage<::exec::bit::control::FragmentStatus>(Arena*);
-template<> ::exec::bit::control::InitializeFragments* Arena::CreateMaybeMessage<::exec::bit::control::InitializeFragments>(Arena*);
-template<> ::exec::bit::control::PlanFragment* Arena::CreateMaybeMessage<::exec::bit::control::PlanFragment>(Arena*);
-template<> ::exec::bit::control::QueryContextInformation* Arena::CreateMaybeMessage<::exec::bit::control::QueryContextInformation>(Arena*);
-template<> ::exec::bit::control::WorkQueueStatus* Arena::CreateMaybeMessage<::exec::bit::control::WorkQueueStatus>(Arena*);
-}  // namespace protobuf
-}  // namespace google
-namespace exec {
-namespace bit {
-namespace control {
+class FinishedReceiver;
 
 enum RpcType {
   HANDSHAKE = 0,
@@ -140,7 +87,7 @@
 }
 // ===================================================================
 
-class BitControlHandshake : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.BitControlHandshake) */ {
+class BitControlHandshake : public ::google::protobuf::Message {
  public:
   BitControlHandshake();
   virtual ~BitControlHandshake();
@@ -151,158 +98,117 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  BitControlHandshake(BitControlHandshake&& from) noexcept
-    : BitControlHandshake() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline BitControlHandshake& operator=(BitControlHandshake&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const BitControlHandshake& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const BitControlHandshake* internal_default_instance() {
-    return reinterpret_cast<const BitControlHandshake*>(
-               &_BitControlHandshake_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    0;
-
   void Swap(BitControlHandshake* other);
-  friend void swap(BitControlHandshake& a, BitControlHandshake& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline BitControlHandshake* New() const final {
-    return CreateMaybeMessage<BitControlHandshake>(NULL);
-  }
-
-  BitControlHandshake* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<BitControlHandshake>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  BitControlHandshake* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const BitControlHandshake& from);
   void MergeFrom(const BitControlHandshake& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(BitControlHandshake* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated string authenticationMechanisms = 4;
-  int authenticationmechanisms_size() const;
-  void clear_authenticationmechanisms();
-  static const int kAuthenticationMechanismsFieldNumber = 4;
-  const ::std::string& authenticationmechanisms(int index) const;
-  ::std::string* mutable_authenticationmechanisms(int index);
-  void set_authenticationmechanisms(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_authenticationmechanisms(int index, ::std::string&& value);
-  #endif
-  void set_authenticationmechanisms(int index, const char* value);
-  void set_authenticationmechanisms(int index, const char* value, size_t size);
-  ::std::string* add_authenticationmechanisms();
-  void add_authenticationmechanisms(const ::std::string& value);
-  #if LANG_CXX11
-  void add_authenticationmechanisms(::std::string&& value);
-  #endif
-  void add_authenticationmechanisms(const char* value);
-  void add_authenticationmechanisms(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& authenticationmechanisms() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_authenticationmechanisms();
-
-  // optional .exec.DrillbitEndpoint endpoint = 3;
-  bool has_endpoint() const;
-  void clear_endpoint();
-  static const int kEndpointFieldNumber = 3;
-  private:
-  const ::exec::DrillbitEndpoint& _internal_endpoint() const;
-  public:
-  const ::exec::DrillbitEndpoint& endpoint() const;
-  ::exec::DrillbitEndpoint* release_endpoint();
-  ::exec::DrillbitEndpoint* mutable_endpoint();
-  void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
-
   // optional int32 rpc_version = 1;
-  bool has_rpc_version() const;
-  void clear_rpc_version();
+  inline bool has_rpc_version() const;
+  inline void clear_rpc_version();
   static const int kRpcVersionFieldNumber = 1;
-  ::google::protobuf::int32 rpc_version() const;
-  void set_rpc_version(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 rpc_version() const;
+  inline void set_rpc_version(::google::protobuf::int32 value);
 
   // optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];
-  bool has_channel() const;
-  void clear_channel();
+  inline bool has_channel() const;
+  inline void clear_channel();
   static const int kChannelFieldNumber = 2;
-  ::exec::shared::RpcChannel channel() const;
-  void set_channel(::exec::shared::RpcChannel value);
+  inline ::exec::shared::RpcChannel channel() const;
+  inline void set_channel(::exec::shared::RpcChannel value);
+
+  // optional .exec.DrillbitEndpoint endpoint = 3;
+  inline bool has_endpoint() const;
+  inline void clear_endpoint();
+  static const int kEndpointFieldNumber = 3;
+  inline const ::exec::DrillbitEndpoint& endpoint() const;
+  inline ::exec::DrillbitEndpoint* mutable_endpoint();
+  inline ::exec::DrillbitEndpoint* release_endpoint();
+  inline void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
+
+  // repeated string authenticationMechanisms = 4;
+  inline int authenticationmechanisms_size() const;
+  inline void clear_authenticationmechanisms();
+  static const int kAuthenticationMechanismsFieldNumber = 4;
+  inline const ::std::string& authenticationmechanisms(int index) const;
+  inline ::std::string* mutable_authenticationmechanisms(int index);
+  inline void set_authenticationmechanisms(int index, const ::std::string& value);
+  inline void set_authenticationmechanisms(int index, const char* value);
+  inline void set_authenticationmechanisms(int index, const char* value, size_t size);
+  inline ::std::string* add_authenticationmechanisms();
+  inline void add_authenticationmechanisms(const ::std::string& value);
+  inline void add_authenticationmechanisms(const char* value);
+  inline void add_authenticationmechanisms(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& authenticationmechanisms() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_authenticationmechanisms();
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.BitControlHandshake)
  private:
-  void set_has_rpc_version();
-  void clear_has_rpc_version();
-  void set_has_channel();
-  void clear_has_channel();
-  void set_has_endpoint();
-  void clear_has_endpoint();
+  inline void set_has_rpc_version();
+  inline void clear_has_rpc_version();
+  inline void set_has_channel();
+  inline void clear_has_channel();
+  inline void set_has_endpoint();
+  inline void clear_has_endpoint();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::std::string> authenticationmechanisms_;
-  ::exec::DrillbitEndpoint* endpoint_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::int32 rpc_version_;
   int channel_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+  ::exec::DrillbitEndpoint* endpoint_;
+  ::google::protobuf::RepeatedPtrField< ::std::string> authenticationmechanisms_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static BitControlHandshake* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class BitStatus : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.BitStatus) */ {
+class BitStatus : public ::google::protobuf::Message {
  public:
   BitStatus();
   virtual ~BitStatus();
@@ -313,113 +219,81 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  BitStatus(BitStatus&& from) noexcept
-    : BitStatus() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline BitStatus& operator=(BitStatus&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const BitStatus& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const BitStatus* internal_default_instance() {
-    return reinterpret_cast<const BitStatus*>(
-               &_BitStatus_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    1;
-
   void Swap(BitStatus* other);
-  friend void swap(BitStatus& a, BitStatus& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline BitStatus* New() const final {
-    return CreateMaybeMessage<BitStatus>(NULL);
-  }
-
-  BitStatus* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<BitStatus>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  BitStatus* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const BitStatus& from);
   void MergeFrom(const BitStatus& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(BitStatus* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // repeated .exec.bit.control.FragmentStatus fragment_status = 1;
-  int fragment_status_size() const;
-  void clear_fragment_status();
+  inline int fragment_status_size() const;
+  inline void clear_fragment_status();
   static const int kFragmentStatusFieldNumber = 1;
-  ::exec::bit::control::FragmentStatus* mutable_fragment_status(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::FragmentStatus >*
-      mutable_fragment_status();
-  const ::exec::bit::control::FragmentStatus& fragment_status(int index) const;
-  ::exec::bit::control::FragmentStatus* add_fragment_status();
-  const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::FragmentStatus >&
+  inline const ::exec::bit::control::FragmentStatus& fragment_status(int index) const;
+  inline ::exec::bit::control::FragmentStatus* mutable_fragment_status(int index);
+  inline ::exec::bit::control::FragmentStatus* add_fragment_status();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::FragmentStatus >&
       fragment_status() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::FragmentStatus >*
+      mutable_fragment_status();
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.BitStatus)
  private:
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::bit::control::FragmentStatus > fragment_status_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static BitStatus* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class FragmentStatus : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.FragmentStatus) */ {
+class FragmentStatus : public ::google::protobuf::Message {
  public:
   FragmentStatus();
   virtual ~FragmentStatus();
@@ -430,130 +304,92 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  FragmentStatus(FragmentStatus&& from) noexcept
-    : FragmentStatus() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline FragmentStatus& operator=(FragmentStatus&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const FragmentStatus& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const FragmentStatus* internal_default_instance() {
-    return reinterpret_cast<const FragmentStatus*>(
-               &_FragmentStatus_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    2;
-
   void Swap(FragmentStatus* other);
-  friend void swap(FragmentStatus& a, FragmentStatus& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline FragmentStatus* New() const final {
-    return CreateMaybeMessage<FragmentStatus>(NULL);
-  }
-
-  FragmentStatus* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<FragmentStatus>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  FragmentStatus* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const FragmentStatus& from);
   void MergeFrom(const FragmentStatus& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(FragmentStatus* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.shared.MinorFragmentProfile profile = 1;
-  bool has_profile() const;
-  void clear_profile();
+  inline bool has_profile() const;
+  inline void clear_profile();
   static const int kProfileFieldNumber = 1;
-  private:
-  const ::exec::shared::MinorFragmentProfile& _internal_profile() const;
-  public:
-  const ::exec::shared::MinorFragmentProfile& profile() const;
-  ::exec::shared::MinorFragmentProfile* release_profile();
-  ::exec::shared::MinorFragmentProfile* mutable_profile();
-  void set_allocated_profile(::exec::shared::MinorFragmentProfile* profile);
+  inline const ::exec::shared::MinorFragmentProfile& profile() const;
+  inline ::exec::shared::MinorFragmentProfile* mutable_profile();
+  inline ::exec::shared::MinorFragmentProfile* release_profile();
+  inline void set_allocated_profile(::exec::shared::MinorFragmentProfile* profile);
 
   // optional .exec.bit.FragmentHandle handle = 2;
-  bool has_handle() const;
-  void clear_handle();
+  inline bool has_handle() const;
+  inline void clear_handle();
   static const int kHandleFieldNumber = 2;
-  private:
-  const ::exec::bit::FragmentHandle& _internal_handle() const;
-  public:
-  const ::exec::bit::FragmentHandle& handle() const;
-  ::exec::bit::FragmentHandle* release_handle();
-  ::exec::bit::FragmentHandle* mutable_handle();
-  void set_allocated_handle(::exec::bit::FragmentHandle* handle);
+  inline const ::exec::bit::FragmentHandle& handle() const;
+  inline ::exec::bit::FragmentHandle* mutable_handle();
+  inline ::exec::bit::FragmentHandle* release_handle();
+  inline void set_allocated_handle(::exec::bit::FragmentHandle* handle);
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.FragmentStatus)
  private:
-  void set_has_profile();
-  void clear_has_profile();
-  void set_has_handle();
-  void clear_has_handle();
+  inline void set_has_profile();
+  inline void clear_has_profile();
+  inline void set_has_handle();
+  inline void clear_has_handle();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::MinorFragmentProfile* profile_;
   ::exec::bit::FragmentHandle* handle_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static FragmentStatus* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class InitializeFragments : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.InitializeFragments) */ {
+class InitializeFragments : public ::google::protobuf::Message {
  public:
   InitializeFragments();
   virtual ~InitializeFragments();
@@ -564,113 +400,81 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  InitializeFragments(InitializeFragments&& from) noexcept
-    : InitializeFragments() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline InitializeFragments& operator=(InitializeFragments&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const InitializeFragments& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const InitializeFragments* internal_default_instance() {
-    return reinterpret_cast<const InitializeFragments*>(
-               &_InitializeFragments_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    3;
-
   void Swap(InitializeFragments* other);
-  friend void swap(InitializeFragments& a, InitializeFragments& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline InitializeFragments* New() const final {
-    return CreateMaybeMessage<InitializeFragments>(NULL);
-  }
-
-  InitializeFragments* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<InitializeFragments>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  InitializeFragments* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const InitializeFragments& from);
   void MergeFrom(const InitializeFragments& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(InitializeFragments* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // repeated .exec.bit.control.PlanFragment fragment = 1;
-  int fragment_size() const;
-  void clear_fragment();
+  inline int fragment_size() const;
+  inline void clear_fragment();
   static const int kFragmentFieldNumber = 1;
-  ::exec::bit::control::PlanFragment* mutable_fragment(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
-      mutable_fragment();
-  const ::exec::bit::control::PlanFragment& fragment(int index) const;
-  ::exec::bit::control::PlanFragment* add_fragment();
-  const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >&
+  inline const ::exec::bit::control::PlanFragment& fragment(int index) const;
+  inline ::exec::bit::control::PlanFragment* mutable_fragment(int index);
+  inline ::exec::bit::control::PlanFragment* add_fragment();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >&
       fragment() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
+      mutable_fragment();
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.InitializeFragments)
  private:
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment > fragment_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static InitializeFragments* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class CustomMessage : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.CustomMessage) */ {
+class CustomMessage : public ::google::protobuf::Message {
  public:
   CustomMessage();
   virtual ~CustomMessage();
@@ -681,128 +485,93 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  CustomMessage(CustomMessage&& from) noexcept
-    : CustomMessage() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline CustomMessage& operator=(CustomMessage&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const CustomMessage& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const CustomMessage* internal_default_instance() {
-    return reinterpret_cast<const CustomMessage*>(
-               &_CustomMessage_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    4;
-
   void Swap(CustomMessage* other);
-  friend void swap(CustomMessage& a, CustomMessage& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline CustomMessage* New() const final {
-    return CreateMaybeMessage<CustomMessage>(NULL);
-  }
-
-  CustomMessage* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<CustomMessage>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  CustomMessage* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const CustomMessage& from);
   void MergeFrom(const CustomMessage& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(CustomMessage* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // optional bytes message = 2;
-  bool has_message() const;
-  void clear_message();
-  static const int kMessageFieldNumber = 2;
-  const ::std::string& message() const;
-  void set_message(const ::std::string& value);
-  #if LANG_CXX11
-  void set_message(::std::string&& value);
-  #endif
-  void set_message(const char* value);
-  void set_message(const void* value, size_t size);
-  ::std::string* mutable_message();
-  ::std::string* release_message();
-  void set_allocated_message(::std::string* message);
-
   // optional int32 type = 1;
-  bool has_type() const;
-  void clear_type();
+  inline bool has_type() const;
+  inline void clear_type();
   static const int kTypeFieldNumber = 1;
-  ::google::protobuf::int32 type() const;
-  void set_type(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 type() const;
+  inline void set_type(::google::protobuf::int32 value);
+
+  // optional bytes message = 2;
+  inline bool has_message() const;
+  inline void clear_message();
+  static const int kMessageFieldNumber = 2;
+  inline const ::std::string& message() const;
+  inline void set_message(const ::std::string& value);
+  inline void set_message(const char* value);
+  inline void set_message(const void* value, size_t size);
+  inline ::std::string* mutable_message();
+  inline ::std::string* release_message();
+  inline void set_allocated_message(::std::string* message);
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.CustomMessage)
  private:
-  void set_has_type();
-  void clear_has_type();
-  void set_has_message();
-  void clear_has_message();
+  inline void set_has_type();
+  inline void clear_has_type();
+  inline void set_has_message();
+  inline void clear_has_message();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr message_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* message_;
   ::google::protobuf::int32 type_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static CustomMessage* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class PlanFragment : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.PlanFragment) */ {
+class PlanFragment : public ::google::protobuf::Message {
  public:
   PlanFragment();
   virtual ~PlanFragment();
@@ -813,294 +582,241 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  PlanFragment(PlanFragment&& from) noexcept
-    : PlanFragment() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline PlanFragment& operator=(PlanFragment&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const PlanFragment& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const PlanFragment* internal_default_instance() {
-    return reinterpret_cast<const PlanFragment*>(
-               &_PlanFragment_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    5;
-
   void Swap(PlanFragment* other);
-  friend void swap(PlanFragment& a, PlanFragment& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline PlanFragment* New() const final {
-    return CreateMaybeMessage<PlanFragment>(NULL);
-  }
-
-  PlanFragment* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<PlanFragment>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  PlanFragment* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const PlanFragment& from);
   void MergeFrom(const PlanFragment& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(PlanFragment* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.bit.control.Collector collector = 17;
-  int collector_size() const;
-  void clear_collector();
-  static const int kCollectorFieldNumber = 17;
-  ::exec::bit::control::Collector* mutable_collector(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::Collector >*
-      mutable_collector();
-  const ::exec::bit::control::Collector& collector(int index) const;
-  ::exec::bit::control::Collector* add_collector();
-  const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::Collector >&
-      collector() const;
-
-  // optional string fragment_json = 8;
-  bool has_fragment_json() const;
-  void clear_fragment_json();
-  static const int kFragmentJsonFieldNumber = 8;
-  const ::std::string& fragment_json() const;
-  void set_fragment_json(const ::std::string& value);
-  #if LANG_CXX11
-  void set_fragment_json(::std::string&& value);
-  #endif
-  void set_fragment_json(const char* value);
-  void set_fragment_json(const char* value, size_t size);
-  ::std::string* mutable_fragment_json();
-  ::std::string* release_fragment_json();
-  void set_allocated_fragment_json(::std::string* fragment_json);
-
-  // optional string options_json = 15;
-  bool has_options_json() const;
-  void clear_options_json();
-  static const int kOptionsJsonFieldNumber = 15;
-  const ::std::string& options_json() const;
-  void set_options_json(const ::std::string& value);
-  #if LANG_CXX11
-  void set_options_json(::std::string&& value);
-  #endif
-  void set_options_json(const char* value);
-  void set_options_json(const char* value, size_t size);
-  ::std::string* mutable_options_json();
-  ::std::string* release_options_json();
-  void set_allocated_options_json(::std::string* options_json);
-
   // optional .exec.bit.FragmentHandle handle = 1;
-  bool has_handle() const;
-  void clear_handle();
+  inline bool has_handle() const;
+  inline void clear_handle();
   static const int kHandleFieldNumber = 1;
-  private:
-  const ::exec::bit::FragmentHandle& _internal_handle() const;
-  public:
-  const ::exec::bit::FragmentHandle& handle() const;
-  ::exec::bit::FragmentHandle* release_handle();
-  ::exec::bit::FragmentHandle* mutable_handle();
-  void set_allocated_handle(::exec::bit::FragmentHandle* handle);
-
-  // optional .exec.DrillbitEndpoint assignment = 10;
-  bool has_assignment() const;
-  void clear_assignment();
-  static const int kAssignmentFieldNumber = 10;
-  private:
-  const ::exec::DrillbitEndpoint& _internal_assignment() const;
-  public:
-  const ::exec::DrillbitEndpoint& assignment() const;
-  ::exec::DrillbitEndpoint* release_assignment();
-  ::exec::DrillbitEndpoint* mutable_assignment();
-  void set_allocated_assignment(::exec::DrillbitEndpoint* assignment);
-
-  // optional .exec.DrillbitEndpoint foreman = 11;
-  bool has_foreman() const;
-  void clear_foreman();
-  static const int kForemanFieldNumber = 11;
-  private:
-  const ::exec::DrillbitEndpoint& _internal_foreman() const;
-  public:
-  const ::exec::DrillbitEndpoint& foreman() const;
-  ::exec::DrillbitEndpoint* release_foreman();
-  ::exec::DrillbitEndpoint* mutable_foreman();
-  void set_allocated_foreman(::exec::DrillbitEndpoint* foreman);
-
-  // optional .exec.shared.UserCredentials credentials = 14;
-  bool has_credentials() const;
-  void clear_credentials();
-  static const int kCredentialsFieldNumber = 14;
-  private:
-  const ::exec::shared::UserCredentials& _internal_credentials() const;
-  public:
-  const ::exec::shared::UserCredentials& credentials() const;
-  ::exec::shared::UserCredentials* release_credentials();
-  ::exec::shared::UserCredentials* mutable_credentials();
-  void set_allocated_credentials(::exec::shared::UserCredentials* credentials);
-
-  // optional .exec.bit.control.QueryContextInformation context = 16;
-  bool has_context() const;
-  void clear_context();
-  static const int kContextFieldNumber = 16;
-  private:
-  const ::exec::bit::control::QueryContextInformation& _internal_context() const;
-  public:
-  const ::exec::bit::control::QueryContextInformation& context() const;
-  ::exec::bit::control::QueryContextInformation* release_context();
-  ::exec::bit::control::QueryContextInformation* mutable_context();
-  void set_allocated_context(::exec::bit::control::QueryContextInformation* context);
+  inline const ::exec::bit::FragmentHandle& handle() const;
+  inline ::exec::bit::FragmentHandle* mutable_handle();
+  inline ::exec::bit::FragmentHandle* release_handle();
+  inline void set_allocated_handle(::exec::bit::FragmentHandle* handle);
 
   // optional float network_cost = 4;
-  bool has_network_cost() const;
-  void clear_network_cost();
+  inline bool has_network_cost() const;
+  inline void clear_network_cost();
   static const int kNetworkCostFieldNumber = 4;
-  float network_cost() const;
-  void set_network_cost(float value);
+  inline float network_cost() const;
+  inline void set_network_cost(float value);
 
   // optional float cpu_cost = 5;
-  bool has_cpu_cost() const;
-  void clear_cpu_cost();
+  inline bool has_cpu_cost() const;
+  inline void clear_cpu_cost();
   static const int kCpuCostFieldNumber = 5;
-  float cpu_cost() const;
-  void set_cpu_cost(float value);
+  inline float cpu_cost() const;
+  inline void set_cpu_cost(float value);
 
   // optional float disk_cost = 6;
-  bool has_disk_cost() const;
-  void clear_disk_cost();
+  inline bool has_disk_cost() const;
+  inline void clear_disk_cost();
   static const int kDiskCostFieldNumber = 6;
-  float disk_cost() const;
-  void set_disk_cost(float value);
+  inline float disk_cost() const;
+  inline void set_disk_cost(float value);
 
   // optional float memory_cost = 7;
-  bool has_memory_cost() const;
-  void clear_memory_cost();
+  inline bool has_memory_cost() const;
+  inline void clear_memory_cost();
   static const int kMemoryCostFieldNumber = 7;
-  float memory_cost() const;
-  void set_memory_cost(float value);
+  inline float memory_cost() const;
+  inline void set_memory_cost(float value);
+
+  // optional string fragment_json = 8;
+  inline bool has_fragment_json() const;
+  inline void clear_fragment_json();
+  static const int kFragmentJsonFieldNumber = 8;
+  inline const ::std::string& fragment_json() const;
+  inline void set_fragment_json(const ::std::string& value);
+  inline void set_fragment_json(const char* value);
+  inline void set_fragment_json(const char* value, size_t size);
+  inline ::std::string* mutable_fragment_json();
+  inline ::std::string* release_fragment_json();
+  inline void set_allocated_fragment_json(::std::string* fragment_json);
 
   // optional bool leaf_fragment = 9;
-  bool has_leaf_fragment() const;
-  void clear_leaf_fragment();
+  inline bool has_leaf_fragment() const;
+  inline void clear_leaf_fragment();
   static const int kLeafFragmentFieldNumber = 9;
-  bool leaf_fragment() const;
-  void set_leaf_fragment(bool value);
+  inline bool leaf_fragment() const;
+  inline void set_leaf_fragment(bool value);
+
+  // optional .exec.DrillbitEndpoint assignment = 10;
+  inline bool has_assignment() const;
+  inline void clear_assignment();
+  static const int kAssignmentFieldNumber = 10;
+  inline const ::exec::DrillbitEndpoint& assignment() const;
+  inline ::exec::DrillbitEndpoint* mutable_assignment();
+  inline ::exec::DrillbitEndpoint* release_assignment();
+  inline void set_allocated_assignment(::exec::DrillbitEndpoint* assignment);
+
+  // optional .exec.DrillbitEndpoint foreman = 11;
+  inline bool has_foreman() const;
+  inline void clear_foreman();
+  static const int kForemanFieldNumber = 11;
+  inline const ::exec::DrillbitEndpoint& foreman() const;
+  inline ::exec::DrillbitEndpoint* mutable_foreman();
+  inline ::exec::DrillbitEndpoint* release_foreman();
+  inline void set_allocated_foreman(::exec::DrillbitEndpoint* foreman);
 
   // optional int64 mem_initial = 12 [default = 20000000];
-  bool has_mem_initial() const;
-  void clear_mem_initial();
+  inline bool has_mem_initial() const;
+  inline void clear_mem_initial();
   static const int kMemInitialFieldNumber = 12;
-  ::google::protobuf::int64 mem_initial() const;
-  void set_mem_initial(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 mem_initial() const;
+  inline void set_mem_initial(::google::protobuf::int64 value);
 
   // optional int64 mem_max = 13 [default = 2000000000];
-  bool has_mem_max() const;
-  void clear_mem_max();
+  inline bool has_mem_max() const;
+  inline void clear_mem_max();
   static const int kMemMaxFieldNumber = 13;
-  ::google::protobuf::int64 mem_max() const;
-  void set_mem_max(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 mem_max() const;
+  inline void set_mem_max(::google::protobuf::int64 value);
+
+  // optional .exec.shared.UserCredentials credentials = 14;
+  inline bool has_credentials() const;
+  inline void clear_credentials();
+  static const int kCredentialsFieldNumber = 14;
+  inline const ::exec::shared::UserCredentials& credentials() const;
+  inline ::exec::shared::UserCredentials* mutable_credentials();
+  inline ::exec::shared::UserCredentials* release_credentials();
+  inline void set_allocated_credentials(::exec::shared::UserCredentials* credentials);
+
+  // optional string options_json = 15;
+  inline bool has_options_json() const;
+  inline void clear_options_json();
+  static const int kOptionsJsonFieldNumber = 15;
+  inline const ::std::string& options_json() const;
+  inline void set_options_json(const ::std::string& value);
+  inline void set_options_json(const char* value);
+  inline void set_options_json(const char* value, size_t size);
+  inline ::std::string* mutable_options_json();
+  inline ::std::string* release_options_json();
+  inline void set_allocated_options_json(::std::string* options_json);
+
+  // optional .exec.bit.control.QueryContextInformation context = 16;
+  inline bool has_context() const;
+  inline void clear_context();
+  static const int kContextFieldNumber = 16;
+  inline const ::exec::bit::control::QueryContextInformation& context() const;
+  inline ::exec::bit::control::QueryContextInformation* mutable_context();
+  inline ::exec::bit::control::QueryContextInformation* release_context();
+  inline void set_allocated_context(::exec::bit::control::QueryContextInformation* context);
+
+  // repeated .exec.bit.control.Collector collector = 17;
+  inline int collector_size() const;
+  inline void clear_collector();
+  static const int kCollectorFieldNumber = 17;
+  inline const ::exec::bit::control::Collector& collector(int index) const;
+  inline ::exec::bit::control::Collector* mutable_collector(int index);
+  inline ::exec::bit::control::Collector* add_collector();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::Collector >&
+      collector() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::Collector >*
+      mutable_collector();
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.PlanFragment)
  private:
-  void set_has_handle();
-  void clear_has_handle();
-  void set_has_network_cost();
-  void clear_has_network_cost();
-  void set_has_cpu_cost();
-  void clear_has_cpu_cost();
-  void set_has_disk_cost();
-  void clear_has_disk_cost();
-  void set_has_memory_cost();
-  void clear_has_memory_cost();
-  void set_has_fragment_json();
-  void clear_has_fragment_json();
-  void set_has_leaf_fragment();
-  void clear_has_leaf_fragment();
-  void set_has_assignment();
-  void clear_has_assignment();
-  void set_has_foreman();
-  void clear_has_foreman();
-  void set_has_mem_initial();
-  void clear_has_mem_initial();
-  void set_has_mem_max();
-  void clear_has_mem_max();
-  void set_has_credentials();
-  void clear_has_credentials();
-  void set_has_options_json();
-  void clear_has_options_json();
-  void set_has_context();
-  void clear_has_context();
+  inline void set_has_handle();
+  inline void clear_has_handle();
+  inline void set_has_network_cost();
+  inline void clear_has_network_cost();
+  inline void set_has_cpu_cost();
+  inline void clear_has_cpu_cost();
+  inline void set_has_disk_cost();
+  inline void clear_has_disk_cost();
+  inline void set_has_memory_cost();
+  inline void clear_has_memory_cost();
+  inline void set_has_fragment_json();
+  inline void clear_has_fragment_json();
+  inline void set_has_leaf_fragment();
+  inline void clear_has_leaf_fragment();
+  inline void set_has_assignment();
+  inline void clear_has_assignment();
+  inline void set_has_foreman();
+  inline void clear_has_foreman();
+  inline void set_has_mem_initial();
+  inline void clear_has_mem_initial();
+  inline void set_has_mem_max();
+  inline void clear_has_mem_max();
+  inline void set_has_credentials();
+  inline void clear_has_credentials();
+  inline void set_has_options_json();
+  inline void clear_has_options_json();
+  inline void set_has_context();
+  inline void clear_has_context();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::Collector > collector_;
-  ::google::protobuf::internal::ArenaStringPtr fragment_json_;
-  ::google::protobuf::internal::ArenaStringPtr options_json_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::bit::FragmentHandle* handle_;
-  ::exec::DrillbitEndpoint* assignment_;
-  ::exec::DrillbitEndpoint* foreman_;
-  ::exec::shared::UserCredentials* credentials_;
-  ::exec::bit::control::QueryContextInformation* context_;
   float network_cost_;
   float cpu_cost_;
   float disk_cost_;
   float memory_cost_;
-  bool leaf_fragment_;
+  ::std::string* fragment_json_;
+  ::exec::DrillbitEndpoint* assignment_;
+  ::exec::DrillbitEndpoint* foreman_;
   ::google::protobuf::int64 mem_initial_;
   ::google::protobuf::int64 mem_max_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+  ::exec::shared::UserCredentials* credentials_;
+  ::std::string* options_json_;
+  ::exec::bit::control::QueryContextInformation* context_;
+  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::Collector > collector_;
+  bool leaf_fragment_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(15 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static PlanFragment* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class Collector : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.Collector) */ {
+class Collector : public ::google::protobuf::Message {
  public:
   Collector();
   virtual ~Collector();
@@ -1111,144 +827,112 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  Collector(Collector&& from) noexcept
-    : Collector() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline Collector& operator=(Collector&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const Collector& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const Collector* internal_default_instance() {
-    return reinterpret_cast<const Collector*>(
-               &_Collector_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    6;
-
   void Swap(Collector* other);
-  friend void swap(Collector& a, Collector& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline Collector* New() const final {
-    return CreateMaybeMessage<Collector>(NULL);
-  }
-
-  Collector* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<Collector>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  Collector* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const Collector& from);
   void MergeFrom(const Collector& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(Collector* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional int32 opposite_major_fragment_id = 1;
+  inline bool has_opposite_major_fragment_id() const;
+  inline void clear_opposite_major_fragment_id();
+  static const int kOppositeMajorFragmentIdFieldNumber = 1;
+  inline ::google::protobuf::int32 opposite_major_fragment_id() const;
+  inline void set_opposite_major_fragment_id(::google::protobuf::int32 value);
+
   // repeated int32 incoming_minor_fragment = 2 [packed = true];
-  int incoming_minor_fragment_size() const;
-  void clear_incoming_minor_fragment();
+  inline int incoming_minor_fragment_size() const;
+  inline void clear_incoming_minor_fragment();
   static const int kIncomingMinorFragmentFieldNumber = 2;
-  ::google::protobuf::int32 incoming_minor_fragment(int index) const;
-  void set_incoming_minor_fragment(int index, ::google::protobuf::int32 value);
-  void add_incoming_minor_fragment(::google::protobuf::int32 value);
-  const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
+  inline ::google::protobuf::int32 incoming_minor_fragment(int index) const;
+  inline void set_incoming_minor_fragment(int index, ::google::protobuf::int32 value);
+  inline void add_incoming_minor_fragment(::google::protobuf::int32 value);
+  inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
       incoming_minor_fragment() const;
-  ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
+  inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
       mutable_incoming_minor_fragment();
 
-  // optional int32 opposite_major_fragment_id = 1;
-  bool has_opposite_major_fragment_id() const;
-  void clear_opposite_major_fragment_id();
-  static const int kOppositeMajorFragmentIdFieldNumber = 1;
-  ::google::protobuf::int32 opposite_major_fragment_id() const;
-  void set_opposite_major_fragment_id(::google::protobuf::int32 value);
-
   // optional bool supports_out_of_order = 3;
-  bool has_supports_out_of_order() const;
-  void clear_supports_out_of_order();
+  inline bool has_supports_out_of_order() const;
+  inline void clear_supports_out_of_order();
   static const int kSupportsOutOfOrderFieldNumber = 3;
-  bool supports_out_of_order() const;
-  void set_supports_out_of_order(bool value);
+  inline bool supports_out_of_order() const;
+  inline void set_supports_out_of_order(bool value);
 
   // optional bool is_spooling = 4;
-  bool has_is_spooling() const;
-  void clear_is_spooling();
+  inline bool has_is_spooling() const;
+  inline void clear_is_spooling();
   static const int kIsSpoolingFieldNumber = 4;
-  bool is_spooling() const;
-  void set_is_spooling(bool value);
+  inline bool is_spooling() const;
+  inline void set_is_spooling(bool value);
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.Collector)
  private:
-  void set_has_opposite_major_fragment_id();
-  void clear_has_opposite_major_fragment_id();
-  void set_has_supports_out_of_order();
-  void clear_has_supports_out_of_order();
-  void set_has_is_spooling();
-  void clear_has_is_spooling();
+  inline void set_has_opposite_major_fragment_id();
+  inline void clear_has_opposite_major_fragment_id();
+  inline void set_has_supports_out_of_order();
+  inline void clear_has_supports_out_of_order();
+  inline void set_has_is_spooling();
+  inline void clear_has_is_spooling();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedField< ::google::protobuf::int32 > incoming_minor_fragment_;
   mutable int _incoming_minor_fragment_cached_byte_size_;
   ::google::protobuf::int32 opposite_major_fragment_id_;
   bool supports_out_of_order_;
   bool is_spooling_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static Collector* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class QueryContextInformation : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.QueryContextInformation) */ {
+class QueryContextInformation : public ::google::protobuf::Message {
  public:
   QueryContextInformation();
   virtual ~QueryContextInformation();
@@ -1259,156 +943,118 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  QueryContextInformation(QueryContextInformation&& from) noexcept
-    : QueryContextInformation() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline QueryContextInformation& operator=(QueryContextInformation&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const QueryContextInformation& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const QueryContextInformation* internal_default_instance() {
-    return reinterpret_cast<const QueryContextInformation*>(
-               &_QueryContextInformation_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    7;
-
   void Swap(QueryContextInformation* other);
-  friend void swap(QueryContextInformation& a, QueryContextInformation& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline QueryContextInformation* New() const final {
-    return CreateMaybeMessage<QueryContextInformation>(NULL);
-  }
-
-  QueryContextInformation* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<QueryContextInformation>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  QueryContextInformation* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const QueryContextInformation& from);
   void MergeFrom(const QueryContextInformation& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(QueryContextInformation* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // optional string default_schema_name = 3;
-  bool has_default_schema_name() const;
-  void clear_default_schema_name();
-  static const int kDefaultSchemaNameFieldNumber = 3;
-  const ::std::string& default_schema_name() const;
-  void set_default_schema_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_default_schema_name(::std::string&& value);
-  #endif
-  void set_default_schema_name(const char* value);
-  void set_default_schema_name(const char* value, size_t size);
-  ::std::string* mutable_default_schema_name();
-  ::std::string* release_default_schema_name();
-  void set_allocated_default_schema_name(::std::string* default_schema_name);
-
-  // optional string session_id = 4;
-  bool has_session_id() const;
-  void clear_session_id();
-  static const int kSessionIdFieldNumber = 4;
-  const ::std::string& session_id() const;
-  void set_session_id(const ::std::string& value);
-  #if LANG_CXX11
-  void set_session_id(::std::string&& value);
-  #endif
-  void set_session_id(const char* value);
-  void set_session_id(const char* value, size_t size);
-  ::std::string* mutable_session_id();
-  ::std::string* release_session_id();
-  void set_allocated_session_id(::std::string* session_id);
-
   // optional int64 query_start_time = 1;
-  bool has_query_start_time() const;
-  void clear_query_start_time();
+  inline bool has_query_start_time() const;
+  inline void clear_query_start_time();
   static const int kQueryStartTimeFieldNumber = 1;
-  ::google::protobuf::int64 query_start_time() const;
-  void set_query_start_time(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 query_start_time() const;
+  inline void set_query_start_time(::google::protobuf::int64 value);
 
   // optional int32 time_zone = 2;
-  bool has_time_zone() const;
-  void clear_time_zone();
+  inline bool has_time_zone() const;
+  inline void clear_time_zone();
   static const int kTimeZoneFieldNumber = 2;
-  ::google::protobuf::int32 time_zone() const;
-  void set_time_zone(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 time_zone() const;
+  inline void set_time_zone(::google::protobuf::int32 value);
+
+  // optional string default_schema_name = 3;
+  inline bool has_default_schema_name() const;
+  inline void clear_default_schema_name();
+  static const int kDefaultSchemaNameFieldNumber = 3;
+  inline const ::std::string& default_schema_name() const;
+  inline void set_default_schema_name(const ::std::string& value);
+  inline void set_default_schema_name(const char* value);
+  inline void set_default_schema_name(const char* value, size_t size);
+  inline ::std::string* mutable_default_schema_name();
+  inline ::std::string* release_default_schema_name();
+  inline void set_allocated_default_schema_name(::std::string* default_schema_name);
+
+  // optional string session_id = 4;
+  inline bool has_session_id() const;
+  inline void clear_session_id();
+  static const int kSessionIdFieldNumber = 4;
+  inline const ::std::string& session_id() const;
+  inline void set_session_id(const ::std::string& value);
+  inline void set_session_id(const char* value);
+  inline void set_session_id(const char* value, size_t size);
+  inline ::std::string* mutable_session_id();
+  inline ::std::string* release_session_id();
+  inline void set_allocated_session_id(::std::string* session_id);
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.QueryContextInformation)
  private:
-  void set_has_query_start_time();
-  void clear_has_query_start_time();
-  void set_has_time_zone();
-  void clear_has_time_zone();
-  void set_has_default_schema_name();
-  void clear_has_default_schema_name();
-  void set_has_session_id();
-  void clear_has_session_id();
+  inline void set_has_query_start_time();
+  inline void clear_has_query_start_time();
+  inline void set_has_time_zone();
+  inline void clear_has_time_zone();
+  inline void set_has_default_schema_name();
+  inline void clear_has_default_schema_name();
+  inline void set_has_session_id();
+  inline void clear_has_session_id();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr default_schema_name_;
-  ::google::protobuf::internal::ArenaStringPtr session_id_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::int64 query_start_time_;
+  ::std::string* default_schema_name_;
+  ::std::string* session_id_;
   ::google::protobuf::int32 time_zone_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static QueryContextInformation* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class WorkQueueStatus : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.WorkQueueStatus) */ {
+class WorkQueueStatus : public ::google::protobuf::Message {
  public:
   WorkQueueStatus();
   virtual ~WorkQueueStatus();
@@ -1419,135 +1065,100 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  WorkQueueStatus(WorkQueueStatus&& from) noexcept
-    : WorkQueueStatus() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline WorkQueueStatus& operator=(WorkQueueStatus&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const WorkQueueStatus& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const WorkQueueStatus* internal_default_instance() {
-    return reinterpret_cast<const WorkQueueStatus*>(
-               &_WorkQueueStatus_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    8;
-
   void Swap(WorkQueueStatus* other);
-  friend void swap(WorkQueueStatus& a, WorkQueueStatus& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline WorkQueueStatus* New() const final {
-    return CreateMaybeMessage<WorkQueueStatus>(NULL);
-  }
-
-  WorkQueueStatus* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<WorkQueueStatus>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  WorkQueueStatus* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const WorkQueueStatus& from);
   void MergeFrom(const WorkQueueStatus& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(WorkQueueStatus* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.DrillbitEndpoint endpoint = 1;
-  bool has_endpoint() const;
-  void clear_endpoint();
+  inline bool has_endpoint() const;
+  inline void clear_endpoint();
   static const int kEndpointFieldNumber = 1;
-  private:
-  const ::exec::DrillbitEndpoint& _internal_endpoint() const;
-  public:
-  const ::exec::DrillbitEndpoint& endpoint() const;
-  ::exec::DrillbitEndpoint* release_endpoint();
-  ::exec::DrillbitEndpoint* mutable_endpoint();
-  void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
-
-  // optional int64 report_time = 3;
-  bool has_report_time() const;
-  void clear_report_time();
-  static const int kReportTimeFieldNumber = 3;
-  ::google::protobuf::int64 report_time() const;
-  void set_report_time(::google::protobuf::int64 value);
+  inline const ::exec::DrillbitEndpoint& endpoint() const;
+  inline ::exec::DrillbitEndpoint* mutable_endpoint();
+  inline ::exec::DrillbitEndpoint* release_endpoint();
+  inline void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
 
   // optional int32 queue_length = 2;
-  bool has_queue_length() const;
-  void clear_queue_length();
+  inline bool has_queue_length() const;
+  inline void clear_queue_length();
   static const int kQueueLengthFieldNumber = 2;
-  ::google::protobuf::int32 queue_length() const;
-  void set_queue_length(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 queue_length() const;
+  inline void set_queue_length(::google::protobuf::int32 value);
+
+  // optional int64 report_time = 3;
+  inline bool has_report_time() const;
+  inline void clear_report_time();
+  static const int kReportTimeFieldNumber = 3;
+  inline ::google::protobuf::int64 report_time() const;
+  inline void set_report_time(::google::protobuf::int64 value);
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.WorkQueueStatus)
  private:
-  void set_has_endpoint();
-  void clear_has_endpoint();
-  void set_has_queue_length();
-  void clear_has_queue_length();
-  void set_has_report_time();
-  void clear_has_report_time();
+  inline void set_has_endpoint();
+  inline void clear_has_endpoint();
+  inline void set_has_queue_length();
+  inline void clear_has_queue_length();
+  inline void set_has_report_time();
+  inline void clear_has_report_time();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::DrillbitEndpoint* endpoint_;
   ::google::protobuf::int64 report_time_;
   ::google::protobuf::int32 queue_length_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static WorkQueueStatus* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class FinishedReceiver : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.control.FinishedReceiver) */ {
+class FinishedReceiver : public ::google::protobuf::Message {
  public:
   FinishedReceiver();
   virtual ~FinishedReceiver();
@@ -1558,239 +1169,177 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  FinishedReceiver(FinishedReceiver&& from) noexcept
-    : FinishedReceiver() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline FinishedReceiver& operator=(FinishedReceiver&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const FinishedReceiver& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const FinishedReceiver* internal_default_instance() {
-    return reinterpret_cast<const FinishedReceiver*>(
-               &_FinishedReceiver_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    9;
-
   void Swap(FinishedReceiver* other);
-  friend void swap(FinishedReceiver& a, FinishedReceiver& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline FinishedReceiver* New() const final {
-    return CreateMaybeMessage<FinishedReceiver>(NULL);
-  }
-
-  FinishedReceiver* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<FinishedReceiver>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  FinishedReceiver* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const FinishedReceiver& from);
   void MergeFrom(const FinishedReceiver& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(FinishedReceiver* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.bit.FragmentHandle receiver = 1;
-  bool has_receiver() const;
-  void clear_receiver();
+  inline bool has_receiver() const;
+  inline void clear_receiver();
   static const int kReceiverFieldNumber = 1;
-  private:
-  const ::exec::bit::FragmentHandle& _internal_receiver() const;
-  public:
-  const ::exec::bit::FragmentHandle& receiver() const;
-  ::exec::bit::FragmentHandle* release_receiver();
-  ::exec::bit::FragmentHandle* mutable_receiver();
-  void set_allocated_receiver(::exec::bit::FragmentHandle* receiver);
+  inline const ::exec::bit::FragmentHandle& receiver() const;
+  inline ::exec::bit::FragmentHandle* mutable_receiver();
+  inline ::exec::bit::FragmentHandle* release_receiver();
+  inline void set_allocated_receiver(::exec::bit::FragmentHandle* receiver);
 
   // optional .exec.bit.FragmentHandle sender = 2;
-  bool has_sender() const;
-  void clear_sender();
+  inline bool has_sender() const;
+  inline void clear_sender();
   static const int kSenderFieldNumber = 2;
-  private:
-  const ::exec::bit::FragmentHandle& _internal_sender() const;
-  public:
-  const ::exec::bit::FragmentHandle& sender() const;
-  ::exec::bit::FragmentHandle* release_sender();
-  ::exec::bit::FragmentHandle* mutable_sender();
-  void set_allocated_sender(::exec::bit::FragmentHandle* sender);
+  inline const ::exec::bit::FragmentHandle& sender() const;
+  inline ::exec::bit::FragmentHandle* mutable_sender();
+  inline ::exec::bit::FragmentHandle* release_sender();
+  inline void set_allocated_sender(::exec::bit::FragmentHandle* sender);
 
   // @@protoc_insertion_point(class_scope:exec.bit.control.FinishedReceiver)
  private:
-  void set_has_receiver();
-  void clear_has_receiver();
-  void set_has_sender();
-  void clear_has_sender();
+  inline void set_has_receiver();
+  inline void clear_has_receiver();
+  inline void set_has_sender();
+  inline void clear_has_sender();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::bit::FragmentHandle* receiver_;
   ::exec::bit::FragmentHandle* sender_;
-  friend struct ::protobuf_BitControl_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitControl_2eproto();
+  friend void protobuf_AssignDesc_BitControl_2eproto();
+  friend void protobuf_ShutdownFile_BitControl_2eproto();
+
+  void InitAsDefaultInstance();
+  static FinishedReceiver* default_instance_;
 };
 // ===================================================================
 
 
 // ===================================================================
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic push
-  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
-#endif  // __GNUC__
 // BitControlHandshake
 
 // optional int32 rpc_version = 1;
 inline bool BitControlHandshake::has_rpc_version() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void BitControlHandshake::set_has_rpc_version() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void BitControlHandshake::clear_has_rpc_version() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void BitControlHandshake::clear_rpc_version() {
   rpc_version_ = 0;
   clear_has_rpc_version();
 }
 inline ::google::protobuf::int32 BitControlHandshake::rpc_version() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.BitControlHandshake.rpc_version)
   return rpc_version_;
 }
 inline void BitControlHandshake::set_rpc_version(::google::protobuf::int32 value) {
   set_has_rpc_version();
   rpc_version_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.BitControlHandshake.rpc_version)
 }
 
 // optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];
 inline bool BitControlHandshake::has_channel() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void BitControlHandshake::set_has_channel() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void BitControlHandshake::clear_has_channel() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void BitControlHandshake::clear_channel() {
   channel_ = 0;
   clear_has_channel();
 }
 inline ::exec::shared::RpcChannel BitControlHandshake::channel() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.BitControlHandshake.channel)
   return static_cast< ::exec::shared::RpcChannel >(channel_);
 }
 inline void BitControlHandshake::set_channel(::exec::shared::RpcChannel value) {
   assert(::exec::shared::RpcChannel_IsValid(value));
   set_has_channel();
   channel_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.BitControlHandshake.channel)
 }
 
 // optional .exec.DrillbitEndpoint endpoint = 3;
 inline bool BitControlHandshake::has_endpoint() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void BitControlHandshake::set_has_endpoint() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void BitControlHandshake::clear_has_endpoint() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000004u;
 }
-inline const ::exec::DrillbitEndpoint& BitControlHandshake::_internal_endpoint() const {
-  return *endpoint_;
+inline void BitControlHandshake::clear_endpoint() {
+  if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
+  clear_has_endpoint();
 }
 inline const ::exec::DrillbitEndpoint& BitControlHandshake::endpoint() const {
-  const ::exec::DrillbitEndpoint* p = endpoint_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.BitControlHandshake.endpoint)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::DrillbitEndpoint*>(
-      &::exec::_DrillbitEndpoint_default_instance_);
+  return endpoint_ != NULL ? *endpoint_ : *default_instance_->endpoint_;
+}
+inline ::exec::DrillbitEndpoint* BitControlHandshake::mutable_endpoint() {
+  set_has_endpoint();
+  if (endpoint_ == NULL) endpoint_ = new ::exec::DrillbitEndpoint;
+  return endpoint_;
 }
 inline ::exec::DrillbitEndpoint* BitControlHandshake::release_endpoint() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.BitControlHandshake.endpoint)
   clear_has_endpoint();
   ::exec::DrillbitEndpoint* temp = endpoint_;
   endpoint_ = NULL;
   return temp;
 }
-inline ::exec::DrillbitEndpoint* BitControlHandshake::mutable_endpoint() {
-  set_has_endpoint();
-  if (endpoint_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::DrillbitEndpoint>(GetArenaNoVirtual());
-    endpoint_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.BitControlHandshake.endpoint)
-  return endpoint_;
-}
 inline void BitControlHandshake::set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(endpoint_);
-  }
+  delete endpoint_;
+  endpoint_ = endpoint;
   if (endpoint) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      endpoint = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, endpoint, submessage_arena);
-    }
     set_has_endpoint();
   } else {
     clear_has_endpoint();
   }
-  endpoint_ = endpoint;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.BitControlHandshake.endpoint)
 }
 
 // repeated string authenticationMechanisms = 4;
@@ -1801,64 +1350,39 @@
   authenticationmechanisms_.Clear();
 }
 inline const ::std::string& BitControlHandshake::authenticationmechanisms(int index) const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.BitControlHandshake.authenticationMechanisms)
   return authenticationmechanisms_.Get(index);
 }
 inline ::std::string* BitControlHandshake::mutable_authenticationmechanisms(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.BitControlHandshake.authenticationMechanisms)
   return authenticationmechanisms_.Mutable(index);
 }
 inline void BitControlHandshake::set_authenticationmechanisms(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.bit.control.BitControlHandshake.authenticationMechanisms)
   authenticationmechanisms_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void BitControlHandshake::set_authenticationmechanisms(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.bit.control.BitControlHandshake.authenticationMechanisms)
-  authenticationmechanisms_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void BitControlHandshake::set_authenticationmechanisms(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   authenticationmechanisms_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.bit.control.BitControlHandshake.authenticationMechanisms)
 }
 inline void BitControlHandshake::set_authenticationmechanisms(int index, const char* value, size_t size) {
   authenticationmechanisms_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.bit.control.BitControlHandshake.authenticationMechanisms)
 }
 inline ::std::string* BitControlHandshake::add_authenticationmechanisms() {
-  // @@protoc_insertion_point(field_add_mutable:exec.bit.control.BitControlHandshake.authenticationMechanisms)
   return authenticationmechanisms_.Add();
 }
 inline void BitControlHandshake::add_authenticationmechanisms(const ::std::string& value) {
   authenticationmechanisms_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.bit.control.BitControlHandshake.authenticationMechanisms)
 }
-#if LANG_CXX11
-inline void BitControlHandshake::add_authenticationmechanisms(::std::string&& value) {
-  authenticationmechanisms_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.bit.control.BitControlHandshake.authenticationMechanisms)
-}
-#endif
 inline void BitControlHandshake::add_authenticationmechanisms(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   authenticationmechanisms_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.bit.control.BitControlHandshake.authenticationMechanisms)
 }
 inline void BitControlHandshake::add_authenticationmechanisms(const char* value, size_t size) {
   authenticationmechanisms_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.bit.control.BitControlHandshake.authenticationMechanisms)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 BitControlHandshake::authenticationmechanisms() const {
-  // @@protoc_insertion_point(field_list:exec.bit.control.BitControlHandshake.authenticationMechanisms)
   return authenticationmechanisms_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 BitControlHandshake::mutable_authenticationmechanisms() {
-  // @@protoc_insertion_point(field_mutable_list:exec.bit.control.BitControlHandshake.authenticationMechanisms)
   return &authenticationmechanisms_;
 }
 
@@ -1873,28 +1397,23 @@
 inline void BitStatus::clear_fragment_status() {
   fragment_status_.Clear();
 }
-inline ::exec::bit::control::FragmentStatus* BitStatus::mutable_fragment_status(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.BitStatus.fragment_status)
-  return fragment_status_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::FragmentStatus >*
-BitStatus::mutable_fragment_status() {
-  // @@protoc_insertion_point(field_mutable_list:exec.bit.control.BitStatus.fragment_status)
-  return &fragment_status_;
-}
 inline const ::exec::bit::control::FragmentStatus& BitStatus::fragment_status(int index) const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.BitStatus.fragment_status)
   return fragment_status_.Get(index);
 }
+inline ::exec::bit::control::FragmentStatus* BitStatus::mutable_fragment_status(int index) {
+  return fragment_status_.Mutable(index);
+}
 inline ::exec::bit::control::FragmentStatus* BitStatus::add_fragment_status() {
-  // @@protoc_insertion_point(field_add:exec.bit.control.BitStatus.fragment_status)
   return fragment_status_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::FragmentStatus >&
 BitStatus::fragment_status() const {
-  // @@protoc_insertion_point(field_list:exec.bit.control.BitStatus.fragment_status)
   return fragment_status_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::FragmentStatus >*
+BitStatus::mutable_fragment_status() {
+  return &fragment_status_;
+}
 
 // -------------------------------------------------------------------
 
@@ -1910,48 +1429,32 @@
 inline void FragmentStatus::clear_has_profile() {
   _has_bits_[0] &= ~0x00000001u;
 }
-inline const ::exec::shared::MinorFragmentProfile& FragmentStatus::_internal_profile() const {
-  return *profile_;
+inline void FragmentStatus::clear_profile() {
+  if (profile_ != NULL) profile_->::exec::shared::MinorFragmentProfile::Clear();
+  clear_has_profile();
 }
 inline const ::exec::shared::MinorFragmentProfile& FragmentStatus::profile() const {
-  const ::exec::shared::MinorFragmentProfile* p = profile_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.FragmentStatus.profile)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::MinorFragmentProfile*>(
-      &::exec::shared::_MinorFragmentProfile_default_instance_);
+  return profile_ != NULL ? *profile_ : *default_instance_->profile_;
+}
+inline ::exec::shared::MinorFragmentProfile* FragmentStatus::mutable_profile() {
+  set_has_profile();
+  if (profile_ == NULL) profile_ = new ::exec::shared::MinorFragmentProfile;
+  return profile_;
 }
 inline ::exec::shared::MinorFragmentProfile* FragmentStatus::release_profile() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.FragmentStatus.profile)
   clear_has_profile();
   ::exec::shared::MinorFragmentProfile* temp = profile_;
   profile_ = NULL;
   return temp;
 }
-inline ::exec::shared::MinorFragmentProfile* FragmentStatus::mutable_profile() {
-  set_has_profile();
-  if (profile_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::MinorFragmentProfile>(GetArenaNoVirtual());
-    profile_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.FragmentStatus.profile)
-  return profile_;
-}
 inline void FragmentStatus::set_allocated_profile(::exec::shared::MinorFragmentProfile* profile) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(profile_);
-  }
+  delete profile_;
+  profile_ = profile;
   if (profile) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      profile = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, profile, submessage_arena);
-    }
     set_has_profile();
   } else {
     clear_has_profile();
   }
-  profile_ = profile;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.FragmentStatus.profile)
 }
 
 // optional .exec.bit.FragmentHandle handle = 2;
@@ -1964,48 +1467,32 @@
 inline void FragmentStatus::clear_has_handle() {
   _has_bits_[0] &= ~0x00000002u;
 }
-inline const ::exec::bit::FragmentHandle& FragmentStatus::_internal_handle() const {
-  return *handle_;
+inline void FragmentStatus::clear_handle() {
+  if (handle_ != NULL) handle_->::exec::bit::FragmentHandle::Clear();
+  clear_has_handle();
 }
 inline const ::exec::bit::FragmentHandle& FragmentStatus::handle() const {
-  const ::exec::bit::FragmentHandle* p = handle_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.FragmentStatus.handle)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::bit::FragmentHandle*>(
-      &::exec::bit::_FragmentHandle_default_instance_);
+  return handle_ != NULL ? *handle_ : *default_instance_->handle_;
+}
+inline ::exec::bit::FragmentHandle* FragmentStatus::mutable_handle() {
+  set_has_handle();
+  if (handle_ == NULL) handle_ = new ::exec::bit::FragmentHandle;
+  return handle_;
 }
 inline ::exec::bit::FragmentHandle* FragmentStatus::release_handle() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.FragmentStatus.handle)
   clear_has_handle();
   ::exec::bit::FragmentHandle* temp = handle_;
   handle_ = NULL;
   return temp;
 }
-inline ::exec::bit::FragmentHandle* FragmentStatus::mutable_handle() {
-  set_has_handle();
-  if (handle_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::bit::FragmentHandle>(GetArenaNoVirtual());
-    handle_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.FragmentStatus.handle)
-  return handle_;
-}
 inline void FragmentStatus::set_allocated_handle(::exec::bit::FragmentHandle* handle) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(handle_);
-  }
+  delete handle_;
+  handle_ = handle;
   if (handle) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      handle = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, handle, submessage_arena);
-    }
     set_has_handle();
   } else {
     clear_has_handle();
   }
-  handle_ = handle;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.FragmentStatus.handle)
 }
 
 // -------------------------------------------------------------------
@@ -2019,28 +1506,23 @@
 inline void InitializeFragments::clear_fragment() {
   fragment_.Clear();
 }
-inline ::exec::bit::control::PlanFragment* InitializeFragments::mutable_fragment(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.InitializeFragments.fragment)
-  return fragment_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
-InitializeFragments::mutable_fragment() {
-  // @@protoc_insertion_point(field_mutable_list:exec.bit.control.InitializeFragments.fragment)
-  return &fragment_;
-}
 inline const ::exec::bit::control::PlanFragment& InitializeFragments::fragment(int index) const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.InitializeFragments.fragment)
   return fragment_.Get(index);
 }
+inline ::exec::bit::control::PlanFragment* InitializeFragments::mutable_fragment(int index) {
+  return fragment_.Mutable(index);
+}
 inline ::exec::bit::control::PlanFragment* InitializeFragments::add_fragment() {
-  // @@protoc_insertion_point(field_add:exec.bit.control.InitializeFragments.fragment)
   return fragment_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >&
 InitializeFragments::fragment() const {
-  // @@protoc_insertion_point(field_list:exec.bit.control.InitializeFragments.fragment)
   return fragment_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
+InitializeFragments::mutable_fragment() {
+  return &fragment_;
+}
 
 // -------------------------------------------------------------------
 
@@ -2048,92 +1530,94 @@
 
 // optional int32 type = 1;
 inline bool CustomMessage::has_type() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void CustomMessage::set_has_type() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void CustomMessage::clear_has_type() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void CustomMessage::clear_type() {
   type_ = 0;
   clear_has_type();
 }
 inline ::google::protobuf::int32 CustomMessage::type() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.CustomMessage.type)
   return type_;
 }
 inline void CustomMessage::set_type(::google::protobuf::int32 value) {
   set_has_type();
   type_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.CustomMessage.type)
 }
 
 // optional bytes message = 2;
 inline bool CustomMessage::has_message() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void CustomMessage::set_has_message() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void CustomMessage::clear_has_message() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void CustomMessage::clear_message() {
-  message_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ != &::google::protobuf::internal::kEmptyString) {
+    message_->clear();
+  }
   clear_has_message();
 }
 inline const ::std::string& CustomMessage::message() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.CustomMessage.message)
-  return message_.GetNoArena();
+  return *message_;
 }
 inline void CustomMessage::set_message(const ::std::string& value) {
   set_has_message();
-  message_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.bit.control.CustomMessage.message)
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  message_->assign(value);
 }
-#if LANG_CXX11
-inline void CustomMessage::set_message(::std::string&& value) {
-  set_has_message();
-  message_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.bit.control.CustomMessage.message)
-}
-#endif
 inline void CustomMessage::set_message(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_message();
-  message_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.bit.control.CustomMessage.message)
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  message_->assign(value);
 }
 inline void CustomMessage::set_message(const void* value, size_t size) {
   set_has_message();
-  message_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.bit.control.CustomMessage.message)
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  message_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* CustomMessage::mutable_message() {
   set_has_message();
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.CustomMessage.message)
-  return message_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  return message_;
 }
 inline ::std::string* CustomMessage::release_message() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.CustomMessage.message)
-  if (!has_message()) {
-    return NULL;
-  }
   clear_has_message();
-  return message_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = message_;
+    message_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void CustomMessage::set_allocated_message(::std::string* message) {
-  if (message != NULL) {
+  if (message_ != &::google::protobuf::internal::kEmptyString) {
+    delete message_;
+  }
+  if (message) {
     set_has_message();
+    message_ = message;
   } else {
     clear_has_message();
+    message_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  message_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), message);
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.CustomMessage.message)
 }
 
 // -------------------------------------------------------------------
@@ -2142,576 +1626,486 @@
 
 // optional .exec.bit.FragmentHandle handle = 1;
 inline bool PlanFragment::has_handle() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void PlanFragment::set_has_handle() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void PlanFragment::clear_has_handle() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000001u;
 }
-inline const ::exec::bit::FragmentHandle& PlanFragment::_internal_handle() const {
-  return *handle_;
+inline void PlanFragment::clear_handle() {
+  if (handle_ != NULL) handle_->::exec::bit::FragmentHandle::Clear();
+  clear_has_handle();
 }
 inline const ::exec::bit::FragmentHandle& PlanFragment::handle() const {
-  const ::exec::bit::FragmentHandle* p = handle_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.handle)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::bit::FragmentHandle*>(
-      &::exec::bit::_FragmentHandle_default_instance_);
+  return handle_ != NULL ? *handle_ : *default_instance_->handle_;
+}
+inline ::exec::bit::FragmentHandle* PlanFragment::mutable_handle() {
+  set_has_handle();
+  if (handle_ == NULL) handle_ = new ::exec::bit::FragmentHandle;
+  return handle_;
 }
 inline ::exec::bit::FragmentHandle* PlanFragment::release_handle() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.PlanFragment.handle)
   clear_has_handle();
   ::exec::bit::FragmentHandle* temp = handle_;
   handle_ = NULL;
   return temp;
 }
-inline ::exec::bit::FragmentHandle* PlanFragment::mutable_handle() {
-  set_has_handle();
-  if (handle_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::bit::FragmentHandle>(GetArenaNoVirtual());
-    handle_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.PlanFragment.handle)
-  return handle_;
-}
 inline void PlanFragment::set_allocated_handle(::exec::bit::FragmentHandle* handle) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(handle_);
-  }
+  delete handle_;
+  handle_ = handle;
   if (handle) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      handle = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, handle, submessage_arena);
-    }
     set_has_handle();
   } else {
     clear_has_handle();
   }
-  handle_ = handle;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.PlanFragment.handle)
 }
 
 // optional float network_cost = 4;
 inline bool PlanFragment::has_network_cost() const {
-  return (_has_bits_[0] & 0x00000080u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void PlanFragment::set_has_network_cost() {
-  _has_bits_[0] |= 0x00000080u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void PlanFragment::clear_has_network_cost() {
-  _has_bits_[0] &= ~0x00000080u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void PlanFragment::clear_network_cost() {
   network_cost_ = 0;
   clear_has_network_cost();
 }
 inline float PlanFragment::network_cost() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.network_cost)
   return network_cost_;
 }
 inline void PlanFragment::set_network_cost(float value) {
   set_has_network_cost();
   network_cost_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.PlanFragment.network_cost)
 }
 
 // optional float cpu_cost = 5;
 inline bool PlanFragment::has_cpu_cost() const {
-  return (_has_bits_[0] & 0x00000100u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void PlanFragment::set_has_cpu_cost() {
-  _has_bits_[0] |= 0x00000100u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void PlanFragment::clear_has_cpu_cost() {
-  _has_bits_[0] &= ~0x00000100u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void PlanFragment::clear_cpu_cost() {
   cpu_cost_ = 0;
   clear_has_cpu_cost();
 }
 inline float PlanFragment::cpu_cost() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.cpu_cost)
   return cpu_cost_;
 }
 inline void PlanFragment::set_cpu_cost(float value) {
   set_has_cpu_cost();
   cpu_cost_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.PlanFragment.cpu_cost)
 }
 
 // optional float disk_cost = 6;
 inline bool PlanFragment::has_disk_cost() const {
-  return (_has_bits_[0] & 0x00000200u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void PlanFragment::set_has_disk_cost() {
-  _has_bits_[0] |= 0x00000200u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void PlanFragment::clear_has_disk_cost() {
-  _has_bits_[0] &= ~0x00000200u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void PlanFragment::clear_disk_cost() {
   disk_cost_ = 0;
   clear_has_disk_cost();
 }
 inline float PlanFragment::disk_cost() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.disk_cost)
   return disk_cost_;
 }
 inline void PlanFragment::set_disk_cost(float value) {
   set_has_disk_cost();
   disk_cost_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.PlanFragment.disk_cost)
 }
 
 // optional float memory_cost = 7;
 inline bool PlanFragment::has_memory_cost() const {
-  return (_has_bits_[0] & 0x00000400u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void PlanFragment::set_has_memory_cost() {
-  _has_bits_[0] |= 0x00000400u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void PlanFragment::clear_has_memory_cost() {
-  _has_bits_[0] &= ~0x00000400u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void PlanFragment::clear_memory_cost() {
   memory_cost_ = 0;
   clear_has_memory_cost();
 }
 inline float PlanFragment::memory_cost() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.memory_cost)
   return memory_cost_;
 }
 inline void PlanFragment::set_memory_cost(float value) {
   set_has_memory_cost();
   memory_cost_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.PlanFragment.memory_cost)
 }
 
 // optional string fragment_json = 8;
 inline bool PlanFragment::has_fragment_json() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void PlanFragment::set_has_fragment_json() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void PlanFragment::clear_has_fragment_json() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000020u;
 }
 inline void PlanFragment::clear_fragment_json() {
-  fragment_json_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (fragment_json_ != &::google::protobuf::internal::kEmptyString) {
+    fragment_json_->clear();
+  }
   clear_has_fragment_json();
 }
 inline const ::std::string& PlanFragment::fragment_json() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.fragment_json)
-  return fragment_json_.GetNoArena();
+  return *fragment_json_;
 }
 inline void PlanFragment::set_fragment_json(const ::std::string& value) {
   set_has_fragment_json();
-  fragment_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.bit.control.PlanFragment.fragment_json)
+  if (fragment_json_ == &::google::protobuf::internal::kEmptyString) {
+    fragment_json_ = new ::std::string;
+  }
+  fragment_json_->assign(value);
 }
-#if LANG_CXX11
-inline void PlanFragment::set_fragment_json(::std::string&& value) {
-  set_has_fragment_json();
-  fragment_json_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.bit.control.PlanFragment.fragment_json)
-}
-#endif
 inline void PlanFragment::set_fragment_json(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_fragment_json();
-  fragment_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.bit.control.PlanFragment.fragment_json)
+  if (fragment_json_ == &::google::protobuf::internal::kEmptyString) {
+    fragment_json_ = new ::std::string;
+  }
+  fragment_json_->assign(value);
 }
 inline void PlanFragment::set_fragment_json(const char* value, size_t size) {
   set_has_fragment_json();
-  fragment_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.bit.control.PlanFragment.fragment_json)
+  if (fragment_json_ == &::google::protobuf::internal::kEmptyString) {
+    fragment_json_ = new ::std::string;
+  }
+  fragment_json_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* PlanFragment::mutable_fragment_json() {
   set_has_fragment_json();
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.PlanFragment.fragment_json)
-  return fragment_json_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (fragment_json_ == &::google::protobuf::internal::kEmptyString) {
+    fragment_json_ = new ::std::string;
+  }
+  return fragment_json_;
 }
 inline ::std::string* PlanFragment::release_fragment_json() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.PlanFragment.fragment_json)
-  if (!has_fragment_json()) {
-    return NULL;
-  }
   clear_has_fragment_json();
-  return fragment_json_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (fragment_json_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = fragment_json_;
+    fragment_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void PlanFragment::set_allocated_fragment_json(::std::string* fragment_json) {
-  if (fragment_json != NULL) {
+  if (fragment_json_ != &::google::protobuf::internal::kEmptyString) {
+    delete fragment_json_;
+  }
+  if (fragment_json) {
     set_has_fragment_json();
+    fragment_json_ = fragment_json;
   } else {
     clear_has_fragment_json();
+    fragment_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  fragment_json_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), fragment_json);
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.PlanFragment.fragment_json)
 }
 
 // optional bool leaf_fragment = 9;
 inline bool PlanFragment::has_leaf_fragment() const {
-  return (_has_bits_[0] & 0x00000800u) != 0;
+  return (_has_bits_[0] & 0x00000040u) != 0;
 }
 inline void PlanFragment::set_has_leaf_fragment() {
-  _has_bits_[0] |= 0x00000800u;
+  _has_bits_[0] |= 0x00000040u;
 }
 inline void PlanFragment::clear_has_leaf_fragment() {
-  _has_bits_[0] &= ~0x00000800u;
+  _has_bits_[0] &= ~0x00000040u;
 }
 inline void PlanFragment::clear_leaf_fragment() {
   leaf_fragment_ = false;
   clear_has_leaf_fragment();
 }
 inline bool PlanFragment::leaf_fragment() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.leaf_fragment)
   return leaf_fragment_;
 }
 inline void PlanFragment::set_leaf_fragment(bool value) {
   set_has_leaf_fragment();
   leaf_fragment_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.PlanFragment.leaf_fragment)
 }
 
 // optional .exec.DrillbitEndpoint assignment = 10;
 inline bool PlanFragment::has_assignment() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000080u) != 0;
 }
 inline void PlanFragment::set_has_assignment() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000080u;
 }
 inline void PlanFragment::clear_has_assignment() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000080u;
 }
-inline const ::exec::DrillbitEndpoint& PlanFragment::_internal_assignment() const {
-  return *assignment_;
+inline void PlanFragment::clear_assignment() {
+  if (assignment_ != NULL) assignment_->::exec::DrillbitEndpoint::Clear();
+  clear_has_assignment();
 }
 inline const ::exec::DrillbitEndpoint& PlanFragment::assignment() const {
-  const ::exec::DrillbitEndpoint* p = assignment_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.assignment)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::DrillbitEndpoint*>(
-      &::exec::_DrillbitEndpoint_default_instance_);
+  return assignment_ != NULL ? *assignment_ : *default_instance_->assignment_;
+}
+inline ::exec::DrillbitEndpoint* PlanFragment::mutable_assignment() {
+  set_has_assignment();
+  if (assignment_ == NULL) assignment_ = new ::exec::DrillbitEndpoint;
+  return assignment_;
 }
 inline ::exec::DrillbitEndpoint* PlanFragment::release_assignment() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.PlanFragment.assignment)
   clear_has_assignment();
   ::exec::DrillbitEndpoint* temp = assignment_;
   assignment_ = NULL;
   return temp;
 }
-inline ::exec::DrillbitEndpoint* PlanFragment::mutable_assignment() {
-  set_has_assignment();
-  if (assignment_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::DrillbitEndpoint>(GetArenaNoVirtual());
-    assignment_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.PlanFragment.assignment)
-  return assignment_;
-}
 inline void PlanFragment::set_allocated_assignment(::exec::DrillbitEndpoint* assignment) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(assignment_);
-  }
+  delete assignment_;
+  assignment_ = assignment;
   if (assignment) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      assignment = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, assignment, submessage_arena);
-    }
     set_has_assignment();
   } else {
     clear_has_assignment();
   }
-  assignment_ = assignment;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.PlanFragment.assignment)
 }
 
 // optional .exec.DrillbitEndpoint foreman = 11;
 inline bool PlanFragment::has_foreman() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000100u) != 0;
 }
 inline void PlanFragment::set_has_foreman() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000100u;
 }
 inline void PlanFragment::clear_has_foreman() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000100u;
 }
-inline const ::exec::DrillbitEndpoint& PlanFragment::_internal_foreman() const {
-  return *foreman_;
+inline void PlanFragment::clear_foreman() {
+  if (foreman_ != NULL) foreman_->::exec::DrillbitEndpoint::Clear();
+  clear_has_foreman();
 }
 inline const ::exec::DrillbitEndpoint& PlanFragment::foreman() const {
-  const ::exec::DrillbitEndpoint* p = foreman_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.foreman)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::DrillbitEndpoint*>(
-      &::exec::_DrillbitEndpoint_default_instance_);
+  return foreman_ != NULL ? *foreman_ : *default_instance_->foreman_;
+}
+inline ::exec::DrillbitEndpoint* PlanFragment::mutable_foreman() {
+  set_has_foreman();
+  if (foreman_ == NULL) foreman_ = new ::exec::DrillbitEndpoint;
+  return foreman_;
 }
 inline ::exec::DrillbitEndpoint* PlanFragment::release_foreman() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.PlanFragment.foreman)
   clear_has_foreman();
   ::exec::DrillbitEndpoint* temp = foreman_;
   foreman_ = NULL;
   return temp;
 }
-inline ::exec::DrillbitEndpoint* PlanFragment::mutable_foreman() {
-  set_has_foreman();
-  if (foreman_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::DrillbitEndpoint>(GetArenaNoVirtual());
-    foreman_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.PlanFragment.foreman)
-  return foreman_;
-}
 inline void PlanFragment::set_allocated_foreman(::exec::DrillbitEndpoint* foreman) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(foreman_);
-  }
+  delete foreman_;
+  foreman_ = foreman;
   if (foreman) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      foreman = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, foreman, submessage_arena);
-    }
     set_has_foreman();
   } else {
     clear_has_foreman();
   }
-  foreman_ = foreman;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.PlanFragment.foreman)
 }
 
 // optional int64 mem_initial = 12 [default = 20000000];
 inline bool PlanFragment::has_mem_initial() const {
-  return (_has_bits_[0] & 0x00001000u) != 0;
+  return (_has_bits_[0] & 0x00000200u) != 0;
 }
 inline void PlanFragment::set_has_mem_initial() {
-  _has_bits_[0] |= 0x00001000u;
+  _has_bits_[0] |= 0x00000200u;
 }
 inline void PlanFragment::clear_has_mem_initial() {
-  _has_bits_[0] &= ~0x00001000u;
+  _has_bits_[0] &= ~0x00000200u;
 }
 inline void PlanFragment::clear_mem_initial() {
   mem_initial_ = GOOGLE_LONGLONG(20000000);
   clear_has_mem_initial();
 }
 inline ::google::protobuf::int64 PlanFragment::mem_initial() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.mem_initial)
   return mem_initial_;
 }
 inline void PlanFragment::set_mem_initial(::google::protobuf::int64 value) {
   set_has_mem_initial();
   mem_initial_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.PlanFragment.mem_initial)
 }
 
 // optional int64 mem_max = 13 [default = 2000000000];
 inline bool PlanFragment::has_mem_max() const {
-  return (_has_bits_[0] & 0x00002000u) != 0;
+  return (_has_bits_[0] & 0x00000400u) != 0;
 }
 inline void PlanFragment::set_has_mem_max() {
-  _has_bits_[0] |= 0x00002000u;
+  _has_bits_[0] |= 0x00000400u;
 }
 inline void PlanFragment::clear_has_mem_max() {
-  _has_bits_[0] &= ~0x00002000u;
+  _has_bits_[0] &= ~0x00000400u;
 }
 inline void PlanFragment::clear_mem_max() {
   mem_max_ = GOOGLE_LONGLONG(2000000000);
   clear_has_mem_max();
 }
 inline ::google::protobuf::int64 PlanFragment::mem_max() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.mem_max)
   return mem_max_;
 }
 inline void PlanFragment::set_mem_max(::google::protobuf::int64 value) {
   set_has_mem_max();
   mem_max_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.PlanFragment.mem_max)
 }
 
 // optional .exec.shared.UserCredentials credentials = 14;
 inline bool PlanFragment::has_credentials() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000800u) != 0;
 }
 inline void PlanFragment::set_has_credentials() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000800u;
 }
 inline void PlanFragment::clear_has_credentials() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000800u;
 }
-inline const ::exec::shared::UserCredentials& PlanFragment::_internal_credentials() const {
-  return *credentials_;
+inline void PlanFragment::clear_credentials() {
+  if (credentials_ != NULL) credentials_->::exec::shared::UserCredentials::Clear();
+  clear_has_credentials();
 }
 inline const ::exec::shared::UserCredentials& PlanFragment::credentials() const {
-  const ::exec::shared::UserCredentials* p = credentials_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.credentials)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::UserCredentials*>(
-      &::exec::shared::_UserCredentials_default_instance_);
+  return credentials_ != NULL ? *credentials_ : *default_instance_->credentials_;
+}
+inline ::exec::shared::UserCredentials* PlanFragment::mutable_credentials() {
+  set_has_credentials();
+  if (credentials_ == NULL) credentials_ = new ::exec::shared::UserCredentials;
+  return credentials_;
 }
 inline ::exec::shared::UserCredentials* PlanFragment::release_credentials() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.PlanFragment.credentials)
   clear_has_credentials();
   ::exec::shared::UserCredentials* temp = credentials_;
   credentials_ = NULL;
   return temp;
 }
-inline ::exec::shared::UserCredentials* PlanFragment::mutable_credentials() {
-  set_has_credentials();
-  if (credentials_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::UserCredentials>(GetArenaNoVirtual());
-    credentials_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.PlanFragment.credentials)
-  return credentials_;
-}
 inline void PlanFragment::set_allocated_credentials(::exec::shared::UserCredentials* credentials) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(credentials_);
-  }
+  delete credentials_;
+  credentials_ = credentials;
   if (credentials) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      credentials = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, credentials, submessage_arena);
-    }
     set_has_credentials();
   } else {
     clear_has_credentials();
   }
-  credentials_ = credentials;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.PlanFragment.credentials)
 }
 
 // optional string options_json = 15;
 inline bool PlanFragment::has_options_json() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00001000u) != 0;
 }
 inline void PlanFragment::set_has_options_json() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00001000u;
 }
 inline void PlanFragment::clear_has_options_json() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00001000u;
 }
 inline void PlanFragment::clear_options_json() {
-  options_json_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+    options_json_->clear();
+  }
   clear_has_options_json();
 }
 inline const ::std::string& PlanFragment::options_json() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.options_json)
-  return options_json_.GetNoArena();
+  return *options_json_;
 }
 inline void PlanFragment::set_options_json(const ::std::string& value) {
   set_has_options_json();
-  options_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.bit.control.PlanFragment.options_json)
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  options_json_->assign(value);
 }
-#if LANG_CXX11
-inline void PlanFragment::set_options_json(::std::string&& value) {
-  set_has_options_json();
-  options_json_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.bit.control.PlanFragment.options_json)
-}
-#endif
 inline void PlanFragment::set_options_json(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_options_json();
-  options_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.bit.control.PlanFragment.options_json)
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  options_json_->assign(value);
 }
 inline void PlanFragment::set_options_json(const char* value, size_t size) {
   set_has_options_json();
-  options_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.bit.control.PlanFragment.options_json)
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  options_json_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* PlanFragment::mutable_options_json() {
   set_has_options_json();
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.PlanFragment.options_json)
-  return options_json_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  return options_json_;
 }
 inline ::std::string* PlanFragment::release_options_json() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.PlanFragment.options_json)
-  if (!has_options_json()) {
-    return NULL;
-  }
   clear_has_options_json();
-  return options_json_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = options_json_;
+    options_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void PlanFragment::set_allocated_options_json(::std::string* options_json) {
-  if (options_json != NULL) {
+  if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+    delete options_json_;
+  }
+  if (options_json) {
     set_has_options_json();
+    options_json_ = options_json;
   } else {
     clear_has_options_json();
+    options_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  options_json_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), options_json);
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.PlanFragment.options_json)
 }
 
 // optional .exec.bit.control.QueryContextInformation context = 16;
 inline bool PlanFragment::has_context() const {
-  return (_has_bits_[0] & 0x00000040u) != 0;
+  return (_has_bits_[0] & 0x00002000u) != 0;
 }
 inline void PlanFragment::set_has_context() {
-  _has_bits_[0] |= 0x00000040u;
+  _has_bits_[0] |= 0x00002000u;
 }
 inline void PlanFragment::clear_has_context() {
-  _has_bits_[0] &= ~0x00000040u;
+  _has_bits_[0] &= ~0x00002000u;
 }
 inline void PlanFragment::clear_context() {
-  if (context_ != NULL) context_->Clear();
+  if (context_ != NULL) context_->::exec::bit::control::QueryContextInformation::Clear();
   clear_has_context();
 }
-inline const ::exec::bit::control::QueryContextInformation& PlanFragment::_internal_context() const {
-  return *context_;
-}
 inline const ::exec::bit::control::QueryContextInformation& PlanFragment::context() const {
-  const ::exec::bit::control::QueryContextInformation* p = context_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.context)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::bit::control::QueryContextInformation*>(
-      &::exec::bit::control::_QueryContextInformation_default_instance_);
+  return context_ != NULL ? *context_ : *default_instance_->context_;
+}
+inline ::exec::bit::control::QueryContextInformation* PlanFragment::mutable_context() {
+  set_has_context();
+  if (context_ == NULL) context_ = new ::exec::bit::control::QueryContextInformation;
+  return context_;
 }
 inline ::exec::bit::control::QueryContextInformation* PlanFragment::release_context() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.PlanFragment.context)
   clear_has_context();
   ::exec::bit::control::QueryContextInformation* temp = context_;
   context_ = NULL;
   return temp;
 }
-inline ::exec::bit::control::QueryContextInformation* PlanFragment::mutable_context() {
-  set_has_context();
-  if (context_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::bit::control::QueryContextInformation>(GetArenaNoVirtual());
-    context_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.PlanFragment.context)
-  return context_;
-}
 inline void PlanFragment::set_allocated_context(::exec::bit::control::QueryContextInformation* context) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete context_;
-  }
+  delete context_;
+  context_ = context;
   if (context) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      context = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, context, submessage_arena);
-    }
     set_has_context();
   } else {
     clear_has_context();
   }
-  context_ = context;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.PlanFragment.context)
 }
 
 // repeated .exec.bit.control.Collector collector = 17;
@@ -2721,28 +2115,23 @@
 inline void PlanFragment::clear_collector() {
   collector_.Clear();
 }
-inline ::exec::bit::control::Collector* PlanFragment::mutable_collector(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.PlanFragment.collector)
-  return collector_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::Collector >*
-PlanFragment::mutable_collector() {
-  // @@protoc_insertion_point(field_mutable_list:exec.bit.control.PlanFragment.collector)
-  return &collector_;
-}
 inline const ::exec::bit::control::Collector& PlanFragment::collector(int index) const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.PlanFragment.collector)
   return collector_.Get(index);
 }
+inline ::exec::bit::control::Collector* PlanFragment::mutable_collector(int index) {
+  return collector_.Mutable(index);
+}
 inline ::exec::bit::control::Collector* PlanFragment::add_collector() {
-  // @@protoc_insertion_point(field_add:exec.bit.control.PlanFragment.collector)
   return collector_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::Collector >&
 PlanFragment::collector() const {
-  // @@protoc_insertion_point(field_list:exec.bit.control.PlanFragment.collector)
   return collector_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::Collector >*
+PlanFragment::mutable_collector() {
+  return &collector_;
+}
 
 // -------------------------------------------------------------------
 
@@ -2763,13 +2152,11 @@
   clear_has_opposite_major_fragment_id();
 }
 inline ::google::protobuf::int32 Collector::opposite_major_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.Collector.opposite_major_fragment_id)
   return opposite_major_fragment_id_;
 }
 inline void Collector::set_opposite_major_fragment_id(::google::protobuf::int32 value) {
   set_has_opposite_major_fragment_id();
   opposite_major_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.Collector.opposite_major_fragment_id)
 }
 
 // repeated int32 incoming_minor_fragment = 2 [packed = true];
@@ -2780,74 +2167,65 @@
   incoming_minor_fragment_.Clear();
 }
 inline ::google::protobuf::int32 Collector::incoming_minor_fragment(int index) const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.Collector.incoming_minor_fragment)
   return incoming_minor_fragment_.Get(index);
 }
 inline void Collector::set_incoming_minor_fragment(int index, ::google::protobuf::int32 value) {
   incoming_minor_fragment_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.bit.control.Collector.incoming_minor_fragment)
 }
 inline void Collector::add_incoming_minor_fragment(::google::protobuf::int32 value) {
   incoming_minor_fragment_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.bit.control.Collector.incoming_minor_fragment)
 }
 inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
 Collector::incoming_minor_fragment() const {
-  // @@protoc_insertion_point(field_list:exec.bit.control.Collector.incoming_minor_fragment)
   return incoming_minor_fragment_;
 }
 inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
 Collector::mutable_incoming_minor_fragment() {
-  // @@protoc_insertion_point(field_mutable_list:exec.bit.control.Collector.incoming_minor_fragment)
   return &incoming_minor_fragment_;
 }
 
 // optional bool supports_out_of_order = 3;
 inline bool Collector::has_supports_out_of_order() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void Collector::set_has_supports_out_of_order() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void Collector::clear_has_supports_out_of_order() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void Collector::clear_supports_out_of_order() {
   supports_out_of_order_ = false;
   clear_has_supports_out_of_order();
 }
 inline bool Collector::supports_out_of_order() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.Collector.supports_out_of_order)
   return supports_out_of_order_;
 }
 inline void Collector::set_supports_out_of_order(bool value) {
   set_has_supports_out_of_order();
   supports_out_of_order_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.Collector.supports_out_of_order)
 }
 
 // optional bool is_spooling = 4;
 inline bool Collector::has_is_spooling() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void Collector::set_has_is_spooling() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void Collector::clear_has_is_spooling() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void Collector::clear_is_spooling() {
   is_spooling_ = false;
   clear_has_is_spooling();
 }
 inline bool Collector::is_spooling() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.Collector.is_spooling)
   return is_spooling_;
 }
 inline void Collector::set_is_spooling(bool value) {
   set_has_is_spooling();
   is_spooling_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.Collector.is_spooling)
 }
 
 // -------------------------------------------------------------------
@@ -2856,182 +2234,186 @@
 
 // optional int64 query_start_time = 1;
 inline bool QueryContextInformation::has_query_start_time() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void QueryContextInformation::set_has_query_start_time() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void QueryContextInformation::clear_has_query_start_time() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void QueryContextInformation::clear_query_start_time() {
   query_start_time_ = GOOGLE_LONGLONG(0);
   clear_has_query_start_time();
 }
 inline ::google::protobuf::int64 QueryContextInformation::query_start_time() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.QueryContextInformation.query_start_time)
   return query_start_time_;
 }
 inline void QueryContextInformation::set_query_start_time(::google::protobuf::int64 value) {
   set_has_query_start_time();
   query_start_time_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.QueryContextInformation.query_start_time)
 }
 
 // optional int32 time_zone = 2;
 inline bool QueryContextInformation::has_time_zone() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void QueryContextInformation::set_has_time_zone() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void QueryContextInformation::clear_has_time_zone() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void QueryContextInformation::clear_time_zone() {
   time_zone_ = 0;
   clear_has_time_zone();
 }
 inline ::google::protobuf::int32 QueryContextInformation::time_zone() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.QueryContextInformation.time_zone)
   return time_zone_;
 }
 inline void QueryContextInformation::set_time_zone(::google::protobuf::int32 value) {
   set_has_time_zone();
   time_zone_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.QueryContextInformation.time_zone)
 }
 
 // optional string default_schema_name = 3;
 inline bool QueryContextInformation::has_default_schema_name() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void QueryContextInformation::set_has_default_schema_name() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void QueryContextInformation::clear_has_default_schema_name() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void QueryContextInformation::clear_default_schema_name() {
-  default_schema_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (default_schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    default_schema_name_->clear();
+  }
   clear_has_default_schema_name();
 }
 inline const ::std::string& QueryContextInformation::default_schema_name() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.QueryContextInformation.default_schema_name)
-  return default_schema_name_.GetNoArena();
+  return *default_schema_name_;
 }
 inline void QueryContextInformation::set_default_schema_name(const ::std::string& value) {
   set_has_default_schema_name();
-  default_schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.bit.control.QueryContextInformation.default_schema_name)
+  if (default_schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    default_schema_name_ = new ::std::string;
+  }
+  default_schema_name_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryContextInformation::set_default_schema_name(::std::string&& value) {
-  set_has_default_schema_name();
-  default_schema_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.bit.control.QueryContextInformation.default_schema_name)
-}
-#endif
 inline void QueryContextInformation::set_default_schema_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_default_schema_name();
-  default_schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.bit.control.QueryContextInformation.default_schema_name)
+  if (default_schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    default_schema_name_ = new ::std::string;
+  }
+  default_schema_name_->assign(value);
 }
 inline void QueryContextInformation::set_default_schema_name(const char* value, size_t size) {
   set_has_default_schema_name();
-  default_schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.bit.control.QueryContextInformation.default_schema_name)
+  if (default_schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    default_schema_name_ = new ::std::string;
+  }
+  default_schema_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryContextInformation::mutable_default_schema_name() {
   set_has_default_schema_name();
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.QueryContextInformation.default_schema_name)
-  return default_schema_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (default_schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    default_schema_name_ = new ::std::string;
+  }
+  return default_schema_name_;
 }
 inline ::std::string* QueryContextInformation::release_default_schema_name() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.QueryContextInformation.default_schema_name)
-  if (!has_default_schema_name()) {
-    return NULL;
-  }
   clear_has_default_schema_name();
-  return default_schema_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (default_schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = default_schema_name_;
+    default_schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryContextInformation::set_allocated_default_schema_name(::std::string* default_schema_name) {
-  if (default_schema_name != NULL) {
+  if (default_schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete default_schema_name_;
+  }
+  if (default_schema_name) {
     set_has_default_schema_name();
+    default_schema_name_ = default_schema_name;
   } else {
     clear_has_default_schema_name();
+    default_schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  default_schema_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), default_schema_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.QueryContextInformation.default_schema_name)
 }
 
 // optional string session_id = 4;
 inline bool QueryContextInformation::has_session_id() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void QueryContextInformation::set_has_session_id() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void QueryContextInformation::clear_has_session_id() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void QueryContextInformation::clear_session_id() {
-  session_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (session_id_ != &::google::protobuf::internal::kEmptyString) {
+    session_id_->clear();
+  }
   clear_has_session_id();
 }
 inline const ::std::string& QueryContextInformation::session_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.QueryContextInformation.session_id)
-  return session_id_.GetNoArena();
+  return *session_id_;
 }
 inline void QueryContextInformation::set_session_id(const ::std::string& value) {
   set_has_session_id();
-  session_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.bit.control.QueryContextInformation.session_id)
+  if (session_id_ == &::google::protobuf::internal::kEmptyString) {
+    session_id_ = new ::std::string;
+  }
+  session_id_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryContextInformation::set_session_id(::std::string&& value) {
-  set_has_session_id();
-  session_id_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.bit.control.QueryContextInformation.session_id)
-}
-#endif
 inline void QueryContextInformation::set_session_id(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_session_id();
-  session_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.bit.control.QueryContextInformation.session_id)
+  if (session_id_ == &::google::protobuf::internal::kEmptyString) {
+    session_id_ = new ::std::string;
+  }
+  session_id_->assign(value);
 }
 inline void QueryContextInformation::set_session_id(const char* value, size_t size) {
   set_has_session_id();
-  session_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.bit.control.QueryContextInformation.session_id)
+  if (session_id_ == &::google::protobuf::internal::kEmptyString) {
+    session_id_ = new ::std::string;
+  }
+  session_id_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryContextInformation::mutable_session_id() {
   set_has_session_id();
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.QueryContextInformation.session_id)
-  return session_id_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (session_id_ == &::google::protobuf::internal::kEmptyString) {
+    session_id_ = new ::std::string;
+  }
+  return session_id_;
 }
 inline ::std::string* QueryContextInformation::release_session_id() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.QueryContextInformation.session_id)
-  if (!has_session_id()) {
-    return NULL;
-  }
   clear_has_session_id();
-  return session_id_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (session_id_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = session_id_;
+    session_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryContextInformation::set_allocated_session_id(::std::string* session_id) {
-  if (session_id != NULL) {
+  if (session_id_ != &::google::protobuf::internal::kEmptyString) {
+    delete session_id_;
+  }
+  if (session_id) {
     set_has_session_id();
+    session_id_ = session_id;
   } else {
     clear_has_session_id();
+    session_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  session_id_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), session_id);
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.QueryContextInformation.session_id)
 }
 
 // -------------------------------------------------------------------
@@ -3048,96 +2430,76 @@
 inline void WorkQueueStatus::clear_has_endpoint() {
   _has_bits_[0] &= ~0x00000001u;
 }
-inline const ::exec::DrillbitEndpoint& WorkQueueStatus::_internal_endpoint() const {
-  return *endpoint_;
+inline void WorkQueueStatus::clear_endpoint() {
+  if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
+  clear_has_endpoint();
 }
 inline const ::exec::DrillbitEndpoint& WorkQueueStatus::endpoint() const {
-  const ::exec::DrillbitEndpoint* p = endpoint_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.WorkQueueStatus.endpoint)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::DrillbitEndpoint*>(
-      &::exec::_DrillbitEndpoint_default_instance_);
+  return endpoint_ != NULL ? *endpoint_ : *default_instance_->endpoint_;
+}
+inline ::exec::DrillbitEndpoint* WorkQueueStatus::mutable_endpoint() {
+  set_has_endpoint();
+  if (endpoint_ == NULL) endpoint_ = new ::exec::DrillbitEndpoint;
+  return endpoint_;
 }
 inline ::exec::DrillbitEndpoint* WorkQueueStatus::release_endpoint() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.WorkQueueStatus.endpoint)
   clear_has_endpoint();
   ::exec::DrillbitEndpoint* temp = endpoint_;
   endpoint_ = NULL;
   return temp;
 }
-inline ::exec::DrillbitEndpoint* WorkQueueStatus::mutable_endpoint() {
-  set_has_endpoint();
-  if (endpoint_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::DrillbitEndpoint>(GetArenaNoVirtual());
-    endpoint_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.WorkQueueStatus.endpoint)
-  return endpoint_;
-}
 inline void WorkQueueStatus::set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(endpoint_);
-  }
+  delete endpoint_;
+  endpoint_ = endpoint;
   if (endpoint) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      endpoint = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, endpoint, submessage_arena);
-    }
     set_has_endpoint();
   } else {
     clear_has_endpoint();
   }
-  endpoint_ = endpoint;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.WorkQueueStatus.endpoint)
 }
 
 // optional int32 queue_length = 2;
 inline bool WorkQueueStatus::has_queue_length() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void WorkQueueStatus::set_has_queue_length() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void WorkQueueStatus::clear_has_queue_length() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void WorkQueueStatus::clear_queue_length() {
   queue_length_ = 0;
   clear_has_queue_length();
 }
 inline ::google::protobuf::int32 WorkQueueStatus::queue_length() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.WorkQueueStatus.queue_length)
   return queue_length_;
 }
 inline void WorkQueueStatus::set_queue_length(::google::protobuf::int32 value) {
   set_has_queue_length();
   queue_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.WorkQueueStatus.queue_length)
 }
 
 // optional int64 report_time = 3;
 inline bool WorkQueueStatus::has_report_time() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void WorkQueueStatus::set_has_report_time() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void WorkQueueStatus::clear_has_report_time() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void WorkQueueStatus::clear_report_time() {
   report_time_ = GOOGLE_LONGLONG(0);
   clear_has_report_time();
 }
 inline ::google::protobuf::int64 WorkQueueStatus::report_time() const {
-  // @@protoc_insertion_point(field_get:exec.bit.control.WorkQueueStatus.report_time)
   return report_time_;
 }
 inline void WorkQueueStatus::set_report_time(::google::protobuf::int64 value) {
   set_has_report_time();
   report_time_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.control.WorkQueueStatus.report_time)
 }
 
 // -------------------------------------------------------------------
@@ -3154,48 +2516,32 @@
 inline void FinishedReceiver::clear_has_receiver() {
   _has_bits_[0] &= ~0x00000001u;
 }
-inline const ::exec::bit::FragmentHandle& FinishedReceiver::_internal_receiver() const {
-  return *receiver_;
+inline void FinishedReceiver::clear_receiver() {
+  if (receiver_ != NULL) receiver_->::exec::bit::FragmentHandle::Clear();
+  clear_has_receiver();
 }
 inline const ::exec::bit::FragmentHandle& FinishedReceiver::receiver() const {
-  const ::exec::bit::FragmentHandle* p = receiver_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.FinishedReceiver.receiver)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::bit::FragmentHandle*>(
-      &::exec::bit::_FragmentHandle_default_instance_);
+  return receiver_ != NULL ? *receiver_ : *default_instance_->receiver_;
+}
+inline ::exec::bit::FragmentHandle* FinishedReceiver::mutable_receiver() {
+  set_has_receiver();
+  if (receiver_ == NULL) receiver_ = new ::exec::bit::FragmentHandle;
+  return receiver_;
 }
 inline ::exec::bit::FragmentHandle* FinishedReceiver::release_receiver() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.FinishedReceiver.receiver)
   clear_has_receiver();
   ::exec::bit::FragmentHandle* temp = receiver_;
   receiver_ = NULL;
   return temp;
 }
-inline ::exec::bit::FragmentHandle* FinishedReceiver::mutable_receiver() {
-  set_has_receiver();
-  if (receiver_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::bit::FragmentHandle>(GetArenaNoVirtual());
-    receiver_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.FinishedReceiver.receiver)
-  return receiver_;
-}
 inline void FinishedReceiver::set_allocated_receiver(::exec::bit::FragmentHandle* receiver) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(receiver_);
-  }
+  delete receiver_;
+  receiver_ = receiver;
   if (receiver) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      receiver = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, receiver, submessage_arena);
-    }
     set_has_receiver();
   } else {
     clear_has_receiver();
   }
-  receiver_ = receiver;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.FinishedReceiver.receiver)
 }
 
 // optional .exec.bit.FragmentHandle sender = 2;
@@ -3208,71 +2554,34 @@
 inline void FinishedReceiver::clear_has_sender() {
   _has_bits_[0] &= ~0x00000002u;
 }
-inline const ::exec::bit::FragmentHandle& FinishedReceiver::_internal_sender() const {
-  return *sender_;
+inline void FinishedReceiver::clear_sender() {
+  if (sender_ != NULL) sender_->::exec::bit::FragmentHandle::Clear();
+  clear_has_sender();
 }
 inline const ::exec::bit::FragmentHandle& FinishedReceiver::sender() const {
-  const ::exec::bit::FragmentHandle* p = sender_;
-  // @@protoc_insertion_point(field_get:exec.bit.control.FinishedReceiver.sender)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::bit::FragmentHandle*>(
-      &::exec::bit::_FragmentHandle_default_instance_);
+  return sender_ != NULL ? *sender_ : *default_instance_->sender_;
+}
+inline ::exec::bit::FragmentHandle* FinishedReceiver::mutable_sender() {
+  set_has_sender();
+  if (sender_ == NULL) sender_ = new ::exec::bit::FragmentHandle;
+  return sender_;
 }
 inline ::exec::bit::FragmentHandle* FinishedReceiver::release_sender() {
-  // @@protoc_insertion_point(field_release:exec.bit.control.FinishedReceiver.sender)
   clear_has_sender();
   ::exec::bit::FragmentHandle* temp = sender_;
   sender_ = NULL;
   return temp;
 }
-inline ::exec::bit::FragmentHandle* FinishedReceiver::mutable_sender() {
-  set_has_sender();
-  if (sender_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::bit::FragmentHandle>(GetArenaNoVirtual());
-    sender_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.control.FinishedReceiver.sender)
-  return sender_;
-}
 inline void FinishedReceiver::set_allocated_sender(::exec::bit::FragmentHandle* sender) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(sender_);
-  }
+  delete sender_;
+  sender_ = sender;
   if (sender) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      sender = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, sender, submessage_arena);
-    }
     set_has_sender();
   } else {
     clear_has_sender();
   }
-  sender_ = sender;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.control.FinishedReceiver.sender)
 }
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic pop
-#endif  // __GNUC__
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
 
 // @@protoc_insertion_point(namespace_scope)
 
@@ -3280,18 +2589,19 @@
 }  // namespace bit
 }  // namespace exec
 
+#ifndef SWIG
 namespace google {
 namespace protobuf {
 
-template <> struct is_proto_enum< ::exec::bit::control::RpcType> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::bit::control::RpcType>() {
   return ::exec::bit::control::RpcType_descriptor();
 }
 
-}  // namespace protobuf
 }  // namespace google
+}  // namespace protobuf
+#endif  // SWIG
 
 // @@protoc_insertion_point(global_scope)
 
-#endif  // PROTOBUF_INCLUDED_BitControl_2eproto
+#endif  // PROTOBUF_BitControl_2eproto__INCLUDED
diff --git a/contrib/native/client/src/protobuf/BitData.pb.cc b/contrib/native/client/src/protobuf/BitData.pb.cc
index 2a749a0..df2207a 100644
--- a/contrib/native/client/src/protobuf/BitData.pb.cc
+++ b/contrib/native/client/src/protobuf/BitData.pb.cc
@@ -1,273 +1,220 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: BitData.proto
 
+#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
 #include "BitData.pb.h"
 
 #include <algorithm>
 
 #include <google/protobuf/stubs/common.h>
-#include <google/protobuf/stubs/port.h>
+#include <google/protobuf/stubs/once.h>
 #include <google/protobuf/io/coded_stream.h>
 #include <google/protobuf/wire_format_lite_inl.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>
-// This is a temporary google only hack
-#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
-#include "third_party/protobuf/version.h"
-#endif
 // @@protoc_insertion_point(includes)
 
-namespace protobuf_UserBitShared_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_QueryId;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_RecordBatchDef;
-}  // namespace protobuf_UserBitShared_2eproto
 namespace exec {
 namespace bit {
 namespace data {
-class BitClientHandshakeDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<BitClientHandshake>
-      _instance;
-} _BitClientHandshake_default_instance_;
-class BitServerHandshakeDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<BitServerHandshake>
-      _instance;
-} _BitServerHandshake_default_instance_;
-class FragmentRecordBatchDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<FragmentRecordBatch>
-      _instance;
-} _FragmentRecordBatch_default_instance_;
-class RuntimeFilterBDefDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<RuntimeFilterBDef>
-      _instance;
-} _RuntimeFilterBDef_default_instance_;
-}  // namespace data
-}  // namespace bit
-}  // namespace exec
-namespace protobuf_BitData_2eproto {
-static void InitDefaultsBitClientHandshake() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
 
-  {
-    void* ptr = &::exec::bit::data::_BitClientHandshake_default_instance_;
-    new (ptr) ::exec::bit::data::BitClientHandshake();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::data::BitClientHandshake::InitAsDefaultInstance();
+namespace {
+
+const ::google::protobuf::Descriptor* BitClientHandshake_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  BitClientHandshake_reflection_ = NULL;
+const ::google::protobuf::Descriptor* BitServerHandshake_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  BitServerHandshake_reflection_ = NULL;
+const ::google::protobuf::Descriptor* FragmentRecordBatch_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  FragmentRecordBatch_reflection_ = NULL;
+const ::google::protobuf::Descriptor* RuntimeFilterBDef_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  RuntimeFilterBDef_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* RpcType_descriptor_ = NULL;
+
+}  // namespace
+
+
+void protobuf_AssignDesc_BitData_2eproto() {
+  protobuf_AddDesc_BitData_2eproto();
+  const ::google::protobuf::FileDescriptor* file =
+    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
+      "BitData.proto");
+  GOOGLE_CHECK(file != NULL);
+  BitClientHandshake_descriptor_ = file->message_type(0);
+  static const int BitClientHandshake_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitClientHandshake, rpc_version_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitClientHandshake, channel_),
+  };
+  BitClientHandshake_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      BitClientHandshake_descriptor_,
+      BitClientHandshake::default_instance_,
+      BitClientHandshake_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitClientHandshake, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitClientHandshake, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(BitClientHandshake));
+  BitServerHandshake_descriptor_ = file->message_type(1);
+  static const int BitServerHandshake_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitServerHandshake, rpc_version_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitServerHandshake, authenticationmechanisms_),
+  };
+  BitServerHandshake_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      BitServerHandshake_descriptor_,
+      BitServerHandshake::default_instance_,
+      BitServerHandshake_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitServerHandshake, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitServerHandshake, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(BitServerHandshake));
+  FragmentRecordBatch_descriptor_ = file->message_type(2);
+  static const int FragmentRecordBatch_offsets_[7] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentRecordBatch, query_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentRecordBatch, receiving_major_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentRecordBatch, receiving_minor_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentRecordBatch, sending_major_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentRecordBatch, sending_minor_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentRecordBatch, def_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentRecordBatch, islastbatch_),
+  };
+  FragmentRecordBatch_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      FragmentRecordBatch_descriptor_,
+      FragmentRecordBatch::default_instance_,
+      FragmentRecordBatch_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentRecordBatch, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentRecordBatch, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(FragmentRecordBatch));
+  RuntimeFilterBDef_descriptor_ = file->message_type(3);
+  static const int RuntimeFilterBDef_offsets_[8] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, query_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, major_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, minor_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, to_foreman_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, bloom_filter_size_in_bytes_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, probe_fields_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, hj_op_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, rf_identifier_),
+  };
+  RuntimeFilterBDef_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      RuntimeFilterBDef_descriptor_,
+      RuntimeFilterBDef::default_instance_,
+      RuntimeFilterBDef_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RuntimeFilterBDef, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(RuntimeFilterBDef));
+  RpcType_descriptor_ = file->enum_type(0);
 }
 
-::google::protobuf::internal::SCCInfo<0> scc_info_BitClientHandshake =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsBitClientHandshake}, {}};
+namespace {
 
-static void InitDefaultsBitServerHandshake() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::data::_BitServerHandshake_default_instance_;
-    new (ptr) ::exec::bit::data::BitServerHandshake();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::data::BitServerHandshake::InitAsDefaultInstance();
+GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
+inline void protobuf_AssignDescriptorsOnce() {
+  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
+                 &protobuf_AssignDesc_BitData_2eproto);
 }
 
-::google::protobuf::internal::SCCInfo<0> scc_info_BitServerHandshake =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsBitServerHandshake}, {}};
-
-static void InitDefaultsFragmentRecordBatch() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::data::_FragmentRecordBatch_default_instance_;
-    new (ptr) ::exec::bit::data::FragmentRecordBatch();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::data::FragmentRecordBatch::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_FragmentRecordBatch =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsFragmentRecordBatch}, {
-      &protobuf_UserBitShared_2eproto::scc_info_QueryId.base,
-      &protobuf_UserBitShared_2eproto::scc_info_RecordBatchDef.base,}};
-
-static void InitDefaultsRuntimeFilterBDef() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::data::_RuntimeFilterBDef_default_instance_;
-    new (ptr) ::exec::bit::data::RuntimeFilterBDef();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::data::RuntimeFilterBDef::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_RuntimeFilterBDef =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsRuntimeFilterBDef}, {
-      &protobuf_UserBitShared_2eproto::scc_info_QueryId.base,}};
-
-void InitDefaults() {
-  ::google::protobuf::internal::InitSCC(&scc_info_BitClientHandshake.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_BitServerHandshake.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_FragmentRecordBatch.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_RuntimeFilterBDef.base);
-}
-
-::google::protobuf::Metadata file_level_metadata[4];
-const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors[1];
-
-const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::BitClientHandshake, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::BitClientHandshake, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::BitClientHandshake, rpc_version_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::BitClientHandshake, channel_),
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::BitServerHandshake, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::BitServerHandshake, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::BitServerHandshake, rpc_version_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::BitServerHandshake, authenticationmechanisms_),
-  0,
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::FragmentRecordBatch, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::FragmentRecordBatch, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::FragmentRecordBatch, query_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::FragmentRecordBatch, receiving_major_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::FragmentRecordBatch, receiving_minor_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::FragmentRecordBatch, sending_major_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::FragmentRecordBatch, sending_minor_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::FragmentRecordBatch, def_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::FragmentRecordBatch, islastbatch_),
-  0,
-  2,
-  ~0u,
-  3,
-  4,
-  1,
-  5,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, query_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, major_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, minor_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, to_foreman_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, bloom_filter_size_in_bytes_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, probe_fields_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, hj_op_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::data::RuntimeFilterBDef, rf_identifier_),
-  0,
-  1,
-  2,
-  3,
-  ~0u,
-  ~0u,
-  4,
-  5,
-};
-static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  { 0, 7, sizeof(::exec::bit::data::BitClientHandshake)},
-  { 9, 16, sizeof(::exec::bit::data::BitServerHandshake)},
-  { 18, 30, sizeof(::exec::bit::data::FragmentRecordBatch)},
-  { 37, 50, sizeof(::exec::bit::data::RuntimeFilterBDef)},
-};
-
-static ::google::protobuf::Message const * const file_default_instances[] = {
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::data::_BitClientHandshake_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::data::_BitServerHandshake_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::data::_FragmentRecordBatch_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::data::_RuntimeFilterBDef_default_instance_),
-};
-
-void protobuf_AssignDescriptors() {
-  AddDescriptors();
-  AssignDescriptors(
-      "BitData.proto", schemas, file_default_instances, TableStruct::offsets,
-      file_level_metadata, file_level_enum_descriptors, NULL);
-}
-
-void protobuf_AssignDescriptorsOnce() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, protobuf_AssignDescriptors);
-}
-
-void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
 void protobuf_RegisterTypes(const ::std::string&) {
   protobuf_AssignDescriptorsOnce();
-  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 4);
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    BitClientHandshake_descriptor_, &BitClientHandshake::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    BitServerHandshake_descriptor_, &BitServerHandshake::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    FragmentRecordBatch_descriptor_, &FragmentRecordBatch::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    RuntimeFilterBDef_descriptor_, &RuntimeFilterBDef::default_instance());
 }
 
-void AddDescriptorsImpl() {
-  InitDefaults();
-  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-      "\n\rBitData.proto\022\rexec.bit.data\032\025Executio"
-      "nProtos.proto\032\022Coordination.proto\032\023UserB"
-      "itShared.proto\"]\n\022BitClientHandshake\022\023\n\013"
-      "rpc_version\030\001 \001(\005\0222\n\007channel\030\002 \001(\0162\027.exe"
-      "c.shared.RpcChannel:\010BIT_DATA\"K\n\022BitServ"
-      "erHandshake\022\023\n\013rpc_version\030\001 \001(\005\022 \n\030auth"
-      "enticationMechanisms\030\002 \003(\t\"\214\002\n\023FragmentR"
-      "ecordBatch\022&\n\010query_id\030\001 \001(\0132\024.exec.shar"
-      "ed.QueryId\022#\n\033receiving_major_fragment_i"
-      "d\030\002 \001(\005\022#\n\033receiving_minor_fragment_id\030\003"
-      " \003(\005\022!\n\031sending_major_fragment_id\030\004 \001(\005\022"
-      "!\n\031sending_minor_fragment_id\030\005 \001(\005\022(\n\003de"
-      "f\030\006 \001(\0132\033.exec.shared.RecordBatchDef\022\023\n\013"
-      "isLastBatch\030\007 \001(\010\"\350\001\n\021RuntimeFilterBDef\022"
-      "&\n\010query_id\030\001 \001(\0132\024.exec.shared.QueryId\022"
-      "\031\n\021major_fragment_id\030\002 \001(\005\022\031\n\021minor_frag"
-      "ment_id\030\003 \001(\005\022\022\n\nto_foreman\030\004 \001(\010\022\"\n\032blo"
-      "om_filter_size_in_bytes\030\005 \003(\005\022\024\n\014probe_f"
-      "ields\030\006 \003(\t\022\020\n\010hj_op_id\030\007 \001(\005\022\025\n\rrf_iden"
-      "tifier\030\010 \001(\003*n\n\007RpcType\022\r\n\tHANDSHAKE\020\000\022\007"
-      "\n\003ACK\020\001\022\013\n\007GOODBYE\020\002\022\024\n\020REQ_RECORD_BATCH"
-      "\020\003\022\020\n\014SASL_MESSAGE\020\004\022\026\n\022REQ_RUNTIME_FILT"
-      "ER\020\005B(\n\033org.apache.drill.exec.protoB\007Bit"
-      "DataH\001"
-  };
+}  // namespace
+
+void protobuf_ShutdownFile_BitData_2eproto() {
+  delete BitClientHandshake::default_instance_;
+  delete BitClientHandshake_reflection_;
+  delete BitServerHandshake::default_instance_;
+  delete BitServerHandshake_reflection_;
+  delete FragmentRecordBatch::default_instance_;
+  delete FragmentRecordBatch_reflection_;
+  delete RuntimeFilterBDef::default_instance_;
+  delete RuntimeFilterBDef_reflection_;
+}
+
+void protobuf_AddDesc_BitData_2eproto() {
+  static bool already_here = false;
+  if (already_here) return;
+  already_here = true;
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  ::exec::bit::protobuf_AddDesc_ExecutionProtos_2eproto();
+  ::exec::protobuf_AddDesc_Coordination_2eproto();
+  ::exec::shared::protobuf_AddDesc_UserBitShared_2eproto();
   ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
-      descriptor, 926);
+    "\n\rBitData.proto\022\rexec.bit.data\032\025Executio"
+    "nProtos.proto\032\022Coordination.proto\032\023UserB"
+    "itShared.proto\"]\n\022BitClientHandshake\022\023\n\013"
+    "rpc_version\030\001 \001(\005\0222\n\007channel\030\002 \001(\0162\027.exe"
+    "c.shared.RpcChannel:\010BIT_DATA\"K\n\022BitServ"
+    "erHandshake\022\023\n\013rpc_version\030\001 \001(\005\022 \n\030auth"
+    "enticationMechanisms\030\002 \003(\t\"\214\002\n\023FragmentR"
+    "ecordBatch\022&\n\010query_id\030\001 \001(\0132\024.exec.shar"
+    "ed.QueryId\022#\n\033receiving_major_fragment_i"
+    "d\030\002 \001(\005\022#\n\033receiving_minor_fragment_id\030\003"
+    " \003(\005\022!\n\031sending_major_fragment_id\030\004 \001(\005\022"
+    "!\n\031sending_minor_fragment_id\030\005 \001(\005\022(\n\003de"
+    "f\030\006 \001(\0132\033.exec.shared.RecordBatchDef\022\023\n\013"
+    "isLastBatch\030\007 \001(\010\"\350\001\n\021RuntimeFilterBDef\022"
+    "&\n\010query_id\030\001 \001(\0132\024.exec.shared.QueryId\022"
+    "\031\n\021major_fragment_id\030\002 \001(\005\022\031\n\021minor_frag"
+    "ment_id\030\003 \001(\005\022\022\n\nto_foreman\030\004 \001(\010\022\"\n\032blo"
+    "om_filter_size_in_bytes\030\005 \003(\005\022\024\n\014probe_f"
+    "ields\030\006 \003(\t\022\020\n\010hj_op_id\030\007 \001(\005\022\025\n\rrf_iden"
+    "tifier\030\010 \001(\003*n\n\007RpcType\022\r\n\tHANDSHAKE\020\000\022\007"
+    "\n\003ACK\020\001\022\013\n\007GOODBYE\020\002\022\024\n\020REQ_RECORD_BATCH"
+    "\020\003\022\020\n\014SASL_MESSAGE\020\004\022\026\n\022REQ_RUNTIME_FILT"
+    "ER\020\005B(\n\033org.apache.drill.exec.protoB\007Bit"
+    "DataH\001", 926);
   ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
     "BitData.proto", &protobuf_RegisterTypes);
-  ::protobuf_ExecutionProtos_2eproto::AddDescriptors();
-  ::protobuf_Coordination_2eproto::AddDescriptors();
-  ::protobuf_UserBitShared_2eproto::AddDescriptors();
+  BitClientHandshake::default_instance_ = new BitClientHandshake();
+  BitServerHandshake::default_instance_ = new BitServerHandshake();
+  FragmentRecordBatch::default_instance_ = new FragmentRecordBatch();
+  RuntimeFilterBDef::default_instance_ = new RuntimeFilterBDef();
+  BitClientHandshake::default_instance_->InitAsDefaultInstance();
+  BitServerHandshake::default_instance_->InitAsDefaultInstance();
+  FragmentRecordBatch::default_instance_->InitAsDefaultInstance();
+  RuntimeFilterBDef::default_instance_->InitAsDefaultInstance();
+  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_BitData_2eproto);
 }
 
-void AddDescriptors() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, AddDescriptorsImpl);
-}
-// Force AddDescriptors() to be called at dynamic initialization time.
-struct StaticDescriptorInitializer {
-  StaticDescriptorInitializer() {
-    AddDescriptors();
+// Force AddDescriptors() to be called at static initialization time.
+struct StaticDescriptorInitializer_BitData_2eproto {
+  StaticDescriptorInitializer_BitData_2eproto() {
+    protobuf_AddDesc_BitData_2eproto();
   }
-} static_descriptor_initializer;
-}  // namespace protobuf_BitData_2eproto
-namespace exec {
-namespace bit {
-namespace data {
+} static_descriptor_initializer_BitData_2eproto_;
 const ::google::protobuf::EnumDescriptor* RpcType_descriptor() {
-  protobuf_BitData_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_BitData_2eproto::file_level_enum_descriptors[0];
+  protobuf_AssignDescriptorsOnce();
+  return RpcType_descriptor_;
 }
 bool RpcType_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -283,101 +230,97 @@
 
 // ===================================================================
 
-void BitClientHandshake::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int BitClientHandshake::kRpcVersionFieldNumber;
 const int BitClientHandshake::kChannelFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 BitClientHandshake::BitClientHandshake()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitData_2eproto::scc_info_BitClientHandshake.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.data.BitClientHandshake)
 }
+
+void BitClientHandshake::InitAsDefaultInstance() {
+}
+
 BitClientHandshake::BitClientHandshake(const BitClientHandshake& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&rpc_version_, &from.rpc_version_,
-    static_cast<size_t>(reinterpret_cast<char*>(&channel_) -
-    reinterpret_cast<char*>(&rpc_version_)) + sizeof(channel_));
-  // @@protoc_insertion_point(copy_constructor:exec.bit.data.BitClientHandshake)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void BitClientHandshake::SharedCtor() {
+  _cached_size_ = 0;
   rpc_version_ = 0;
   channel_ = 1;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 BitClientHandshake::~BitClientHandshake() {
-  // @@protoc_insertion_point(destructor:exec.bit.data.BitClientHandshake)
   SharedDtor();
 }
 
 void BitClientHandshake::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void BitClientHandshake::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* BitClientHandshake::descriptor() {
-  ::protobuf_BitData_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitData_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return BitClientHandshake_descriptor_;
 }
 
 const BitClientHandshake& BitClientHandshake::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitData_2eproto::scc_info_BitClientHandshake.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitData_2eproto();
+  return *default_instance_;
 }
 
+BitClientHandshake* BitClientHandshake::default_instance_ = NULL;
+
+BitClientHandshake* BitClientHandshake::New() const {
+  return new BitClientHandshake;
+}
 
 void BitClientHandshake::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.data.BitClientHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     rpc_version_ = 0;
     channel_ = 1;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool BitClientHandshake::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.data.BitClientHandshake)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 rpc_version = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_rpc_version();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &rpc_version_)));
+          set_has_rpc_version();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_channel;
         break;
       }
 
       // optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_channel:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -385,97 +328,74 @@
           if (::exec::shared::RpcChannel_IsValid(value)) {
             set_channel(static_cast< ::exec::shared::RpcChannel >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                2, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(2, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.data.BitClientHandshake)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.data.BitClientHandshake)
-  return false;
 #undef DO_
 }
 
 void BitClientHandshake::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.data.BitClientHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 rpc_version = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_rpc_version()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->rpc_version(), output);
   }
 
   // optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];
-  if (cached_has_bits & 0x00000002u) {
+  if (has_channel()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       2, this->channel(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.data.BitClientHandshake)
 }
 
-::google::protobuf::uint8* BitClientHandshake::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.data.BitClientHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* BitClientHandshake::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 rpc_version = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_rpc_version()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->rpc_version(), target);
   }
 
   // optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];
-  if (cached_has_bits & 0x00000002u) {
+  if (has_channel()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       2, this->channel(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.data.BitClientHandshake)
   return target;
 }
 
-size_t BitClientHandshake::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.data.BitClientHandshake)
-  size_t total_size = 0;
+int BitClientHandshake::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 3u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional int32 rpc_version = 1;
     if (has_rpc_version()) {
       total_size += 1 +
@@ -490,376 +410,337 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void BitClientHandshake::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.data.BitClientHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const BitClientHandshake* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const BitClientHandshake>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const BitClientHandshake*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.data.BitClientHandshake)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.data.BitClientHandshake)
     MergeFrom(*source);
   }
 }
 
 void BitClientHandshake::MergeFrom(const BitClientHandshake& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.data.BitClientHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      rpc_version_ = from.rpc_version_;
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_rpc_version()) {
+      set_rpc_version(from.rpc_version());
     }
-    if (cached_has_bits & 0x00000002u) {
-      channel_ = from.channel_;
+    if (from.has_channel()) {
+      set_channel(from.channel());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void BitClientHandshake::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.data.BitClientHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void BitClientHandshake::CopyFrom(const BitClientHandshake& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.data.BitClientHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool BitClientHandshake::IsInitialized() const {
+
   return true;
 }
 
 void BitClientHandshake::Swap(BitClientHandshake* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void BitClientHandshake::InternalSwap(BitClientHandshake* other) {
-  using std::swap;
-  swap(rpc_version_, other->rpc_version_);
-  swap(channel_, other->channel_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(rpc_version_, other->rpc_version_);
+    std::swap(channel_, other->channel_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata BitClientHandshake::GetMetadata() const {
-  protobuf_BitData_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitData_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = BitClientHandshake_descriptor_;
+  metadata.reflection = BitClientHandshake_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void BitServerHandshake::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int BitServerHandshake::kRpcVersionFieldNumber;
 const int BitServerHandshake::kAuthenticationMechanismsFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 BitServerHandshake::BitServerHandshake()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitData_2eproto::scc_info_BitServerHandshake.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.data.BitServerHandshake)
 }
+
+void BitServerHandshake::InitAsDefaultInstance() {
+}
+
 BitServerHandshake::BitServerHandshake(const BitServerHandshake& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      authenticationmechanisms_(from.authenticationmechanisms_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  rpc_version_ = from.rpc_version_;
-  // @@protoc_insertion_point(copy_constructor:exec.bit.data.BitServerHandshake)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void BitServerHandshake::SharedCtor() {
+  _cached_size_ = 0;
   rpc_version_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 BitServerHandshake::~BitServerHandshake() {
-  // @@protoc_insertion_point(destructor:exec.bit.data.BitServerHandshake)
   SharedDtor();
 }
 
 void BitServerHandshake::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void BitServerHandshake::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* BitServerHandshake::descriptor() {
-  ::protobuf_BitData_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitData_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return BitServerHandshake_descriptor_;
 }
 
 const BitServerHandshake& BitServerHandshake::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitData_2eproto::scc_info_BitServerHandshake.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitData_2eproto();
+  return *default_instance_;
 }
 
+BitServerHandshake* BitServerHandshake::default_instance_ = NULL;
+
+BitServerHandshake* BitServerHandshake::New() const {
+  return new BitServerHandshake;
+}
 
 void BitServerHandshake::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.data.BitServerHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    rpc_version_ = 0;
+  }
   authenticationmechanisms_.Clear();
-  rpc_version_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool BitServerHandshake::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.data.BitServerHandshake)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 rpc_version = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_rpc_version();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &rpc_version_)));
+          set_has_rpc_version();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_authenticationMechanisms;
         break;
       }
 
       // repeated string authenticationMechanisms = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_authenticationMechanisms:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_authenticationmechanisms()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->authenticationmechanisms(this->authenticationmechanisms_size() - 1).data(),
-            static_cast<int>(this->authenticationmechanisms(this->authenticationmechanisms_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.bit.data.BitServerHandshake.authenticationMechanisms");
+            this->authenticationmechanisms(this->authenticationmechanisms_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_authenticationMechanisms;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.data.BitServerHandshake)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.data.BitServerHandshake)
-  return false;
 #undef DO_
 }
 
 void BitServerHandshake::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.data.BitServerHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 rpc_version = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_rpc_version()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->rpc_version(), output);
   }
 
   // repeated string authenticationMechanisms = 2;
-  for (int i = 0, n = this->authenticationmechanisms_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->authenticationmechanisms(i).data(), static_cast<int>(this->authenticationmechanisms(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.data.BitServerHandshake.authenticationMechanisms");
+  for (int i = 0; i < this->authenticationmechanisms_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->authenticationmechanisms(i).data(), this->authenticationmechanisms(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->authenticationmechanisms(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.data.BitServerHandshake)
 }
 
-::google::protobuf::uint8* BitServerHandshake::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.data.BitServerHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* BitServerHandshake::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 rpc_version = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_rpc_version()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->rpc_version(), target);
   }
 
   // repeated string authenticationMechanisms = 2;
-  for (int i = 0, n = this->authenticationmechanisms_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->authenticationmechanisms(i).data(), static_cast<int>(this->authenticationmechanisms(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.data.BitServerHandshake.authenticationMechanisms");
+  for (int i = 0; i < this->authenticationmechanisms_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->authenticationmechanisms(i).data(), this->authenticationmechanisms(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(2, this->authenticationmechanisms(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.data.BitServerHandshake)
   return target;
 }
 
-size_t BitServerHandshake::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.data.BitServerHandshake)
-  size_t total_size = 0;
+int BitServerHandshake::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional int32 rpc_version = 1;
+    if (has_rpc_version()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->rpc_version());
+    }
+
   }
   // repeated string authenticationMechanisms = 2;
-  total_size += 1 *
-      ::google::protobuf::internal::FromIntSize(this->authenticationmechanisms_size());
-  for (int i = 0, n = this->authenticationmechanisms_size(); i < n; i++) {
+  total_size += 1 * this->authenticationmechanisms_size();
+  for (int i = 0; i < this->authenticationmechanisms_size(); i++) {
     total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
       this->authenticationmechanisms(i));
   }
 
-  // optional int32 rpc_version = 1;
-  if (has_rpc_version()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::Int32Size(
-        this->rpc_version());
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
   }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void BitServerHandshake::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.data.BitServerHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const BitServerHandshake* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const BitServerHandshake>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const BitServerHandshake*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.data.BitServerHandshake)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.data.BitServerHandshake)
     MergeFrom(*source);
   }
 }
 
 void BitServerHandshake::MergeFrom(const BitServerHandshake& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.data.BitServerHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   authenticationmechanisms_.MergeFrom(from.authenticationmechanisms_);
-  if (from.has_rpc_version()) {
-    set_rpc_version(from.rpc_version());
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_rpc_version()) {
+      set_rpc_version(from.rpc_version());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void BitServerHandshake::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.data.BitServerHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void BitServerHandshake::CopyFrom(const BitServerHandshake& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.data.BitServerHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool BitServerHandshake::IsInitialized() const {
+
   return true;
 }
 
 void BitServerHandshake::Swap(BitServerHandshake* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void BitServerHandshake::InternalSwap(BitServerHandshake* other) {
-  using std::swap;
-  authenticationmechanisms_.InternalSwap(CastToBase(&other->authenticationmechanisms_));
-  swap(rpc_version_, other->rpc_version_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(rpc_version_, other->rpc_version_);
+    authenticationmechanisms_.Swap(&other->authenticationmechanisms_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata BitServerHandshake::GetMetadata() const {
-  protobuf_BitData_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitData_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = BitServerHandshake_descriptor_;
+  metadata.reflection = BitServerHandshake_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void FragmentRecordBatch::InitAsDefaultInstance() {
-  ::exec::bit::data::_FragmentRecordBatch_default_instance_._instance.get_mutable()->query_id_ = const_cast< ::exec::shared::QueryId*>(
-      ::exec::shared::QueryId::internal_default_instance());
-  ::exec::bit::data::_FragmentRecordBatch_default_instance_._instance.get_mutable()->def_ = const_cast< ::exec::shared::RecordBatchDef*>(
-      ::exec::shared::RecordBatchDef::internal_default_instance());
-}
-void FragmentRecordBatch::clear_query_id() {
-  if (query_id_ != NULL) query_id_->Clear();
-  clear_has_query_id();
-}
-void FragmentRecordBatch::clear_def() {
-  if (def_ != NULL) def_->Clear();
-  clear_has_def();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int FragmentRecordBatch::kQueryIdFieldNumber;
 const int FragmentRecordBatch::kReceivingMajorFragmentIdFieldNumber;
 const int FragmentRecordBatch::kReceivingMinorFragmentIdFieldNumber;
@@ -867,360 +748,324 @@
 const int FragmentRecordBatch::kSendingMinorFragmentIdFieldNumber;
 const int FragmentRecordBatch::kDefFieldNumber;
 const int FragmentRecordBatch::kIsLastBatchFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 FragmentRecordBatch::FragmentRecordBatch()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitData_2eproto::scc_info_FragmentRecordBatch.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.data.FragmentRecordBatch)
 }
+
+void FragmentRecordBatch::InitAsDefaultInstance() {
+  query_id_ = const_cast< ::exec::shared::QueryId*>(&::exec::shared::QueryId::default_instance());
+  def_ = const_cast< ::exec::shared::RecordBatchDef*>(&::exec::shared::RecordBatchDef::default_instance());
+}
+
 FragmentRecordBatch::FragmentRecordBatch(const FragmentRecordBatch& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      receiving_minor_fragment_id_(from.receiving_minor_fragment_id_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_query_id()) {
-    query_id_ = new ::exec::shared::QueryId(*from.query_id_);
-  } else {
-    query_id_ = NULL;
-  }
-  if (from.has_def()) {
-    def_ = new ::exec::shared::RecordBatchDef(*from.def_);
-  } else {
-    def_ = NULL;
-  }
-  ::memcpy(&receiving_major_fragment_id_, &from.receiving_major_fragment_id_,
-    static_cast<size_t>(reinterpret_cast<char*>(&islastbatch_) -
-    reinterpret_cast<char*>(&receiving_major_fragment_id_)) + sizeof(islastbatch_));
-  // @@protoc_insertion_point(copy_constructor:exec.bit.data.FragmentRecordBatch)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void FragmentRecordBatch::SharedCtor() {
-  ::memset(&query_id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&islastbatch_) -
-      reinterpret_cast<char*>(&query_id_)) + sizeof(islastbatch_));
+  _cached_size_ = 0;
+  query_id_ = NULL;
+  receiving_major_fragment_id_ = 0;
+  sending_major_fragment_id_ = 0;
+  sending_minor_fragment_id_ = 0;
+  def_ = NULL;
+  islastbatch_ = false;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 FragmentRecordBatch::~FragmentRecordBatch() {
-  // @@protoc_insertion_point(destructor:exec.bit.data.FragmentRecordBatch)
   SharedDtor();
 }
 
 void FragmentRecordBatch::SharedDtor() {
-  if (this != internal_default_instance()) delete query_id_;
-  if (this != internal_default_instance()) delete def_;
+  if (this != default_instance_) {
+    delete query_id_;
+    delete def_;
+  }
 }
 
 void FragmentRecordBatch::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* FragmentRecordBatch::descriptor() {
-  ::protobuf_BitData_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitData_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return FragmentRecordBatch_descriptor_;
 }
 
 const FragmentRecordBatch& FragmentRecordBatch::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitData_2eproto::scc_info_FragmentRecordBatch.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitData_2eproto();
+  return *default_instance_;
 }
 
+FragmentRecordBatch* FragmentRecordBatch::default_instance_ = NULL;
+
+FragmentRecordBatch* FragmentRecordBatch::New() const {
+  return new FragmentRecordBatch;
+}
 
 void FragmentRecordBatch::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.data.FragmentRecordBatch)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_query_id()) {
+      if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
+    }
+    receiving_major_fragment_id_ = 0;
+    sending_major_fragment_id_ = 0;
+    sending_minor_fragment_id_ = 0;
+    if (has_def()) {
+      if (def_ != NULL) def_->::exec::shared::RecordBatchDef::Clear();
+    }
+    islastbatch_ = false;
+  }
   receiving_minor_fragment_id_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(query_id_ != NULL);
-      query_id_->Clear();
-    }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(def_ != NULL);
-      def_->Clear();
-    }
-  }
-  if (cached_has_bits & 60u) {
-    ::memset(&receiving_major_fragment_id_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&islastbatch_) -
-        reinterpret_cast<char*>(&receiving_major_fragment_id_)) + sizeof(islastbatch_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool FragmentRecordBatch::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.data.FragmentRecordBatch)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.QueryId query_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_query_id()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_receiving_major_fragment_id;
         break;
       }
 
       // optional int32 receiving_major_fragment_id = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_receiving_major_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_receiving_major_fragment_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &receiving_major_fragment_id_)));
+          set_has_receiving_major_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_receiving_minor_fragment_id;
         break;
       }
 
       // repeated int32 receiving_minor_fragment_id = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_receiving_minor_fragment_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
-                 1, 24u, input, this->mutable_receiving_minor_fragment_id())));
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
+                 1, 24, input, this->mutable_receiving_minor_fragment_id())));
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitiveNoInline<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, this->mutable_receiving_minor_fragment_id())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_receiving_minor_fragment_id;
+        if (input->ExpectTag(32)) goto parse_sending_major_fragment_id;
         break;
       }
 
       // optional int32 sending_major_fragment_id = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_sending_major_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_sending_major_fragment_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &sending_major_fragment_id_)));
+          set_has_sending_major_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_sending_minor_fragment_id;
         break;
       }
 
       // optional int32 sending_minor_fragment_id = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_sending_minor_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_sending_minor_fragment_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &sending_minor_fragment_id_)));
+          set_has_sending_minor_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_def;
         break;
       }
 
       // optional .exec.shared.RecordBatchDef def = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_def:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_def()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_isLastBatch;
         break;
       }
 
       // optional bool isLastBatch = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_islastbatch();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_isLastBatch:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &islastbatch_)));
+          set_has_islastbatch();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.data.FragmentRecordBatch)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.data.FragmentRecordBatch)
-  return false;
 #undef DO_
 }
 
 void FragmentRecordBatch::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.data.FragmentRecordBatch)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_query_id(), output);
+      1, this->query_id(), output);
   }
 
   // optional int32 receiving_major_fragment_id = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_receiving_major_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->receiving_major_fragment_id(), output);
   }
 
   // repeated int32 receiving_minor_fragment_id = 3;
-  for (int i = 0, n = this->receiving_minor_fragment_id_size(); i < n; i++) {
+  for (int i = 0; i < this->receiving_minor_fragment_id_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(
       3, this->receiving_minor_fragment_id(i), output);
   }
 
   // optional int32 sending_major_fragment_id = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_sending_major_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->sending_major_fragment_id(), output);
   }
 
   // optional int32 sending_minor_fragment_id = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_sending_minor_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->sending_minor_fragment_id(), output);
   }
 
   // optional .exec.shared.RecordBatchDef def = 6;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_def()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      6, this->_internal_def(), output);
+      6, this->def(), output);
   }
 
   // optional bool isLastBatch = 7;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_islastbatch()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(7, this->islastbatch(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.data.FragmentRecordBatch)
 }
 
-::google::protobuf::uint8* FragmentRecordBatch::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.data.FragmentRecordBatch)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* FragmentRecordBatch::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_query_id(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->query_id(), target);
   }
 
   // optional int32 receiving_major_fragment_id = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_receiving_major_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->receiving_major_fragment_id(), target);
   }
 
   // repeated int32 receiving_minor_fragment_id = 3;
-  target = ::google::protobuf::internal::WireFormatLite::
-    WriteInt32ToArray(3, this->receiving_minor_fragment_id_, target);
+  for (int i = 0; i < this->receiving_minor_fragment_id_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::
+      WriteInt32ToArray(3, this->receiving_minor_fragment_id(i), target);
+  }
 
   // optional int32 sending_major_fragment_id = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_sending_major_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->sending_major_fragment_id(), target);
   }
 
   // optional int32 sending_minor_fragment_id = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_sending_minor_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(5, this->sending_minor_fragment_id(), target);
   }
 
   // optional .exec.shared.RecordBatchDef def = 6;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_def()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        6, this->_internal_def(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        6, this->def(), target);
   }
 
   // optional bool isLastBatch = 7;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_islastbatch()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(7, this->islastbatch(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.data.FragmentRecordBatch)
   return target;
 }
 
-size_t FragmentRecordBatch::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.data.FragmentRecordBatch)
-  size_t total_size = 0;
+int FragmentRecordBatch::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated int32 receiving_minor_fragment_id = 3;
-  {
-    size_t data_size = ::google::protobuf::internal::WireFormatLite::
-      Int32Size(this->receiving_minor_fragment_id_);
-    total_size += 1 *
-                  ::google::protobuf::internal::FromIntSize(this->receiving_minor_fragment_id_size());
-    total_size += data_size;
-  }
-
-  if (_has_bits_[0 / 32] & 63u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.shared.QueryId query_id = 1;
     if (has_query_id()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *query_id_);
-    }
-
-    // optional .exec.shared.RecordBatchDef def = 6;
-    if (has_def()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *def_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->query_id());
     }
 
     // optional int32 receiving_major_fragment_id = 2;
@@ -1244,116 +1089,122 @@
           this->sending_minor_fragment_id());
     }
 
+    // optional .exec.shared.RecordBatchDef def = 6;
+    if (has_def()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->def());
+    }
+
     // optional bool isLastBatch = 7;
     if (has_islastbatch()) {
       total_size += 1 + 1;
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated int32 receiving_minor_fragment_id = 3;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->receiving_minor_fragment_id_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::
+        Int32Size(this->receiving_minor_fragment_id(i));
+    }
+    total_size += 1 * this->receiving_minor_fragment_id_size() + data_size;
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void FragmentRecordBatch::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.data.FragmentRecordBatch)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const FragmentRecordBatch* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const FragmentRecordBatch>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const FragmentRecordBatch*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.data.FragmentRecordBatch)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.data.FragmentRecordBatch)
     MergeFrom(*source);
   }
 }
 
 void FragmentRecordBatch::MergeFrom(const FragmentRecordBatch& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.data.FragmentRecordBatch)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   receiving_minor_fragment_id_.MergeFrom(from.receiving_minor_fragment_id_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 63u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_query_id()) {
       mutable_query_id()->::exec::shared::QueryId::MergeFrom(from.query_id());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_receiving_major_fragment_id()) {
+      set_receiving_major_fragment_id(from.receiving_major_fragment_id());
+    }
+    if (from.has_sending_major_fragment_id()) {
+      set_sending_major_fragment_id(from.sending_major_fragment_id());
+    }
+    if (from.has_sending_minor_fragment_id()) {
+      set_sending_minor_fragment_id(from.sending_minor_fragment_id());
+    }
+    if (from.has_def()) {
       mutable_def()->::exec::shared::RecordBatchDef::MergeFrom(from.def());
     }
-    if (cached_has_bits & 0x00000004u) {
-      receiving_major_fragment_id_ = from.receiving_major_fragment_id_;
+    if (from.has_islastbatch()) {
+      set_islastbatch(from.islastbatch());
     }
-    if (cached_has_bits & 0x00000008u) {
-      sending_major_fragment_id_ = from.sending_major_fragment_id_;
-    }
-    if (cached_has_bits & 0x00000010u) {
-      sending_minor_fragment_id_ = from.sending_minor_fragment_id_;
-    }
-    if (cached_has_bits & 0x00000020u) {
-      islastbatch_ = from.islastbatch_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void FragmentRecordBatch::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.data.FragmentRecordBatch)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void FragmentRecordBatch::CopyFrom(const FragmentRecordBatch& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.data.FragmentRecordBatch)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool FragmentRecordBatch::IsInitialized() const {
+
   return true;
 }
 
 void FragmentRecordBatch::Swap(FragmentRecordBatch* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void FragmentRecordBatch::InternalSwap(FragmentRecordBatch* other) {
-  using std::swap;
-  receiving_minor_fragment_id_.InternalSwap(&other->receiving_minor_fragment_id_);
-  swap(query_id_, other->query_id_);
-  swap(def_, other->def_);
-  swap(receiving_major_fragment_id_, other->receiving_major_fragment_id_);
-  swap(sending_major_fragment_id_, other->sending_major_fragment_id_);
-  swap(sending_minor_fragment_id_, other->sending_minor_fragment_id_);
-  swap(islastbatch_, other->islastbatch_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(query_id_, other->query_id_);
+    std::swap(receiving_major_fragment_id_, other->receiving_major_fragment_id_);
+    receiving_minor_fragment_id_.Swap(&other->receiving_minor_fragment_id_);
+    std::swap(sending_major_fragment_id_, other->sending_major_fragment_id_);
+    std::swap(sending_minor_fragment_id_, other->sending_minor_fragment_id_);
+    std::swap(def_, other->def_);
+    std::swap(islastbatch_, other->islastbatch_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata FragmentRecordBatch::GetMetadata() const {
-  protobuf_BitData_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitData_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = FragmentRecordBatch_descriptor_;
+  metadata.reflection = FragmentRecordBatch_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void RuntimeFilterBDef::InitAsDefaultInstance() {
-  ::exec::bit::data::_RuntimeFilterBDef_default_instance_._instance.get_mutable()->query_id_ = const_cast< ::exec::shared::QueryId*>(
-      ::exec::shared::QueryId::internal_default_instance());
-}
-void RuntimeFilterBDef::clear_query_id() {
-  if (query_id_ != NULL) query_id_->Clear();
-  clear_has_query_id();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int RuntimeFilterBDef::kQueryIdFieldNumber;
 const int RuntimeFilterBDef::kMajorFragmentIdFieldNumber;
 const int RuntimeFilterBDef::kMinorFragmentIdFieldNumber;
@@ -1362,387 +1213,357 @@
 const int RuntimeFilterBDef::kProbeFieldsFieldNumber;
 const int RuntimeFilterBDef::kHjOpIdFieldNumber;
 const int RuntimeFilterBDef::kRfIdentifierFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 RuntimeFilterBDef::RuntimeFilterBDef()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_BitData_2eproto::scc_info_RuntimeFilterBDef.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.data.RuntimeFilterBDef)
 }
+
+void RuntimeFilterBDef::InitAsDefaultInstance() {
+  query_id_ = const_cast< ::exec::shared::QueryId*>(&::exec::shared::QueryId::default_instance());
+}
+
 RuntimeFilterBDef::RuntimeFilterBDef(const RuntimeFilterBDef& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      bloom_filter_size_in_bytes_(from.bloom_filter_size_in_bytes_),
-      probe_fields_(from.probe_fields_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_query_id()) {
-    query_id_ = new ::exec::shared::QueryId(*from.query_id_);
-  } else {
-    query_id_ = NULL;
-  }
-  ::memcpy(&major_fragment_id_, &from.major_fragment_id_,
-    static_cast<size_t>(reinterpret_cast<char*>(&rf_identifier_) -
-    reinterpret_cast<char*>(&major_fragment_id_)) + sizeof(rf_identifier_));
-  // @@protoc_insertion_point(copy_constructor:exec.bit.data.RuntimeFilterBDef)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void RuntimeFilterBDef::SharedCtor() {
-  ::memset(&query_id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&rf_identifier_) -
-      reinterpret_cast<char*>(&query_id_)) + sizeof(rf_identifier_));
+  _cached_size_ = 0;
+  query_id_ = NULL;
+  major_fragment_id_ = 0;
+  minor_fragment_id_ = 0;
+  to_foreman_ = false;
+  hj_op_id_ = 0;
+  rf_identifier_ = GOOGLE_LONGLONG(0);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 RuntimeFilterBDef::~RuntimeFilterBDef() {
-  // @@protoc_insertion_point(destructor:exec.bit.data.RuntimeFilterBDef)
   SharedDtor();
 }
 
 void RuntimeFilterBDef::SharedDtor() {
-  if (this != internal_default_instance()) delete query_id_;
+  if (this != default_instance_) {
+    delete query_id_;
+  }
 }
 
 void RuntimeFilterBDef::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* RuntimeFilterBDef::descriptor() {
-  ::protobuf_BitData_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitData_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return RuntimeFilterBDef_descriptor_;
 }
 
 const RuntimeFilterBDef& RuntimeFilterBDef::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_BitData_2eproto::scc_info_RuntimeFilterBDef.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_BitData_2eproto();
+  return *default_instance_;
 }
 
+RuntimeFilterBDef* RuntimeFilterBDef::default_instance_ = NULL;
+
+RuntimeFilterBDef* RuntimeFilterBDef::New() const {
+  return new RuntimeFilterBDef;
+}
 
 void RuntimeFilterBDef::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.data.RuntimeFilterBDef)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_query_id()) {
+      if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
+    }
+    major_fragment_id_ = 0;
+    minor_fragment_id_ = 0;
+    to_foreman_ = false;
+    hj_op_id_ = 0;
+    rf_identifier_ = GOOGLE_LONGLONG(0);
+  }
   bloom_filter_size_in_bytes_.Clear();
   probe_fields_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(query_id_ != NULL);
-    query_id_->Clear();
-  }
-  if (cached_has_bits & 62u) {
-    ::memset(&major_fragment_id_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&rf_identifier_) -
-        reinterpret_cast<char*>(&major_fragment_id_)) + sizeof(rf_identifier_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool RuntimeFilterBDef::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.data.RuntimeFilterBDef)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.QueryId query_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_query_id()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_major_fragment_id;
         break;
       }
 
       // optional int32 major_fragment_id = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_major_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_major_fragment_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &major_fragment_id_)));
+          set_has_major_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_minor_fragment_id;
         break;
       }
 
       // optional int32 minor_fragment_id = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_minor_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_minor_fragment_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &minor_fragment_id_)));
+          set_has_minor_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_to_foreman;
         break;
       }
 
       // optional bool to_foreman = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_to_foreman();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_to_foreman:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &to_foreman_)));
+          set_has_to_foreman();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_bloom_filter_size_in_bytes;
         break;
       }
 
       // repeated int32 bloom_filter_size_in_bytes = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_bloom_filter_size_in_bytes:
           DO_((::google::protobuf::internal::WireFormatLite::ReadRepeatedPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
-                 1, 40u, input, this->mutable_bloom_filter_size_in_bytes())));
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
+                 1, 40, input, this->mutable_bloom_filter_size_in_bytes())));
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPackedPrimitiveNoInline<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, this->mutable_bloom_filter_size_in_bytes())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_bloom_filter_size_in_bytes;
+        if (input->ExpectTag(50)) goto parse_probe_fields;
         break;
       }
 
       // repeated string probe_fields = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_probe_fields:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_probe_fields()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->probe_fields(this->probe_fields_size() - 1).data(),
-            static_cast<int>(this->probe_fields(this->probe_fields_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.bit.data.RuntimeFilterBDef.probe_fields");
+            this->probe_fields(this->probe_fields_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_probe_fields;
+        if (input->ExpectTag(56)) goto parse_hj_op_id;
         break;
       }
 
       // optional int32 hj_op_id = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_hj_op_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_hj_op_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &hj_op_id_)));
+          set_has_hj_op_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(64)) goto parse_rf_identifier;
         break;
       }
 
       // optional int64 rf_identifier = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(64u /* 64 & 0xFF */)) {
-          set_has_rf_identifier();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_rf_identifier:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &rf_identifier_)));
+          set_has_rf_identifier();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.data.RuntimeFilterBDef)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.data.RuntimeFilterBDef)
-  return false;
 #undef DO_
 }
 
 void RuntimeFilterBDef::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.data.RuntimeFilterBDef)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_query_id(), output);
+      1, this->query_id(), output);
   }
 
   // optional int32 major_fragment_id = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_major_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->major_fragment_id(), output);
   }
 
   // optional int32 minor_fragment_id = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_minor_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->minor_fragment_id(), output);
   }
 
   // optional bool to_foreman = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_to_foreman()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(4, this->to_foreman(), output);
   }
 
   // repeated int32 bloom_filter_size_in_bytes = 5;
-  for (int i = 0, n = this->bloom_filter_size_in_bytes_size(); i < n; i++) {
+  for (int i = 0; i < this->bloom_filter_size_in_bytes_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(
       5, this->bloom_filter_size_in_bytes(i), output);
   }
 
   // repeated string probe_fields = 6;
-  for (int i = 0, n = this->probe_fields_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->probe_fields(i).data(), static_cast<int>(this->probe_fields(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.data.RuntimeFilterBDef.probe_fields");
+  for (int i = 0; i < this->probe_fields_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->probe_fields(i).data(), this->probe_fields(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       6, this->probe_fields(i), output);
   }
 
   // optional int32 hj_op_id = 7;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_hj_op_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(7, this->hj_op_id(), output);
   }
 
   // optional int64 rf_identifier = 8;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_rf_identifier()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(8, this->rf_identifier(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.data.RuntimeFilterBDef)
 }
 
-::google::protobuf::uint8* RuntimeFilterBDef::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.data.RuntimeFilterBDef)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* RuntimeFilterBDef::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_query_id(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->query_id(), target);
   }
 
   // optional int32 major_fragment_id = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_major_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->major_fragment_id(), target);
   }
 
   // optional int32 minor_fragment_id = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_minor_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->minor_fragment_id(), target);
   }
 
   // optional bool to_foreman = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_to_foreman()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(4, this->to_foreman(), target);
   }
 
   // repeated int32 bloom_filter_size_in_bytes = 5;
-  target = ::google::protobuf::internal::WireFormatLite::
-    WriteInt32ToArray(5, this->bloom_filter_size_in_bytes_, target);
+  for (int i = 0; i < this->bloom_filter_size_in_bytes_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::
+      WriteInt32ToArray(5, this->bloom_filter_size_in_bytes(i), target);
+  }
 
   // repeated string probe_fields = 6;
-  for (int i = 0, n = this->probe_fields_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->probe_fields(i).data(), static_cast<int>(this->probe_fields(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.data.RuntimeFilterBDef.probe_fields");
+  for (int i = 0; i < this->probe_fields_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->probe_fields(i).data(), this->probe_fields(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(6, this->probe_fields(i), target);
   }
 
   // optional int32 hj_op_id = 7;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_hj_op_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(7, this->hj_op_id(), target);
   }
 
   // optional int64 rf_identifier = 8;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_rf_identifier()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(8, this->rf_identifier(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.data.RuntimeFilterBDef)
   return target;
 }
 
-size_t RuntimeFilterBDef::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.data.RuntimeFilterBDef)
-  size_t total_size = 0;
+int RuntimeFilterBDef::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated int32 bloom_filter_size_in_bytes = 5;
-  {
-    size_t data_size = ::google::protobuf::internal::WireFormatLite::
-      Int32Size(this->bloom_filter_size_in_bytes_);
-    total_size += 1 *
-                  ::google::protobuf::internal::FromIntSize(this->bloom_filter_size_in_bytes_size());
-    total_size += data_size;
-  }
-
-  // repeated string probe_fields = 6;
-  total_size += 1 *
-      ::google::protobuf::internal::FromIntSize(this->probe_fields_size());
-  for (int i = 0, n = this->probe_fields_size(); i < n; i++) {
-    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
-      this->probe_fields(i));
-  }
-
-  if (_has_bits_[0 / 32] & 63u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.shared.QueryId query_id = 1;
     if (has_query_id()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *query_id_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->query_id());
     }
 
     // optional int32 major_fragment_id = 2;
@@ -1779,120 +1600,119 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated int32 bloom_filter_size_in_bytes = 5;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->bloom_filter_size_in_bytes_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::
+        Int32Size(this->bloom_filter_size_in_bytes(i));
+    }
+    total_size += 1 * this->bloom_filter_size_in_bytes_size() + data_size;
+  }
+
+  // repeated string probe_fields = 6;
+  total_size += 1 * this->probe_fields_size();
+  for (int i = 0; i < this->probe_fields_size(); i++) {
+    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
+      this->probe_fields(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void RuntimeFilterBDef::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.data.RuntimeFilterBDef)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const RuntimeFilterBDef* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const RuntimeFilterBDef>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const RuntimeFilterBDef*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.data.RuntimeFilterBDef)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.data.RuntimeFilterBDef)
     MergeFrom(*source);
   }
 }
 
 void RuntimeFilterBDef::MergeFrom(const RuntimeFilterBDef& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.data.RuntimeFilterBDef)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   bloom_filter_size_in_bytes_.MergeFrom(from.bloom_filter_size_in_bytes_);
   probe_fields_.MergeFrom(from.probe_fields_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 63u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_query_id()) {
       mutable_query_id()->::exec::shared::QueryId::MergeFrom(from.query_id());
     }
-    if (cached_has_bits & 0x00000002u) {
-      major_fragment_id_ = from.major_fragment_id_;
+    if (from.has_major_fragment_id()) {
+      set_major_fragment_id(from.major_fragment_id());
     }
-    if (cached_has_bits & 0x00000004u) {
-      minor_fragment_id_ = from.minor_fragment_id_;
+    if (from.has_minor_fragment_id()) {
+      set_minor_fragment_id(from.minor_fragment_id());
     }
-    if (cached_has_bits & 0x00000008u) {
-      to_foreman_ = from.to_foreman_;
+    if (from.has_to_foreman()) {
+      set_to_foreman(from.to_foreman());
     }
-    if (cached_has_bits & 0x00000010u) {
-      hj_op_id_ = from.hj_op_id_;
+    if (from.has_hj_op_id()) {
+      set_hj_op_id(from.hj_op_id());
     }
-    if (cached_has_bits & 0x00000020u) {
-      rf_identifier_ = from.rf_identifier_;
+    if (from.has_rf_identifier()) {
+      set_rf_identifier(from.rf_identifier());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void RuntimeFilterBDef::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.data.RuntimeFilterBDef)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void RuntimeFilterBDef::CopyFrom(const RuntimeFilterBDef& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.data.RuntimeFilterBDef)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool RuntimeFilterBDef::IsInitialized() const {
+
   return true;
 }
 
 void RuntimeFilterBDef::Swap(RuntimeFilterBDef* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void RuntimeFilterBDef::InternalSwap(RuntimeFilterBDef* other) {
-  using std::swap;
-  bloom_filter_size_in_bytes_.InternalSwap(&other->bloom_filter_size_in_bytes_);
-  probe_fields_.InternalSwap(CastToBase(&other->probe_fields_));
-  swap(query_id_, other->query_id_);
-  swap(major_fragment_id_, other->major_fragment_id_);
-  swap(minor_fragment_id_, other->minor_fragment_id_);
-  swap(to_foreman_, other->to_foreman_);
-  swap(hj_op_id_, other->hj_op_id_);
-  swap(rf_identifier_, other->rf_identifier_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(query_id_, other->query_id_);
+    std::swap(major_fragment_id_, other->major_fragment_id_);
+    std::swap(minor_fragment_id_, other->minor_fragment_id_);
+    std::swap(to_foreman_, other->to_foreman_);
+    bloom_filter_size_in_bytes_.Swap(&other->bloom_filter_size_in_bytes_);
+    probe_fields_.Swap(&other->probe_fields_);
+    std::swap(hj_op_id_, other->hj_op_id_);
+    std::swap(rf_identifier_, other->rf_identifier_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata RuntimeFilterBDef::GetMetadata() const {
-  protobuf_BitData_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_BitData_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = RuntimeFilterBDef_descriptor_;
+  metadata.reflection = RuntimeFilterBDef_reflection_;
+  return metadata;
 }
 
 
 // @@protoc_insertion_point(namespace_scope)
+
 }  // namespace data
 }  // namespace bit
 }  // namespace exec
-namespace google {
-namespace protobuf {
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::data::BitClientHandshake* Arena::CreateMaybeMessage< ::exec::bit::data::BitClientHandshake >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::data::BitClientHandshake >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::data::BitServerHandshake* Arena::CreateMaybeMessage< ::exec::bit::data::BitServerHandshake >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::data::BitServerHandshake >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::data::FragmentRecordBatch* Arena::CreateMaybeMessage< ::exec::bit::data::FragmentRecordBatch >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::data::FragmentRecordBatch >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::data::RuntimeFilterBDef* Arena::CreateMaybeMessage< ::exec::bit::data::RuntimeFilterBDef >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::data::RuntimeFilterBDef >(arena);
-}
-}  // namespace protobuf
-}  // namespace google
 
 // @@protoc_insertion_point(global_scope)
diff --git a/contrib/native/client/src/protobuf/BitData.pb.h b/contrib/native/client/src/protobuf/BitData.pb.h
index 805c498..9c9c42f 100644
--- a/contrib/native/client/src/protobuf/BitData.pb.h
+++ b/contrib/native/client/src/protobuf/BitData.pb.h
@@ -1,83 +1,48 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: BitData.proto
 
-#ifndef PROTOBUF_INCLUDED_BitData_2eproto
-#define PROTOBUF_INCLUDED_BitData_2eproto
+#ifndef PROTOBUF_BitData_2eproto__INCLUDED
+#define PROTOBUF_BitData_2eproto__INCLUDED
 
 #include <string>
 
 #include <google/protobuf/stubs/common.h>
 
-#if GOOGLE_PROTOBUF_VERSION < 3006001
+#if GOOGLE_PROTOBUF_VERSION < 2005000
 #error This file was generated by a newer version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please update
 #error your headers.
 #endif
-#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
+#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
 #error This file was generated by an older version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please
 #error regenerate this file with a newer version of protoc.
 #endif
 
-#include <google/protobuf/io/coded_stream.h>
-#include <google/protobuf/arena.h>
-#include <google/protobuf/arenastring.h>
-#include <google/protobuf/generated_message_table_driven.h>
 #include <google/protobuf/generated_message_util.h>
-#include <google/protobuf/inlined_string_field.h>
-#include <google/protobuf/metadata.h>
 #include <google/protobuf/message.h>
-#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
-#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/repeated_field.h>
+#include <google/protobuf/extension_set.h>
 #include <google/protobuf/generated_enum_reflection.h>
 #include <google/protobuf/unknown_field_set.h>
 #include "ExecutionProtos.pb.h"
 #include "Coordination.pb.h"
 #include "UserBitShared.pb.h"
 // @@protoc_insertion_point(includes)
-#define PROTOBUF_INTERNAL_EXPORT_protobuf_BitData_2eproto 
 
-namespace protobuf_BitData_2eproto {
-// Internal implementation detail -- do not use these members.
-struct TableStruct {
-  static const ::google::protobuf::internal::ParseTableField entries[];
-  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
-  static const ::google::protobuf::internal::ParseTable schema[4];
-  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
-  static const ::google::protobuf::internal::SerializationTable serialization_table[];
-  static const ::google::protobuf::uint32 offsets[];
-};
-void AddDescriptors();
-}  // namespace protobuf_BitData_2eproto
 namespace exec {
 namespace bit {
 namespace data {
+
+// Internal implementation detail -- do not call these.
+void  protobuf_AddDesc_BitData_2eproto();
+void protobuf_AssignDesc_BitData_2eproto();
+void protobuf_ShutdownFile_BitData_2eproto();
+
 class BitClientHandshake;
-class BitClientHandshakeDefaultTypeInternal;
-extern BitClientHandshakeDefaultTypeInternal _BitClientHandshake_default_instance_;
 class BitServerHandshake;
-class BitServerHandshakeDefaultTypeInternal;
-extern BitServerHandshakeDefaultTypeInternal _BitServerHandshake_default_instance_;
 class FragmentRecordBatch;
-class FragmentRecordBatchDefaultTypeInternal;
-extern FragmentRecordBatchDefaultTypeInternal _FragmentRecordBatch_default_instance_;
 class RuntimeFilterBDef;
-class RuntimeFilterBDefDefaultTypeInternal;
-extern RuntimeFilterBDefDefaultTypeInternal _RuntimeFilterBDef_default_instance_;
-}  // namespace data
-}  // namespace bit
-}  // namespace exec
-namespace google {
-namespace protobuf {
-template<> ::exec::bit::data::BitClientHandshake* Arena::CreateMaybeMessage<::exec::bit::data::BitClientHandshake>(Arena*);
-template<> ::exec::bit::data::BitServerHandshake* Arena::CreateMaybeMessage<::exec::bit::data::BitServerHandshake>(Arena*);
-template<> ::exec::bit::data::FragmentRecordBatch* Arena::CreateMaybeMessage<::exec::bit::data::FragmentRecordBatch>(Arena*);
-template<> ::exec::bit::data::RuntimeFilterBDef* Arena::CreateMaybeMessage<::exec::bit::data::RuntimeFilterBDef>(Arena*);
-}  // namespace protobuf
-}  // namespace google
-namespace exec {
-namespace bit {
-namespace data {
 
 enum RpcType {
   HANDSHAKE = 0,
@@ -104,7 +69,7 @@
 }
 // ===================================================================
 
-class BitClientHandshake : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.data.BitClientHandshake) */ {
+class BitClientHandshake : public ::google::protobuf::Message {
  public:
   BitClientHandshake();
   virtual ~BitClientHandshake();
@@ -115,120 +80,88 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  BitClientHandshake(BitClientHandshake&& from) noexcept
-    : BitClientHandshake() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline BitClientHandshake& operator=(BitClientHandshake&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const BitClientHandshake& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const BitClientHandshake* internal_default_instance() {
-    return reinterpret_cast<const BitClientHandshake*>(
-               &_BitClientHandshake_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    0;
-
   void Swap(BitClientHandshake* other);
-  friend void swap(BitClientHandshake& a, BitClientHandshake& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline BitClientHandshake* New() const final {
-    return CreateMaybeMessage<BitClientHandshake>(NULL);
-  }
-
-  BitClientHandshake* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<BitClientHandshake>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  BitClientHandshake* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const BitClientHandshake& from);
   void MergeFrom(const BitClientHandshake& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(BitClientHandshake* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional int32 rpc_version = 1;
-  bool has_rpc_version() const;
-  void clear_rpc_version();
+  inline bool has_rpc_version() const;
+  inline void clear_rpc_version();
   static const int kRpcVersionFieldNumber = 1;
-  ::google::protobuf::int32 rpc_version() const;
-  void set_rpc_version(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 rpc_version() const;
+  inline void set_rpc_version(::google::protobuf::int32 value);
 
   // optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];
-  bool has_channel() const;
-  void clear_channel();
+  inline bool has_channel() const;
+  inline void clear_channel();
   static const int kChannelFieldNumber = 2;
-  ::exec::shared::RpcChannel channel() const;
-  void set_channel(::exec::shared::RpcChannel value);
+  inline ::exec::shared::RpcChannel channel() const;
+  inline void set_channel(::exec::shared::RpcChannel value);
 
   // @@protoc_insertion_point(class_scope:exec.bit.data.BitClientHandshake)
  private:
-  void set_has_rpc_version();
-  void clear_has_rpc_version();
-  void set_has_channel();
-  void clear_has_channel();
+  inline void set_has_rpc_version();
+  inline void clear_has_rpc_version();
+  inline void set_has_channel();
+  inline void clear_has_channel();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::int32 rpc_version_;
   int channel_;
-  friend struct ::protobuf_BitData_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitData_2eproto();
+  friend void protobuf_AssignDesc_BitData_2eproto();
+  friend void protobuf_ShutdownFile_BitData_2eproto();
+
+  void InitAsDefaultInstance();
+  static BitClientHandshake* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class BitServerHandshake : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.data.BitServerHandshake) */ {
+class BitServerHandshake : public ::google::protobuf::Message {
  public:
   BitServerHandshake();
   virtual ~BitServerHandshake();
@@ -239,133 +172,95 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  BitServerHandshake(BitServerHandshake&& from) noexcept
-    : BitServerHandshake() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline BitServerHandshake& operator=(BitServerHandshake&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const BitServerHandshake& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const BitServerHandshake* internal_default_instance() {
-    return reinterpret_cast<const BitServerHandshake*>(
-               &_BitServerHandshake_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    1;
-
   void Swap(BitServerHandshake* other);
-  friend void swap(BitServerHandshake& a, BitServerHandshake& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline BitServerHandshake* New() const final {
-    return CreateMaybeMessage<BitServerHandshake>(NULL);
-  }
-
-  BitServerHandshake* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<BitServerHandshake>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  BitServerHandshake* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const BitServerHandshake& from);
   void MergeFrom(const BitServerHandshake& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(BitServerHandshake* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated string authenticationMechanisms = 2;
-  int authenticationmechanisms_size() const;
-  void clear_authenticationmechanisms();
-  static const int kAuthenticationMechanismsFieldNumber = 2;
-  const ::std::string& authenticationmechanisms(int index) const;
-  ::std::string* mutable_authenticationmechanisms(int index);
-  void set_authenticationmechanisms(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_authenticationmechanisms(int index, ::std::string&& value);
-  #endif
-  void set_authenticationmechanisms(int index, const char* value);
-  void set_authenticationmechanisms(int index, const char* value, size_t size);
-  ::std::string* add_authenticationmechanisms();
-  void add_authenticationmechanisms(const ::std::string& value);
-  #if LANG_CXX11
-  void add_authenticationmechanisms(::std::string&& value);
-  #endif
-  void add_authenticationmechanisms(const char* value);
-  void add_authenticationmechanisms(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& authenticationmechanisms() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_authenticationmechanisms();
-
   // optional int32 rpc_version = 1;
-  bool has_rpc_version() const;
-  void clear_rpc_version();
+  inline bool has_rpc_version() const;
+  inline void clear_rpc_version();
   static const int kRpcVersionFieldNumber = 1;
-  ::google::protobuf::int32 rpc_version() const;
-  void set_rpc_version(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 rpc_version() const;
+  inline void set_rpc_version(::google::protobuf::int32 value);
+
+  // repeated string authenticationMechanisms = 2;
+  inline int authenticationmechanisms_size() const;
+  inline void clear_authenticationmechanisms();
+  static const int kAuthenticationMechanismsFieldNumber = 2;
+  inline const ::std::string& authenticationmechanisms(int index) const;
+  inline ::std::string* mutable_authenticationmechanisms(int index);
+  inline void set_authenticationmechanisms(int index, const ::std::string& value);
+  inline void set_authenticationmechanisms(int index, const char* value);
+  inline void set_authenticationmechanisms(int index, const char* value, size_t size);
+  inline ::std::string* add_authenticationmechanisms();
+  inline void add_authenticationmechanisms(const ::std::string& value);
+  inline void add_authenticationmechanisms(const char* value);
+  inline void add_authenticationmechanisms(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& authenticationmechanisms() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_authenticationmechanisms();
 
   // @@protoc_insertion_point(class_scope:exec.bit.data.BitServerHandshake)
  private:
-  void set_has_rpc_version();
-  void clear_has_rpc_version();
+  inline void set_has_rpc_version();
+  inline void clear_has_rpc_version();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::std::string> authenticationmechanisms_;
   ::google::protobuf::int32 rpc_version_;
-  friend struct ::protobuf_BitData_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitData_2eproto();
+  friend void protobuf_AssignDesc_BitData_2eproto();
+  friend void protobuf_ShutdownFile_BitData_2eproto();
+
+  void InitAsDefaultInstance();
+  static BitServerHandshake* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class FragmentRecordBatch : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.data.FragmentRecordBatch) */ {
+class FragmentRecordBatch : public ::google::protobuf::Message {
  public:
   FragmentRecordBatch();
   virtual ~FragmentRecordBatch();
@@ -376,183 +271,145 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  FragmentRecordBatch(FragmentRecordBatch&& from) noexcept
-    : FragmentRecordBatch() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline FragmentRecordBatch& operator=(FragmentRecordBatch&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const FragmentRecordBatch& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const FragmentRecordBatch* internal_default_instance() {
-    return reinterpret_cast<const FragmentRecordBatch*>(
-               &_FragmentRecordBatch_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    2;
-
   void Swap(FragmentRecordBatch* other);
-  friend void swap(FragmentRecordBatch& a, FragmentRecordBatch& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline FragmentRecordBatch* New() const final {
-    return CreateMaybeMessage<FragmentRecordBatch>(NULL);
-  }
-
-  FragmentRecordBatch* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<FragmentRecordBatch>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  FragmentRecordBatch* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const FragmentRecordBatch& from);
   void MergeFrom(const FragmentRecordBatch& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(FragmentRecordBatch* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated int32 receiving_minor_fragment_id = 3;
-  int receiving_minor_fragment_id_size() const;
-  void clear_receiving_minor_fragment_id();
-  static const int kReceivingMinorFragmentIdFieldNumber = 3;
-  ::google::protobuf::int32 receiving_minor_fragment_id(int index) const;
-  void set_receiving_minor_fragment_id(int index, ::google::protobuf::int32 value);
-  void add_receiving_minor_fragment_id(::google::protobuf::int32 value);
-  const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
-      receiving_minor_fragment_id() const;
-  ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
-      mutable_receiving_minor_fragment_id();
-
   // optional .exec.shared.QueryId query_id = 1;
-  bool has_query_id() const;
-  void clear_query_id();
+  inline bool has_query_id() const;
+  inline void clear_query_id();
   static const int kQueryIdFieldNumber = 1;
-  private:
-  const ::exec::shared::QueryId& _internal_query_id() const;
-  public:
-  const ::exec::shared::QueryId& query_id() const;
-  ::exec::shared::QueryId* release_query_id();
-  ::exec::shared::QueryId* mutable_query_id();
-  void set_allocated_query_id(::exec::shared::QueryId* query_id);
-
-  // optional .exec.shared.RecordBatchDef def = 6;
-  bool has_def() const;
-  void clear_def();
-  static const int kDefFieldNumber = 6;
-  private:
-  const ::exec::shared::RecordBatchDef& _internal_def() const;
-  public:
-  const ::exec::shared::RecordBatchDef& def() const;
-  ::exec::shared::RecordBatchDef* release_def();
-  ::exec::shared::RecordBatchDef* mutable_def();
-  void set_allocated_def(::exec::shared::RecordBatchDef* def);
+  inline const ::exec::shared::QueryId& query_id() const;
+  inline ::exec::shared::QueryId* mutable_query_id();
+  inline ::exec::shared::QueryId* release_query_id();
+  inline void set_allocated_query_id(::exec::shared::QueryId* query_id);
 
   // optional int32 receiving_major_fragment_id = 2;
-  bool has_receiving_major_fragment_id() const;
-  void clear_receiving_major_fragment_id();
+  inline bool has_receiving_major_fragment_id() const;
+  inline void clear_receiving_major_fragment_id();
   static const int kReceivingMajorFragmentIdFieldNumber = 2;
-  ::google::protobuf::int32 receiving_major_fragment_id() const;
-  void set_receiving_major_fragment_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 receiving_major_fragment_id() const;
+  inline void set_receiving_major_fragment_id(::google::protobuf::int32 value);
+
+  // repeated int32 receiving_minor_fragment_id = 3;
+  inline int receiving_minor_fragment_id_size() const;
+  inline void clear_receiving_minor_fragment_id();
+  static const int kReceivingMinorFragmentIdFieldNumber = 3;
+  inline ::google::protobuf::int32 receiving_minor_fragment_id(int index) const;
+  inline void set_receiving_minor_fragment_id(int index, ::google::protobuf::int32 value);
+  inline void add_receiving_minor_fragment_id(::google::protobuf::int32 value);
+  inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
+      receiving_minor_fragment_id() const;
+  inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
+      mutable_receiving_minor_fragment_id();
 
   // optional int32 sending_major_fragment_id = 4;
-  bool has_sending_major_fragment_id() const;
-  void clear_sending_major_fragment_id();
+  inline bool has_sending_major_fragment_id() const;
+  inline void clear_sending_major_fragment_id();
   static const int kSendingMajorFragmentIdFieldNumber = 4;
-  ::google::protobuf::int32 sending_major_fragment_id() const;
-  void set_sending_major_fragment_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 sending_major_fragment_id() const;
+  inline void set_sending_major_fragment_id(::google::protobuf::int32 value);
 
   // optional int32 sending_minor_fragment_id = 5;
-  bool has_sending_minor_fragment_id() const;
-  void clear_sending_minor_fragment_id();
+  inline bool has_sending_minor_fragment_id() const;
+  inline void clear_sending_minor_fragment_id();
   static const int kSendingMinorFragmentIdFieldNumber = 5;
-  ::google::protobuf::int32 sending_minor_fragment_id() const;
-  void set_sending_minor_fragment_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 sending_minor_fragment_id() const;
+  inline void set_sending_minor_fragment_id(::google::protobuf::int32 value);
+
+  // optional .exec.shared.RecordBatchDef def = 6;
+  inline bool has_def() const;
+  inline void clear_def();
+  static const int kDefFieldNumber = 6;
+  inline const ::exec::shared::RecordBatchDef& def() const;
+  inline ::exec::shared::RecordBatchDef* mutable_def();
+  inline ::exec::shared::RecordBatchDef* release_def();
+  inline void set_allocated_def(::exec::shared::RecordBatchDef* def);
 
   // optional bool isLastBatch = 7;
-  bool has_islastbatch() const;
-  void clear_islastbatch();
+  inline bool has_islastbatch() const;
+  inline void clear_islastbatch();
   static const int kIsLastBatchFieldNumber = 7;
-  bool islastbatch() const;
-  void set_islastbatch(bool value);
+  inline bool islastbatch() const;
+  inline void set_islastbatch(bool value);
 
   // @@protoc_insertion_point(class_scope:exec.bit.data.FragmentRecordBatch)
  private:
-  void set_has_query_id();
-  void clear_has_query_id();
-  void set_has_receiving_major_fragment_id();
-  void clear_has_receiving_major_fragment_id();
-  void set_has_sending_major_fragment_id();
-  void clear_has_sending_major_fragment_id();
-  void set_has_sending_minor_fragment_id();
-  void clear_has_sending_minor_fragment_id();
-  void set_has_def();
-  void clear_has_def();
-  void set_has_islastbatch();
-  void clear_has_islastbatch();
+  inline void set_has_query_id();
+  inline void clear_has_query_id();
+  inline void set_has_receiving_major_fragment_id();
+  inline void clear_has_receiving_major_fragment_id();
+  inline void set_has_sending_major_fragment_id();
+  inline void clear_has_sending_major_fragment_id();
+  inline void set_has_sending_minor_fragment_id();
+  inline void clear_has_sending_minor_fragment_id();
+  inline void set_has_def();
+  inline void clear_has_def();
+  inline void set_has_islastbatch();
+  inline void clear_has_islastbatch();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedField< ::google::protobuf::int32 > receiving_minor_fragment_id_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::QueryId* query_id_;
-  ::exec::shared::RecordBatchDef* def_;
+  ::google::protobuf::RepeatedField< ::google::protobuf::int32 > receiving_minor_fragment_id_;
   ::google::protobuf::int32 receiving_major_fragment_id_;
   ::google::protobuf::int32 sending_major_fragment_id_;
+  ::exec::shared::RecordBatchDef* def_;
   ::google::protobuf::int32 sending_minor_fragment_id_;
   bool islastbatch_;
-  friend struct ::protobuf_BitData_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(7 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitData_2eproto();
+  friend void protobuf_AssignDesc_BitData_2eproto();
+  friend void protobuf_ShutdownFile_BitData_2eproto();
+
+  void InitAsDefaultInstance();
+  static FragmentRecordBatch* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class RuntimeFilterBDef : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.data.RuntimeFilterBDef) */ {
+class RuntimeFilterBDef : public ::google::protobuf::Message {
  public:
   RuntimeFilterBDef();
   virtual ~RuntimeFilterBDef();
@@ -563,207 +420,162 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  RuntimeFilterBDef(RuntimeFilterBDef&& from) noexcept
-    : RuntimeFilterBDef() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline RuntimeFilterBDef& operator=(RuntimeFilterBDef&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const RuntimeFilterBDef& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const RuntimeFilterBDef* internal_default_instance() {
-    return reinterpret_cast<const RuntimeFilterBDef*>(
-               &_RuntimeFilterBDef_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    3;
-
   void Swap(RuntimeFilterBDef* other);
-  friend void swap(RuntimeFilterBDef& a, RuntimeFilterBDef& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline RuntimeFilterBDef* New() const final {
-    return CreateMaybeMessage<RuntimeFilterBDef>(NULL);
-  }
-
-  RuntimeFilterBDef* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<RuntimeFilterBDef>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  RuntimeFilterBDef* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const RuntimeFilterBDef& from);
   void MergeFrom(const RuntimeFilterBDef& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(RuntimeFilterBDef* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional .exec.shared.QueryId query_id = 1;
+  inline bool has_query_id() const;
+  inline void clear_query_id();
+  static const int kQueryIdFieldNumber = 1;
+  inline const ::exec::shared::QueryId& query_id() const;
+  inline ::exec::shared::QueryId* mutable_query_id();
+  inline ::exec::shared::QueryId* release_query_id();
+  inline void set_allocated_query_id(::exec::shared::QueryId* query_id);
+
+  // optional int32 major_fragment_id = 2;
+  inline bool has_major_fragment_id() const;
+  inline void clear_major_fragment_id();
+  static const int kMajorFragmentIdFieldNumber = 2;
+  inline ::google::protobuf::int32 major_fragment_id() const;
+  inline void set_major_fragment_id(::google::protobuf::int32 value);
+
+  // optional int32 minor_fragment_id = 3;
+  inline bool has_minor_fragment_id() const;
+  inline void clear_minor_fragment_id();
+  static const int kMinorFragmentIdFieldNumber = 3;
+  inline ::google::protobuf::int32 minor_fragment_id() const;
+  inline void set_minor_fragment_id(::google::protobuf::int32 value);
+
+  // optional bool to_foreman = 4;
+  inline bool has_to_foreman() const;
+  inline void clear_to_foreman();
+  static const int kToForemanFieldNumber = 4;
+  inline bool to_foreman() const;
+  inline void set_to_foreman(bool value);
+
   // repeated int32 bloom_filter_size_in_bytes = 5;
-  int bloom_filter_size_in_bytes_size() const;
-  void clear_bloom_filter_size_in_bytes();
+  inline int bloom_filter_size_in_bytes_size() const;
+  inline void clear_bloom_filter_size_in_bytes();
   static const int kBloomFilterSizeInBytesFieldNumber = 5;
-  ::google::protobuf::int32 bloom_filter_size_in_bytes(int index) const;
-  void set_bloom_filter_size_in_bytes(int index, ::google::protobuf::int32 value);
-  void add_bloom_filter_size_in_bytes(::google::protobuf::int32 value);
-  const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
+  inline ::google::protobuf::int32 bloom_filter_size_in_bytes(int index) const;
+  inline void set_bloom_filter_size_in_bytes(int index, ::google::protobuf::int32 value);
+  inline void add_bloom_filter_size_in_bytes(::google::protobuf::int32 value);
+  inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
       bloom_filter_size_in_bytes() const;
-  ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
+  inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
       mutable_bloom_filter_size_in_bytes();
 
   // repeated string probe_fields = 6;
-  int probe_fields_size() const;
-  void clear_probe_fields();
+  inline int probe_fields_size() const;
+  inline void clear_probe_fields();
   static const int kProbeFieldsFieldNumber = 6;
-  const ::std::string& probe_fields(int index) const;
-  ::std::string* mutable_probe_fields(int index);
-  void set_probe_fields(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_probe_fields(int index, ::std::string&& value);
-  #endif
-  void set_probe_fields(int index, const char* value);
-  void set_probe_fields(int index, const char* value, size_t size);
-  ::std::string* add_probe_fields();
-  void add_probe_fields(const ::std::string& value);
-  #if LANG_CXX11
-  void add_probe_fields(::std::string&& value);
-  #endif
-  void add_probe_fields(const char* value);
-  void add_probe_fields(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& probe_fields() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_probe_fields();
-
-  // optional .exec.shared.QueryId query_id = 1;
-  bool has_query_id() const;
-  void clear_query_id();
-  static const int kQueryIdFieldNumber = 1;
-  private:
-  const ::exec::shared::QueryId& _internal_query_id() const;
-  public:
-  const ::exec::shared::QueryId& query_id() const;
-  ::exec::shared::QueryId* release_query_id();
-  ::exec::shared::QueryId* mutable_query_id();
-  void set_allocated_query_id(::exec::shared::QueryId* query_id);
-
-  // optional int32 major_fragment_id = 2;
-  bool has_major_fragment_id() const;
-  void clear_major_fragment_id();
-  static const int kMajorFragmentIdFieldNumber = 2;
-  ::google::protobuf::int32 major_fragment_id() const;
-  void set_major_fragment_id(::google::protobuf::int32 value);
-
-  // optional int32 minor_fragment_id = 3;
-  bool has_minor_fragment_id() const;
-  void clear_minor_fragment_id();
-  static const int kMinorFragmentIdFieldNumber = 3;
-  ::google::protobuf::int32 minor_fragment_id() const;
-  void set_minor_fragment_id(::google::protobuf::int32 value);
-
-  // optional bool to_foreman = 4;
-  bool has_to_foreman() const;
-  void clear_to_foreman();
-  static const int kToForemanFieldNumber = 4;
-  bool to_foreman() const;
-  void set_to_foreman(bool value);
+  inline const ::std::string& probe_fields(int index) const;
+  inline ::std::string* mutable_probe_fields(int index);
+  inline void set_probe_fields(int index, const ::std::string& value);
+  inline void set_probe_fields(int index, const char* value);
+  inline void set_probe_fields(int index, const char* value, size_t size);
+  inline ::std::string* add_probe_fields();
+  inline void add_probe_fields(const ::std::string& value);
+  inline void add_probe_fields(const char* value);
+  inline void add_probe_fields(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& probe_fields() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_probe_fields();
 
   // optional int32 hj_op_id = 7;
-  bool has_hj_op_id() const;
-  void clear_hj_op_id();
+  inline bool has_hj_op_id() const;
+  inline void clear_hj_op_id();
   static const int kHjOpIdFieldNumber = 7;
-  ::google::protobuf::int32 hj_op_id() const;
-  void set_hj_op_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 hj_op_id() const;
+  inline void set_hj_op_id(::google::protobuf::int32 value);
 
   // optional int64 rf_identifier = 8;
-  bool has_rf_identifier() const;
-  void clear_rf_identifier();
+  inline bool has_rf_identifier() const;
+  inline void clear_rf_identifier();
   static const int kRfIdentifierFieldNumber = 8;
-  ::google::protobuf::int64 rf_identifier() const;
-  void set_rf_identifier(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 rf_identifier() const;
+  inline void set_rf_identifier(::google::protobuf::int64 value);
 
   // @@protoc_insertion_point(class_scope:exec.bit.data.RuntimeFilterBDef)
  private:
-  void set_has_query_id();
-  void clear_has_query_id();
-  void set_has_major_fragment_id();
-  void clear_has_major_fragment_id();
-  void set_has_minor_fragment_id();
-  void clear_has_minor_fragment_id();
-  void set_has_to_foreman();
-  void clear_has_to_foreman();
-  void set_has_hj_op_id();
-  void clear_has_hj_op_id();
-  void set_has_rf_identifier();
-  void clear_has_rf_identifier();
+  inline void set_has_query_id();
+  inline void clear_has_query_id();
+  inline void set_has_major_fragment_id();
+  inline void clear_has_major_fragment_id();
+  inline void set_has_minor_fragment_id();
+  inline void clear_has_minor_fragment_id();
+  inline void set_has_to_foreman();
+  inline void clear_has_to_foreman();
+  inline void set_has_hj_op_id();
+  inline void clear_has_hj_op_id();
+  inline void set_has_rf_identifier();
+  inline void clear_has_rf_identifier();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedField< ::google::protobuf::int32 > bloom_filter_size_in_bytes_;
-  ::google::protobuf::RepeatedPtrField< ::std::string> probe_fields_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::QueryId* query_id_;
   ::google::protobuf::int32 major_fragment_id_;
   ::google::protobuf::int32 minor_fragment_id_;
+  ::google::protobuf::RepeatedField< ::google::protobuf::int32 > bloom_filter_size_in_bytes_;
   bool to_foreman_;
   ::google::protobuf::int32 hj_op_id_;
+  ::google::protobuf::RepeatedPtrField< ::std::string> probe_fields_;
   ::google::protobuf::int64 rf_identifier_;
-  friend struct ::protobuf_BitData_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(8 + 31) / 32];
+
+  friend void  protobuf_AddDesc_BitData_2eproto();
+  friend void protobuf_AssignDesc_BitData_2eproto();
+  friend void protobuf_ShutdownFile_BitData_2eproto();
+
+  void InitAsDefaultInstance();
+  static RuntimeFilterBDef* default_instance_;
 };
 // ===================================================================
 
 
 // ===================================================================
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic push
-  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
-#endif  // __GNUC__
 // BitClientHandshake
 
 // optional int32 rpc_version = 1;
@@ -781,13 +593,11 @@
   clear_has_rpc_version();
 }
 inline ::google::protobuf::int32 BitClientHandshake::rpc_version() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.BitClientHandshake.rpc_version)
   return rpc_version_;
 }
 inline void BitClientHandshake::set_rpc_version(::google::protobuf::int32 value) {
   set_has_rpc_version();
   rpc_version_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.BitClientHandshake.rpc_version)
 }
 
 // optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];
@@ -805,14 +615,12 @@
   clear_has_channel();
 }
 inline ::exec::shared::RpcChannel BitClientHandshake::channel() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.BitClientHandshake.channel)
   return static_cast< ::exec::shared::RpcChannel >(channel_);
 }
 inline void BitClientHandshake::set_channel(::exec::shared::RpcChannel value) {
   assert(::exec::shared::RpcChannel_IsValid(value));
   set_has_channel();
   channel_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.BitClientHandshake.channel)
 }
 
 // -------------------------------------------------------------------
@@ -834,13 +642,11 @@
   clear_has_rpc_version();
 }
 inline ::google::protobuf::int32 BitServerHandshake::rpc_version() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.BitServerHandshake.rpc_version)
   return rpc_version_;
 }
 inline void BitServerHandshake::set_rpc_version(::google::protobuf::int32 value) {
   set_has_rpc_version();
   rpc_version_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.BitServerHandshake.rpc_version)
 }
 
 // repeated string authenticationMechanisms = 2;
@@ -851,64 +657,39 @@
   authenticationmechanisms_.Clear();
 }
 inline const ::std::string& BitServerHandshake::authenticationmechanisms(int index) const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.BitServerHandshake.authenticationMechanisms)
   return authenticationmechanisms_.Get(index);
 }
 inline ::std::string* BitServerHandshake::mutable_authenticationmechanisms(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.bit.data.BitServerHandshake.authenticationMechanisms)
   return authenticationmechanisms_.Mutable(index);
 }
 inline void BitServerHandshake::set_authenticationmechanisms(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.bit.data.BitServerHandshake.authenticationMechanisms)
   authenticationmechanisms_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void BitServerHandshake::set_authenticationmechanisms(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.bit.data.BitServerHandshake.authenticationMechanisms)
-  authenticationmechanisms_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void BitServerHandshake::set_authenticationmechanisms(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   authenticationmechanisms_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.bit.data.BitServerHandshake.authenticationMechanisms)
 }
 inline void BitServerHandshake::set_authenticationmechanisms(int index, const char* value, size_t size) {
   authenticationmechanisms_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.bit.data.BitServerHandshake.authenticationMechanisms)
 }
 inline ::std::string* BitServerHandshake::add_authenticationmechanisms() {
-  // @@protoc_insertion_point(field_add_mutable:exec.bit.data.BitServerHandshake.authenticationMechanisms)
   return authenticationmechanisms_.Add();
 }
 inline void BitServerHandshake::add_authenticationmechanisms(const ::std::string& value) {
   authenticationmechanisms_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.bit.data.BitServerHandshake.authenticationMechanisms)
 }
-#if LANG_CXX11
-inline void BitServerHandshake::add_authenticationmechanisms(::std::string&& value) {
-  authenticationmechanisms_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.bit.data.BitServerHandshake.authenticationMechanisms)
-}
-#endif
 inline void BitServerHandshake::add_authenticationmechanisms(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   authenticationmechanisms_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.bit.data.BitServerHandshake.authenticationMechanisms)
 }
 inline void BitServerHandshake::add_authenticationmechanisms(const char* value, size_t size) {
   authenticationmechanisms_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.bit.data.BitServerHandshake.authenticationMechanisms)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 BitServerHandshake::authenticationmechanisms() const {
-  // @@protoc_insertion_point(field_list:exec.bit.data.BitServerHandshake.authenticationMechanisms)
   return authenticationmechanisms_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 BitServerHandshake::mutable_authenticationmechanisms() {
-  // @@protoc_insertion_point(field_mutable_list:exec.bit.data.BitServerHandshake.authenticationMechanisms)
   return &authenticationmechanisms_;
 }
 
@@ -926,72 +707,54 @@
 inline void FragmentRecordBatch::clear_has_query_id() {
   _has_bits_[0] &= ~0x00000001u;
 }
-inline const ::exec::shared::QueryId& FragmentRecordBatch::_internal_query_id() const {
-  return *query_id_;
+inline void FragmentRecordBatch::clear_query_id() {
+  if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
+  clear_has_query_id();
 }
 inline const ::exec::shared::QueryId& FragmentRecordBatch::query_id() const {
-  const ::exec::shared::QueryId* p = query_id_;
-  // @@protoc_insertion_point(field_get:exec.bit.data.FragmentRecordBatch.query_id)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::QueryId*>(
-      &::exec::shared::_QueryId_default_instance_);
+  return query_id_ != NULL ? *query_id_ : *default_instance_->query_id_;
+}
+inline ::exec::shared::QueryId* FragmentRecordBatch::mutable_query_id() {
+  set_has_query_id();
+  if (query_id_ == NULL) query_id_ = new ::exec::shared::QueryId;
+  return query_id_;
 }
 inline ::exec::shared::QueryId* FragmentRecordBatch::release_query_id() {
-  // @@protoc_insertion_point(field_release:exec.bit.data.FragmentRecordBatch.query_id)
   clear_has_query_id();
   ::exec::shared::QueryId* temp = query_id_;
   query_id_ = NULL;
   return temp;
 }
-inline ::exec::shared::QueryId* FragmentRecordBatch::mutable_query_id() {
-  set_has_query_id();
-  if (query_id_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::QueryId>(GetArenaNoVirtual());
-    query_id_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.data.FragmentRecordBatch.query_id)
-  return query_id_;
-}
 inline void FragmentRecordBatch::set_allocated_query_id(::exec::shared::QueryId* query_id) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(query_id_);
-  }
+  delete query_id_;
+  query_id_ = query_id;
   if (query_id) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      query_id = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, query_id, submessage_arena);
-    }
     set_has_query_id();
   } else {
     clear_has_query_id();
   }
-  query_id_ = query_id;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.data.FragmentRecordBatch.query_id)
 }
 
 // optional int32 receiving_major_fragment_id = 2;
 inline bool FragmentRecordBatch::has_receiving_major_fragment_id() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void FragmentRecordBatch::set_has_receiving_major_fragment_id() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void FragmentRecordBatch::clear_has_receiving_major_fragment_id() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void FragmentRecordBatch::clear_receiving_major_fragment_id() {
   receiving_major_fragment_id_ = 0;
   clear_has_receiving_major_fragment_id();
 }
 inline ::google::protobuf::int32 FragmentRecordBatch::receiving_major_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.FragmentRecordBatch.receiving_major_fragment_id)
   return receiving_major_fragment_id_;
 }
 inline void FragmentRecordBatch::set_receiving_major_fragment_id(::google::protobuf::int32 value) {
   set_has_receiving_major_fragment_id();
   receiving_major_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.FragmentRecordBatch.receiving_major_fragment_id)
 }
 
 // repeated int32 receiving_minor_fragment_id = 3;
@@ -1002,25 +765,20 @@
   receiving_minor_fragment_id_.Clear();
 }
 inline ::google::protobuf::int32 FragmentRecordBatch::receiving_minor_fragment_id(int index) const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.FragmentRecordBatch.receiving_minor_fragment_id)
   return receiving_minor_fragment_id_.Get(index);
 }
 inline void FragmentRecordBatch::set_receiving_minor_fragment_id(int index, ::google::protobuf::int32 value) {
   receiving_minor_fragment_id_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.bit.data.FragmentRecordBatch.receiving_minor_fragment_id)
 }
 inline void FragmentRecordBatch::add_receiving_minor_fragment_id(::google::protobuf::int32 value) {
   receiving_minor_fragment_id_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.bit.data.FragmentRecordBatch.receiving_minor_fragment_id)
 }
 inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
 FragmentRecordBatch::receiving_minor_fragment_id() const {
-  // @@protoc_insertion_point(field_list:exec.bit.data.FragmentRecordBatch.receiving_minor_fragment_id)
   return receiving_minor_fragment_id_;
 }
 inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
 FragmentRecordBatch::mutable_receiving_minor_fragment_id() {
-  // @@protoc_insertion_point(field_mutable_list:exec.bit.data.FragmentRecordBatch.receiving_minor_fragment_id)
   return &receiving_minor_fragment_id_;
 }
 
@@ -1039,13 +797,11 @@
   clear_has_sending_major_fragment_id();
 }
 inline ::google::protobuf::int32 FragmentRecordBatch::sending_major_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.FragmentRecordBatch.sending_major_fragment_id)
   return sending_major_fragment_id_;
 }
 inline void FragmentRecordBatch::set_sending_major_fragment_id(::google::protobuf::int32 value) {
   set_has_sending_major_fragment_id();
   sending_major_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.FragmentRecordBatch.sending_major_fragment_id)
 }
 
 // optional int32 sending_minor_fragment_id = 5;
@@ -1063,91 +819,71 @@
   clear_has_sending_minor_fragment_id();
 }
 inline ::google::protobuf::int32 FragmentRecordBatch::sending_minor_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.FragmentRecordBatch.sending_minor_fragment_id)
   return sending_minor_fragment_id_;
 }
 inline void FragmentRecordBatch::set_sending_minor_fragment_id(::google::protobuf::int32 value) {
   set_has_sending_minor_fragment_id();
   sending_minor_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.FragmentRecordBatch.sending_minor_fragment_id)
 }
 
 // optional .exec.shared.RecordBatchDef def = 6;
 inline bool FragmentRecordBatch::has_def() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void FragmentRecordBatch::set_has_def() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void FragmentRecordBatch::clear_has_def() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000020u;
 }
-inline const ::exec::shared::RecordBatchDef& FragmentRecordBatch::_internal_def() const {
-  return *def_;
+inline void FragmentRecordBatch::clear_def() {
+  if (def_ != NULL) def_->::exec::shared::RecordBatchDef::Clear();
+  clear_has_def();
 }
 inline const ::exec::shared::RecordBatchDef& FragmentRecordBatch::def() const {
-  const ::exec::shared::RecordBatchDef* p = def_;
-  // @@protoc_insertion_point(field_get:exec.bit.data.FragmentRecordBatch.def)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::RecordBatchDef*>(
-      &::exec::shared::_RecordBatchDef_default_instance_);
+  return def_ != NULL ? *def_ : *default_instance_->def_;
+}
+inline ::exec::shared::RecordBatchDef* FragmentRecordBatch::mutable_def() {
+  set_has_def();
+  if (def_ == NULL) def_ = new ::exec::shared::RecordBatchDef;
+  return def_;
 }
 inline ::exec::shared::RecordBatchDef* FragmentRecordBatch::release_def() {
-  // @@protoc_insertion_point(field_release:exec.bit.data.FragmentRecordBatch.def)
   clear_has_def();
   ::exec::shared::RecordBatchDef* temp = def_;
   def_ = NULL;
   return temp;
 }
-inline ::exec::shared::RecordBatchDef* FragmentRecordBatch::mutable_def() {
-  set_has_def();
-  if (def_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::RecordBatchDef>(GetArenaNoVirtual());
-    def_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.data.FragmentRecordBatch.def)
-  return def_;
-}
 inline void FragmentRecordBatch::set_allocated_def(::exec::shared::RecordBatchDef* def) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(def_);
-  }
+  delete def_;
+  def_ = def;
   if (def) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      def = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, def, submessage_arena);
-    }
     set_has_def();
   } else {
     clear_has_def();
   }
-  def_ = def;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.data.FragmentRecordBatch.def)
 }
 
 // optional bool isLastBatch = 7;
 inline bool FragmentRecordBatch::has_islastbatch() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000040u) != 0;
 }
 inline void FragmentRecordBatch::set_has_islastbatch() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000040u;
 }
 inline void FragmentRecordBatch::clear_has_islastbatch() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000040u;
 }
 inline void FragmentRecordBatch::clear_islastbatch() {
   islastbatch_ = false;
   clear_has_islastbatch();
 }
 inline bool FragmentRecordBatch::islastbatch() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.FragmentRecordBatch.isLastBatch)
   return islastbatch_;
 }
 inline void FragmentRecordBatch::set_islastbatch(bool value) {
   set_has_islastbatch();
   islastbatch_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.FragmentRecordBatch.isLastBatch)
 }
 
 // -------------------------------------------------------------------
@@ -1164,48 +900,32 @@
 inline void RuntimeFilterBDef::clear_has_query_id() {
   _has_bits_[0] &= ~0x00000001u;
 }
-inline const ::exec::shared::QueryId& RuntimeFilterBDef::_internal_query_id() const {
-  return *query_id_;
+inline void RuntimeFilterBDef::clear_query_id() {
+  if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
+  clear_has_query_id();
 }
 inline const ::exec::shared::QueryId& RuntimeFilterBDef::query_id() const {
-  const ::exec::shared::QueryId* p = query_id_;
-  // @@protoc_insertion_point(field_get:exec.bit.data.RuntimeFilterBDef.query_id)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::QueryId*>(
-      &::exec::shared::_QueryId_default_instance_);
+  return query_id_ != NULL ? *query_id_ : *default_instance_->query_id_;
+}
+inline ::exec::shared::QueryId* RuntimeFilterBDef::mutable_query_id() {
+  set_has_query_id();
+  if (query_id_ == NULL) query_id_ = new ::exec::shared::QueryId;
+  return query_id_;
 }
 inline ::exec::shared::QueryId* RuntimeFilterBDef::release_query_id() {
-  // @@protoc_insertion_point(field_release:exec.bit.data.RuntimeFilterBDef.query_id)
   clear_has_query_id();
   ::exec::shared::QueryId* temp = query_id_;
   query_id_ = NULL;
   return temp;
 }
-inline ::exec::shared::QueryId* RuntimeFilterBDef::mutable_query_id() {
-  set_has_query_id();
-  if (query_id_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::QueryId>(GetArenaNoVirtual());
-    query_id_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.data.RuntimeFilterBDef.query_id)
-  return query_id_;
-}
 inline void RuntimeFilterBDef::set_allocated_query_id(::exec::shared::QueryId* query_id) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(query_id_);
-  }
+  delete query_id_;
+  query_id_ = query_id;
   if (query_id) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      query_id = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, query_id, submessage_arena);
-    }
     set_has_query_id();
   } else {
     clear_has_query_id();
   }
-  query_id_ = query_id;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.data.RuntimeFilterBDef.query_id)
 }
 
 // optional int32 major_fragment_id = 2;
@@ -1223,13 +943,11 @@
   clear_has_major_fragment_id();
 }
 inline ::google::protobuf::int32 RuntimeFilterBDef::major_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.RuntimeFilterBDef.major_fragment_id)
   return major_fragment_id_;
 }
 inline void RuntimeFilterBDef::set_major_fragment_id(::google::protobuf::int32 value) {
   set_has_major_fragment_id();
   major_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.RuntimeFilterBDef.major_fragment_id)
 }
 
 // optional int32 minor_fragment_id = 3;
@@ -1247,13 +965,11 @@
   clear_has_minor_fragment_id();
 }
 inline ::google::protobuf::int32 RuntimeFilterBDef::minor_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.RuntimeFilterBDef.minor_fragment_id)
   return minor_fragment_id_;
 }
 inline void RuntimeFilterBDef::set_minor_fragment_id(::google::protobuf::int32 value) {
   set_has_minor_fragment_id();
   minor_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.RuntimeFilterBDef.minor_fragment_id)
 }
 
 // optional bool to_foreman = 4;
@@ -1271,13 +987,11 @@
   clear_has_to_foreman();
 }
 inline bool RuntimeFilterBDef::to_foreman() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.RuntimeFilterBDef.to_foreman)
   return to_foreman_;
 }
 inline void RuntimeFilterBDef::set_to_foreman(bool value) {
   set_has_to_foreman();
   to_foreman_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.RuntimeFilterBDef.to_foreman)
 }
 
 // repeated int32 bloom_filter_size_in_bytes = 5;
@@ -1288,25 +1002,20 @@
   bloom_filter_size_in_bytes_.Clear();
 }
 inline ::google::protobuf::int32 RuntimeFilterBDef::bloom_filter_size_in_bytes(int index) const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.RuntimeFilterBDef.bloom_filter_size_in_bytes)
   return bloom_filter_size_in_bytes_.Get(index);
 }
 inline void RuntimeFilterBDef::set_bloom_filter_size_in_bytes(int index, ::google::protobuf::int32 value) {
   bloom_filter_size_in_bytes_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.bit.data.RuntimeFilterBDef.bloom_filter_size_in_bytes)
 }
 inline void RuntimeFilterBDef::add_bloom_filter_size_in_bytes(::google::protobuf::int32 value) {
   bloom_filter_size_in_bytes_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.bit.data.RuntimeFilterBDef.bloom_filter_size_in_bytes)
 }
 inline const ::google::protobuf::RepeatedField< ::google::protobuf::int32 >&
 RuntimeFilterBDef::bloom_filter_size_in_bytes() const {
-  // @@protoc_insertion_point(field_list:exec.bit.data.RuntimeFilterBDef.bloom_filter_size_in_bytes)
   return bloom_filter_size_in_bytes_;
 }
 inline ::google::protobuf::RepeatedField< ::google::protobuf::int32 >*
 RuntimeFilterBDef::mutable_bloom_filter_size_in_bytes() {
-  // @@protoc_insertion_point(field_mutable_list:exec.bit.data.RuntimeFilterBDef.bloom_filter_size_in_bytes)
   return &bloom_filter_size_in_bytes_;
 }
 
@@ -1318,124 +1027,86 @@
   probe_fields_.Clear();
 }
 inline const ::std::string& RuntimeFilterBDef::probe_fields(int index) const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.RuntimeFilterBDef.probe_fields)
   return probe_fields_.Get(index);
 }
 inline ::std::string* RuntimeFilterBDef::mutable_probe_fields(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.bit.data.RuntimeFilterBDef.probe_fields)
   return probe_fields_.Mutable(index);
 }
 inline void RuntimeFilterBDef::set_probe_fields(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.bit.data.RuntimeFilterBDef.probe_fields)
   probe_fields_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void RuntimeFilterBDef::set_probe_fields(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.bit.data.RuntimeFilterBDef.probe_fields)
-  probe_fields_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void RuntimeFilterBDef::set_probe_fields(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   probe_fields_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.bit.data.RuntimeFilterBDef.probe_fields)
 }
 inline void RuntimeFilterBDef::set_probe_fields(int index, const char* value, size_t size) {
   probe_fields_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.bit.data.RuntimeFilterBDef.probe_fields)
 }
 inline ::std::string* RuntimeFilterBDef::add_probe_fields() {
-  // @@protoc_insertion_point(field_add_mutable:exec.bit.data.RuntimeFilterBDef.probe_fields)
   return probe_fields_.Add();
 }
 inline void RuntimeFilterBDef::add_probe_fields(const ::std::string& value) {
   probe_fields_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.bit.data.RuntimeFilterBDef.probe_fields)
 }
-#if LANG_CXX11
-inline void RuntimeFilterBDef::add_probe_fields(::std::string&& value) {
-  probe_fields_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.bit.data.RuntimeFilterBDef.probe_fields)
-}
-#endif
 inline void RuntimeFilterBDef::add_probe_fields(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   probe_fields_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.bit.data.RuntimeFilterBDef.probe_fields)
 }
 inline void RuntimeFilterBDef::add_probe_fields(const char* value, size_t size) {
   probe_fields_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.bit.data.RuntimeFilterBDef.probe_fields)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 RuntimeFilterBDef::probe_fields() const {
-  // @@protoc_insertion_point(field_list:exec.bit.data.RuntimeFilterBDef.probe_fields)
   return probe_fields_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 RuntimeFilterBDef::mutable_probe_fields() {
-  // @@protoc_insertion_point(field_mutable_list:exec.bit.data.RuntimeFilterBDef.probe_fields)
   return &probe_fields_;
 }
 
 // optional int32 hj_op_id = 7;
 inline bool RuntimeFilterBDef::has_hj_op_id() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000040u) != 0;
 }
 inline void RuntimeFilterBDef::set_has_hj_op_id() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000040u;
 }
 inline void RuntimeFilterBDef::clear_has_hj_op_id() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000040u;
 }
 inline void RuntimeFilterBDef::clear_hj_op_id() {
   hj_op_id_ = 0;
   clear_has_hj_op_id();
 }
 inline ::google::protobuf::int32 RuntimeFilterBDef::hj_op_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.RuntimeFilterBDef.hj_op_id)
   return hj_op_id_;
 }
 inline void RuntimeFilterBDef::set_hj_op_id(::google::protobuf::int32 value) {
   set_has_hj_op_id();
   hj_op_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.RuntimeFilterBDef.hj_op_id)
 }
 
 // optional int64 rf_identifier = 8;
 inline bool RuntimeFilterBDef::has_rf_identifier() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000080u) != 0;
 }
 inline void RuntimeFilterBDef::set_has_rf_identifier() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000080u;
 }
 inline void RuntimeFilterBDef::clear_has_rf_identifier() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000080u;
 }
 inline void RuntimeFilterBDef::clear_rf_identifier() {
   rf_identifier_ = GOOGLE_LONGLONG(0);
   clear_has_rf_identifier();
 }
 inline ::google::protobuf::int64 RuntimeFilterBDef::rf_identifier() const {
-  // @@protoc_insertion_point(field_get:exec.bit.data.RuntimeFilterBDef.rf_identifier)
   return rf_identifier_;
 }
 inline void RuntimeFilterBDef::set_rf_identifier(::google::protobuf::int64 value) {
   set_has_rf_identifier();
   rf_identifier_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.data.RuntimeFilterBDef.rf_identifier)
 }
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic pop
-#endif  // __GNUC__
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
 
 // @@protoc_insertion_point(namespace_scope)
 
@@ -1443,18 +1114,19 @@
 }  // namespace bit
 }  // namespace exec
 
+#ifndef SWIG
 namespace google {
 namespace protobuf {
 
-template <> struct is_proto_enum< ::exec::bit::data::RpcType> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::bit::data::RpcType>() {
   return ::exec::bit::data::RpcType_descriptor();
 }
 
-}  // namespace protobuf
 }  // namespace google
+}  // namespace protobuf
+#endif  // SWIG
 
 // @@protoc_insertion_point(global_scope)
 
-#endif  // PROTOBUF_INCLUDED_BitData_2eproto
+#endif  // PROTOBUF_BitData_2eproto__INCLUDED
diff --git a/contrib/native/client/src/protobuf/Coordination.pb.cc b/contrib/native/client/src/protobuf/Coordination.pb.cc
index bb954bf..31ffcce 100644
--- a/contrib/native/client/src/protobuf/Coordination.pb.cc
+++ b/contrib/native/client/src/protobuf/Coordination.pb.cc
@@ -1,222 +1,184 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: Coordination.proto
 
+#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
 #include "Coordination.pb.h"
 
 #include <algorithm>
 
 #include <google/protobuf/stubs/common.h>
-#include <google/protobuf/stubs/port.h>
+#include <google/protobuf/stubs/once.h>
 #include <google/protobuf/io/coded_stream.h>
 #include <google/protobuf/wire_format_lite_inl.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>
-// This is a temporary google only hack
-#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
-#include "third_party/protobuf/version.h"
-#endif
 // @@protoc_insertion_point(includes)
 
-namespace protobuf_Coordination_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_Coordination_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_Roles;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_Coordination_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_DrillbitEndpoint;
-}  // namespace protobuf_Coordination_2eproto
 namespace exec {
-class DrillbitEndpointDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<DrillbitEndpoint>
-      _instance;
-} _DrillbitEndpoint_default_instance_;
-class DrillServiceInstanceDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<DrillServiceInstance>
-      _instance;
-} _DrillServiceInstance_default_instance_;
-class RolesDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<Roles>
-      _instance;
-} _Roles_default_instance_;
-}  // namespace exec
-namespace protobuf_Coordination_2eproto {
-static void InitDefaultsDrillbitEndpoint() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
 
-  {
-    void* ptr = &::exec::_DrillbitEndpoint_default_instance_;
-    new (ptr) ::exec::DrillbitEndpoint();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::DrillbitEndpoint::InitAsDefaultInstance();
+namespace {
+
+const ::google::protobuf::Descriptor* DrillbitEndpoint_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  DrillbitEndpoint_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* DrillbitEndpoint_State_descriptor_ = NULL;
+const ::google::protobuf::Descriptor* DrillServiceInstance_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  DrillServiceInstance_reflection_ = NULL;
+const ::google::protobuf::Descriptor* Roles_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  Roles_reflection_ = NULL;
+
+}  // namespace
+
+
+void protobuf_AssignDesc_Coordination_2eproto() {
+  protobuf_AddDesc_Coordination_2eproto();
+  const ::google::protobuf::FileDescriptor* file =
+    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
+      "Coordination.proto");
+  GOOGLE_CHECK(file != NULL);
+  DrillbitEndpoint_descriptor_ = file->message_type(0);
+  static const int DrillbitEndpoint_offsets_[8] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, address_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, user_port_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, control_port_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, data_port_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, roles_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, version_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, state_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, http_port_),
+  };
+  DrillbitEndpoint_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      DrillbitEndpoint_descriptor_,
+      DrillbitEndpoint::default_instance_,
+      DrillbitEndpoint_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillbitEndpoint, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(DrillbitEndpoint));
+  DrillbitEndpoint_State_descriptor_ = DrillbitEndpoint_descriptor_->enum_type(0);
+  DrillServiceInstance_descriptor_ = file->message_type(1);
+  static const int DrillServiceInstance_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillServiceInstance, id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillServiceInstance, registrationtimeutc_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillServiceInstance, endpoint_),
+  };
+  DrillServiceInstance_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      DrillServiceInstance_descriptor_,
+      DrillServiceInstance::default_instance_,
+      DrillServiceInstance_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillServiceInstance, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillServiceInstance, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(DrillServiceInstance));
+  Roles_descriptor_ = file->message_type(2);
+  static const int Roles_offsets_[5] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Roles, sql_query_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Roles, logical_plan_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Roles, physical_plan_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Roles, java_executor_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Roles, distributed_cache_),
+  };
+  Roles_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      Roles_descriptor_,
+      Roles::default_instance_,
+      Roles_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Roles, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Roles, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(Roles));
 }
 
-::google::protobuf::internal::SCCInfo<1> scc_info_DrillbitEndpoint =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsDrillbitEndpoint}, {
-      &protobuf_Coordination_2eproto::scc_info_Roles.base,}};
+namespace {
 
-static void InitDefaultsDrillServiceInstance() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::_DrillServiceInstance_default_instance_;
-    new (ptr) ::exec::DrillServiceInstance();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::DrillServiceInstance::InitAsDefaultInstance();
+GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
+inline void protobuf_AssignDescriptorsOnce() {
+  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
+                 &protobuf_AssignDesc_Coordination_2eproto);
 }
 
-::google::protobuf::internal::SCCInfo<1> scc_info_DrillServiceInstance =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsDrillServiceInstance}, {
-      &protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base,}};
-
-static void InitDefaultsRoles() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::_Roles_default_instance_;
-    new (ptr) ::exec::Roles();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::Roles::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_Roles =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsRoles}, {}};
-
-void InitDefaults() {
-  ::google::protobuf::internal::InitSCC(&scc_info_DrillbitEndpoint.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_DrillServiceInstance.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_Roles.base);
-}
-
-::google::protobuf::Metadata file_level_metadata[3];
-const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors[1];
-
-const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, address_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, user_port_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, control_port_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, data_port_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, roles_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, version_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, state_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillbitEndpoint, http_port_),
-  0,
-  3,
-  4,
-  5,
-  2,
-  1,
-  6,
-  7,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillServiceInstance, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillServiceInstance, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillServiceInstance, id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillServiceInstance, registrationtimeutc_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::DrillServiceInstance, endpoint_),
-  0,
-  2,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::Roles, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::Roles, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::Roles, sql_query_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::Roles, logical_plan_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::Roles, physical_plan_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::Roles, java_executor_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::Roles, distributed_cache_),
-  0,
-  1,
-  2,
-  3,
-  4,
-};
-static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  { 0, 13, sizeof(::exec::DrillbitEndpoint)},
-  { 21, 29, sizeof(::exec::DrillServiceInstance)},
-  { 32, 42, sizeof(::exec::Roles)},
-};
-
-static ::google::protobuf::Message const * const file_default_instances[] = {
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::_DrillbitEndpoint_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::_DrillServiceInstance_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::_Roles_default_instance_),
-};
-
-void protobuf_AssignDescriptors() {
-  AddDescriptors();
-  AssignDescriptors(
-      "Coordination.proto", schemas, file_default_instances, TableStruct::offsets,
-      file_level_metadata, file_level_enum_descriptors, NULL);
-}
-
-void protobuf_AssignDescriptorsOnce() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, protobuf_AssignDescriptors);
-}
-
-void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
 void protobuf_RegisterTypes(const ::std::string&) {
   protobuf_AssignDescriptorsOnce();
-  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 3);
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    DrillbitEndpoint_descriptor_, &DrillbitEndpoint::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    DrillServiceInstance_descriptor_, &DrillServiceInstance::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    Roles_descriptor_, &Roles::default_instance());
 }
 
-void AddDescriptorsImpl() {
-  InitDefaults();
-  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-      "\n\022Coordination.proto\022\004exec\"\212\002\n\020DrillbitE"
-      "ndpoint\022\017\n\007address\030\001 \001(\t\022\021\n\tuser_port\030\002 "
-      "\001(\005\022\024\n\014control_port\030\003 \001(\005\022\021\n\tdata_port\030\004"
-      " \001(\005\022\032\n\005roles\030\005 \001(\0132\013.exec.Roles\022\017\n\007vers"
-      "ion\030\006 \001(\t\022+\n\005state\030\007 \001(\0162\034.exec.Drillbit"
-      "Endpoint.State\022\021\n\thttp_port\030\010 \001(\005\"<\n\005Sta"
-      "te\022\013\n\007STARTUP\020\000\022\n\n\006ONLINE\020\001\022\r\n\tQUIESCENT"
-      "\020\002\022\013\n\007OFFLINE\020\003\"i\n\024DrillServiceInstance\022"
-      "\n\n\002id\030\001 \001(\t\022\033\n\023registrationTimeUTC\030\002 \001(\003"
-      "\022(\n\010endpoint\030\003 \001(\0132\026.exec.DrillbitEndpoi"
-      "nt\"\227\001\n\005Roles\022\027\n\tsql_query\030\001 \001(\010:\004true\022\032\n"
-      "\014logical_plan\030\002 \001(\010:\004true\022\033\n\rphysical_pl"
-      "an\030\003 \001(\010:\004true\022\033\n\rjava_executor\030\004 \001(\010:\004t"
-      "rue\022\037\n\021distributed_cache\030\005 \001(\010:\004trueB3\n\033"
-      "org.apache.drill.exec.protoB\022Coordinatio"
-      "nProtosH\001"
-  };
+}  // namespace
+
+void protobuf_ShutdownFile_Coordination_2eproto() {
+  delete DrillbitEndpoint::default_instance_;
+  delete DrillbitEndpoint_reflection_;
+  delete DrillServiceInstance::default_instance_;
+  delete DrillServiceInstance_reflection_;
+  delete Roles::default_instance_;
+  delete Roles_reflection_;
+}
+
+void protobuf_AddDesc_Coordination_2eproto() {
+  static bool already_here = false;
+  if (already_here) return;
+  already_here = true;
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
   ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
-      descriptor, 609);
+    "\n\022Coordination.proto\022\004exec\"\212\002\n\020DrillbitE"
+    "ndpoint\022\017\n\007address\030\001 \001(\t\022\021\n\tuser_port\030\002 "
+    "\001(\005\022\024\n\014control_port\030\003 \001(\005\022\021\n\tdata_port\030\004"
+    " \001(\005\022\032\n\005roles\030\005 \001(\0132\013.exec.Roles\022\017\n\007vers"
+    "ion\030\006 \001(\t\022+\n\005state\030\007 \001(\0162\034.exec.Drillbit"
+    "Endpoint.State\022\021\n\thttp_port\030\010 \001(\005\"<\n\005Sta"
+    "te\022\013\n\007STARTUP\020\000\022\n\n\006ONLINE\020\001\022\r\n\tQUIESCENT"
+    "\020\002\022\013\n\007OFFLINE\020\003\"i\n\024DrillServiceInstance\022"
+    "\n\n\002id\030\001 \001(\t\022\033\n\023registrationTimeUTC\030\002 \001(\003"
+    "\022(\n\010endpoint\030\003 \001(\0132\026.exec.DrillbitEndpoi"
+    "nt\"\227\001\n\005Roles\022\027\n\tsql_query\030\001 \001(\010:\004true\022\032\n"
+    "\014logical_plan\030\002 \001(\010:\004true\022\033\n\rphysical_pl"
+    "an\030\003 \001(\010:\004true\022\033\n\rjava_executor\030\004 \001(\010:\004t"
+    "rue\022\037\n\021distributed_cache\030\005 \001(\010:\004trueB3\n\033"
+    "org.apache.drill.exec.protoB\022Coordinatio"
+    "nProtosH\001", 609);
   ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
     "Coordination.proto", &protobuf_RegisterTypes);
+  DrillbitEndpoint::default_instance_ = new DrillbitEndpoint();
+  DrillServiceInstance::default_instance_ = new DrillServiceInstance();
+  Roles::default_instance_ = new Roles();
+  DrillbitEndpoint::default_instance_->InitAsDefaultInstance();
+  DrillServiceInstance::default_instance_->InitAsDefaultInstance();
+  Roles::default_instance_->InitAsDefaultInstance();
+  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_Coordination_2eproto);
 }
 
-void AddDescriptors() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, AddDescriptorsImpl);
-}
-// Force AddDescriptors() to be called at dynamic initialization time.
-struct StaticDescriptorInitializer {
-  StaticDescriptorInitializer() {
-    AddDescriptors();
+// Force AddDescriptors() to be called at static initialization time.
+struct StaticDescriptorInitializer_Coordination_2eproto {
+  StaticDescriptorInitializer_Coordination_2eproto() {
+    protobuf_AddDesc_Coordination_2eproto();
   }
-} static_descriptor_initializer;
-}  // namespace protobuf_Coordination_2eproto
-namespace exec {
+} static_descriptor_initializer_Coordination_2eproto_;
+
+// ===================================================================
+
 const ::google::protobuf::EnumDescriptor* DrillbitEndpoint_State_descriptor() {
-  protobuf_Coordination_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_Coordination_2eproto::file_level_enum_descriptors[0];
+  protobuf_AssignDescriptorsOnce();
+  return DrillbitEndpoint_State_descriptor_;
 }
 bool DrillbitEndpoint_State_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -227,7 +189,7 @@
   }
 }
 
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const DrillbitEndpoint_State DrillbitEndpoint::STARTUP;
 const DrillbitEndpoint_State DrillbitEndpoint::ONLINE;
 const DrillbitEndpoint_State DrillbitEndpoint::QUIESCENT;
@@ -235,15 +197,8 @@
 const DrillbitEndpoint_State DrillbitEndpoint::State_MIN;
 const DrillbitEndpoint_State DrillbitEndpoint::State_MAX;
 const int DrillbitEndpoint::State_ARRAYSIZE;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
-
-// ===================================================================
-
-void DrillbitEndpoint::InitAsDefaultInstance() {
-  ::exec::_DrillbitEndpoint_default_instance_._instance.get_mutable()->roles_ = const_cast< ::exec::Roles*>(
-      ::exec::Roles::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // _MSC_VER
+#ifndef _MSC_VER
 const int DrillbitEndpoint::kAddressFieldNumber;
 const int DrillbitEndpoint::kUserPortFieldNumber;
 const int DrillbitEndpoint::kControlPortFieldNumber;
@@ -252,200 +207,204 @@
 const int DrillbitEndpoint::kVersionFieldNumber;
 const int DrillbitEndpoint::kStateFieldNumber;
 const int DrillbitEndpoint::kHttpPortFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 DrillbitEndpoint::DrillbitEndpoint()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.DrillbitEndpoint)
 }
+
+void DrillbitEndpoint::InitAsDefaultInstance() {
+  roles_ = const_cast< ::exec::Roles*>(&::exec::Roles::default_instance());
+}
+
 DrillbitEndpoint::DrillbitEndpoint(const DrillbitEndpoint& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  address_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_address()) {
-    address_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.address_);
-  }
-  version_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_version()) {
-    version_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.version_);
-  }
-  if (from.has_roles()) {
-    roles_ = new ::exec::Roles(*from.roles_);
-  } else {
-    roles_ = NULL;
-  }
-  ::memcpy(&user_port_, &from.user_port_,
-    static_cast<size_t>(reinterpret_cast<char*>(&http_port_) -
-    reinterpret_cast<char*>(&user_port_)) + sizeof(http_port_));
-  // @@protoc_insertion_point(copy_constructor:exec.DrillbitEndpoint)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void DrillbitEndpoint::SharedCtor() {
-  address_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  version_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&roles_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&http_port_) -
-      reinterpret_cast<char*>(&roles_)) + sizeof(http_port_));
+  _cached_size_ = 0;
+  address_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  user_port_ = 0;
+  control_port_ = 0;
+  data_port_ = 0;
+  roles_ = NULL;
+  version_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  state_ = 0;
+  http_port_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 DrillbitEndpoint::~DrillbitEndpoint() {
-  // @@protoc_insertion_point(destructor:exec.DrillbitEndpoint)
   SharedDtor();
 }
 
 void DrillbitEndpoint::SharedDtor() {
-  address_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  version_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete roles_;
+  if (address_ != &::google::protobuf::internal::kEmptyString) {
+    delete address_;
+  }
+  if (version_ != &::google::protobuf::internal::kEmptyString) {
+    delete version_;
+  }
+  if (this != default_instance_) {
+    delete roles_;
+  }
 }
 
 void DrillbitEndpoint::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* DrillbitEndpoint::descriptor() {
-  ::protobuf_Coordination_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_Coordination_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return DrillbitEndpoint_descriptor_;
 }
 
 const DrillbitEndpoint& DrillbitEndpoint::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_Coordination_2eproto();
+  return *default_instance_;
 }
 
+DrillbitEndpoint* DrillbitEndpoint::default_instance_ = NULL;
+
+DrillbitEndpoint* DrillbitEndpoint::New() const {
+  return new DrillbitEndpoint;
+}
 
 void DrillbitEndpoint::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.DrillbitEndpoint)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      address_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_address()) {
+      if (address_ != &::google::protobuf::internal::kEmptyString) {
+        address_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      version_.ClearNonDefaultToEmptyNoArena();
+    user_port_ = 0;
+    control_port_ = 0;
+    data_port_ = 0;
+    if (has_roles()) {
+      if (roles_ != NULL) roles_->::exec::Roles::Clear();
     }
-    if (cached_has_bits & 0x00000004u) {
-      GOOGLE_DCHECK(roles_ != NULL);
-      roles_->Clear();
+    if (has_version()) {
+      if (version_ != &::google::protobuf::internal::kEmptyString) {
+        version_->clear();
+      }
     }
+    state_ = 0;
+    http_port_ = 0;
   }
-  if (cached_has_bits & 248u) {
-    ::memset(&user_port_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&http_port_) -
-        reinterpret_cast<char*>(&user_port_)) + sizeof(http_port_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool DrillbitEndpoint::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.DrillbitEndpoint)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string address = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_address()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->address().data(), static_cast<int>(this->address().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.DrillbitEndpoint.address");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->address().data(), this->address().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_user_port;
         break;
       }
 
       // optional int32 user_port = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_user_port();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_user_port:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &user_port_)));
+          set_has_user_port();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_control_port;
         break;
       }
 
       // optional int32 control_port = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_control_port();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_control_port:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &control_port_)));
+          set_has_control_port();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_data_port;
         break;
       }
 
       // optional int32 data_port = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_data_port();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_data_port:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &data_port_)));
+          set_has_data_port();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(42)) goto parse_roles;
         break;
       }
 
       // optional .exec.Roles roles = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_roles:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_roles()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_version;
         break;
       }
 
       // optional string version = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_version:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_version()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->version().data(), static_cast<int>(this->version().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.DrillbitEndpoint.version");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->version().data(), this->version().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_state;
         break;
       }
 
       // optional .exec.DrillbitEndpoint.State state = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_state:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -453,196 +412,171 @@
           if (::exec::DrillbitEndpoint_State_IsValid(value)) {
             set_state(static_cast< ::exec::DrillbitEndpoint_State >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                7, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(7, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(64)) goto parse_http_port;
         break;
       }
 
       // optional int32 http_port = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(64u /* 64 & 0xFF */)) {
-          set_has_http_port();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_http_port:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &http_port_)));
+          set_has_http_port();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.DrillbitEndpoint)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.DrillbitEndpoint)
-  return false;
 #undef DO_
 }
 
 void DrillbitEndpoint::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.DrillbitEndpoint)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string address = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->address().data(), static_cast<int>(this->address().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.DrillbitEndpoint.address");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_address()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->address().data(), this->address().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->address(), output);
   }
 
   // optional int32 user_port = 2;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_user_port()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->user_port(), output);
   }
 
   // optional int32 control_port = 3;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_control_port()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->control_port(), output);
   }
 
   // optional int32 data_port = 4;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_data_port()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->data_port(), output);
   }
 
   // optional .exec.Roles roles = 5;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_roles()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      5, this->_internal_roles(), output);
+      5, this->roles(), output);
   }
 
   // optional string version = 6;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->version().data(), static_cast<int>(this->version().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.DrillbitEndpoint.version");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_version()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->version().data(), this->version().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       6, this->version(), output);
   }
 
   // optional .exec.DrillbitEndpoint.State state = 7;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_state()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       7, this->state(), output);
   }
 
   // optional int32 http_port = 8;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_http_port()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(8, this->http_port(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.DrillbitEndpoint)
 }
 
-::google::protobuf::uint8* DrillbitEndpoint::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.DrillbitEndpoint)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* DrillbitEndpoint::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string address = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->address().data(), static_cast<int>(this->address().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.DrillbitEndpoint.address");
+  if (has_address()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->address().data(), this->address().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->address(), target);
   }
 
   // optional int32 user_port = 2;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_user_port()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->user_port(), target);
   }
 
   // optional int32 control_port = 3;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_control_port()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->control_port(), target);
   }
 
   // optional int32 data_port = 4;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_data_port()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->data_port(), target);
   }
 
   // optional .exec.Roles roles = 5;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_roles()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        5, this->_internal_roles(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        5, this->roles(), target);
   }
 
   // optional string version = 6;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->version().data(), static_cast<int>(this->version().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.DrillbitEndpoint.version");
+  if (has_version()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->version().data(), this->version().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         6, this->version(), target);
   }
 
   // optional .exec.DrillbitEndpoint.State state = 7;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_state()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       7, this->state(), target);
   }
 
   // optional int32 http_port = 8;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_http_port()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(8, this->http_port(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.DrillbitEndpoint)
   return target;
 }
 
-size_t DrillbitEndpoint::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.DrillbitEndpoint)
-  size_t total_size = 0;
+int DrillbitEndpoint::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 255u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string address = 1;
     if (has_address()) {
       total_size += 1 +
@@ -650,20 +584,6 @@
           this->address());
     }
 
-    // optional string version = 6;
-    if (has_version()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->version());
-    }
-
-    // optional .exec.Roles roles = 5;
-    if (has_roles()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *roles_);
-    }
-
     // optional int32 user_port = 2;
     if (has_user_port()) {
       total_size += 1 +
@@ -685,6 +605,20 @@
           this->data_port());
     }
 
+    // optional .exec.Roles roles = 5;
+    if (has_roles()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->roles());
+    }
+
+    // optional string version = 6;
+    if (has_version()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->version());
+    }
+
     // optional .exec.DrillbitEndpoint.State state = 7;
     if (has_state()) {
       total_size += 1 +
@@ -699,354 +633,314 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void DrillbitEndpoint::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.DrillbitEndpoint)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const DrillbitEndpoint* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const DrillbitEndpoint>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const DrillbitEndpoint*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.DrillbitEndpoint)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.DrillbitEndpoint)
     MergeFrom(*source);
   }
 }
 
 void DrillbitEndpoint::MergeFrom(const DrillbitEndpoint& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.DrillbitEndpoint)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_address();
-      address_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.address_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_address()) {
+      set_address(from.address());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_version();
-      version_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.version_);
+    if (from.has_user_port()) {
+      set_user_port(from.user_port());
     }
-    if (cached_has_bits & 0x00000004u) {
+    if (from.has_control_port()) {
+      set_control_port(from.control_port());
+    }
+    if (from.has_data_port()) {
+      set_data_port(from.data_port());
+    }
+    if (from.has_roles()) {
       mutable_roles()->::exec::Roles::MergeFrom(from.roles());
     }
-    if (cached_has_bits & 0x00000008u) {
-      user_port_ = from.user_port_;
+    if (from.has_version()) {
+      set_version(from.version());
     }
-    if (cached_has_bits & 0x00000010u) {
-      control_port_ = from.control_port_;
+    if (from.has_state()) {
+      set_state(from.state());
     }
-    if (cached_has_bits & 0x00000020u) {
-      data_port_ = from.data_port_;
+    if (from.has_http_port()) {
+      set_http_port(from.http_port());
     }
-    if (cached_has_bits & 0x00000040u) {
-      state_ = from.state_;
-    }
-    if (cached_has_bits & 0x00000080u) {
-      http_port_ = from.http_port_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void DrillbitEndpoint::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.DrillbitEndpoint)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void DrillbitEndpoint::CopyFrom(const DrillbitEndpoint& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.DrillbitEndpoint)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool DrillbitEndpoint::IsInitialized() const {
+
   return true;
 }
 
 void DrillbitEndpoint::Swap(DrillbitEndpoint* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void DrillbitEndpoint::InternalSwap(DrillbitEndpoint* other) {
-  using std::swap;
-  address_.Swap(&other->address_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  version_.Swap(&other->version_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(roles_, other->roles_);
-  swap(user_port_, other->user_port_);
-  swap(control_port_, other->control_port_);
-  swap(data_port_, other->data_port_);
-  swap(state_, other->state_);
-  swap(http_port_, other->http_port_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(address_, other->address_);
+    std::swap(user_port_, other->user_port_);
+    std::swap(control_port_, other->control_port_);
+    std::swap(data_port_, other->data_port_);
+    std::swap(roles_, other->roles_);
+    std::swap(version_, other->version_);
+    std::swap(state_, other->state_);
+    std::swap(http_port_, other->http_port_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata DrillbitEndpoint::GetMetadata() const {
-  protobuf_Coordination_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_Coordination_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = DrillbitEndpoint_descriptor_;
+  metadata.reflection = DrillbitEndpoint_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void DrillServiceInstance::InitAsDefaultInstance() {
-  ::exec::_DrillServiceInstance_default_instance_._instance.get_mutable()->endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(
-      ::exec::DrillbitEndpoint::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int DrillServiceInstance::kIdFieldNumber;
 const int DrillServiceInstance::kRegistrationTimeUTCFieldNumber;
 const int DrillServiceInstance::kEndpointFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 DrillServiceInstance::DrillServiceInstance()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_Coordination_2eproto::scc_info_DrillServiceInstance.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.DrillServiceInstance)
 }
+
+void DrillServiceInstance::InitAsDefaultInstance() {
+  endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(&::exec::DrillbitEndpoint::default_instance());
+}
+
 DrillServiceInstance::DrillServiceInstance(const DrillServiceInstance& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_id()) {
-    id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.id_);
-  }
-  if (from.has_endpoint()) {
-    endpoint_ = new ::exec::DrillbitEndpoint(*from.endpoint_);
-  } else {
-    endpoint_ = NULL;
-  }
-  registrationtimeutc_ = from.registrationtimeutc_;
-  // @@protoc_insertion_point(copy_constructor:exec.DrillServiceInstance)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void DrillServiceInstance::SharedCtor() {
-  id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&endpoint_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&registrationtimeutc_) -
-      reinterpret_cast<char*>(&endpoint_)) + sizeof(registrationtimeutc_));
+  _cached_size_ = 0;
+  id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  registrationtimeutc_ = GOOGLE_LONGLONG(0);
+  endpoint_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 DrillServiceInstance::~DrillServiceInstance() {
-  // @@protoc_insertion_point(destructor:exec.DrillServiceInstance)
   SharedDtor();
 }
 
 void DrillServiceInstance::SharedDtor() {
-  id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete endpoint_;
+  if (id_ != &::google::protobuf::internal::kEmptyString) {
+    delete id_;
+  }
+  if (this != default_instance_) {
+    delete endpoint_;
+  }
 }
 
 void DrillServiceInstance::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* DrillServiceInstance::descriptor() {
-  ::protobuf_Coordination_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_Coordination_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return DrillServiceInstance_descriptor_;
 }
 
 const DrillServiceInstance& DrillServiceInstance::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_Coordination_2eproto::scc_info_DrillServiceInstance.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_Coordination_2eproto();
+  return *default_instance_;
 }
 
+DrillServiceInstance* DrillServiceInstance::default_instance_ = NULL;
+
+DrillServiceInstance* DrillServiceInstance::New() const {
+  return new DrillServiceInstance;
+}
 
 void DrillServiceInstance::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.DrillServiceInstance)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      id_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_id()) {
+      if (id_ != &::google::protobuf::internal::kEmptyString) {
+        id_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(endpoint_ != NULL);
-      endpoint_->Clear();
+    registrationtimeutc_ = GOOGLE_LONGLONG(0);
+    if (has_endpoint()) {
+      if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
     }
   }
-  registrationtimeutc_ = GOOGLE_LONGLONG(0);
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool DrillServiceInstance::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.DrillServiceInstance)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_id()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->id().data(), static_cast<int>(this->id().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.DrillServiceInstance.id");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->id().data(), this->id().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_registrationTimeUTC;
         break;
       }
 
       // optional int64 registrationTimeUTC = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_registrationtimeutc();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_registrationTimeUTC:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &registrationtimeutc_)));
+          set_has_registrationtimeutc();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_endpoint;
         break;
       }
 
       // optional .exec.DrillbitEndpoint endpoint = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_endpoint:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_endpoint()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.DrillServiceInstance)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.DrillServiceInstance)
-  return false;
 #undef DO_
 }
 
 void DrillServiceInstance::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.DrillServiceInstance)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string id = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->id().data(), static_cast<int>(this->id().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.DrillServiceInstance.id");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_id()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->id().data(), this->id().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->id(), output);
   }
 
   // optional int64 registrationTimeUTC = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_registrationtimeutc()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(2, this->registrationtimeutc(), output);
   }
 
   // optional .exec.DrillbitEndpoint endpoint = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_endpoint()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_endpoint(), output);
+      3, this->endpoint(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.DrillServiceInstance)
 }
 
-::google::protobuf::uint8* DrillServiceInstance::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.DrillServiceInstance)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* DrillServiceInstance::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string id = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->id().data(), static_cast<int>(this->id().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.DrillServiceInstance.id");
+  if (has_id()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->id().data(), this->id().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->id(), target);
   }
 
   // optional int64 registrationTimeUTC = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_registrationtimeutc()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(2, this->registrationtimeutc(), target);
   }
 
   // optional .exec.DrillbitEndpoint endpoint = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_endpoint()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_endpoint(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->endpoint(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.DrillServiceInstance)
   return target;
 }
 
-size_t DrillServiceInstance::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.DrillServiceInstance)
-  size_t total_size = 0;
+int DrillServiceInstance::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string id = 1;
     if (has_id()) {
       total_size += 1 +
@@ -1054,13 +948,6 @@
           this->id());
     }
 
-    // optional .exec.DrillbitEndpoint endpoint = 3;
-    if (has_endpoint()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *endpoint_);
-    }
-
     // optional int64 registrationTimeUTC = 2;
     if (has_registrationtimeutc()) {
       total_size += 1 +
@@ -1068,356 +955,338 @@
           this->registrationtimeutc());
     }
 
+    // optional .exec.DrillbitEndpoint endpoint = 3;
+    if (has_endpoint()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->endpoint());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void DrillServiceInstance::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.DrillServiceInstance)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const DrillServiceInstance* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const DrillServiceInstance>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const DrillServiceInstance*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.DrillServiceInstance)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.DrillServiceInstance)
     MergeFrom(*source);
   }
 }
 
 void DrillServiceInstance::MergeFrom(const DrillServiceInstance& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.DrillServiceInstance)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_id();
-      id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.id_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_id()) {
+      set_id(from.id());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_registrationtimeutc()) {
+      set_registrationtimeutc(from.registrationtimeutc());
+    }
+    if (from.has_endpoint()) {
       mutable_endpoint()->::exec::DrillbitEndpoint::MergeFrom(from.endpoint());
     }
-    if (cached_has_bits & 0x00000004u) {
-      registrationtimeutc_ = from.registrationtimeutc_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void DrillServiceInstance::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.DrillServiceInstance)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void DrillServiceInstance::CopyFrom(const DrillServiceInstance& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.DrillServiceInstance)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool DrillServiceInstance::IsInitialized() const {
+
   return true;
 }
 
 void DrillServiceInstance::Swap(DrillServiceInstance* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void DrillServiceInstance::InternalSwap(DrillServiceInstance* other) {
-  using std::swap;
-  id_.Swap(&other->id_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(endpoint_, other->endpoint_);
-  swap(registrationtimeutc_, other->registrationtimeutc_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(id_, other->id_);
+    std::swap(registrationtimeutc_, other->registrationtimeutc_);
+    std::swap(endpoint_, other->endpoint_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata DrillServiceInstance::GetMetadata() const {
-  protobuf_Coordination_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_Coordination_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = DrillServiceInstance_descriptor_;
+  metadata.reflection = DrillServiceInstance_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void Roles::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int Roles::kSqlQueryFieldNumber;
 const int Roles::kLogicalPlanFieldNumber;
 const int Roles::kPhysicalPlanFieldNumber;
 const int Roles::kJavaExecutorFieldNumber;
 const int Roles::kDistributedCacheFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 Roles::Roles()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_Coordination_2eproto::scc_info_Roles.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.Roles)
 }
+
+void Roles::InitAsDefaultInstance() {
+}
+
 Roles::Roles(const Roles& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&sql_query_, &from.sql_query_,
-    static_cast<size_t>(reinterpret_cast<char*>(&distributed_cache_) -
-    reinterpret_cast<char*>(&sql_query_)) + sizeof(distributed_cache_));
-  // @@protoc_insertion_point(copy_constructor:exec.Roles)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void Roles::SharedCtor() {
+  _cached_size_ = 0;
   sql_query_ = true;
   logical_plan_ = true;
   physical_plan_ = true;
   java_executor_ = true;
   distributed_cache_ = true;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 Roles::~Roles() {
-  // @@protoc_insertion_point(destructor:exec.Roles)
   SharedDtor();
 }
 
 void Roles::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void Roles::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* Roles::descriptor() {
-  ::protobuf_Coordination_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_Coordination_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return Roles_descriptor_;
 }
 
 const Roles& Roles::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_Coordination_2eproto::scc_info_Roles.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_Coordination_2eproto();
+  return *default_instance_;
 }
 
+Roles* Roles::default_instance_ = NULL;
+
+Roles* Roles::New() const {
+  return new Roles;
+}
 
 void Roles::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.Roles)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 31u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     sql_query_ = true;
     logical_plan_ = true;
     physical_plan_ = true;
     java_executor_ = true;
     distributed_cache_ = true;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool Roles::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.Roles)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional bool sql_query = 1 [default = true];
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_sql_query();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &sql_query_)));
+          set_has_sql_query();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_logical_plan;
         break;
       }
 
       // optional bool logical_plan = 2 [default = true];
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_logical_plan();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_logical_plan:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &logical_plan_)));
+          set_has_logical_plan();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_physical_plan;
         break;
       }
 
       // optional bool physical_plan = 3 [default = true];
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_physical_plan();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_physical_plan:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &physical_plan_)));
+          set_has_physical_plan();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_java_executor;
         break;
       }
 
       // optional bool java_executor = 4 [default = true];
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_java_executor();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_java_executor:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &java_executor_)));
+          set_has_java_executor();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_distributed_cache;
         break;
       }
 
       // optional bool distributed_cache = 5 [default = true];
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_distributed_cache();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_distributed_cache:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &distributed_cache_)));
+          set_has_distributed_cache();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.Roles)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.Roles)
-  return false;
 #undef DO_
 }
 
 void Roles::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.Roles)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional bool sql_query = 1 [default = true];
-  if (cached_has_bits & 0x00000001u) {
+  if (has_sql_query()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(1, this->sql_query(), output);
   }
 
   // optional bool logical_plan = 2 [default = true];
-  if (cached_has_bits & 0x00000002u) {
+  if (has_logical_plan()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->logical_plan(), output);
   }
 
   // optional bool physical_plan = 3 [default = true];
-  if (cached_has_bits & 0x00000004u) {
+  if (has_physical_plan()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->physical_plan(), output);
   }
 
   // optional bool java_executor = 4 [default = true];
-  if (cached_has_bits & 0x00000008u) {
+  if (has_java_executor()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(4, this->java_executor(), output);
   }
 
   // optional bool distributed_cache = 5 [default = true];
-  if (cached_has_bits & 0x00000010u) {
+  if (has_distributed_cache()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(5, this->distributed_cache(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.Roles)
 }
 
-::google::protobuf::uint8* Roles::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.Roles)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* Roles::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional bool sql_query = 1 [default = true];
-  if (cached_has_bits & 0x00000001u) {
+  if (has_sql_query()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(1, this->sql_query(), target);
   }
 
   // optional bool logical_plan = 2 [default = true];
-  if (cached_has_bits & 0x00000002u) {
+  if (has_logical_plan()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->logical_plan(), target);
   }
 
   // optional bool physical_plan = 3 [default = true];
-  if (cached_has_bits & 0x00000004u) {
+  if (has_physical_plan()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->physical_plan(), target);
   }
 
   // optional bool java_executor = 4 [default = true];
-  if (cached_has_bits & 0x00000008u) {
+  if (has_java_executor()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(4, this->java_executor(), target);
   }
 
   // optional bool distributed_cache = 5 [default = true];
-  if (cached_has_bits & 0x00000010u) {
+  if (has_distributed_cache()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(5, this->distributed_cache(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.Roles)
   return target;
 }
 
-size_t Roles::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.Roles)
-  size_t total_size = 0;
+int Roles::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 31u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional bool sql_query = 1 [default = true];
     if (has_sql_query()) {
       total_size += 1 + 1;
@@ -1444,107 +1313,92 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void Roles::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.Roles)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const Roles* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const Roles>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const Roles*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.Roles)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.Roles)
     MergeFrom(*source);
   }
 }
 
 void Roles::MergeFrom(const Roles& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.Roles)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 31u) {
-    if (cached_has_bits & 0x00000001u) {
-      sql_query_ = from.sql_query_;
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_sql_query()) {
+      set_sql_query(from.sql_query());
     }
-    if (cached_has_bits & 0x00000002u) {
-      logical_plan_ = from.logical_plan_;
+    if (from.has_logical_plan()) {
+      set_logical_plan(from.logical_plan());
     }
-    if (cached_has_bits & 0x00000004u) {
-      physical_plan_ = from.physical_plan_;
+    if (from.has_physical_plan()) {
+      set_physical_plan(from.physical_plan());
     }
-    if (cached_has_bits & 0x00000008u) {
-      java_executor_ = from.java_executor_;
+    if (from.has_java_executor()) {
+      set_java_executor(from.java_executor());
     }
-    if (cached_has_bits & 0x00000010u) {
-      distributed_cache_ = from.distributed_cache_;
+    if (from.has_distributed_cache()) {
+      set_distributed_cache(from.distributed_cache());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void Roles::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.Roles)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void Roles::CopyFrom(const Roles& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.Roles)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool Roles::IsInitialized() const {
+
   return true;
 }
 
 void Roles::Swap(Roles* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void Roles::InternalSwap(Roles* other) {
-  using std::swap;
-  swap(sql_query_, other->sql_query_);
-  swap(logical_plan_, other->logical_plan_);
-  swap(physical_plan_, other->physical_plan_);
-  swap(java_executor_, other->java_executor_);
-  swap(distributed_cache_, other->distributed_cache_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(sql_query_, other->sql_query_);
+    std::swap(logical_plan_, other->logical_plan_);
+    std::swap(physical_plan_, other->physical_plan_);
+    std::swap(java_executor_, other->java_executor_);
+    std::swap(distributed_cache_, other->distributed_cache_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata Roles::GetMetadata() const {
-  protobuf_Coordination_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_Coordination_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = Roles_descriptor_;
+  metadata.reflection = Roles_reflection_;
+  return metadata;
 }
 
 
 // @@protoc_insertion_point(namespace_scope)
+
 }  // namespace exec
-namespace google {
-namespace protobuf {
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::DrillbitEndpoint* Arena::CreateMaybeMessage< ::exec::DrillbitEndpoint >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::DrillbitEndpoint >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::DrillServiceInstance* Arena::CreateMaybeMessage< ::exec::DrillServiceInstance >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::DrillServiceInstance >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::Roles* Arena::CreateMaybeMessage< ::exec::Roles >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::Roles >(arena);
-}
-}  // namespace protobuf
-}  // namespace google
 
 // @@protoc_insertion_point(global_scope)
diff --git a/contrib/native/client/src/protobuf/Coordination.pb.h b/contrib/native/client/src/protobuf/Coordination.pb.h
index 4e63485..07bbc8e 100644
--- a/contrib/native/client/src/protobuf/Coordination.pb.h
+++ b/contrib/native/client/src/protobuf/Coordination.pb.h
@@ -1,70 +1,42 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: Coordination.proto
 
-#ifndef PROTOBUF_INCLUDED_Coordination_2eproto
-#define PROTOBUF_INCLUDED_Coordination_2eproto
+#ifndef PROTOBUF_Coordination_2eproto__INCLUDED
+#define PROTOBUF_Coordination_2eproto__INCLUDED
 
 #include <string>
 
 #include <google/protobuf/stubs/common.h>
 
-#if GOOGLE_PROTOBUF_VERSION < 3006001
+#if GOOGLE_PROTOBUF_VERSION < 2005000
 #error This file was generated by a newer version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please update
 #error your headers.
 #endif
-#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
+#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
 #error This file was generated by an older version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please
 #error regenerate this file with a newer version of protoc.
 #endif
 
-#include <google/protobuf/io/coded_stream.h>
-#include <google/protobuf/arena.h>
-#include <google/protobuf/arenastring.h>
-#include <google/protobuf/generated_message_table_driven.h>
 #include <google/protobuf/generated_message_util.h>
-#include <google/protobuf/inlined_string_field.h>
-#include <google/protobuf/metadata.h>
 #include <google/protobuf/message.h>
-#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
-#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/repeated_field.h>
+#include <google/protobuf/extension_set.h>
 #include <google/protobuf/generated_enum_reflection.h>
 #include <google/protobuf/unknown_field_set.h>
 // @@protoc_insertion_point(includes)
-#define PROTOBUF_INTERNAL_EXPORT_protobuf_Coordination_2eproto 
 
-namespace protobuf_Coordination_2eproto {
-// Internal implementation detail -- do not use these members.
-struct TableStruct {
-  static const ::google::protobuf::internal::ParseTableField entries[];
-  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
-  static const ::google::protobuf::internal::ParseTable schema[3];
-  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
-  static const ::google::protobuf::internal::SerializationTable serialization_table[];
-  static const ::google::protobuf::uint32 offsets[];
-};
-void AddDescriptors();
-}  // namespace protobuf_Coordination_2eproto
 namespace exec {
-class DrillServiceInstance;
-class DrillServiceInstanceDefaultTypeInternal;
-extern DrillServiceInstanceDefaultTypeInternal _DrillServiceInstance_default_instance_;
+
+// Internal implementation detail -- do not call these.
+void  protobuf_AddDesc_Coordination_2eproto();
+void protobuf_AssignDesc_Coordination_2eproto();
+void protobuf_ShutdownFile_Coordination_2eproto();
+
 class DrillbitEndpoint;
-class DrillbitEndpointDefaultTypeInternal;
-extern DrillbitEndpointDefaultTypeInternal _DrillbitEndpoint_default_instance_;
+class DrillServiceInstance;
 class Roles;
-class RolesDefaultTypeInternal;
-extern RolesDefaultTypeInternal _Roles_default_instance_;
-}  // namespace exec
-namespace google {
-namespace protobuf {
-template<> ::exec::DrillServiceInstance* Arena::CreateMaybeMessage<::exec::DrillServiceInstance>(Arena*);
-template<> ::exec::DrillbitEndpoint* Arena::CreateMaybeMessage<::exec::DrillbitEndpoint>(Arena*);
-template<> ::exec::Roles* Arena::CreateMaybeMessage<::exec::Roles>(Arena*);
-}  // namespace protobuf
-}  // namespace google
-namespace exec {
 
 enum DrillbitEndpoint_State {
   DrillbitEndpoint_State_STARTUP = 0,
@@ -89,7 +61,7 @@
 }
 // ===================================================================
 
-class DrillbitEndpoint : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.DrillbitEndpoint) */ {
+class DrillbitEndpoint : public ::google::protobuf::Message {
  public:
   DrillbitEndpoint();
   virtual ~DrillbitEndpoint();
@@ -100,96 +72,52 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  DrillbitEndpoint(DrillbitEndpoint&& from) noexcept
-    : DrillbitEndpoint() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline DrillbitEndpoint& operator=(DrillbitEndpoint&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const DrillbitEndpoint& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const DrillbitEndpoint* internal_default_instance() {
-    return reinterpret_cast<const DrillbitEndpoint*>(
-               &_DrillbitEndpoint_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    0;
-
   void Swap(DrillbitEndpoint* other);
-  friend void swap(DrillbitEndpoint& a, DrillbitEndpoint& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline DrillbitEndpoint* New() const final {
-    return CreateMaybeMessage<DrillbitEndpoint>(NULL);
-  }
-
-  DrillbitEndpoint* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<DrillbitEndpoint>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  DrillbitEndpoint* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const DrillbitEndpoint& from);
   void MergeFrom(const DrillbitEndpoint& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(DrillbitEndpoint* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   typedef DrillbitEndpoint_State State;
-  static const State STARTUP =
-    DrillbitEndpoint_State_STARTUP;
-  static const State ONLINE =
-    DrillbitEndpoint_State_ONLINE;
-  static const State QUIESCENT =
-    DrillbitEndpoint_State_QUIESCENT;
-  static const State OFFLINE =
-    DrillbitEndpoint_State_OFFLINE;
+  static const State STARTUP = DrillbitEndpoint_State_STARTUP;
+  static const State ONLINE = DrillbitEndpoint_State_ONLINE;
+  static const State QUIESCENT = DrillbitEndpoint_State_QUIESCENT;
+  static const State OFFLINE = DrillbitEndpoint_State_OFFLINE;
   static inline bool State_IsValid(int value) {
     return DrillbitEndpoint_State_IsValid(value);
   }
@@ -214,117 +142,116 @@
   // accessors -------------------------------------------------------
 
   // optional string address = 1;
-  bool has_address() const;
-  void clear_address();
+  inline bool has_address() const;
+  inline void clear_address();
   static const int kAddressFieldNumber = 1;
-  const ::std::string& address() const;
-  void set_address(const ::std::string& value);
-  #if LANG_CXX11
-  void set_address(::std::string&& value);
-  #endif
-  void set_address(const char* value);
-  void set_address(const char* value, size_t size);
-  ::std::string* mutable_address();
-  ::std::string* release_address();
-  void set_allocated_address(::std::string* address);
-
-  // optional string version = 6;
-  bool has_version() const;
-  void clear_version();
-  static const int kVersionFieldNumber = 6;
-  const ::std::string& version() const;
-  void set_version(const ::std::string& value);
-  #if LANG_CXX11
-  void set_version(::std::string&& value);
-  #endif
-  void set_version(const char* value);
-  void set_version(const char* value, size_t size);
-  ::std::string* mutable_version();
-  ::std::string* release_version();
-  void set_allocated_version(::std::string* version);
-
-  // optional .exec.Roles roles = 5;
-  bool has_roles() const;
-  void clear_roles();
-  static const int kRolesFieldNumber = 5;
-  private:
-  const ::exec::Roles& _internal_roles() const;
-  public:
-  const ::exec::Roles& roles() const;
-  ::exec::Roles* release_roles();
-  ::exec::Roles* mutable_roles();
-  void set_allocated_roles(::exec::Roles* roles);
+  inline const ::std::string& address() const;
+  inline void set_address(const ::std::string& value);
+  inline void set_address(const char* value);
+  inline void set_address(const char* value, size_t size);
+  inline ::std::string* mutable_address();
+  inline ::std::string* release_address();
+  inline void set_allocated_address(::std::string* address);
 
   // optional int32 user_port = 2;
-  bool has_user_port() const;
-  void clear_user_port();
+  inline bool has_user_port() const;
+  inline void clear_user_port();
   static const int kUserPortFieldNumber = 2;
-  ::google::protobuf::int32 user_port() const;
-  void set_user_port(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 user_port() const;
+  inline void set_user_port(::google::protobuf::int32 value);
 
   // optional int32 control_port = 3;
-  bool has_control_port() const;
-  void clear_control_port();
+  inline bool has_control_port() const;
+  inline void clear_control_port();
   static const int kControlPortFieldNumber = 3;
-  ::google::protobuf::int32 control_port() const;
-  void set_control_port(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 control_port() const;
+  inline void set_control_port(::google::protobuf::int32 value);
 
   // optional int32 data_port = 4;
-  bool has_data_port() const;
-  void clear_data_port();
+  inline bool has_data_port() const;
+  inline void clear_data_port();
   static const int kDataPortFieldNumber = 4;
-  ::google::protobuf::int32 data_port() const;
-  void set_data_port(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 data_port() const;
+  inline void set_data_port(::google::protobuf::int32 value);
+
+  // optional .exec.Roles roles = 5;
+  inline bool has_roles() const;
+  inline void clear_roles();
+  static const int kRolesFieldNumber = 5;
+  inline const ::exec::Roles& roles() const;
+  inline ::exec::Roles* mutable_roles();
+  inline ::exec::Roles* release_roles();
+  inline void set_allocated_roles(::exec::Roles* roles);
+
+  // optional string version = 6;
+  inline bool has_version() const;
+  inline void clear_version();
+  static const int kVersionFieldNumber = 6;
+  inline const ::std::string& version() const;
+  inline void set_version(const ::std::string& value);
+  inline void set_version(const char* value);
+  inline void set_version(const char* value, size_t size);
+  inline ::std::string* mutable_version();
+  inline ::std::string* release_version();
+  inline void set_allocated_version(::std::string* version);
 
   // optional .exec.DrillbitEndpoint.State state = 7;
-  bool has_state() const;
-  void clear_state();
+  inline bool has_state() const;
+  inline void clear_state();
   static const int kStateFieldNumber = 7;
-  ::exec::DrillbitEndpoint_State state() const;
-  void set_state(::exec::DrillbitEndpoint_State value);
+  inline ::exec::DrillbitEndpoint_State state() const;
+  inline void set_state(::exec::DrillbitEndpoint_State value);
 
   // optional int32 http_port = 8;
-  bool has_http_port() const;
-  void clear_http_port();
+  inline bool has_http_port() const;
+  inline void clear_http_port();
   static const int kHttpPortFieldNumber = 8;
-  ::google::protobuf::int32 http_port() const;
-  void set_http_port(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 http_port() const;
+  inline void set_http_port(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.DrillbitEndpoint)
  private:
-  void set_has_address();
-  void clear_has_address();
-  void set_has_user_port();
-  void clear_has_user_port();
-  void set_has_control_port();
-  void clear_has_control_port();
-  void set_has_data_port();
-  void clear_has_data_port();
-  void set_has_roles();
-  void clear_has_roles();
-  void set_has_version();
-  void clear_has_version();
-  void set_has_state();
-  void clear_has_state();
-  void set_has_http_port();
-  void clear_has_http_port();
+  inline void set_has_address();
+  inline void clear_has_address();
+  inline void set_has_user_port();
+  inline void clear_has_user_port();
+  inline void set_has_control_port();
+  inline void clear_has_control_port();
+  inline void set_has_data_port();
+  inline void clear_has_data_port();
+  inline void set_has_roles();
+  inline void clear_has_roles();
+  inline void set_has_version();
+  inline void clear_has_version();
+  inline void set_has_state();
+  inline void clear_has_state();
+  inline void set_has_http_port();
+  inline void clear_has_http_port();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr address_;
-  ::google::protobuf::internal::ArenaStringPtr version_;
-  ::exec::Roles* roles_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* address_;
   ::google::protobuf::int32 user_port_;
   ::google::protobuf::int32 control_port_;
+  ::exec::Roles* roles_;
   ::google::protobuf::int32 data_port_;
   int state_;
+  ::std::string* version_;
   ::google::protobuf::int32 http_port_;
-  friend struct ::protobuf_Coordination_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(8 + 31) / 32];
+
+  friend void  protobuf_AddDesc_Coordination_2eproto();
+  friend void protobuf_AssignDesc_Coordination_2eproto();
+  friend void protobuf_ShutdownFile_Coordination_2eproto();
+
+  void InitAsDefaultInstance();
+  static DrillbitEndpoint* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class DrillServiceInstance : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.DrillServiceInstance) */ {
+class DrillServiceInstance : public ::google::protobuf::Message {
  public:
   DrillServiceInstance();
   virtual ~DrillServiceInstance();
@@ -335,143 +262,105 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  DrillServiceInstance(DrillServiceInstance&& from) noexcept
-    : DrillServiceInstance() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline DrillServiceInstance& operator=(DrillServiceInstance&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const DrillServiceInstance& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const DrillServiceInstance* internal_default_instance() {
-    return reinterpret_cast<const DrillServiceInstance*>(
-               &_DrillServiceInstance_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    1;
-
   void Swap(DrillServiceInstance* other);
-  friend void swap(DrillServiceInstance& a, DrillServiceInstance& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline DrillServiceInstance* New() const final {
-    return CreateMaybeMessage<DrillServiceInstance>(NULL);
-  }
-
-  DrillServiceInstance* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<DrillServiceInstance>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  DrillServiceInstance* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const DrillServiceInstance& from);
   void MergeFrom(const DrillServiceInstance& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(DrillServiceInstance* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string id = 1;
-  bool has_id() const;
-  void clear_id();
+  inline bool has_id() const;
+  inline void clear_id();
   static const int kIdFieldNumber = 1;
-  const ::std::string& id() const;
-  void set_id(const ::std::string& value);
-  #if LANG_CXX11
-  void set_id(::std::string&& value);
-  #endif
-  void set_id(const char* value);
-  void set_id(const char* value, size_t size);
-  ::std::string* mutable_id();
-  ::std::string* release_id();
-  void set_allocated_id(::std::string* id);
-
-  // optional .exec.DrillbitEndpoint endpoint = 3;
-  bool has_endpoint() const;
-  void clear_endpoint();
-  static const int kEndpointFieldNumber = 3;
-  private:
-  const ::exec::DrillbitEndpoint& _internal_endpoint() const;
-  public:
-  const ::exec::DrillbitEndpoint& endpoint() const;
-  ::exec::DrillbitEndpoint* release_endpoint();
-  ::exec::DrillbitEndpoint* mutable_endpoint();
-  void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
+  inline const ::std::string& id() const;
+  inline void set_id(const ::std::string& value);
+  inline void set_id(const char* value);
+  inline void set_id(const char* value, size_t size);
+  inline ::std::string* mutable_id();
+  inline ::std::string* release_id();
+  inline void set_allocated_id(::std::string* id);
 
   // optional int64 registrationTimeUTC = 2;
-  bool has_registrationtimeutc() const;
-  void clear_registrationtimeutc();
+  inline bool has_registrationtimeutc() const;
+  inline void clear_registrationtimeutc();
   static const int kRegistrationTimeUTCFieldNumber = 2;
-  ::google::protobuf::int64 registrationtimeutc() const;
-  void set_registrationtimeutc(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 registrationtimeutc() const;
+  inline void set_registrationtimeutc(::google::protobuf::int64 value);
+
+  // optional .exec.DrillbitEndpoint endpoint = 3;
+  inline bool has_endpoint() const;
+  inline void clear_endpoint();
+  static const int kEndpointFieldNumber = 3;
+  inline const ::exec::DrillbitEndpoint& endpoint() const;
+  inline ::exec::DrillbitEndpoint* mutable_endpoint();
+  inline ::exec::DrillbitEndpoint* release_endpoint();
+  inline void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
 
   // @@protoc_insertion_point(class_scope:exec.DrillServiceInstance)
  private:
-  void set_has_id();
-  void clear_has_id();
-  void set_has_registrationtimeutc();
-  void clear_has_registrationtimeutc();
-  void set_has_endpoint();
-  void clear_has_endpoint();
+  inline void set_has_id();
+  inline void clear_has_id();
+  inline void set_has_registrationtimeutc();
+  inline void clear_has_registrationtimeutc();
+  inline void set_has_endpoint();
+  inline void clear_has_endpoint();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr id_;
-  ::exec::DrillbitEndpoint* endpoint_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* id_;
   ::google::protobuf::int64 registrationtimeutc_;
-  friend struct ::protobuf_Coordination_2eproto::TableStruct;
+  ::exec::DrillbitEndpoint* endpoint_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_Coordination_2eproto();
+  friend void protobuf_AssignDesc_Coordination_2eproto();
+  friend void protobuf_ShutdownFile_Coordination_2eproto();
+
+  void InitAsDefaultInstance();
+  static DrillServiceInstance* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class Roles : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.Roles) */ {
+class Roles : public ::google::protobuf::Message {
  public:
   Roles();
   virtual ~Roles();
@@ -482,156 +371,120 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  Roles(Roles&& from) noexcept
-    : Roles() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline Roles& operator=(Roles&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const Roles& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const Roles* internal_default_instance() {
-    return reinterpret_cast<const Roles*>(
-               &_Roles_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    2;
-
   void Swap(Roles* other);
-  friend void swap(Roles& a, Roles& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline Roles* New() const final {
-    return CreateMaybeMessage<Roles>(NULL);
-  }
-
-  Roles* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<Roles>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  Roles* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const Roles& from);
   void MergeFrom(const Roles& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(Roles* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional bool sql_query = 1 [default = true];
-  bool has_sql_query() const;
-  void clear_sql_query();
+  inline bool has_sql_query() const;
+  inline void clear_sql_query();
   static const int kSqlQueryFieldNumber = 1;
-  bool sql_query() const;
-  void set_sql_query(bool value);
+  inline bool sql_query() const;
+  inline void set_sql_query(bool value);
 
   // optional bool logical_plan = 2 [default = true];
-  bool has_logical_plan() const;
-  void clear_logical_plan();
+  inline bool has_logical_plan() const;
+  inline void clear_logical_plan();
   static const int kLogicalPlanFieldNumber = 2;
-  bool logical_plan() const;
-  void set_logical_plan(bool value);
+  inline bool logical_plan() const;
+  inline void set_logical_plan(bool value);
 
   // optional bool physical_plan = 3 [default = true];
-  bool has_physical_plan() const;
-  void clear_physical_plan();
+  inline bool has_physical_plan() const;
+  inline void clear_physical_plan();
   static const int kPhysicalPlanFieldNumber = 3;
-  bool physical_plan() const;
-  void set_physical_plan(bool value);
+  inline bool physical_plan() const;
+  inline void set_physical_plan(bool value);
 
   // optional bool java_executor = 4 [default = true];
-  bool has_java_executor() const;
-  void clear_java_executor();
+  inline bool has_java_executor() const;
+  inline void clear_java_executor();
   static const int kJavaExecutorFieldNumber = 4;
-  bool java_executor() const;
-  void set_java_executor(bool value);
+  inline bool java_executor() const;
+  inline void set_java_executor(bool value);
 
   // optional bool distributed_cache = 5 [default = true];
-  bool has_distributed_cache() const;
-  void clear_distributed_cache();
+  inline bool has_distributed_cache() const;
+  inline void clear_distributed_cache();
   static const int kDistributedCacheFieldNumber = 5;
-  bool distributed_cache() const;
-  void set_distributed_cache(bool value);
+  inline bool distributed_cache() const;
+  inline void set_distributed_cache(bool value);
 
   // @@protoc_insertion_point(class_scope:exec.Roles)
  private:
-  void set_has_sql_query();
-  void clear_has_sql_query();
-  void set_has_logical_plan();
-  void clear_has_logical_plan();
-  void set_has_physical_plan();
-  void clear_has_physical_plan();
-  void set_has_java_executor();
-  void clear_has_java_executor();
-  void set_has_distributed_cache();
-  void clear_has_distributed_cache();
+  inline void set_has_sql_query();
+  inline void clear_has_sql_query();
+  inline void set_has_logical_plan();
+  inline void clear_has_logical_plan();
+  inline void set_has_physical_plan();
+  inline void clear_has_physical_plan();
+  inline void set_has_java_executor();
+  inline void clear_has_java_executor();
+  inline void set_has_distributed_cache();
+  inline void clear_has_distributed_cache();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   bool sql_query_;
   bool logical_plan_;
   bool physical_plan_;
   bool java_executor_;
   bool distributed_cache_;
-  friend struct ::protobuf_Coordination_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(5 + 31) / 32];
+
+  friend void  protobuf_AddDesc_Coordination_2eproto();
+  friend void protobuf_AssignDesc_Coordination_2eproto();
+  friend void protobuf_ShutdownFile_Coordination_2eproto();
+
+  void InitAsDefaultInstance();
+  static Roles* default_instance_;
 };
 // ===================================================================
 
 
 // ===================================================================
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic push
-  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
-#endif  // __GNUC__
 // DrillbitEndpoint
 
 // optional string address = 1;
@@ -645,255 +498,237 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void DrillbitEndpoint::clear_address() {
-  address_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (address_ != &::google::protobuf::internal::kEmptyString) {
+    address_->clear();
+  }
   clear_has_address();
 }
 inline const ::std::string& DrillbitEndpoint::address() const {
-  // @@protoc_insertion_point(field_get:exec.DrillbitEndpoint.address)
-  return address_.GetNoArena();
+  return *address_;
 }
 inline void DrillbitEndpoint::set_address(const ::std::string& value) {
   set_has_address();
-  address_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.DrillbitEndpoint.address)
+  if (address_ == &::google::protobuf::internal::kEmptyString) {
+    address_ = new ::std::string;
+  }
+  address_->assign(value);
 }
-#if LANG_CXX11
-inline void DrillbitEndpoint::set_address(::std::string&& value) {
-  set_has_address();
-  address_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.DrillbitEndpoint.address)
-}
-#endif
 inline void DrillbitEndpoint::set_address(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_address();
-  address_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.DrillbitEndpoint.address)
+  if (address_ == &::google::protobuf::internal::kEmptyString) {
+    address_ = new ::std::string;
+  }
+  address_->assign(value);
 }
 inline void DrillbitEndpoint::set_address(const char* value, size_t size) {
   set_has_address();
-  address_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.DrillbitEndpoint.address)
+  if (address_ == &::google::protobuf::internal::kEmptyString) {
+    address_ = new ::std::string;
+  }
+  address_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* DrillbitEndpoint::mutable_address() {
   set_has_address();
-  // @@protoc_insertion_point(field_mutable:exec.DrillbitEndpoint.address)
-  return address_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (address_ == &::google::protobuf::internal::kEmptyString) {
+    address_ = new ::std::string;
+  }
+  return address_;
 }
 inline ::std::string* DrillbitEndpoint::release_address() {
-  // @@protoc_insertion_point(field_release:exec.DrillbitEndpoint.address)
-  if (!has_address()) {
-    return NULL;
-  }
   clear_has_address();
-  return address_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (address_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = address_;
+    address_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void DrillbitEndpoint::set_allocated_address(::std::string* address) {
-  if (address != NULL) {
+  if (address_ != &::google::protobuf::internal::kEmptyString) {
+    delete address_;
+  }
+  if (address) {
     set_has_address();
+    address_ = address;
   } else {
     clear_has_address();
+    address_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  address_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), address);
-  // @@protoc_insertion_point(field_set_allocated:exec.DrillbitEndpoint.address)
 }
 
 // optional int32 user_port = 2;
 inline bool DrillbitEndpoint::has_user_port() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void DrillbitEndpoint::set_has_user_port() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void DrillbitEndpoint::clear_has_user_port() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void DrillbitEndpoint::clear_user_port() {
   user_port_ = 0;
   clear_has_user_port();
 }
 inline ::google::protobuf::int32 DrillbitEndpoint::user_port() const {
-  // @@protoc_insertion_point(field_get:exec.DrillbitEndpoint.user_port)
   return user_port_;
 }
 inline void DrillbitEndpoint::set_user_port(::google::protobuf::int32 value) {
   set_has_user_port();
   user_port_ = value;
-  // @@protoc_insertion_point(field_set:exec.DrillbitEndpoint.user_port)
 }
 
 // optional int32 control_port = 3;
 inline bool DrillbitEndpoint::has_control_port() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void DrillbitEndpoint::set_has_control_port() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void DrillbitEndpoint::clear_has_control_port() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void DrillbitEndpoint::clear_control_port() {
   control_port_ = 0;
   clear_has_control_port();
 }
 inline ::google::protobuf::int32 DrillbitEndpoint::control_port() const {
-  // @@protoc_insertion_point(field_get:exec.DrillbitEndpoint.control_port)
   return control_port_;
 }
 inline void DrillbitEndpoint::set_control_port(::google::protobuf::int32 value) {
   set_has_control_port();
   control_port_ = value;
-  // @@protoc_insertion_point(field_set:exec.DrillbitEndpoint.control_port)
 }
 
 // optional int32 data_port = 4;
 inline bool DrillbitEndpoint::has_data_port() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void DrillbitEndpoint::set_has_data_port() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void DrillbitEndpoint::clear_has_data_port() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void DrillbitEndpoint::clear_data_port() {
   data_port_ = 0;
   clear_has_data_port();
 }
 inline ::google::protobuf::int32 DrillbitEndpoint::data_port() const {
-  // @@protoc_insertion_point(field_get:exec.DrillbitEndpoint.data_port)
   return data_port_;
 }
 inline void DrillbitEndpoint::set_data_port(::google::protobuf::int32 value) {
   set_has_data_port();
   data_port_ = value;
-  // @@protoc_insertion_point(field_set:exec.DrillbitEndpoint.data_port)
 }
 
 // optional .exec.Roles roles = 5;
 inline bool DrillbitEndpoint::has_roles() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void DrillbitEndpoint::set_has_roles() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void DrillbitEndpoint::clear_has_roles() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void DrillbitEndpoint::clear_roles() {
-  if (roles_ != NULL) roles_->Clear();
+  if (roles_ != NULL) roles_->::exec::Roles::Clear();
   clear_has_roles();
 }
-inline const ::exec::Roles& DrillbitEndpoint::_internal_roles() const {
-  return *roles_;
-}
 inline const ::exec::Roles& DrillbitEndpoint::roles() const {
-  const ::exec::Roles* p = roles_;
-  // @@protoc_insertion_point(field_get:exec.DrillbitEndpoint.roles)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::Roles*>(
-      &::exec::_Roles_default_instance_);
+  return roles_ != NULL ? *roles_ : *default_instance_->roles_;
+}
+inline ::exec::Roles* DrillbitEndpoint::mutable_roles() {
+  set_has_roles();
+  if (roles_ == NULL) roles_ = new ::exec::Roles;
+  return roles_;
 }
 inline ::exec::Roles* DrillbitEndpoint::release_roles() {
-  // @@protoc_insertion_point(field_release:exec.DrillbitEndpoint.roles)
   clear_has_roles();
   ::exec::Roles* temp = roles_;
   roles_ = NULL;
   return temp;
 }
-inline ::exec::Roles* DrillbitEndpoint::mutable_roles() {
-  set_has_roles();
-  if (roles_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::Roles>(GetArenaNoVirtual());
-    roles_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.DrillbitEndpoint.roles)
-  return roles_;
-}
 inline void DrillbitEndpoint::set_allocated_roles(::exec::Roles* roles) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete roles_;
-  }
+  delete roles_;
+  roles_ = roles;
   if (roles) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      roles = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, roles, submessage_arena);
-    }
     set_has_roles();
   } else {
     clear_has_roles();
   }
-  roles_ = roles;
-  // @@protoc_insertion_point(field_set_allocated:exec.DrillbitEndpoint.roles)
 }
 
 // optional string version = 6;
 inline bool DrillbitEndpoint::has_version() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void DrillbitEndpoint::set_has_version() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void DrillbitEndpoint::clear_has_version() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000020u;
 }
 inline void DrillbitEndpoint::clear_version() {
-  version_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (version_ != &::google::protobuf::internal::kEmptyString) {
+    version_->clear();
+  }
   clear_has_version();
 }
 inline const ::std::string& DrillbitEndpoint::version() const {
-  // @@protoc_insertion_point(field_get:exec.DrillbitEndpoint.version)
-  return version_.GetNoArena();
+  return *version_;
 }
 inline void DrillbitEndpoint::set_version(const ::std::string& value) {
   set_has_version();
-  version_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.DrillbitEndpoint.version)
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    version_ = new ::std::string;
+  }
+  version_->assign(value);
 }
-#if LANG_CXX11
-inline void DrillbitEndpoint::set_version(::std::string&& value) {
-  set_has_version();
-  version_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.DrillbitEndpoint.version)
-}
-#endif
 inline void DrillbitEndpoint::set_version(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_version();
-  version_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.DrillbitEndpoint.version)
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    version_ = new ::std::string;
+  }
+  version_->assign(value);
 }
 inline void DrillbitEndpoint::set_version(const char* value, size_t size) {
   set_has_version();
-  version_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.DrillbitEndpoint.version)
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    version_ = new ::std::string;
+  }
+  version_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* DrillbitEndpoint::mutable_version() {
   set_has_version();
-  // @@protoc_insertion_point(field_mutable:exec.DrillbitEndpoint.version)
-  return version_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    version_ = new ::std::string;
+  }
+  return version_;
 }
 inline ::std::string* DrillbitEndpoint::release_version() {
-  // @@protoc_insertion_point(field_release:exec.DrillbitEndpoint.version)
-  if (!has_version()) {
-    return NULL;
-  }
   clear_has_version();
-  return version_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = version_;
+    version_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void DrillbitEndpoint::set_allocated_version(::std::string* version) {
-  if (version != NULL) {
+  if (version_ != &::google::protobuf::internal::kEmptyString) {
+    delete version_;
+  }
+  if (version) {
     set_has_version();
+    version_ = version;
   } else {
     clear_has_version();
+    version_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  version_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), version);
-  // @@protoc_insertion_point(field_set_allocated:exec.DrillbitEndpoint.version)
 }
 
 // optional .exec.DrillbitEndpoint.State state = 7;
@@ -911,14 +746,12 @@
   clear_has_state();
 }
 inline ::exec::DrillbitEndpoint_State DrillbitEndpoint::state() const {
-  // @@protoc_insertion_point(field_get:exec.DrillbitEndpoint.state)
   return static_cast< ::exec::DrillbitEndpoint_State >(state_);
 }
 inline void DrillbitEndpoint::set_state(::exec::DrillbitEndpoint_State value) {
   assert(::exec::DrillbitEndpoint_State_IsValid(value));
   set_has_state();
   state_ = value;
-  // @@protoc_insertion_point(field_set:exec.DrillbitEndpoint.state)
 }
 
 // optional int32 http_port = 8;
@@ -936,13 +769,11 @@
   clear_has_http_port();
 }
 inline ::google::protobuf::int32 DrillbitEndpoint::http_port() const {
-  // @@protoc_insertion_point(field_get:exec.DrillbitEndpoint.http_port)
   return http_port_;
 }
 inline void DrillbitEndpoint::set_http_port(::google::protobuf::int32 value) {
   set_has_http_port();
   http_port_ = value;
-  // @@protoc_insertion_point(field_set:exec.DrillbitEndpoint.http_port)
 }
 
 // -------------------------------------------------------------------
@@ -960,141 +791,123 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void DrillServiceInstance::clear_id() {
-  id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (id_ != &::google::protobuf::internal::kEmptyString) {
+    id_->clear();
+  }
   clear_has_id();
 }
 inline const ::std::string& DrillServiceInstance::id() const {
-  // @@protoc_insertion_point(field_get:exec.DrillServiceInstance.id)
-  return id_.GetNoArena();
+  return *id_;
 }
 inline void DrillServiceInstance::set_id(const ::std::string& value) {
   set_has_id();
-  id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.DrillServiceInstance.id)
+  if (id_ == &::google::protobuf::internal::kEmptyString) {
+    id_ = new ::std::string;
+  }
+  id_->assign(value);
 }
-#if LANG_CXX11
-inline void DrillServiceInstance::set_id(::std::string&& value) {
-  set_has_id();
-  id_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.DrillServiceInstance.id)
-}
-#endif
 inline void DrillServiceInstance::set_id(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_id();
-  id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.DrillServiceInstance.id)
+  if (id_ == &::google::protobuf::internal::kEmptyString) {
+    id_ = new ::std::string;
+  }
+  id_->assign(value);
 }
 inline void DrillServiceInstance::set_id(const char* value, size_t size) {
   set_has_id();
-  id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.DrillServiceInstance.id)
+  if (id_ == &::google::protobuf::internal::kEmptyString) {
+    id_ = new ::std::string;
+  }
+  id_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* DrillServiceInstance::mutable_id() {
   set_has_id();
-  // @@protoc_insertion_point(field_mutable:exec.DrillServiceInstance.id)
-  return id_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (id_ == &::google::protobuf::internal::kEmptyString) {
+    id_ = new ::std::string;
+  }
+  return id_;
 }
 inline ::std::string* DrillServiceInstance::release_id() {
-  // @@protoc_insertion_point(field_release:exec.DrillServiceInstance.id)
-  if (!has_id()) {
-    return NULL;
-  }
   clear_has_id();
-  return id_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (id_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = id_;
+    id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void DrillServiceInstance::set_allocated_id(::std::string* id) {
-  if (id != NULL) {
+  if (id_ != &::google::protobuf::internal::kEmptyString) {
+    delete id_;
+  }
+  if (id) {
     set_has_id();
+    id_ = id;
   } else {
     clear_has_id();
+    id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  id_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), id);
-  // @@protoc_insertion_point(field_set_allocated:exec.DrillServiceInstance.id)
 }
 
 // optional int64 registrationTimeUTC = 2;
 inline bool DrillServiceInstance::has_registrationtimeutc() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void DrillServiceInstance::set_has_registrationtimeutc() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void DrillServiceInstance::clear_has_registrationtimeutc() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void DrillServiceInstance::clear_registrationtimeutc() {
   registrationtimeutc_ = GOOGLE_LONGLONG(0);
   clear_has_registrationtimeutc();
 }
 inline ::google::protobuf::int64 DrillServiceInstance::registrationtimeutc() const {
-  // @@protoc_insertion_point(field_get:exec.DrillServiceInstance.registrationTimeUTC)
   return registrationtimeutc_;
 }
 inline void DrillServiceInstance::set_registrationtimeutc(::google::protobuf::int64 value) {
   set_has_registrationtimeutc();
   registrationtimeutc_ = value;
-  // @@protoc_insertion_point(field_set:exec.DrillServiceInstance.registrationTimeUTC)
 }
 
 // optional .exec.DrillbitEndpoint endpoint = 3;
 inline bool DrillServiceInstance::has_endpoint() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void DrillServiceInstance::set_has_endpoint() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void DrillServiceInstance::clear_has_endpoint() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void DrillServiceInstance::clear_endpoint() {
-  if (endpoint_ != NULL) endpoint_->Clear();
+  if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
   clear_has_endpoint();
 }
-inline const ::exec::DrillbitEndpoint& DrillServiceInstance::_internal_endpoint() const {
-  return *endpoint_;
-}
 inline const ::exec::DrillbitEndpoint& DrillServiceInstance::endpoint() const {
-  const ::exec::DrillbitEndpoint* p = endpoint_;
-  // @@protoc_insertion_point(field_get:exec.DrillServiceInstance.endpoint)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::DrillbitEndpoint*>(
-      &::exec::_DrillbitEndpoint_default_instance_);
+  return endpoint_ != NULL ? *endpoint_ : *default_instance_->endpoint_;
+}
+inline ::exec::DrillbitEndpoint* DrillServiceInstance::mutable_endpoint() {
+  set_has_endpoint();
+  if (endpoint_ == NULL) endpoint_ = new ::exec::DrillbitEndpoint;
+  return endpoint_;
 }
 inline ::exec::DrillbitEndpoint* DrillServiceInstance::release_endpoint() {
-  // @@protoc_insertion_point(field_release:exec.DrillServiceInstance.endpoint)
   clear_has_endpoint();
   ::exec::DrillbitEndpoint* temp = endpoint_;
   endpoint_ = NULL;
   return temp;
 }
-inline ::exec::DrillbitEndpoint* DrillServiceInstance::mutable_endpoint() {
-  set_has_endpoint();
-  if (endpoint_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::DrillbitEndpoint>(GetArenaNoVirtual());
-    endpoint_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.DrillServiceInstance.endpoint)
-  return endpoint_;
-}
 inline void DrillServiceInstance::set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete endpoint_;
-  }
+  delete endpoint_;
+  endpoint_ = endpoint;
   if (endpoint) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      endpoint = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, endpoint, submessage_arena);
-    }
     set_has_endpoint();
   } else {
     clear_has_endpoint();
   }
-  endpoint_ = endpoint;
-  // @@protoc_insertion_point(field_set_allocated:exec.DrillServiceInstance.endpoint)
 }
 
 // -------------------------------------------------------------------
@@ -1116,13 +929,11 @@
   clear_has_sql_query();
 }
 inline bool Roles::sql_query() const {
-  // @@protoc_insertion_point(field_get:exec.Roles.sql_query)
   return sql_query_;
 }
 inline void Roles::set_sql_query(bool value) {
   set_has_sql_query();
   sql_query_ = value;
-  // @@protoc_insertion_point(field_set:exec.Roles.sql_query)
 }
 
 // optional bool logical_plan = 2 [default = true];
@@ -1140,13 +951,11 @@
   clear_has_logical_plan();
 }
 inline bool Roles::logical_plan() const {
-  // @@protoc_insertion_point(field_get:exec.Roles.logical_plan)
   return logical_plan_;
 }
 inline void Roles::set_logical_plan(bool value) {
   set_has_logical_plan();
   logical_plan_ = value;
-  // @@protoc_insertion_point(field_set:exec.Roles.logical_plan)
 }
 
 // optional bool physical_plan = 3 [default = true];
@@ -1164,13 +973,11 @@
   clear_has_physical_plan();
 }
 inline bool Roles::physical_plan() const {
-  // @@protoc_insertion_point(field_get:exec.Roles.physical_plan)
   return physical_plan_;
 }
 inline void Roles::set_physical_plan(bool value) {
   set_has_physical_plan();
   physical_plan_ = value;
-  // @@protoc_insertion_point(field_set:exec.Roles.physical_plan)
 }
 
 // optional bool java_executor = 4 [default = true];
@@ -1188,13 +995,11 @@
   clear_has_java_executor();
 }
 inline bool Roles::java_executor() const {
-  // @@protoc_insertion_point(field_get:exec.Roles.java_executor)
   return java_executor_;
 }
 inline void Roles::set_java_executor(bool value) {
   set_has_java_executor();
   java_executor_ = value;
-  // @@protoc_insertion_point(field_set:exec.Roles.java_executor)
 }
 
 // optional bool distributed_cache = 5 [default = true];
@@ -1212,39 +1017,31 @@
   clear_has_distributed_cache();
 }
 inline bool Roles::distributed_cache() const {
-  // @@protoc_insertion_point(field_get:exec.Roles.distributed_cache)
   return distributed_cache_;
 }
 inline void Roles::set_distributed_cache(bool value) {
   set_has_distributed_cache();
   distributed_cache_ = value;
-  // @@protoc_insertion_point(field_set:exec.Roles.distributed_cache)
 }
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic pop
-#endif  // __GNUC__
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
 
 // @@protoc_insertion_point(namespace_scope)
 
 }  // namespace exec
 
+#ifndef SWIG
 namespace google {
 namespace protobuf {
 
-template <> struct is_proto_enum< ::exec::DrillbitEndpoint_State> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::DrillbitEndpoint_State>() {
   return ::exec::DrillbitEndpoint_State_descriptor();
 }
 
-}  // namespace protobuf
 }  // namespace google
+}  // namespace protobuf
+#endif  // SWIG
 
 // @@protoc_insertion_point(global_scope)
 
-#endif  // PROTOBUF_INCLUDED_Coordination_2eproto
+#endif  // PROTOBUF_Coordination_2eproto__INCLUDED
diff --git a/contrib/native/client/src/protobuf/ExecutionProtos.pb.cc b/contrib/native/client/src/protobuf/ExecutionProtos.pb.cc
index e5023d7..26690f3 100644
--- a/contrib/native/client/src/protobuf/ExecutionProtos.pb.cc
+++ b/contrib/native/client/src/protobuf/ExecutionProtos.pb.cc
@@ -1,450 +1,370 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: ExecutionProtos.proto
 
+#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
 #include "ExecutionProtos.pb.h"
 
 #include <algorithm>
 
 #include <google/protobuf/stubs/common.h>
-#include <google/protobuf/stubs/port.h>
+#include <google/protobuf/stubs/once.h>
 #include <google/protobuf/io/coded_stream.h>
 #include <google/protobuf/wire_format_lite_inl.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>
-// This is a temporary google only hack
-#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
-#include "third_party/protobuf/version.h"
-#endif
 // @@protoc_insertion_point(includes)
 
-namespace protobuf_UserBitShared_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_QueryId;
-}  // namespace protobuf_UserBitShared_2eproto
 namespace exec {
 namespace bit {
-class FragmentHandleDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<FragmentHandle>
-      _instance;
-} _FragmentHandle_default_instance_;
-class ServerPreparedStatementStateDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<ServerPreparedStatementState>
-      _instance;
-} _ServerPreparedStatementState_default_instance_;
-}  // namespace bit
-}  // namespace exec
-namespace protobuf_ExecutionProtos_2eproto {
-static void InitDefaultsFragmentHandle() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
 
-  {
-    void* ptr = &::exec::bit::_FragmentHandle_default_instance_;
-    new (ptr) ::exec::bit::FragmentHandle();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::FragmentHandle::InitAsDefaultInstance();
+namespace {
+
+const ::google::protobuf::Descriptor* FragmentHandle_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  FragmentHandle_reflection_ = NULL;
+const ::google::protobuf::Descriptor* ServerPreparedStatementState_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  ServerPreparedStatementState_reflection_ = NULL;
+
+}  // namespace
+
+
+void protobuf_AssignDesc_ExecutionProtos_2eproto() {
+  protobuf_AddDesc_ExecutionProtos_2eproto();
+  const ::google::protobuf::FileDescriptor* file =
+    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
+      "ExecutionProtos.proto");
+  GOOGLE_CHECK(file != NULL);
+  FragmentHandle_descriptor_ = file->message_type(0);
+  static const int FragmentHandle_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentHandle, query_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentHandle, major_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentHandle, minor_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentHandle, parent_query_id_),
+  };
+  FragmentHandle_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      FragmentHandle_descriptor_,
+      FragmentHandle::default_instance_,
+      FragmentHandle_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentHandle, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(FragmentHandle, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(FragmentHandle));
+  ServerPreparedStatementState_descriptor_ = file->message_type(1);
+  static const int ServerPreparedStatementState_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerPreparedStatementState, sql_query_),
+  };
+  ServerPreparedStatementState_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      ServerPreparedStatementState_descriptor_,
+      ServerPreparedStatementState::default_instance_,
+      ServerPreparedStatementState_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerPreparedStatementState, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerPreparedStatementState, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(ServerPreparedStatementState));
 }
 
-::google::protobuf::internal::SCCInfo<1> scc_info_FragmentHandle =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsFragmentHandle}, {
-      &protobuf_UserBitShared_2eproto::scc_info_QueryId.base,}};
+namespace {
 
-static void InitDefaultsServerPreparedStatementState() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::bit::_ServerPreparedStatementState_default_instance_;
-    new (ptr) ::exec::bit::ServerPreparedStatementState();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::bit::ServerPreparedStatementState::InitAsDefaultInstance();
+GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
+inline void protobuf_AssignDescriptorsOnce() {
+  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
+                 &protobuf_AssignDesc_ExecutionProtos_2eproto);
 }
 
-::google::protobuf::internal::SCCInfo<0> scc_info_ServerPreparedStatementState =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsServerPreparedStatementState}, {}};
-
-void InitDefaults() {
-  ::google::protobuf::internal::InitSCC(&scc_info_FragmentHandle.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_ServerPreparedStatementState.base);
-}
-
-::google::protobuf::Metadata file_level_metadata[2];
-
-const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::FragmentHandle, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::FragmentHandle, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::FragmentHandle, query_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::FragmentHandle, major_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::FragmentHandle, minor_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::FragmentHandle, parent_query_id_),
-  0,
-  2,
-  3,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::ServerPreparedStatementState, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::ServerPreparedStatementState, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::bit::ServerPreparedStatementState, sql_query_),
-  0,
-};
-static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  { 0, 9, sizeof(::exec::bit::FragmentHandle)},
-  { 13, 19, sizeof(::exec::bit::ServerPreparedStatementState)},
-};
-
-static ::google::protobuf::Message const * const file_default_instances[] = {
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::_FragmentHandle_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::bit::_ServerPreparedStatementState_default_instance_),
-};
-
-void protobuf_AssignDescriptors() {
-  AddDescriptors();
-  AssignDescriptors(
-      "ExecutionProtos.proto", schemas, file_default_instances, TableStruct::offsets,
-      file_level_metadata, NULL, NULL);
-}
-
-void protobuf_AssignDescriptorsOnce() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, protobuf_AssignDescriptors);
-}
-
-void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
 void protobuf_RegisterTypes(const ::std::string&) {
   protobuf_AssignDescriptorsOnce();
-  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 2);
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    FragmentHandle_descriptor_, &FragmentHandle::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    ServerPreparedStatementState_descriptor_, &ServerPreparedStatementState::default_instance());
 }
 
-void AddDescriptorsImpl() {
-  InitDefaults();
-  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-      "\n\025ExecutionProtos.proto\022\010exec.bit\032\022Coord"
-      "ination.proto\032\023UserBitShared.proto\"\235\001\n\016F"
-      "ragmentHandle\022&\n\010query_id\030\001 \001(\0132\024.exec.s"
-      "hared.QueryId\022\031\n\021major_fragment_id\030\002 \001(\005"
-      "\022\031\n\021minor_fragment_id\030\003 \001(\005\022-\n\017parent_qu"
-      "ery_id\030\004 \001(\0132\024.exec.shared.QueryId\"1\n\034Se"
-      "rverPreparedStatementState\022\021\n\tsql_query\030"
-      "\001 \001(\tB+\n\033org.apache.drill.exec.protoB\nEx"
-      "ecProtosH\001"
-  };
+}  // namespace
+
+void protobuf_ShutdownFile_ExecutionProtos_2eproto() {
+  delete FragmentHandle::default_instance_;
+  delete FragmentHandle_reflection_;
+  delete ServerPreparedStatementState::default_instance_;
+  delete ServerPreparedStatementState_reflection_;
+}
+
+void protobuf_AddDesc_ExecutionProtos_2eproto() {
+  static bool already_here = false;
+  if (already_here) return;
+  already_here = true;
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  ::exec::protobuf_AddDesc_Coordination_2eproto();
+  ::exec::shared::protobuf_AddDesc_UserBitShared_2eproto();
   ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
-      descriptor, 330);
+    "\n\025ExecutionProtos.proto\022\010exec.bit\032\022Coord"
+    "ination.proto\032\023UserBitShared.proto\"\235\001\n\016F"
+    "ragmentHandle\022&\n\010query_id\030\001 \001(\0132\024.exec.s"
+    "hared.QueryId\022\031\n\021major_fragment_id\030\002 \001(\005"
+    "\022\031\n\021minor_fragment_id\030\003 \001(\005\022-\n\017parent_qu"
+    "ery_id\030\004 \001(\0132\024.exec.shared.QueryId\"1\n\034Se"
+    "rverPreparedStatementState\022\021\n\tsql_query\030"
+    "\001 \001(\tB+\n\033org.apache.drill.exec.protoB\nEx"
+    "ecProtosH\001", 330);
   ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
     "ExecutionProtos.proto", &protobuf_RegisterTypes);
-  ::protobuf_Coordination_2eproto::AddDescriptors();
-  ::protobuf_UserBitShared_2eproto::AddDescriptors();
+  FragmentHandle::default_instance_ = new FragmentHandle();
+  ServerPreparedStatementState::default_instance_ = new ServerPreparedStatementState();
+  FragmentHandle::default_instance_->InitAsDefaultInstance();
+  ServerPreparedStatementState::default_instance_->InitAsDefaultInstance();
+  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_ExecutionProtos_2eproto);
 }
 
-void AddDescriptors() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, AddDescriptorsImpl);
-}
-// Force AddDescriptors() to be called at dynamic initialization time.
-struct StaticDescriptorInitializer {
-  StaticDescriptorInitializer() {
-    AddDescriptors();
+// Force AddDescriptors() to be called at static initialization time.
+struct StaticDescriptorInitializer_ExecutionProtos_2eproto {
+  StaticDescriptorInitializer_ExecutionProtos_2eproto() {
+    protobuf_AddDesc_ExecutionProtos_2eproto();
   }
-} static_descriptor_initializer;
-}  // namespace protobuf_ExecutionProtos_2eproto
-namespace exec {
-namespace bit {
+} static_descriptor_initializer_ExecutionProtos_2eproto_;
 
 // ===================================================================
 
-void FragmentHandle::InitAsDefaultInstance() {
-  ::exec::bit::_FragmentHandle_default_instance_._instance.get_mutable()->query_id_ = const_cast< ::exec::shared::QueryId*>(
-      ::exec::shared::QueryId::internal_default_instance());
-  ::exec::bit::_FragmentHandle_default_instance_._instance.get_mutable()->parent_query_id_ = const_cast< ::exec::shared::QueryId*>(
-      ::exec::shared::QueryId::internal_default_instance());
-}
-void FragmentHandle::clear_query_id() {
-  if (query_id_ != NULL) query_id_->Clear();
-  clear_has_query_id();
-}
-void FragmentHandle::clear_parent_query_id() {
-  if (parent_query_id_ != NULL) parent_query_id_->Clear();
-  clear_has_parent_query_id();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int FragmentHandle::kQueryIdFieldNumber;
 const int FragmentHandle::kMajorFragmentIdFieldNumber;
 const int FragmentHandle::kMinorFragmentIdFieldNumber;
 const int FragmentHandle::kParentQueryIdFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 FragmentHandle::FragmentHandle()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_ExecutionProtos_2eproto::scc_info_FragmentHandle.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.FragmentHandle)
 }
+
+void FragmentHandle::InitAsDefaultInstance() {
+  query_id_ = const_cast< ::exec::shared::QueryId*>(&::exec::shared::QueryId::default_instance());
+  parent_query_id_ = const_cast< ::exec::shared::QueryId*>(&::exec::shared::QueryId::default_instance());
+}
+
 FragmentHandle::FragmentHandle(const FragmentHandle& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_query_id()) {
-    query_id_ = new ::exec::shared::QueryId(*from.query_id_);
-  } else {
-    query_id_ = NULL;
-  }
-  if (from.has_parent_query_id()) {
-    parent_query_id_ = new ::exec::shared::QueryId(*from.parent_query_id_);
-  } else {
-    parent_query_id_ = NULL;
-  }
-  ::memcpy(&major_fragment_id_, &from.major_fragment_id_,
-    static_cast<size_t>(reinterpret_cast<char*>(&minor_fragment_id_) -
-    reinterpret_cast<char*>(&major_fragment_id_)) + sizeof(minor_fragment_id_));
-  // @@protoc_insertion_point(copy_constructor:exec.bit.FragmentHandle)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void FragmentHandle::SharedCtor() {
-  ::memset(&query_id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&minor_fragment_id_) -
-      reinterpret_cast<char*>(&query_id_)) + sizeof(minor_fragment_id_));
+  _cached_size_ = 0;
+  query_id_ = NULL;
+  major_fragment_id_ = 0;
+  minor_fragment_id_ = 0;
+  parent_query_id_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 FragmentHandle::~FragmentHandle() {
-  // @@protoc_insertion_point(destructor:exec.bit.FragmentHandle)
   SharedDtor();
 }
 
 void FragmentHandle::SharedDtor() {
-  if (this != internal_default_instance()) delete query_id_;
-  if (this != internal_default_instance()) delete parent_query_id_;
+  if (this != default_instance_) {
+    delete query_id_;
+    delete parent_query_id_;
+  }
 }
 
 void FragmentHandle::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* FragmentHandle::descriptor() {
-  ::protobuf_ExecutionProtos_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_ExecutionProtos_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return FragmentHandle_descriptor_;
 }
 
 const FragmentHandle& FragmentHandle::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_ExecutionProtos_2eproto::scc_info_FragmentHandle.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_ExecutionProtos_2eproto();
+  return *default_instance_;
 }
 
+FragmentHandle* FragmentHandle::default_instance_ = NULL;
+
+FragmentHandle* FragmentHandle::New() const {
+  return new FragmentHandle;
+}
 
 void FragmentHandle::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.FragmentHandle)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(query_id_ != NULL);
-      query_id_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_query_id()) {
+      if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(parent_query_id_ != NULL);
-      parent_query_id_->Clear();
+    major_fragment_id_ = 0;
+    minor_fragment_id_ = 0;
+    if (has_parent_query_id()) {
+      if (parent_query_id_ != NULL) parent_query_id_->::exec::shared::QueryId::Clear();
     }
   }
-  if (cached_has_bits & 12u) {
-    ::memset(&major_fragment_id_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&minor_fragment_id_) -
-        reinterpret_cast<char*>(&major_fragment_id_)) + sizeof(minor_fragment_id_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool FragmentHandle::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.FragmentHandle)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.QueryId query_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_query_id()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_major_fragment_id;
         break;
       }
 
       // optional int32 major_fragment_id = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_major_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_major_fragment_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &major_fragment_id_)));
+          set_has_major_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_minor_fragment_id;
         break;
       }
 
       // optional int32 minor_fragment_id = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_minor_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_minor_fragment_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &minor_fragment_id_)));
+          set_has_minor_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_parent_query_id;
         break;
       }
 
       // optional .exec.shared.QueryId parent_query_id = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_parent_query_id:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_parent_query_id()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.FragmentHandle)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.FragmentHandle)
-  return false;
 #undef DO_
 }
 
 void FragmentHandle::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.FragmentHandle)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_query_id(), output);
+      1, this->query_id(), output);
   }
 
   // optional int32 major_fragment_id = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_major_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->major_fragment_id(), output);
   }
 
   // optional int32 minor_fragment_id = 3;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_minor_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->minor_fragment_id(), output);
   }
 
   // optional .exec.shared.QueryId parent_query_id = 4;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_parent_query_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      4, this->_internal_parent_query_id(), output);
+      4, this->parent_query_id(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.FragmentHandle)
 }
 
-::google::protobuf::uint8* FragmentHandle::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.FragmentHandle)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* FragmentHandle::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_query_id(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->query_id(), target);
   }
 
   // optional int32 major_fragment_id = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_major_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->major_fragment_id(), target);
   }
 
   // optional int32 minor_fragment_id = 3;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_minor_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->minor_fragment_id(), target);
   }
 
   // optional .exec.shared.QueryId parent_query_id = 4;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_parent_query_id()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        4, this->_internal_parent_query_id(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        4, this->parent_query_id(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.FragmentHandle)
   return target;
 }
 
-size_t FragmentHandle::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.FragmentHandle)
-  size_t total_size = 0;
+int FragmentHandle::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 15u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.shared.QueryId query_id = 1;
     if (has_query_id()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *query_id_);
-    }
-
-    // optional .exec.shared.QueryId parent_query_id = 4;
-    if (has_parent_query_id()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *parent_query_id_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->query_id());
     }
 
     // optional int32 major_fragment_id = 2;
@@ -461,352 +381,322 @@
           this->minor_fragment_id());
     }
 
+    // optional .exec.shared.QueryId parent_query_id = 4;
+    if (has_parent_query_id()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->parent_query_id());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void FragmentHandle::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.FragmentHandle)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const FragmentHandle* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const FragmentHandle>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const FragmentHandle*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.FragmentHandle)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.FragmentHandle)
     MergeFrom(*source);
   }
 }
 
 void FragmentHandle::MergeFrom(const FragmentHandle& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.FragmentHandle)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_query_id()) {
       mutable_query_id()->::exec::shared::QueryId::MergeFrom(from.query_id());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_major_fragment_id()) {
+      set_major_fragment_id(from.major_fragment_id());
+    }
+    if (from.has_minor_fragment_id()) {
+      set_minor_fragment_id(from.minor_fragment_id());
+    }
+    if (from.has_parent_query_id()) {
       mutable_parent_query_id()->::exec::shared::QueryId::MergeFrom(from.parent_query_id());
     }
-    if (cached_has_bits & 0x00000004u) {
-      major_fragment_id_ = from.major_fragment_id_;
-    }
-    if (cached_has_bits & 0x00000008u) {
-      minor_fragment_id_ = from.minor_fragment_id_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void FragmentHandle::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.FragmentHandle)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void FragmentHandle::CopyFrom(const FragmentHandle& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.FragmentHandle)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool FragmentHandle::IsInitialized() const {
+
   return true;
 }
 
 void FragmentHandle::Swap(FragmentHandle* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void FragmentHandle::InternalSwap(FragmentHandle* other) {
-  using std::swap;
-  swap(query_id_, other->query_id_);
-  swap(parent_query_id_, other->parent_query_id_);
-  swap(major_fragment_id_, other->major_fragment_id_);
-  swap(minor_fragment_id_, other->minor_fragment_id_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(query_id_, other->query_id_);
+    std::swap(major_fragment_id_, other->major_fragment_id_);
+    std::swap(minor_fragment_id_, other->minor_fragment_id_);
+    std::swap(parent_query_id_, other->parent_query_id_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata FragmentHandle::GetMetadata() const {
-  protobuf_ExecutionProtos_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_ExecutionProtos_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = FragmentHandle_descriptor_;
+  metadata.reflection = FragmentHandle_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void ServerPreparedStatementState::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int ServerPreparedStatementState::kSqlQueryFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 ServerPreparedStatementState::ServerPreparedStatementState()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_ExecutionProtos_2eproto::scc_info_ServerPreparedStatementState.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.bit.ServerPreparedStatementState)
 }
+
+void ServerPreparedStatementState::InitAsDefaultInstance() {
+}
+
 ServerPreparedStatementState::ServerPreparedStatementState(const ServerPreparedStatementState& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  sql_query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_sql_query()) {
-    sql_query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.sql_query_);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.bit.ServerPreparedStatementState)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void ServerPreparedStatementState::SharedCtor() {
-  sql_query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  sql_query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 ServerPreparedStatementState::~ServerPreparedStatementState() {
-  // @@protoc_insertion_point(destructor:exec.bit.ServerPreparedStatementState)
   SharedDtor();
 }
 
 void ServerPreparedStatementState::SharedDtor() {
-  sql_query_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (sql_query_ != &::google::protobuf::internal::kEmptyString) {
+    delete sql_query_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void ServerPreparedStatementState::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* ServerPreparedStatementState::descriptor() {
-  ::protobuf_ExecutionProtos_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_ExecutionProtos_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return ServerPreparedStatementState_descriptor_;
 }
 
 const ServerPreparedStatementState& ServerPreparedStatementState::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_ExecutionProtos_2eproto::scc_info_ServerPreparedStatementState.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_ExecutionProtos_2eproto();
+  return *default_instance_;
 }
 
+ServerPreparedStatementState* ServerPreparedStatementState::default_instance_ = NULL;
+
+ServerPreparedStatementState* ServerPreparedStatementState::New() const {
+  return new ServerPreparedStatementState;
+}
 
 void ServerPreparedStatementState::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.bit.ServerPreparedStatementState)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    sql_query_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_sql_query()) {
+      if (sql_query_ != &::google::protobuf::internal::kEmptyString) {
+        sql_query_->clear();
+      }
+    }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool ServerPreparedStatementState::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.bit.ServerPreparedStatementState)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string sql_query = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_sql_query()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->sql_query().data(), static_cast<int>(this->sql_query().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.bit.ServerPreparedStatementState.sql_query");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->sql_query().data(), this->sql_query().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.bit.ServerPreparedStatementState)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.bit.ServerPreparedStatementState)
-  return false;
 #undef DO_
 }
 
 void ServerPreparedStatementState::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.bit.ServerPreparedStatementState)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string sql_query = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->sql_query().data(), static_cast<int>(this->sql_query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.ServerPreparedStatementState.sql_query");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_sql_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->sql_query().data(), this->sql_query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->sql_query(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.bit.ServerPreparedStatementState)
 }
 
-::google::protobuf::uint8* ServerPreparedStatementState::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.bit.ServerPreparedStatementState)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* ServerPreparedStatementState::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string sql_query = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->sql_query().data(), static_cast<int>(this->sql_query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.bit.ServerPreparedStatementState.sql_query");
+  if (has_sql_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->sql_query().data(), this->sql_query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->sql_query(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.bit.ServerPreparedStatementState)
   return target;
 }
 
-size_t ServerPreparedStatementState::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.bit.ServerPreparedStatementState)
-  size_t total_size = 0;
+int ServerPreparedStatementState::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional string sql_query = 1;
+    if (has_sql_query()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->sql_query());
+    }
+
+  }
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // optional string sql_query = 1;
-  if (has_sql_query()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::StringSize(
-        this->sql_query());
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void ServerPreparedStatementState::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.bit.ServerPreparedStatementState)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const ServerPreparedStatementState* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const ServerPreparedStatementState>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const ServerPreparedStatementState*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.bit.ServerPreparedStatementState)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.bit.ServerPreparedStatementState)
     MergeFrom(*source);
   }
 }
 
 void ServerPreparedStatementState::MergeFrom(const ServerPreparedStatementState& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.bit.ServerPreparedStatementState)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  if (from.has_sql_query()) {
-    set_has_sql_query();
-    sql_query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.sql_query_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_sql_query()) {
+      set_sql_query(from.sql_query());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void ServerPreparedStatementState::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.bit.ServerPreparedStatementState)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void ServerPreparedStatementState::CopyFrom(const ServerPreparedStatementState& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.bit.ServerPreparedStatementState)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool ServerPreparedStatementState::IsInitialized() const {
+
   return true;
 }
 
 void ServerPreparedStatementState::Swap(ServerPreparedStatementState* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void ServerPreparedStatementState::InternalSwap(ServerPreparedStatementState* other) {
-  using std::swap;
-  sql_query_.Swap(&other->sql_query_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(sql_query_, other->sql_query_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata ServerPreparedStatementState::GetMetadata() const {
-  protobuf_ExecutionProtos_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_ExecutionProtos_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = ServerPreparedStatementState_descriptor_;
+  metadata.reflection = ServerPreparedStatementState_reflection_;
+  return metadata;
 }
 
 
 // @@protoc_insertion_point(namespace_scope)
+
 }  // namespace bit
 }  // namespace exec
-namespace google {
-namespace protobuf {
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::FragmentHandle* Arena::CreateMaybeMessage< ::exec::bit::FragmentHandle >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::FragmentHandle >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::bit::ServerPreparedStatementState* Arena::CreateMaybeMessage< ::exec::bit::ServerPreparedStatementState >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::bit::ServerPreparedStatementState >(arena);
-}
-}  // namespace protobuf
-}  // namespace google
 
 // @@protoc_insertion_point(global_scope)
diff --git a/contrib/native/client/src/protobuf/ExecutionProtos.pb.h b/contrib/native/client/src/protobuf/ExecutionProtos.pb.h
index 91221c4..86cddb9 100644
--- a/contrib/native/client/src/protobuf/ExecutionProtos.pb.h
+++ b/contrib/native/client/src/protobuf/ExecutionProtos.pb.h
@@ -1,74 +1,47 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: ExecutionProtos.proto
 
-#ifndef PROTOBUF_INCLUDED_ExecutionProtos_2eproto
-#define PROTOBUF_INCLUDED_ExecutionProtos_2eproto
+#ifndef PROTOBUF_ExecutionProtos_2eproto__INCLUDED
+#define PROTOBUF_ExecutionProtos_2eproto__INCLUDED
 
 #include <string>
 
 #include <google/protobuf/stubs/common.h>
 
-#if GOOGLE_PROTOBUF_VERSION < 3006001
+#if GOOGLE_PROTOBUF_VERSION < 2005000
 #error This file was generated by a newer version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please update
 #error your headers.
 #endif
-#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
+#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
 #error This file was generated by an older version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please
 #error regenerate this file with a newer version of protoc.
 #endif
 
-#include <google/protobuf/io/coded_stream.h>
-#include <google/protobuf/arena.h>
-#include <google/protobuf/arenastring.h>
-#include <google/protobuf/generated_message_table_driven.h>
 #include <google/protobuf/generated_message_util.h>
-#include <google/protobuf/inlined_string_field.h>
-#include <google/protobuf/metadata.h>
 #include <google/protobuf/message.h>
-#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
-#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/repeated_field.h>
+#include <google/protobuf/extension_set.h>
 #include <google/protobuf/unknown_field_set.h>
 #include "Coordination.pb.h"
 #include "UserBitShared.pb.h"
 // @@protoc_insertion_point(includes)
-#define PROTOBUF_INTERNAL_EXPORT_protobuf_ExecutionProtos_2eproto 
 
-namespace protobuf_ExecutionProtos_2eproto {
-// Internal implementation detail -- do not use these members.
-struct TableStruct {
-  static const ::google::protobuf::internal::ParseTableField entries[];
-  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
-  static const ::google::protobuf::internal::ParseTable schema[2];
-  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
-  static const ::google::protobuf::internal::SerializationTable serialization_table[];
-  static const ::google::protobuf::uint32 offsets[];
-};
-void AddDescriptors();
-}  // namespace protobuf_ExecutionProtos_2eproto
 namespace exec {
 namespace bit {
+
+// Internal implementation detail -- do not call these.
+void  protobuf_AddDesc_ExecutionProtos_2eproto();
+void protobuf_AssignDesc_ExecutionProtos_2eproto();
+void protobuf_ShutdownFile_ExecutionProtos_2eproto();
+
 class FragmentHandle;
-class FragmentHandleDefaultTypeInternal;
-extern FragmentHandleDefaultTypeInternal _FragmentHandle_default_instance_;
 class ServerPreparedStatementState;
-class ServerPreparedStatementStateDefaultTypeInternal;
-extern ServerPreparedStatementStateDefaultTypeInternal _ServerPreparedStatementState_default_instance_;
-}  // namespace bit
-}  // namespace exec
-namespace google {
-namespace protobuf {
-template<> ::exec::bit::FragmentHandle* Arena::CreateMaybeMessage<::exec::bit::FragmentHandle>(Arena*);
-template<> ::exec::bit::ServerPreparedStatementState* Arena::CreateMaybeMessage<::exec::bit::ServerPreparedStatementState>(Arena*);
-}  // namespace protobuf
-}  // namespace google
-namespace exec {
-namespace bit {
 
 // ===================================================================
 
-class FragmentHandle : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.FragmentHandle) */ {
+class FragmentHandle : public ::google::protobuf::Message {
  public:
   FragmentHandle();
   virtual ~FragmentHandle();
@@ -79,150 +52,112 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  FragmentHandle(FragmentHandle&& from) noexcept
-    : FragmentHandle() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline FragmentHandle& operator=(FragmentHandle&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const FragmentHandle& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const FragmentHandle* internal_default_instance() {
-    return reinterpret_cast<const FragmentHandle*>(
-               &_FragmentHandle_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    0;
-
   void Swap(FragmentHandle* other);
-  friend void swap(FragmentHandle& a, FragmentHandle& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline FragmentHandle* New() const final {
-    return CreateMaybeMessage<FragmentHandle>(NULL);
-  }
-
-  FragmentHandle* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<FragmentHandle>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  FragmentHandle* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const FragmentHandle& from);
   void MergeFrom(const FragmentHandle& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(FragmentHandle* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.shared.QueryId query_id = 1;
-  bool has_query_id() const;
-  void clear_query_id();
+  inline bool has_query_id() const;
+  inline void clear_query_id();
   static const int kQueryIdFieldNumber = 1;
-  private:
-  const ::exec::shared::QueryId& _internal_query_id() const;
-  public:
-  const ::exec::shared::QueryId& query_id() const;
-  ::exec::shared::QueryId* release_query_id();
-  ::exec::shared::QueryId* mutable_query_id();
-  void set_allocated_query_id(::exec::shared::QueryId* query_id);
-
-  // optional .exec.shared.QueryId parent_query_id = 4;
-  bool has_parent_query_id() const;
-  void clear_parent_query_id();
-  static const int kParentQueryIdFieldNumber = 4;
-  private:
-  const ::exec::shared::QueryId& _internal_parent_query_id() const;
-  public:
-  const ::exec::shared::QueryId& parent_query_id() const;
-  ::exec::shared::QueryId* release_parent_query_id();
-  ::exec::shared::QueryId* mutable_parent_query_id();
-  void set_allocated_parent_query_id(::exec::shared::QueryId* parent_query_id);
+  inline const ::exec::shared::QueryId& query_id() const;
+  inline ::exec::shared::QueryId* mutable_query_id();
+  inline ::exec::shared::QueryId* release_query_id();
+  inline void set_allocated_query_id(::exec::shared::QueryId* query_id);
 
   // optional int32 major_fragment_id = 2;
-  bool has_major_fragment_id() const;
-  void clear_major_fragment_id();
+  inline bool has_major_fragment_id() const;
+  inline void clear_major_fragment_id();
   static const int kMajorFragmentIdFieldNumber = 2;
-  ::google::protobuf::int32 major_fragment_id() const;
-  void set_major_fragment_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 major_fragment_id() const;
+  inline void set_major_fragment_id(::google::protobuf::int32 value);
 
   // optional int32 minor_fragment_id = 3;
-  bool has_minor_fragment_id() const;
-  void clear_minor_fragment_id();
+  inline bool has_minor_fragment_id() const;
+  inline void clear_minor_fragment_id();
   static const int kMinorFragmentIdFieldNumber = 3;
-  ::google::protobuf::int32 minor_fragment_id() const;
-  void set_minor_fragment_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 minor_fragment_id() const;
+  inline void set_minor_fragment_id(::google::protobuf::int32 value);
+
+  // optional .exec.shared.QueryId parent_query_id = 4;
+  inline bool has_parent_query_id() const;
+  inline void clear_parent_query_id();
+  static const int kParentQueryIdFieldNumber = 4;
+  inline const ::exec::shared::QueryId& parent_query_id() const;
+  inline ::exec::shared::QueryId* mutable_parent_query_id();
+  inline ::exec::shared::QueryId* release_parent_query_id();
+  inline void set_allocated_parent_query_id(::exec::shared::QueryId* parent_query_id);
 
   // @@protoc_insertion_point(class_scope:exec.bit.FragmentHandle)
  private:
-  void set_has_query_id();
-  void clear_has_query_id();
-  void set_has_major_fragment_id();
-  void clear_has_major_fragment_id();
-  void set_has_minor_fragment_id();
-  void clear_has_minor_fragment_id();
-  void set_has_parent_query_id();
-  void clear_has_parent_query_id();
+  inline void set_has_query_id();
+  inline void clear_has_query_id();
+  inline void set_has_major_fragment_id();
+  inline void clear_has_major_fragment_id();
+  inline void set_has_minor_fragment_id();
+  inline void clear_has_minor_fragment_id();
+  inline void set_has_parent_query_id();
+  inline void clear_has_parent_query_id();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::QueryId* query_id_;
-  ::exec::shared::QueryId* parent_query_id_;
   ::google::protobuf::int32 major_fragment_id_;
   ::google::protobuf::int32 minor_fragment_id_;
-  friend struct ::protobuf_ExecutionProtos_2eproto::TableStruct;
+  ::exec::shared::QueryId* parent_query_id_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_ExecutionProtos_2eproto();
+  friend void protobuf_AssignDesc_ExecutionProtos_2eproto();
+  friend void protobuf_ShutdownFile_ExecutionProtos_2eproto();
+
+  void InitAsDefaultInstance();
+  static FragmentHandle* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class ServerPreparedStatementState : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.bit.ServerPreparedStatementState) */ {
+class ServerPreparedStatementState : public ::google::protobuf::Message {
  public:
   ServerPreparedStatementState();
   virtual ~ServerPreparedStatementState();
@@ -233,124 +168,85 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  ServerPreparedStatementState(ServerPreparedStatementState&& from) noexcept
-    : ServerPreparedStatementState() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline ServerPreparedStatementState& operator=(ServerPreparedStatementState&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const ServerPreparedStatementState& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const ServerPreparedStatementState* internal_default_instance() {
-    return reinterpret_cast<const ServerPreparedStatementState*>(
-               &_ServerPreparedStatementState_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    1;
-
   void Swap(ServerPreparedStatementState* other);
-  friend void swap(ServerPreparedStatementState& a, ServerPreparedStatementState& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline ServerPreparedStatementState* New() const final {
-    return CreateMaybeMessage<ServerPreparedStatementState>(NULL);
-  }
-
-  ServerPreparedStatementState* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<ServerPreparedStatementState>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  ServerPreparedStatementState* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const ServerPreparedStatementState& from);
   void MergeFrom(const ServerPreparedStatementState& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(ServerPreparedStatementState* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string sql_query = 1;
-  bool has_sql_query() const;
-  void clear_sql_query();
+  inline bool has_sql_query() const;
+  inline void clear_sql_query();
   static const int kSqlQueryFieldNumber = 1;
-  const ::std::string& sql_query() const;
-  void set_sql_query(const ::std::string& value);
-  #if LANG_CXX11
-  void set_sql_query(::std::string&& value);
-  #endif
-  void set_sql_query(const char* value);
-  void set_sql_query(const char* value, size_t size);
-  ::std::string* mutable_sql_query();
-  ::std::string* release_sql_query();
-  void set_allocated_sql_query(::std::string* sql_query);
+  inline const ::std::string& sql_query() const;
+  inline void set_sql_query(const ::std::string& value);
+  inline void set_sql_query(const char* value);
+  inline void set_sql_query(const char* value, size_t size);
+  inline ::std::string* mutable_sql_query();
+  inline ::std::string* release_sql_query();
+  inline void set_allocated_sql_query(::std::string* sql_query);
 
   // @@protoc_insertion_point(class_scope:exec.bit.ServerPreparedStatementState)
  private:
-  void set_has_sql_query();
-  void clear_has_sql_query();
+  inline void set_has_sql_query();
+  inline void clear_has_sql_query();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr sql_query_;
-  friend struct ::protobuf_ExecutionProtos_2eproto::TableStruct;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* sql_query_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_ExecutionProtos_2eproto();
+  friend void protobuf_AssignDesc_ExecutionProtos_2eproto();
+  friend void protobuf_ShutdownFile_ExecutionProtos_2eproto();
+
+  void InitAsDefaultInstance();
+  static ServerPreparedStatementState* default_instance_;
 };
 // ===================================================================
 
 
 // ===================================================================
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic push
-  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
-#endif  // __GNUC__
 // FragmentHandle
 
 // optional .exec.shared.QueryId query_id = 1;
@@ -363,150 +259,114 @@
 inline void FragmentHandle::clear_has_query_id() {
   _has_bits_[0] &= ~0x00000001u;
 }
-inline const ::exec::shared::QueryId& FragmentHandle::_internal_query_id() const {
-  return *query_id_;
+inline void FragmentHandle::clear_query_id() {
+  if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
+  clear_has_query_id();
 }
 inline const ::exec::shared::QueryId& FragmentHandle::query_id() const {
-  const ::exec::shared::QueryId* p = query_id_;
-  // @@protoc_insertion_point(field_get:exec.bit.FragmentHandle.query_id)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::QueryId*>(
-      &::exec::shared::_QueryId_default_instance_);
+  return query_id_ != NULL ? *query_id_ : *default_instance_->query_id_;
+}
+inline ::exec::shared::QueryId* FragmentHandle::mutable_query_id() {
+  set_has_query_id();
+  if (query_id_ == NULL) query_id_ = new ::exec::shared::QueryId;
+  return query_id_;
 }
 inline ::exec::shared::QueryId* FragmentHandle::release_query_id() {
-  // @@protoc_insertion_point(field_release:exec.bit.FragmentHandle.query_id)
   clear_has_query_id();
   ::exec::shared::QueryId* temp = query_id_;
   query_id_ = NULL;
   return temp;
 }
-inline ::exec::shared::QueryId* FragmentHandle::mutable_query_id() {
-  set_has_query_id();
-  if (query_id_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::QueryId>(GetArenaNoVirtual());
-    query_id_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.FragmentHandle.query_id)
-  return query_id_;
-}
 inline void FragmentHandle::set_allocated_query_id(::exec::shared::QueryId* query_id) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(query_id_);
-  }
+  delete query_id_;
+  query_id_ = query_id;
   if (query_id) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      query_id = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, query_id, submessage_arena);
-    }
     set_has_query_id();
   } else {
     clear_has_query_id();
   }
-  query_id_ = query_id;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.FragmentHandle.query_id)
 }
 
 // optional int32 major_fragment_id = 2;
 inline bool FragmentHandle::has_major_fragment_id() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void FragmentHandle::set_has_major_fragment_id() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void FragmentHandle::clear_has_major_fragment_id() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void FragmentHandle::clear_major_fragment_id() {
   major_fragment_id_ = 0;
   clear_has_major_fragment_id();
 }
 inline ::google::protobuf::int32 FragmentHandle::major_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.FragmentHandle.major_fragment_id)
   return major_fragment_id_;
 }
 inline void FragmentHandle::set_major_fragment_id(::google::protobuf::int32 value) {
   set_has_major_fragment_id();
   major_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.FragmentHandle.major_fragment_id)
 }
 
 // optional int32 minor_fragment_id = 3;
 inline bool FragmentHandle::has_minor_fragment_id() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void FragmentHandle::set_has_minor_fragment_id() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void FragmentHandle::clear_has_minor_fragment_id() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void FragmentHandle::clear_minor_fragment_id() {
   minor_fragment_id_ = 0;
   clear_has_minor_fragment_id();
 }
 inline ::google::protobuf::int32 FragmentHandle::minor_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.bit.FragmentHandle.minor_fragment_id)
   return minor_fragment_id_;
 }
 inline void FragmentHandle::set_minor_fragment_id(::google::protobuf::int32 value) {
   set_has_minor_fragment_id();
   minor_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.bit.FragmentHandle.minor_fragment_id)
 }
 
 // optional .exec.shared.QueryId parent_query_id = 4;
 inline bool FragmentHandle::has_parent_query_id() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void FragmentHandle::set_has_parent_query_id() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void FragmentHandle::clear_has_parent_query_id() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000008u;
 }
-inline const ::exec::shared::QueryId& FragmentHandle::_internal_parent_query_id() const {
-  return *parent_query_id_;
+inline void FragmentHandle::clear_parent_query_id() {
+  if (parent_query_id_ != NULL) parent_query_id_->::exec::shared::QueryId::Clear();
+  clear_has_parent_query_id();
 }
 inline const ::exec::shared::QueryId& FragmentHandle::parent_query_id() const {
-  const ::exec::shared::QueryId* p = parent_query_id_;
-  // @@protoc_insertion_point(field_get:exec.bit.FragmentHandle.parent_query_id)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::QueryId*>(
-      &::exec::shared::_QueryId_default_instance_);
+  return parent_query_id_ != NULL ? *parent_query_id_ : *default_instance_->parent_query_id_;
+}
+inline ::exec::shared::QueryId* FragmentHandle::mutable_parent_query_id() {
+  set_has_parent_query_id();
+  if (parent_query_id_ == NULL) parent_query_id_ = new ::exec::shared::QueryId;
+  return parent_query_id_;
 }
 inline ::exec::shared::QueryId* FragmentHandle::release_parent_query_id() {
-  // @@protoc_insertion_point(field_release:exec.bit.FragmentHandle.parent_query_id)
   clear_has_parent_query_id();
   ::exec::shared::QueryId* temp = parent_query_id_;
   parent_query_id_ = NULL;
   return temp;
 }
-inline ::exec::shared::QueryId* FragmentHandle::mutable_parent_query_id() {
-  set_has_parent_query_id();
-  if (parent_query_id_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::QueryId>(GetArenaNoVirtual());
-    parent_query_id_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.bit.FragmentHandle.parent_query_id)
-  return parent_query_id_;
-}
 inline void FragmentHandle::set_allocated_parent_query_id(::exec::shared::QueryId* parent_query_id) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(parent_query_id_);
-  }
+  delete parent_query_id_;
+  parent_query_id_ = parent_query_id;
   if (parent_query_id) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      parent_query_id = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, parent_query_id, submessage_arena);
-    }
     set_has_parent_query_id();
   } else {
     clear_has_parent_query_id();
   }
-  parent_query_id_ = parent_query_id;
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.FragmentHandle.parent_query_id)
 }
 
 // -------------------------------------------------------------------
@@ -524,72 +384,80 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void ServerPreparedStatementState::clear_sql_query() {
-  sql_query_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (sql_query_ != &::google::protobuf::internal::kEmptyString) {
+    sql_query_->clear();
+  }
   clear_has_sql_query();
 }
 inline const ::std::string& ServerPreparedStatementState::sql_query() const {
-  // @@protoc_insertion_point(field_get:exec.bit.ServerPreparedStatementState.sql_query)
-  return sql_query_.GetNoArena();
+  return *sql_query_;
 }
 inline void ServerPreparedStatementState::set_sql_query(const ::std::string& value) {
   set_has_sql_query();
-  sql_query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.bit.ServerPreparedStatementState.sql_query)
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    sql_query_ = new ::std::string;
+  }
+  sql_query_->assign(value);
 }
-#if LANG_CXX11
-inline void ServerPreparedStatementState::set_sql_query(::std::string&& value) {
-  set_has_sql_query();
-  sql_query_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.bit.ServerPreparedStatementState.sql_query)
-}
-#endif
 inline void ServerPreparedStatementState::set_sql_query(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_sql_query();
-  sql_query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.bit.ServerPreparedStatementState.sql_query)
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    sql_query_ = new ::std::string;
+  }
+  sql_query_->assign(value);
 }
 inline void ServerPreparedStatementState::set_sql_query(const char* value, size_t size) {
   set_has_sql_query();
-  sql_query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.bit.ServerPreparedStatementState.sql_query)
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    sql_query_ = new ::std::string;
+  }
+  sql_query_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ServerPreparedStatementState::mutable_sql_query() {
   set_has_sql_query();
-  // @@protoc_insertion_point(field_mutable:exec.bit.ServerPreparedStatementState.sql_query)
-  return sql_query_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    sql_query_ = new ::std::string;
+  }
+  return sql_query_;
 }
 inline ::std::string* ServerPreparedStatementState::release_sql_query() {
-  // @@protoc_insertion_point(field_release:exec.bit.ServerPreparedStatementState.sql_query)
-  if (!has_sql_query()) {
-    return NULL;
-  }
   clear_has_sql_query();
-  return sql_query_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = sql_query_;
+    sql_query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ServerPreparedStatementState::set_allocated_sql_query(::std::string* sql_query) {
-  if (sql_query != NULL) {
+  if (sql_query_ != &::google::protobuf::internal::kEmptyString) {
+    delete sql_query_;
+  }
+  if (sql_query) {
     set_has_sql_query();
+    sql_query_ = sql_query;
   } else {
     clear_has_sql_query();
+    sql_query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  sql_query_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), sql_query);
-  // @@protoc_insertion_point(field_set_allocated:exec.bit.ServerPreparedStatementState.sql_query)
 }
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic pop
-#endif  // __GNUC__
-// -------------------------------------------------------------------
-
 
 // @@protoc_insertion_point(namespace_scope)
 
 }  // namespace bit
 }  // namespace exec
 
+#ifndef SWIG
+namespace google {
+namespace protobuf {
+
+
+}  // namespace google
+}  // namespace protobuf
+#endif  // SWIG
+
 // @@protoc_insertion_point(global_scope)
 
-#endif  // PROTOBUF_INCLUDED_ExecutionProtos_2eproto
+#endif  // PROTOBUF_ExecutionProtos_2eproto__INCLUDED
diff --git a/contrib/native/client/src/protobuf/GeneralRPC.pb.cc b/contrib/native/client/src/protobuf/GeneralRPC.pb.cc
index ab5dfcf..b02ef0e 100644
--- a/contrib/native/client/src/protobuf/GeneralRPC.pb.cc
+++ b/contrib/native/client/src/protobuf/GeneralRPC.pb.cc
@@ -1,200 +1,168 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: GeneralRPC.proto
 
+#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
 #include "GeneralRPC.pb.h"
 
 #include <algorithm>
 
 #include <google/protobuf/stubs/common.h>
-#include <google/protobuf/stubs/port.h>
+#include <google/protobuf/stubs/once.h>
 #include <google/protobuf/io/coded_stream.h>
 #include <google/protobuf/wire_format_lite_inl.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>
-// This is a temporary google only hack
-#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
-#include "third_party/protobuf/version.h"
-#endif
 // @@protoc_insertion_point(includes)
 
-namespace protobuf_GeneralRPC_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_GeneralRPC_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_RpcHeader;
-}  // namespace protobuf_GeneralRPC_2eproto
 namespace exec {
 namespace rpc {
-class AckDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<Ack>
-      _instance;
-} _Ack_default_instance_;
-class RpcHeaderDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<RpcHeader>
-      _instance;
-} _RpcHeader_default_instance_;
-class CompleteRpcMessageDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<CompleteRpcMessage>
-      _instance;
-} _CompleteRpcMessage_default_instance_;
-}  // namespace rpc
-}  // namespace exec
-namespace protobuf_GeneralRPC_2eproto {
-static void InitDefaultsAck() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
 
-  {
-    void* ptr = &::exec::rpc::_Ack_default_instance_;
-    new (ptr) ::exec::rpc::Ack();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::rpc::Ack::InitAsDefaultInstance();
+namespace {
+
+const ::google::protobuf::Descriptor* Ack_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  Ack_reflection_ = NULL;
+const ::google::protobuf::Descriptor* RpcHeader_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  RpcHeader_reflection_ = NULL;
+const ::google::protobuf::Descriptor* CompleteRpcMessage_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  CompleteRpcMessage_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* RpcMode_descriptor_ = NULL;
+
+}  // namespace
+
+
+void protobuf_AssignDesc_GeneralRPC_2eproto() {
+  protobuf_AddDesc_GeneralRPC_2eproto();
+  const ::google::protobuf::FileDescriptor* file =
+    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
+      "GeneralRPC.proto");
+  GOOGLE_CHECK(file != NULL);
+  Ack_descriptor_ = file->message_type(0);
+  static const int Ack_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Ack, ok_),
+  };
+  Ack_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      Ack_descriptor_,
+      Ack::default_instance_,
+      Ack_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Ack, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Ack, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(Ack));
+  RpcHeader_descriptor_ = file->message_type(1);
+  static const int RpcHeader_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcHeader, mode_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcHeader, coordination_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcHeader, rpc_type_),
+  };
+  RpcHeader_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      RpcHeader_descriptor_,
+      RpcHeader::default_instance_,
+      RpcHeader_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcHeader, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcHeader, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(RpcHeader));
+  CompleteRpcMessage_descriptor_ = file->message_type(2);
+  static const int CompleteRpcMessage_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CompleteRpcMessage, header_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CompleteRpcMessage, protobuf_body_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CompleteRpcMessage, raw_body_),
+  };
+  CompleteRpcMessage_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      CompleteRpcMessage_descriptor_,
+      CompleteRpcMessage::default_instance_,
+      CompleteRpcMessage_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CompleteRpcMessage, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CompleteRpcMessage, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(CompleteRpcMessage));
+  RpcMode_descriptor_ = file->enum_type(0);
 }
 
-::google::protobuf::internal::SCCInfo<0> scc_info_Ack =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsAck}, {}};
+namespace {
 
-static void InitDefaultsRpcHeader() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::rpc::_RpcHeader_default_instance_;
-    new (ptr) ::exec::rpc::RpcHeader();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::rpc::RpcHeader::InitAsDefaultInstance();
+GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
+inline void protobuf_AssignDescriptorsOnce() {
+  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
+                 &protobuf_AssignDesc_GeneralRPC_2eproto);
 }
 
-::google::protobuf::internal::SCCInfo<0> scc_info_RpcHeader =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsRpcHeader}, {}};
-
-static void InitDefaultsCompleteRpcMessage() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::rpc::_CompleteRpcMessage_default_instance_;
-    new (ptr) ::exec::rpc::CompleteRpcMessage();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::rpc::CompleteRpcMessage::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_CompleteRpcMessage =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsCompleteRpcMessage}, {
-      &protobuf_GeneralRPC_2eproto::scc_info_RpcHeader.base,}};
-
-void InitDefaults() {
-  ::google::protobuf::internal::InitSCC(&scc_info_Ack.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_RpcHeader.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_CompleteRpcMessage.base);
-}
-
-::google::protobuf::Metadata file_level_metadata[3];
-const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors[1];
-
-const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::Ack, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::Ack, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::Ack, ok_),
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::RpcHeader, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::RpcHeader, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::RpcHeader, mode_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::RpcHeader, coordination_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::RpcHeader, rpc_type_),
-  0,
-  1,
-  2,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::CompleteRpcMessage, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::CompleteRpcMessage, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::CompleteRpcMessage, header_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::CompleteRpcMessage, protobuf_body_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::rpc::CompleteRpcMessage, raw_body_),
-  2,
-  0,
-  1,
-};
-static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  { 0, 6, sizeof(::exec::rpc::Ack)},
-  { 7, 15, sizeof(::exec::rpc::RpcHeader)},
-  { 18, 26, sizeof(::exec::rpc::CompleteRpcMessage)},
-};
-
-static ::google::protobuf::Message const * const file_default_instances[] = {
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::rpc::_Ack_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::rpc::_RpcHeader_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::rpc::_CompleteRpcMessage_default_instance_),
-};
-
-void protobuf_AssignDescriptors() {
-  AddDescriptors();
-  AssignDescriptors(
-      "GeneralRPC.proto", schemas, file_default_instances, TableStruct::offsets,
-      file_level_metadata, file_level_enum_descriptors, NULL);
-}
-
-void protobuf_AssignDescriptorsOnce() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, protobuf_AssignDescriptors);
-}
-
-void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
 void protobuf_RegisterTypes(const ::std::string&) {
   protobuf_AssignDescriptorsOnce();
-  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 3);
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    Ack_descriptor_, &Ack::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    RpcHeader_descriptor_, &RpcHeader::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    CompleteRpcMessage_descriptor_, &CompleteRpcMessage::default_instance());
 }
 
-void AddDescriptorsImpl() {
-  InitDefaults();
-  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-      "\n\020GeneralRPC.proto\022\010exec.rpc\032\022Coordinati"
-      "on.proto\"\021\n\003Ack\022\n\n\002ok\030\001 \001(\010\"W\n\tRpcHeader"
-      "\022\037\n\004mode\030\001 \001(\0162\021.exec.rpc.RpcMode\022\027\n\017coo"
-      "rdination_id\030\002 \001(\005\022\020\n\010rpc_type\030\003 \001(\005\"b\n\022"
-      "CompleteRpcMessage\022#\n\006header\030\001 \001(\0132\023.exe"
-      "c.rpc.RpcHeader\022\025\n\rprotobuf_body\030\002 \001(\014\022\020"
-      "\n\010raw_body\030\003 \001(\014*N\n\007RpcMode\022\013\n\007REQUEST\020\000"
-      "\022\014\n\010RESPONSE\020\001\022\024\n\020RESPONSE_FAILURE\020\002\022\010\n\004"
-      "PING\020\003\022\010\n\004PONG\020\004B1\n\033org.apache.drill.exe"
-      "c.protoB\020GeneralRPCProtosH\001"
-  };
+}  // namespace
+
+void protobuf_ShutdownFile_GeneralRPC_2eproto() {
+  delete Ack::default_instance_;
+  delete Ack_reflection_;
+  delete RpcHeader::default_instance_;
+  delete RpcHeader_reflection_;
+  delete CompleteRpcMessage::default_instance_;
+  delete CompleteRpcMessage_reflection_;
+}
+
+void protobuf_AddDesc_GeneralRPC_2eproto() {
+  static bool already_here = false;
+  if (already_here) return;
+  already_here = true;
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  ::exec::protobuf_AddDesc_Coordination_2eproto();
   ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
-      descriptor, 387);
+    "\n\020GeneralRPC.proto\022\010exec.rpc\032\022Coordinati"
+    "on.proto\"\021\n\003Ack\022\n\n\002ok\030\001 \001(\010\"W\n\tRpcHeader"
+    "\022\037\n\004mode\030\001 \001(\0162\021.exec.rpc.RpcMode\022\027\n\017coo"
+    "rdination_id\030\002 \001(\005\022\020\n\010rpc_type\030\003 \001(\005\"b\n\022"
+    "CompleteRpcMessage\022#\n\006header\030\001 \001(\0132\023.exe"
+    "c.rpc.RpcHeader\022\025\n\rprotobuf_body\030\002 \001(\014\022\020"
+    "\n\010raw_body\030\003 \001(\014*N\n\007RpcMode\022\013\n\007REQUEST\020\000"
+    "\022\014\n\010RESPONSE\020\001\022\024\n\020RESPONSE_FAILURE\020\002\022\010\n\004"
+    "PING\020\003\022\010\n\004PONG\020\004B1\n\033org.apache.drill.exe"
+    "c.protoB\020GeneralRPCProtosH\001", 387);
   ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
     "GeneralRPC.proto", &protobuf_RegisterTypes);
-  ::protobuf_Coordination_2eproto::AddDescriptors();
+  Ack::default_instance_ = new Ack();
+  RpcHeader::default_instance_ = new RpcHeader();
+  CompleteRpcMessage::default_instance_ = new CompleteRpcMessage();
+  Ack::default_instance_->InitAsDefaultInstance();
+  RpcHeader::default_instance_->InitAsDefaultInstance();
+  CompleteRpcMessage::default_instance_->InitAsDefaultInstance();
+  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_GeneralRPC_2eproto);
 }
 
-void AddDescriptors() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, AddDescriptorsImpl);
-}
-// Force AddDescriptors() to be called at dynamic initialization time.
-struct StaticDescriptorInitializer {
-  StaticDescriptorInitializer() {
-    AddDescriptors();
+// Force AddDescriptors() to be called at static initialization time.
+struct StaticDescriptorInitializer_GeneralRPC_2eproto {
+  StaticDescriptorInitializer_GeneralRPC_2eproto() {
+    protobuf_AddDesc_GeneralRPC_2eproto();
   }
-} static_descriptor_initializer;
-}  // namespace protobuf_GeneralRPC_2eproto
-namespace exec {
-namespace rpc {
+} static_descriptor_initializer_GeneralRPC_2eproto_;
 const ::google::protobuf::EnumDescriptor* RpcMode_descriptor() {
-  protobuf_GeneralRPC_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_GeneralRPC_2eproto::file_level_enum_descriptors[0];
+  protobuf_AssignDescriptorsOnce();
+  return RpcMode_descriptor_;
 }
 bool RpcMode_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -209,316 +177,290 @@
 
 // ===================================================================
 
-void Ack::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int Ack::kOkFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 Ack::Ack()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_GeneralRPC_2eproto::scc_info_Ack.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.rpc.Ack)
 }
+
+void Ack::InitAsDefaultInstance() {
+}
+
 Ack::Ack(const Ack& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ok_ = from.ok_;
-  // @@protoc_insertion_point(copy_constructor:exec.rpc.Ack)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void Ack::SharedCtor() {
+  _cached_size_ = 0;
   ok_ = false;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 Ack::~Ack() {
-  // @@protoc_insertion_point(destructor:exec.rpc.Ack)
   SharedDtor();
 }
 
 void Ack::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void Ack::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* Ack::descriptor() {
-  ::protobuf_GeneralRPC_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_GeneralRPC_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return Ack_descriptor_;
 }
 
 const Ack& Ack::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_GeneralRPC_2eproto::scc_info_Ack.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_GeneralRPC_2eproto();
+  return *default_instance_;
 }
 
+Ack* Ack::default_instance_ = NULL;
+
+Ack* Ack::New() const {
+  return new Ack;
+}
 
 void Ack::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.rpc.Ack)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  ok_ = false;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    ok_ = false;
+  }
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool Ack::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.rpc.Ack)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional bool ok = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_ok();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &ok_)));
+          set_has_ok();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.rpc.Ack)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.rpc.Ack)
-  return false;
 #undef DO_
 }
 
 void Ack::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.rpc.Ack)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional bool ok = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_ok()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(1, this->ok(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.rpc.Ack)
 }
 
-::google::protobuf::uint8* Ack::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.rpc.Ack)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* Ack::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional bool ok = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_ok()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(1, this->ok(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.rpc.Ack)
   return target;
 }
 
-size_t Ack::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.rpc.Ack)
-  size_t total_size = 0;
+int Ack::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional bool ok = 1;
+    if (has_ok()) {
+      total_size += 1 + 1;
+    }
+
+  }
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // optional bool ok = 1;
-  if (has_ok()) {
-    total_size += 1 + 1;
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void Ack::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.rpc.Ack)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const Ack* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const Ack>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const Ack*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.rpc.Ack)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.rpc.Ack)
     MergeFrom(*source);
   }
 }
 
 void Ack::MergeFrom(const Ack& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.rpc.Ack)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  if (from.has_ok()) {
-    set_ok(from.ok());
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_ok()) {
+      set_ok(from.ok());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void Ack::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.rpc.Ack)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void Ack::CopyFrom(const Ack& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.rpc.Ack)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool Ack::IsInitialized() const {
+
   return true;
 }
 
 void Ack::Swap(Ack* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void Ack::InternalSwap(Ack* other) {
-  using std::swap;
-  swap(ok_, other->ok_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(ok_, other->ok_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata Ack::GetMetadata() const {
-  protobuf_GeneralRPC_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_GeneralRPC_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = Ack_descriptor_;
+  metadata.reflection = Ack_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void RpcHeader::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int RpcHeader::kModeFieldNumber;
 const int RpcHeader::kCoordinationIdFieldNumber;
 const int RpcHeader::kRpcTypeFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 RpcHeader::RpcHeader()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_GeneralRPC_2eproto::scc_info_RpcHeader.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.rpc.RpcHeader)
 }
+
+void RpcHeader::InitAsDefaultInstance() {
+}
+
 RpcHeader::RpcHeader(const RpcHeader& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&mode_, &from.mode_,
-    static_cast<size_t>(reinterpret_cast<char*>(&rpc_type_) -
-    reinterpret_cast<char*>(&mode_)) + sizeof(rpc_type_));
-  // @@protoc_insertion_point(copy_constructor:exec.rpc.RpcHeader)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void RpcHeader::SharedCtor() {
-  ::memset(&mode_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&rpc_type_) -
-      reinterpret_cast<char*>(&mode_)) + sizeof(rpc_type_));
+  _cached_size_ = 0;
+  mode_ = 0;
+  coordination_id_ = 0;
+  rpc_type_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 RpcHeader::~RpcHeader() {
-  // @@protoc_insertion_point(destructor:exec.rpc.RpcHeader)
   SharedDtor();
 }
 
 void RpcHeader::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void RpcHeader::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* RpcHeader::descriptor() {
-  ::protobuf_GeneralRPC_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_GeneralRPC_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return RpcHeader_descriptor_;
 }
 
 const RpcHeader& RpcHeader::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_GeneralRPC_2eproto::scc_info_RpcHeader.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_GeneralRPC_2eproto();
+  return *default_instance_;
 }
 
+RpcHeader* RpcHeader::default_instance_ = NULL;
+
+RpcHeader* RpcHeader::New() const {
+  return new RpcHeader;
+}
 
 void RpcHeader::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.rpc.RpcHeader)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    ::memset(&mode_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&rpc_type_) -
-        reinterpret_cast<char*>(&mode_)) + sizeof(rpc_type_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    mode_ = 0;
+    coordination_id_ = 0;
+    rpc_type_ = 0;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool RpcHeader::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.rpc.RpcHeader)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.rpc.RpcMode mode = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -526,135 +468,116 @@
           if (::exec::rpc::RpcMode_IsValid(value)) {
             set_mode(static_cast< ::exec::rpc::RpcMode >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_coordination_id;
         break;
       }
 
       // optional int32 coordination_id = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_coordination_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_coordination_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &coordination_id_)));
+          set_has_coordination_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_rpc_type;
         break;
       }
 
       // optional int32 rpc_type = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_rpc_type();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_rpc_type:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &rpc_type_)));
+          set_has_rpc_type();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.rpc.RpcHeader)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.rpc.RpcHeader)
-  return false;
 #undef DO_
 }
 
 void RpcHeader::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.rpc.RpcHeader)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.rpc.RpcMode mode = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_mode()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->mode(), output);
   }
 
   // optional int32 coordination_id = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_coordination_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->coordination_id(), output);
   }
 
   // optional int32 rpc_type = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_rpc_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->rpc_type(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.rpc.RpcHeader)
 }
 
-::google::protobuf::uint8* RpcHeader::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.rpc.RpcHeader)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* RpcHeader::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.rpc.RpcMode mode = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_mode()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->mode(), target);
   }
 
   // optional int32 coordination_id = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_coordination_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->coordination_id(), target);
   }
 
   // optional int32 rpc_type = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_rpc_type()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->rpc_type(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.rpc.RpcHeader)
   return target;
 }
 
-size_t RpcHeader::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.rpc.RpcHeader)
-  size_t total_size = 0;
+int RpcHeader::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.rpc.RpcMode mode = 1;
     if (has_mode()) {
       total_size += 1 +
@@ -676,324 +599,300 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void RpcHeader::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.rpc.RpcHeader)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const RpcHeader* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const RpcHeader>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const RpcHeader*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.rpc.RpcHeader)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.rpc.RpcHeader)
     MergeFrom(*source);
   }
 }
 
 void RpcHeader::MergeFrom(const RpcHeader& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.rpc.RpcHeader)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      mode_ = from.mode_;
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_mode()) {
+      set_mode(from.mode());
     }
-    if (cached_has_bits & 0x00000002u) {
-      coordination_id_ = from.coordination_id_;
+    if (from.has_coordination_id()) {
+      set_coordination_id(from.coordination_id());
     }
-    if (cached_has_bits & 0x00000004u) {
-      rpc_type_ = from.rpc_type_;
+    if (from.has_rpc_type()) {
+      set_rpc_type(from.rpc_type());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void RpcHeader::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.rpc.RpcHeader)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void RpcHeader::CopyFrom(const RpcHeader& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.rpc.RpcHeader)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool RpcHeader::IsInitialized() const {
+
   return true;
 }
 
 void RpcHeader::Swap(RpcHeader* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void RpcHeader::InternalSwap(RpcHeader* other) {
-  using std::swap;
-  swap(mode_, other->mode_);
-  swap(coordination_id_, other->coordination_id_);
-  swap(rpc_type_, other->rpc_type_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(mode_, other->mode_);
+    std::swap(coordination_id_, other->coordination_id_);
+    std::swap(rpc_type_, other->rpc_type_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata RpcHeader::GetMetadata() const {
-  protobuf_GeneralRPC_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_GeneralRPC_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = RpcHeader_descriptor_;
+  metadata.reflection = RpcHeader_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void CompleteRpcMessage::InitAsDefaultInstance() {
-  ::exec::rpc::_CompleteRpcMessage_default_instance_._instance.get_mutable()->header_ = const_cast< ::exec::rpc::RpcHeader*>(
-      ::exec::rpc::RpcHeader::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int CompleteRpcMessage::kHeaderFieldNumber;
 const int CompleteRpcMessage::kProtobufBodyFieldNumber;
 const int CompleteRpcMessage::kRawBodyFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 CompleteRpcMessage::CompleteRpcMessage()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_GeneralRPC_2eproto::scc_info_CompleteRpcMessage.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.rpc.CompleteRpcMessage)
 }
+
+void CompleteRpcMessage::InitAsDefaultInstance() {
+  header_ = const_cast< ::exec::rpc::RpcHeader*>(&::exec::rpc::RpcHeader::default_instance());
+}
+
 CompleteRpcMessage::CompleteRpcMessage(const CompleteRpcMessage& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  protobuf_body_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_protobuf_body()) {
-    protobuf_body_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.protobuf_body_);
-  }
-  raw_body_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_raw_body()) {
-    raw_body_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.raw_body_);
-  }
-  if (from.has_header()) {
-    header_ = new ::exec::rpc::RpcHeader(*from.header_);
-  } else {
-    header_ = NULL;
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.rpc.CompleteRpcMessage)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void CompleteRpcMessage::SharedCtor() {
-  protobuf_body_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  raw_body_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
   header_ = NULL;
+  protobuf_body_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  raw_body_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 CompleteRpcMessage::~CompleteRpcMessage() {
-  // @@protoc_insertion_point(destructor:exec.rpc.CompleteRpcMessage)
   SharedDtor();
 }
 
 void CompleteRpcMessage::SharedDtor() {
-  protobuf_body_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  raw_body_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete header_;
+  if (protobuf_body_ != &::google::protobuf::internal::kEmptyString) {
+    delete protobuf_body_;
+  }
+  if (raw_body_ != &::google::protobuf::internal::kEmptyString) {
+    delete raw_body_;
+  }
+  if (this != default_instance_) {
+    delete header_;
+  }
 }
 
 void CompleteRpcMessage::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* CompleteRpcMessage::descriptor() {
-  ::protobuf_GeneralRPC_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_GeneralRPC_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return CompleteRpcMessage_descriptor_;
 }
 
 const CompleteRpcMessage& CompleteRpcMessage::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_GeneralRPC_2eproto::scc_info_CompleteRpcMessage.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_GeneralRPC_2eproto();
+  return *default_instance_;
 }
 
+CompleteRpcMessage* CompleteRpcMessage::default_instance_ = NULL;
+
+CompleteRpcMessage* CompleteRpcMessage::New() const {
+  return new CompleteRpcMessage;
+}
 
 void CompleteRpcMessage::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.rpc.CompleteRpcMessage)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      protobuf_body_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_header()) {
+      if (header_ != NULL) header_->::exec::rpc::RpcHeader::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      raw_body_.ClearNonDefaultToEmptyNoArena();
+    if (has_protobuf_body()) {
+      if (protobuf_body_ != &::google::protobuf::internal::kEmptyString) {
+        protobuf_body_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      GOOGLE_DCHECK(header_ != NULL);
-      header_->Clear();
+    if (has_raw_body()) {
+      if (raw_body_ != &::google::protobuf::internal::kEmptyString) {
+        raw_body_->clear();
+      }
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool CompleteRpcMessage::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.rpc.CompleteRpcMessage)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.rpc.RpcHeader header = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_header()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_protobuf_body;
         break;
       }
 
       // optional bytes protobuf_body = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_protobuf_body:
           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                 input, this->mutable_protobuf_body()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_raw_body;
         break;
       }
 
       // optional bytes raw_body = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_raw_body:
           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                 input, this->mutable_raw_body()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.rpc.CompleteRpcMessage)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.rpc.CompleteRpcMessage)
-  return false;
 #undef DO_
 }
 
 void CompleteRpcMessage::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.rpc.CompleteRpcMessage)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.rpc.RpcHeader header = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_header()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_header(), output);
+      1, this->header(), output);
   }
 
   // optional bytes protobuf_body = 2;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
+  if (has_protobuf_body()) {
+    ::google::protobuf::internal::WireFormatLite::WriteBytes(
       2, this->protobuf_body(), output);
   }
 
   // optional bytes raw_body = 3;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
+  if (has_raw_body()) {
+    ::google::protobuf::internal::WireFormatLite::WriteBytes(
       3, this->raw_body(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.rpc.CompleteRpcMessage)
 }
 
-::google::protobuf::uint8* CompleteRpcMessage::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.rpc.CompleteRpcMessage)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* CompleteRpcMessage::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.rpc.RpcHeader header = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_header()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_header(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->header(), target);
   }
 
   // optional bytes protobuf_body = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_protobuf_body()) {
     target =
       ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
         2, this->protobuf_body(), target);
   }
 
   // optional bytes raw_body = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_raw_body()) {
     target =
       ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
         3, this->raw_body(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.rpc.CompleteRpcMessage)
   return target;
 }
 
-size_t CompleteRpcMessage::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.rpc.CompleteRpcMessage)
-  size_t total_size = 0;
+int CompleteRpcMessage::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional .exec.rpc.RpcHeader header = 1;
+    if (has_header()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->header());
+    }
+
     // optional bytes protobuf_body = 2;
     if (has_protobuf_body()) {
       total_size += 1 +
@@ -1008,111 +907,86 @@
           this->raw_body());
     }
 
-    // optional .exec.rpc.RpcHeader header = 1;
-    if (has_header()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *header_);
-    }
-
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void CompleteRpcMessage::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.rpc.CompleteRpcMessage)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const CompleteRpcMessage* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const CompleteRpcMessage>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const CompleteRpcMessage*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.rpc.CompleteRpcMessage)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.rpc.CompleteRpcMessage)
     MergeFrom(*source);
   }
 }
 
 void CompleteRpcMessage::MergeFrom(const CompleteRpcMessage& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.rpc.CompleteRpcMessage)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_protobuf_body();
-      protobuf_body_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.protobuf_body_);
-    }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_raw_body();
-      raw_body_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.raw_body_);
-    }
-    if (cached_has_bits & 0x00000004u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_header()) {
       mutable_header()->::exec::rpc::RpcHeader::MergeFrom(from.header());
     }
+    if (from.has_protobuf_body()) {
+      set_protobuf_body(from.protobuf_body());
+    }
+    if (from.has_raw_body()) {
+      set_raw_body(from.raw_body());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void CompleteRpcMessage::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.rpc.CompleteRpcMessage)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void CompleteRpcMessage::CopyFrom(const CompleteRpcMessage& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.rpc.CompleteRpcMessage)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool CompleteRpcMessage::IsInitialized() const {
+
   return true;
 }
 
 void CompleteRpcMessage::Swap(CompleteRpcMessage* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void CompleteRpcMessage::InternalSwap(CompleteRpcMessage* other) {
-  using std::swap;
-  protobuf_body_.Swap(&other->protobuf_body_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  raw_body_.Swap(&other->raw_body_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(header_, other->header_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(header_, other->header_);
+    std::swap(protobuf_body_, other->protobuf_body_);
+    std::swap(raw_body_, other->raw_body_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata CompleteRpcMessage::GetMetadata() const {
-  protobuf_GeneralRPC_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_GeneralRPC_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = CompleteRpcMessage_descriptor_;
+  metadata.reflection = CompleteRpcMessage_reflection_;
+  return metadata;
 }
 
 
 // @@protoc_insertion_point(namespace_scope)
+
 }  // namespace rpc
 }  // namespace exec
-namespace google {
-namespace protobuf {
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::rpc::Ack* Arena::CreateMaybeMessage< ::exec::rpc::Ack >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::rpc::Ack >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::rpc::RpcHeader* Arena::CreateMaybeMessage< ::exec::rpc::RpcHeader >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::rpc::RpcHeader >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::rpc::CompleteRpcMessage* Arena::CreateMaybeMessage< ::exec::rpc::CompleteRpcMessage >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::rpc::CompleteRpcMessage >(arena);
-}
-}  // namespace protobuf
-}  // namespace google
 
 // @@protoc_insertion_point(global_scope)
diff --git a/contrib/native/client/src/protobuf/GeneralRPC.pb.h b/contrib/native/client/src/protobuf/GeneralRPC.pb.h
index ce8367f..8ebef9a 100644
--- a/contrib/native/client/src/protobuf/GeneralRPC.pb.h
+++ b/contrib/native/client/src/protobuf/GeneralRPC.pb.h
@@ -1,74 +1,44 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: GeneralRPC.proto
 
-#ifndef PROTOBUF_INCLUDED_GeneralRPC_2eproto
-#define PROTOBUF_INCLUDED_GeneralRPC_2eproto
+#ifndef PROTOBUF_GeneralRPC_2eproto__INCLUDED
+#define PROTOBUF_GeneralRPC_2eproto__INCLUDED
 
 #include <string>
 
 #include <google/protobuf/stubs/common.h>
 
-#if GOOGLE_PROTOBUF_VERSION < 3006001
+#if GOOGLE_PROTOBUF_VERSION < 2005000
 #error This file was generated by a newer version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please update
 #error your headers.
 #endif
-#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
+#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
 #error This file was generated by an older version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please
 #error regenerate this file with a newer version of protoc.
 #endif
 
-#include <google/protobuf/io/coded_stream.h>
-#include <google/protobuf/arena.h>
-#include <google/protobuf/arenastring.h>
-#include <google/protobuf/generated_message_table_driven.h>
 #include <google/protobuf/generated_message_util.h>
-#include <google/protobuf/inlined_string_field.h>
-#include <google/protobuf/metadata.h>
 #include <google/protobuf/message.h>
-#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
-#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/repeated_field.h>
+#include <google/protobuf/extension_set.h>
 #include <google/protobuf/generated_enum_reflection.h>
 #include <google/protobuf/unknown_field_set.h>
 #include "Coordination.pb.h"
 // @@protoc_insertion_point(includes)
-#define PROTOBUF_INTERNAL_EXPORT_protobuf_GeneralRPC_2eproto 
 
-namespace protobuf_GeneralRPC_2eproto {
-// Internal implementation detail -- do not use these members.
-struct TableStruct {
-  static const ::google::protobuf::internal::ParseTableField entries[];
-  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
-  static const ::google::protobuf::internal::ParseTable schema[3];
-  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
-  static const ::google::protobuf::internal::SerializationTable serialization_table[];
-  static const ::google::protobuf::uint32 offsets[];
-};
-void AddDescriptors();
-}  // namespace protobuf_GeneralRPC_2eproto
 namespace exec {
 namespace rpc {
+
+// Internal implementation detail -- do not call these.
+void  protobuf_AddDesc_GeneralRPC_2eproto();
+void protobuf_AssignDesc_GeneralRPC_2eproto();
+void protobuf_ShutdownFile_GeneralRPC_2eproto();
+
 class Ack;
-class AckDefaultTypeInternal;
-extern AckDefaultTypeInternal _Ack_default_instance_;
-class CompleteRpcMessage;
-class CompleteRpcMessageDefaultTypeInternal;
-extern CompleteRpcMessageDefaultTypeInternal _CompleteRpcMessage_default_instance_;
 class RpcHeader;
-class RpcHeaderDefaultTypeInternal;
-extern RpcHeaderDefaultTypeInternal _RpcHeader_default_instance_;
-}  // namespace rpc
-}  // namespace exec
-namespace google {
-namespace protobuf {
-template<> ::exec::rpc::Ack* Arena::CreateMaybeMessage<::exec::rpc::Ack>(Arena*);
-template<> ::exec::rpc::CompleteRpcMessage* Arena::CreateMaybeMessage<::exec::rpc::CompleteRpcMessage>(Arena*);
-template<> ::exec::rpc::RpcHeader* Arena::CreateMaybeMessage<::exec::rpc::RpcHeader>(Arena*);
-}  // namespace protobuf
-}  // namespace google
-namespace exec {
-namespace rpc {
+class CompleteRpcMessage;
 
 enum RpcMode {
   REQUEST = 0,
@@ -94,7 +64,7 @@
 }
 // ===================================================================
 
-class Ack : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.rpc.Ack) */ {
+class Ack : public ::google::protobuf::Message {
  public:
   Ack();
   virtual ~Ack();
@@ -105,110 +75,78 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  Ack(Ack&& from) noexcept
-    : Ack() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline Ack& operator=(Ack&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const Ack& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const Ack* internal_default_instance() {
-    return reinterpret_cast<const Ack*>(
-               &_Ack_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    0;
-
   void Swap(Ack* other);
-  friend void swap(Ack& a, Ack& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline Ack* New() const final {
-    return CreateMaybeMessage<Ack>(NULL);
-  }
-
-  Ack* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<Ack>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  Ack* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const Ack& from);
   void MergeFrom(const Ack& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(Ack* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional bool ok = 1;
-  bool has_ok() const;
-  void clear_ok();
+  inline bool has_ok() const;
+  inline void clear_ok();
   static const int kOkFieldNumber = 1;
-  bool ok() const;
-  void set_ok(bool value);
+  inline bool ok() const;
+  inline void set_ok(bool value);
 
   // @@protoc_insertion_point(class_scope:exec.rpc.Ack)
  private:
-  void set_has_ok();
-  void clear_has_ok();
+  inline void set_has_ok();
+  inline void clear_has_ok();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   bool ok_;
-  friend struct ::protobuf_GeneralRPC_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_GeneralRPC_2eproto();
+  friend void protobuf_AssignDesc_GeneralRPC_2eproto();
+  friend void protobuf_ShutdownFile_GeneralRPC_2eproto();
+
+  void InitAsDefaultInstance();
+  static Ack* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class RpcHeader : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.rpc.RpcHeader) */ {
+class RpcHeader : public ::google::protobuf::Message {
  public:
   RpcHeader();
   virtual ~RpcHeader();
@@ -219,130 +157,98 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  RpcHeader(RpcHeader&& from) noexcept
-    : RpcHeader() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline RpcHeader& operator=(RpcHeader&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const RpcHeader& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const RpcHeader* internal_default_instance() {
-    return reinterpret_cast<const RpcHeader*>(
-               &_RpcHeader_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    1;
-
   void Swap(RpcHeader* other);
-  friend void swap(RpcHeader& a, RpcHeader& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline RpcHeader* New() const final {
-    return CreateMaybeMessage<RpcHeader>(NULL);
-  }
-
-  RpcHeader* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<RpcHeader>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  RpcHeader* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const RpcHeader& from);
   void MergeFrom(const RpcHeader& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(RpcHeader* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.rpc.RpcMode mode = 1;
-  bool has_mode() const;
-  void clear_mode();
+  inline bool has_mode() const;
+  inline void clear_mode();
   static const int kModeFieldNumber = 1;
-  ::exec::rpc::RpcMode mode() const;
-  void set_mode(::exec::rpc::RpcMode value);
+  inline ::exec::rpc::RpcMode mode() const;
+  inline void set_mode(::exec::rpc::RpcMode value);
 
   // optional int32 coordination_id = 2;
-  bool has_coordination_id() const;
-  void clear_coordination_id();
+  inline bool has_coordination_id() const;
+  inline void clear_coordination_id();
   static const int kCoordinationIdFieldNumber = 2;
-  ::google::protobuf::int32 coordination_id() const;
-  void set_coordination_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 coordination_id() const;
+  inline void set_coordination_id(::google::protobuf::int32 value);
 
   // optional int32 rpc_type = 3;
-  bool has_rpc_type() const;
-  void clear_rpc_type();
+  inline bool has_rpc_type() const;
+  inline void clear_rpc_type();
   static const int kRpcTypeFieldNumber = 3;
-  ::google::protobuf::int32 rpc_type() const;
-  void set_rpc_type(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 rpc_type() const;
+  inline void set_rpc_type(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.rpc.RpcHeader)
  private:
-  void set_has_mode();
-  void clear_has_mode();
-  void set_has_coordination_id();
-  void clear_has_coordination_id();
-  void set_has_rpc_type();
-  void clear_has_rpc_type();
+  inline void set_has_mode();
+  inline void clear_has_mode();
+  inline void set_has_coordination_id();
+  inline void clear_has_coordination_id();
+  inline void set_has_rpc_type();
+  inline void clear_has_rpc_type();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   int mode_;
   ::google::protobuf::int32 coordination_id_;
   ::google::protobuf::int32 rpc_type_;
-  friend struct ::protobuf_GeneralRPC_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_GeneralRPC_2eproto();
+  friend void protobuf_AssignDesc_GeneralRPC_2eproto();
+  friend void protobuf_ShutdownFile_GeneralRPC_2eproto();
+
+  void InitAsDefaultInstance();
+  static RpcHeader* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class CompleteRpcMessage : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.rpc.CompleteRpcMessage) */ {
+class CompleteRpcMessage : public ::google::protobuf::Message {
  public:
   CompleteRpcMessage();
   virtual ~CompleteRpcMessage();
@@ -353,157 +259,112 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  CompleteRpcMessage(CompleteRpcMessage&& from) noexcept
-    : CompleteRpcMessage() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline CompleteRpcMessage& operator=(CompleteRpcMessage&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const CompleteRpcMessage& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const CompleteRpcMessage* internal_default_instance() {
-    return reinterpret_cast<const CompleteRpcMessage*>(
-               &_CompleteRpcMessage_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    2;
-
   void Swap(CompleteRpcMessage* other);
-  friend void swap(CompleteRpcMessage& a, CompleteRpcMessage& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline CompleteRpcMessage* New() const final {
-    return CreateMaybeMessage<CompleteRpcMessage>(NULL);
-  }
-
-  CompleteRpcMessage* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<CompleteRpcMessage>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  CompleteRpcMessage* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const CompleteRpcMessage& from);
   void MergeFrom(const CompleteRpcMessage& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(CompleteRpcMessage* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional .exec.rpc.RpcHeader header = 1;
+  inline bool has_header() const;
+  inline void clear_header();
+  static const int kHeaderFieldNumber = 1;
+  inline const ::exec::rpc::RpcHeader& header() const;
+  inline ::exec::rpc::RpcHeader* mutable_header();
+  inline ::exec::rpc::RpcHeader* release_header();
+  inline void set_allocated_header(::exec::rpc::RpcHeader* header);
+
   // optional bytes protobuf_body = 2;
-  bool has_protobuf_body() const;
-  void clear_protobuf_body();
+  inline bool has_protobuf_body() const;
+  inline void clear_protobuf_body();
   static const int kProtobufBodyFieldNumber = 2;
-  const ::std::string& protobuf_body() const;
-  void set_protobuf_body(const ::std::string& value);
-  #if LANG_CXX11
-  void set_protobuf_body(::std::string&& value);
-  #endif
-  void set_protobuf_body(const char* value);
-  void set_protobuf_body(const void* value, size_t size);
-  ::std::string* mutable_protobuf_body();
-  ::std::string* release_protobuf_body();
-  void set_allocated_protobuf_body(::std::string* protobuf_body);
+  inline const ::std::string& protobuf_body() const;
+  inline void set_protobuf_body(const ::std::string& value);
+  inline void set_protobuf_body(const char* value);
+  inline void set_protobuf_body(const void* value, size_t size);
+  inline ::std::string* mutable_protobuf_body();
+  inline ::std::string* release_protobuf_body();
+  inline void set_allocated_protobuf_body(::std::string* protobuf_body);
 
   // optional bytes raw_body = 3;
-  bool has_raw_body() const;
-  void clear_raw_body();
+  inline bool has_raw_body() const;
+  inline void clear_raw_body();
   static const int kRawBodyFieldNumber = 3;
-  const ::std::string& raw_body() const;
-  void set_raw_body(const ::std::string& value);
-  #if LANG_CXX11
-  void set_raw_body(::std::string&& value);
-  #endif
-  void set_raw_body(const char* value);
-  void set_raw_body(const void* value, size_t size);
-  ::std::string* mutable_raw_body();
-  ::std::string* release_raw_body();
-  void set_allocated_raw_body(::std::string* raw_body);
-
-  // optional .exec.rpc.RpcHeader header = 1;
-  bool has_header() const;
-  void clear_header();
-  static const int kHeaderFieldNumber = 1;
-  private:
-  const ::exec::rpc::RpcHeader& _internal_header() const;
-  public:
-  const ::exec::rpc::RpcHeader& header() const;
-  ::exec::rpc::RpcHeader* release_header();
-  ::exec::rpc::RpcHeader* mutable_header();
-  void set_allocated_header(::exec::rpc::RpcHeader* header);
+  inline const ::std::string& raw_body() const;
+  inline void set_raw_body(const ::std::string& value);
+  inline void set_raw_body(const char* value);
+  inline void set_raw_body(const void* value, size_t size);
+  inline ::std::string* mutable_raw_body();
+  inline ::std::string* release_raw_body();
+  inline void set_allocated_raw_body(::std::string* raw_body);
 
   // @@protoc_insertion_point(class_scope:exec.rpc.CompleteRpcMessage)
  private:
-  void set_has_header();
-  void clear_has_header();
-  void set_has_protobuf_body();
-  void clear_has_protobuf_body();
-  void set_has_raw_body();
-  void clear_has_raw_body();
+  inline void set_has_header();
+  inline void clear_has_header();
+  inline void set_has_protobuf_body();
+  inline void clear_has_protobuf_body();
+  inline void set_has_raw_body();
+  inline void clear_has_raw_body();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr protobuf_body_;
-  ::google::protobuf::internal::ArenaStringPtr raw_body_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::rpc::RpcHeader* header_;
-  friend struct ::protobuf_GeneralRPC_2eproto::TableStruct;
+  ::std::string* protobuf_body_;
+  ::std::string* raw_body_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_GeneralRPC_2eproto();
+  friend void protobuf_AssignDesc_GeneralRPC_2eproto();
+  friend void protobuf_ShutdownFile_GeneralRPC_2eproto();
+
+  void InitAsDefaultInstance();
+  static CompleteRpcMessage* default_instance_;
 };
 // ===================================================================
 
 
 // ===================================================================
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic push
-  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
-#endif  // __GNUC__
 // Ack
 
 // optional bool ok = 1;
@@ -521,13 +382,11 @@
   clear_has_ok();
 }
 inline bool Ack::ok() const {
-  // @@protoc_insertion_point(field_get:exec.rpc.Ack.ok)
   return ok_;
 }
 inline void Ack::set_ok(bool value) {
   set_has_ok();
   ok_ = value;
-  // @@protoc_insertion_point(field_set:exec.rpc.Ack.ok)
 }
 
 // -------------------------------------------------------------------
@@ -549,14 +408,12 @@
   clear_has_mode();
 }
 inline ::exec::rpc::RpcMode RpcHeader::mode() const {
-  // @@protoc_insertion_point(field_get:exec.rpc.RpcHeader.mode)
   return static_cast< ::exec::rpc::RpcMode >(mode_);
 }
 inline void RpcHeader::set_mode(::exec::rpc::RpcMode value) {
   assert(::exec::rpc::RpcMode_IsValid(value));
   set_has_mode();
   mode_ = value;
-  // @@protoc_insertion_point(field_set:exec.rpc.RpcHeader.mode)
 }
 
 // optional int32 coordination_id = 2;
@@ -574,13 +431,11 @@
   clear_has_coordination_id();
 }
 inline ::google::protobuf::int32 RpcHeader::coordination_id() const {
-  // @@protoc_insertion_point(field_get:exec.rpc.RpcHeader.coordination_id)
   return coordination_id_;
 }
 inline void RpcHeader::set_coordination_id(::google::protobuf::int32 value) {
   set_has_coordination_id();
   coordination_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.rpc.RpcHeader.coordination_id)
 }
 
 // optional int32 rpc_type = 3;
@@ -598,13 +453,11 @@
   clear_has_rpc_type();
 }
 inline ::google::protobuf::int32 RpcHeader::rpc_type() const {
-  // @@protoc_insertion_point(field_get:exec.rpc.RpcHeader.rpc_type)
   return rpc_type_;
 }
 inline void RpcHeader::set_rpc_type(::google::protobuf::int32 value) {
   set_has_rpc_type();
   rpc_type_ = value;
-  // @@protoc_insertion_point(field_set:exec.rpc.RpcHeader.rpc_type)
 }
 
 // -------------------------------------------------------------------
@@ -613,219 +466,201 @@
 
 // optional .exec.rpc.RpcHeader header = 1;
 inline bool CompleteRpcMessage::has_header() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void CompleteRpcMessage::set_has_header() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void CompleteRpcMessage::clear_has_header() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void CompleteRpcMessage::clear_header() {
-  if (header_ != NULL) header_->Clear();
+  if (header_ != NULL) header_->::exec::rpc::RpcHeader::Clear();
   clear_has_header();
 }
-inline const ::exec::rpc::RpcHeader& CompleteRpcMessage::_internal_header() const {
-  return *header_;
-}
 inline const ::exec::rpc::RpcHeader& CompleteRpcMessage::header() const {
-  const ::exec::rpc::RpcHeader* p = header_;
-  // @@protoc_insertion_point(field_get:exec.rpc.CompleteRpcMessage.header)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::rpc::RpcHeader*>(
-      &::exec::rpc::_RpcHeader_default_instance_);
+  return header_ != NULL ? *header_ : *default_instance_->header_;
+}
+inline ::exec::rpc::RpcHeader* CompleteRpcMessage::mutable_header() {
+  set_has_header();
+  if (header_ == NULL) header_ = new ::exec::rpc::RpcHeader;
+  return header_;
 }
 inline ::exec::rpc::RpcHeader* CompleteRpcMessage::release_header() {
-  // @@protoc_insertion_point(field_release:exec.rpc.CompleteRpcMessage.header)
   clear_has_header();
   ::exec::rpc::RpcHeader* temp = header_;
   header_ = NULL;
   return temp;
 }
-inline ::exec::rpc::RpcHeader* CompleteRpcMessage::mutable_header() {
-  set_has_header();
-  if (header_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::rpc::RpcHeader>(GetArenaNoVirtual());
-    header_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.rpc.CompleteRpcMessage.header)
-  return header_;
-}
 inline void CompleteRpcMessage::set_allocated_header(::exec::rpc::RpcHeader* header) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete header_;
-  }
+  delete header_;
+  header_ = header;
   if (header) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      header = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, header, submessage_arena);
-    }
     set_has_header();
   } else {
     clear_has_header();
   }
-  header_ = header;
-  // @@protoc_insertion_point(field_set_allocated:exec.rpc.CompleteRpcMessage.header)
 }
 
 // optional bytes protobuf_body = 2;
 inline bool CompleteRpcMessage::has_protobuf_body() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void CompleteRpcMessage::set_has_protobuf_body() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void CompleteRpcMessage::clear_has_protobuf_body() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void CompleteRpcMessage::clear_protobuf_body() {
-  protobuf_body_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (protobuf_body_ != &::google::protobuf::internal::kEmptyString) {
+    protobuf_body_->clear();
+  }
   clear_has_protobuf_body();
 }
 inline const ::std::string& CompleteRpcMessage::protobuf_body() const {
-  // @@protoc_insertion_point(field_get:exec.rpc.CompleteRpcMessage.protobuf_body)
-  return protobuf_body_.GetNoArena();
+  return *protobuf_body_;
 }
 inline void CompleteRpcMessage::set_protobuf_body(const ::std::string& value) {
   set_has_protobuf_body();
-  protobuf_body_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.rpc.CompleteRpcMessage.protobuf_body)
+  if (protobuf_body_ == &::google::protobuf::internal::kEmptyString) {
+    protobuf_body_ = new ::std::string;
+  }
+  protobuf_body_->assign(value);
 }
-#if LANG_CXX11
-inline void CompleteRpcMessage::set_protobuf_body(::std::string&& value) {
-  set_has_protobuf_body();
-  protobuf_body_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.rpc.CompleteRpcMessage.protobuf_body)
-}
-#endif
 inline void CompleteRpcMessage::set_protobuf_body(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_protobuf_body();
-  protobuf_body_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.rpc.CompleteRpcMessage.protobuf_body)
+  if (protobuf_body_ == &::google::protobuf::internal::kEmptyString) {
+    protobuf_body_ = new ::std::string;
+  }
+  protobuf_body_->assign(value);
 }
 inline void CompleteRpcMessage::set_protobuf_body(const void* value, size_t size) {
   set_has_protobuf_body();
-  protobuf_body_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.rpc.CompleteRpcMessage.protobuf_body)
+  if (protobuf_body_ == &::google::protobuf::internal::kEmptyString) {
+    protobuf_body_ = new ::std::string;
+  }
+  protobuf_body_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* CompleteRpcMessage::mutable_protobuf_body() {
   set_has_protobuf_body();
-  // @@protoc_insertion_point(field_mutable:exec.rpc.CompleteRpcMessage.protobuf_body)
-  return protobuf_body_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (protobuf_body_ == &::google::protobuf::internal::kEmptyString) {
+    protobuf_body_ = new ::std::string;
+  }
+  return protobuf_body_;
 }
 inline ::std::string* CompleteRpcMessage::release_protobuf_body() {
-  // @@protoc_insertion_point(field_release:exec.rpc.CompleteRpcMessage.protobuf_body)
-  if (!has_protobuf_body()) {
-    return NULL;
-  }
   clear_has_protobuf_body();
-  return protobuf_body_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (protobuf_body_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = protobuf_body_;
+    protobuf_body_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void CompleteRpcMessage::set_allocated_protobuf_body(::std::string* protobuf_body) {
-  if (protobuf_body != NULL) {
+  if (protobuf_body_ != &::google::protobuf::internal::kEmptyString) {
+    delete protobuf_body_;
+  }
+  if (protobuf_body) {
     set_has_protobuf_body();
+    protobuf_body_ = protobuf_body;
   } else {
     clear_has_protobuf_body();
+    protobuf_body_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  protobuf_body_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), protobuf_body);
-  // @@protoc_insertion_point(field_set_allocated:exec.rpc.CompleteRpcMessage.protobuf_body)
 }
 
 // optional bytes raw_body = 3;
 inline bool CompleteRpcMessage::has_raw_body() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void CompleteRpcMessage::set_has_raw_body() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void CompleteRpcMessage::clear_has_raw_body() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void CompleteRpcMessage::clear_raw_body() {
-  raw_body_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (raw_body_ != &::google::protobuf::internal::kEmptyString) {
+    raw_body_->clear();
+  }
   clear_has_raw_body();
 }
 inline const ::std::string& CompleteRpcMessage::raw_body() const {
-  // @@protoc_insertion_point(field_get:exec.rpc.CompleteRpcMessage.raw_body)
-  return raw_body_.GetNoArena();
+  return *raw_body_;
 }
 inline void CompleteRpcMessage::set_raw_body(const ::std::string& value) {
   set_has_raw_body();
-  raw_body_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.rpc.CompleteRpcMessage.raw_body)
+  if (raw_body_ == &::google::protobuf::internal::kEmptyString) {
+    raw_body_ = new ::std::string;
+  }
+  raw_body_->assign(value);
 }
-#if LANG_CXX11
-inline void CompleteRpcMessage::set_raw_body(::std::string&& value) {
-  set_has_raw_body();
-  raw_body_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.rpc.CompleteRpcMessage.raw_body)
-}
-#endif
 inline void CompleteRpcMessage::set_raw_body(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_raw_body();
-  raw_body_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.rpc.CompleteRpcMessage.raw_body)
+  if (raw_body_ == &::google::protobuf::internal::kEmptyString) {
+    raw_body_ = new ::std::string;
+  }
+  raw_body_->assign(value);
 }
 inline void CompleteRpcMessage::set_raw_body(const void* value, size_t size) {
   set_has_raw_body();
-  raw_body_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.rpc.CompleteRpcMessage.raw_body)
+  if (raw_body_ == &::google::protobuf::internal::kEmptyString) {
+    raw_body_ = new ::std::string;
+  }
+  raw_body_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* CompleteRpcMessage::mutable_raw_body() {
   set_has_raw_body();
-  // @@protoc_insertion_point(field_mutable:exec.rpc.CompleteRpcMessage.raw_body)
-  return raw_body_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (raw_body_ == &::google::protobuf::internal::kEmptyString) {
+    raw_body_ = new ::std::string;
+  }
+  return raw_body_;
 }
 inline ::std::string* CompleteRpcMessage::release_raw_body() {
-  // @@protoc_insertion_point(field_release:exec.rpc.CompleteRpcMessage.raw_body)
-  if (!has_raw_body()) {
-    return NULL;
-  }
   clear_has_raw_body();
-  return raw_body_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (raw_body_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = raw_body_;
+    raw_body_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void CompleteRpcMessage::set_allocated_raw_body(::std::string* raw_body) {
-  if (raw_body != NULL) {
+  if (raw_body_ != &::google::protobuf::internal::kEmptyString) {
+    delete raw_body_;
+  }
+  if (raw_body) {
     set_has_raw_body();
+    raw_body_ = raw_body;
   } else {
     clear_has_raw_body();
+    raw_body_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  raw_body_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), raw_body);
-  // @@protoc_insertion_point(field_set_allocated:exec.rpc.CompleteRpcMessage.raw_body)
 }
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic pop
-#endif  // __GNUC__
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
 
 // @@protoc_insertion_point(namespace_scope)
 
 }  // namespace rpc
 }  // namespace exec
 
+#ifndef SWIG
 namespace google {
 namespace protobuf {
 
-template <> struct is_proto_enum< ::exec::rpc::RpcMode> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::rpc::RpcMode>() {
   return ::exec::rpc::RpcMode_descriptor();
 }
 
-}  // namespace protobuf
 }  // namespace google
+}  // namespace protobuf
+#endif  // SWIG
 
 // @@protoc_insertion_point(global_scope)
 
-#endif  // PROTOBUF_INCLUDED_GeneralRPC_2eproto
+#endif  // PROTOBUF_GeneralRPC_2eproto__INCLUDED
diff --git a/contrib/native/client/src/protobuf/SchemaDef.pb.cc b/contrib/native/client/src/protobuf/SchemaDef.pb.cc
index bb07f15..40011f8 100644
--- a/contrib/native/client/src/protobuf/SchemaDef.pb.cc
+++ b/contrib/native/client/src/protobuf/SchemaDef.pb.cc
@@ -1,85 +1,85 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: SchemaDef.proto
 
+#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
 #include "SchemaDef.pb.h"
 
 #include <algorithm>
 
 #include <google/protobuf/stubs/common.h>
-#include <google/protobuf/stubs/port.h>
+#include <google/protobuf/stubs/once.h>
 #include <google/protobuf/io/coded_stream.h>
 #include <google/protobuf/wire_format_lite_inl.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>
-// This is a temporary google only hack
-#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
-#include "third_party/protobuf/version.h"
-#endif
 // @@protoc_insertion_point(includes)
 
 namespace exec {
-}  // namespace exec
-namespace protobuf_SchemaDef_2eproto {
-void InitDefaults() {
+
+namespace {
+
+const ::google::protobuf::EnumDescriptor* ValueMode_descriptor_ = NULL;
+
+}  // namespace
+
+
+void protobuf_AssignDesc_SchemaDef_2eproto() {
+  protobuf_AddDesc_SchemaDef_2eproto();
+  const ::google::protobuf::FileDescriptor* file =
+    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
+      "SchemaDef.proto");
+  GOOGLE_CHECK(file != NULL);
+  ValueMode_descriptor_ = file->enum_type(0);
 }
 
-const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors[1];
-const ::google::protobuf::uint32 TableStruct::offsets[1] = {};
-static const ::google::protobuf::internal::MigrationSchema* schemas = NULL;
-static const ::google::protobuf::Message* const* file_default_instances = NULL;
+namespace {
 
-void protobuf_AssignDescriptors() {
-  AddDescriptors();
-  AssignDescriptors(
-      "SchemaDef.proto", schemas, file_default_instances, TableStruct::offsets,
-      NULL, file_level_enum_descriptors, NULL);
+GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
+inline void protobuf_AssignDescriptorsOnce() {
+  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
+                 &protobuf_AssignDesc_SchemaDef_2eproto);
 }
 
-void protobuf_AssignDescriptorsOnce() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, protobuf_AssignDescriptors);
-}
-
-void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
 void protobuf_RegisterTypes(const ::std::string&) {
   protobuf_AssignDescriptorsOnce();
 }
 
-void AddDescriptorsImpl() {
-  InitDefaults();
-  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-      "\n\017SchemaDef.proto\022\004exec\032\013Types.proto*0\n\t"
-      "ValueMode\022\020\n\014VALUE_VECTOR\020\000\022\007\n\003RLE\020\001\022\010\n\004"
-      "DICT\020\002B0\n\033org.apache.drill.exec.protoB\017S"
-      "chemaDefProtosH\001"
-  };
-  ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
-      descriptor, 136);
-  ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
-    "SchemaDef.proto", &protobuf_RegisterTypes);
-  ::protobuf_Types_2eproto::AddDescriptors();
+}  // namespace
+
+void protobuf_ShutdownFile_SchemaDef_2eproto() {
 }
 
-void AddDescriptors() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, AddDescriptorsImpl);
+void protobuf_AddDesc_SchemaDef_2eproto() {
+  static bool already_here = false;
+  if (already_here) return;
+  already_here = true;
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  ::common::protobuf_AddDesc_Types_2eproto();
+  ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
+    "\n\017SchemaDef.proto\022\004exec\032\013Types.proto*0\n\t"
+    "ValueMode\022\020\n\014VALUE_VECTOR\020\000\022\007\n\003RLE\020\001\022\010\n\004"
+    "DICT\020\002B0\n\033org.apache.drill.exec.protoB\017S"
+    "chemaDefProtosH\001", 136);
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
+    "SchemaDef.proto", &protobuf_RegisterTypes);
+  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_SchemaDef_2eproto);
 }
-// Force AddDescriptors() to be called at dynamic initialization time.
-struct StaticDescriptorInitializer {
-  StaticDescriptorInitializer() {
-    AddDescriptors();
+
+// Force AddDescriptors() to be called at static initialization time.
+struct StaticDescriptorInitializer_SchemaDef_2eproto {
+  StaticDescriptorInitializer_SchemaDef_2eproto() {
+    protobuf_AddDesc_SchemaDef_2eproto();
   }
-} static_descriptor_initializer;
-}  // namespace protobuf_SchemaDef_2eproto
-namespace exec {
+} static_descriptor_initializer_SchemaDef_2eproto_;
 const ::google::protobuf::EnumDescriptor* ValueMode_descriptor() {
-  protobuf_SchemaDef_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_SchemaDef_2eproto::file_level_enum_descriptors[0];
+  protobuf_AssignDescriptorsOnce();
+  return ValueMode_descriptor_;
 }
 bool ValueMode_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -91,10 +91,7 @@
 
 
 // @@protoc_insertion_point(namespace_scope)
+
 }  // namespace exec
-namespace google {
-namespace protobuf {
-}  // namespace protobuf
-}  // namespace google
 
 // @@protoc_insertion_point(global_scope)
diff --git a/contrib/native/client/src/protobuf/SchemaDef.pb.h b/contrib/native/client/src/protobuf/SchemaDef.pb.h
index f0dc206..ee01845 100644
--- a/contrib/native/client/src/protobuf/SchemaDef.pb.h
+++ b/contrib/native/client/src/protobuf/SchemaDef.pb.h
@@ -1,53 +1,38 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: SchemaDef.proto
 
-#ifndef PROTOBUF_INCLUDED_SchemaDef_2eproto
-#define PROTOBUF_INCLUDED_SchemaDef_2eproto
+#ifndef PROTOBUF_SchemaDef_2eproto__INCLUDED
+#define PROTOBUF_SchemaDef_2eproto__INCLUDED
 
 #include <string>
 
 #include <google/protobuf/stubs/common.h>
 
-#if GOOGLE_PROTOBUF_VERSION < 3006001
+#if GOOGLE_PROTOBUF_VERSION < 2005000
 #error This file was generated by a newer version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please update
 #error your headers.
 #endif
-#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
+#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
 #error This file was generated by an older version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please
 #error regenerate this file with a newer version of protoc.
 #endif
 
-#include <google/protobuf/io/coded_stream.h>
-#include <google/protobuf/arena.h>
-#include <google/protobuf/arenastring.h>
-#include <google/protobuf/generated_message_table_driven.h>
 #include <google/protobuf/generated_message_util.h>
-#include <google/protobuf/inlined_string_field.h>
-#include <google/protobuf/metadata.h>
-#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
-#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/repeated_field.h>
+#include <google/protobuf/extension_set.h>
 #include <google/protobuf/generated_enum_reflection.h>
 #include "Types.pb.h"
 // @@protoc_insertion_point(includes)
-#define PROTOBUF_INTERNAL_EXPORT_protobuf_SchemaDef_2eproto 
 
-namespace protobuf_SchemaDef_2eproto {
-// Internal implementation detail -- do not use these members.
-struct TableStruct {
-  static const ::google::protobuf::internal::ParseTableField entries[];
-  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
-  static const ::google::protobuf::internal::ParseTable schema[1];
-  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
-  static const ::google::protobuf::internal::SerializationTable serialization_table[];
-  static const ::google::protobuf::uint32 offsets[];
-};
-void AddDescriptors();
-}  // namespace protobuf_SchemaDef_2eproto
 namespace exec {
-}  // namespace exec
-namespace exec {
+
+// Internal implementation detail -- do not call these.
+void  protobuf_AddDesc_SchemaDef_2eproto();
+void protobuf_AssignDesc_SchemaDef_2eproto();
+void protobuf_ShutdownFile_SchemaDef_2eproto();
+
 
 enum ValueMode {
   VALUE_VECTOR = 0,
@@ -77,30 +62,24 @@
 
 // ===================================================================
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic push
-  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
-#endif  // __GNUC__
-#ifdef __GNUC__
-  #pragma GCC diagnostic pop
-#endif  // __GNUC__
 
 // @@protoc_insertion_point(namespace_scope)
 
 }  // namespace exec
 
+#ifndef SWIG
 namespace google {
 namespace protobuf {
 
-template <> struct is_proto_enum< ::exec::ValueMode> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::ValueMode>() {
   return ::exec::ValueMode_descriptor();
 }
 
-}  // namespace protobuf
 }  // namespace google
+}  // namespace protobuf
+#endif  // SWIG
 
 // @@protoc_insertion_point(global_scope)
 
-#endif  // PROTOBUF_INCLUDED_SchemaDef_2eproto
+#endif  // PROTOBUF_SchemaDef_2eproto__INCLUDED
diff --git a/contrib/native/client/src/protobuf/Types.pb.cc b/contrib/native/client/src/protobuf/Types.pb.cc
index 267646b..675bba0 100644
--- a/contrib/native/client/src/protobuf/Types.pb.cc
+++ b/contrib/native/client/src/protobuf/Types.pb.cc
@@ -1,150 +1,134 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: Types.proto
 
+#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
 #include "Types.pb.h"
 
 #include <algorithm>
 
 #include <google/protobuf/stubs/common.h>
-#include <google/protobuf/stubs/port.h>
+#include <google/protobuf/stubs/once.h>
 #include <google/protobuf/io/coded_stream.h>
 #include <google/protobuf/wire_format_lite_inl.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>
-// This is a temporary google only hack
-#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
-#include "third_party/protobuf/version.h"
-#endif
 // @@protoc_insertion_point(includes)
 
 namespace common {
-class MajorTypeDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<MajorType>
-      _instance;
-} _MajorType_default_instance_;
-}  // namespace common
-namespace protobuf_Types_2eproto {
-static void InitDefaultsMajorType() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
 
-  {
-    void* ptr = &::common::_MajorType_default_instance_;
-    new (ptr) ::common::MajorType();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::common::MajorType::InitAsDefaultInstance();
+namespace {
+
+const ::google::protobuf::Descriptor* MajorType_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  MajorType_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* MinorType_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* DataMode_descriptor_ = NULL;
+
+}  // namespace
+
+
+void protobuf_AssignDesc_Types_2eproto() {
+  protobuf_AddDesc_Types_2eproto();
+  const ::google::protobuf::FileDescriptor* file =
+    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
+      "Types.proto");
+  GOOGLE_CHECK(file != NULL);
+  MajorType_descriptor_ = file->message_type(0);
+  static const int MajorType_offsets_[7] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorType, minor_type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorType, mode_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorType, width_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorType, precision_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorType, scale_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorType, timezone_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorType, sub_type_),
+  };
+  MajorType_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      MajorType_descriptor_,
+      MajorType::default_instance_,
+      MajorType_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorType, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorType, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(MajorType));
+  MinorType_descriptor_ = file->enum_type(0);
+  DataMode_descriptor_ = file->enum_type(1);
 }
 
-::google::protobuf::internal::SCCInfo<0> scc_info_MajorType =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsMajorType}, {}};
+namespace {
 
-void InitDefaults() {
-  ::google::protobuf::internal::InitSCC(&scc_info_MajorType.base);
+GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
+inline void protobuf_AssignDescriptorsOnce() {
+  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
+                 &protobuf_AssignDesc_Types_2eproto);
 }
 
-::google::protobuf::Metadata file_level_metadata[1];
-const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors[2];
-
-const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::common::MajorType, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::common::MajorType, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::common::MajorType, minor_type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::common::MajorType, mode_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::common::MajorType, width_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::common::MajorType, precision_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::common::MajorType, scale_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::common::MajorType, timezone_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::common::MajorType, sub_type_),
-  0,
-  1,
-  2,
-  3,
-  4,
-  5,
-  ~0u,
-};
-static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  { 0, 12, sizeof(::common::MajorType)},
-};
-
-static ::google::protobuf::Message const * const file_default_instances[] = {
-  reinterpret_cast<const ::google::protobuf::Message*>(&::common::_MajorType_default_instance_),
-};
-
-void protobuf_AssignDescriptors() {
-  AddDescriptors();
-  AssignDescriptors(
-      "Types.proto", schemas, file_default_instances, TableStruct::offsets,
-      file_level_metadata, file_level_enum_descriptors, NULL);
-}
-
-void protobuf_AssignDescriptorsOnce() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, protobuf_AssignDescriptors);
-}
-
-void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
 void protobuf_RegisterTypes(const ::std::string&) {
   protobuf_AssignDescriptorsOnce();
-  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 1);
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    MajorType_descriptor_, &MajorType::default_instance());
 }
 
-void AddDescriptorsImpl() {
-  InitDefaults();
-  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-      "\n\013Types.proto\022\006common\"\272\001\n\tMajorType\022%\n\nm"
-      "inor_type\030\001 \001(\0162\021.common.MinorType\022\036\n\004mo"
-      "de\030\002 \001(\0162\020.common.DataMode\022\r\n\005width\030\003 \001("
-      "\005\022\021\n\tprecision\030\004 \001(\005\022\r\n\005scale\030\005 \001(\005\022\020\n\010t"
-      "imeZone\030\006 \001(\005\022#\n\010sub_type\030\007 \003(\0162\021.common"
-      ".MinorType*\253\004\n\tMinorType\022\010\n\004LATE\020\000\022\007\n\003MA"
-      "P\020\001\022\013\n\007TINYINT\020\003\022\014\n\010SMALLINT\020\004\022\007\n\003INT\020\005\022"
-      "\n\n\006BIGINT\020\006\022\014\n\010DECIMAL9\020\007\022\r\n\tDECIMAL18\020\010"
-      "\022\023\n\017DECIMAL28SPARSE\020\t\022\023\n\017DECIMAL38SPARSE"
-      "\020\n\022\t\n\005MONEY\020\013\022\010\n\004DATE\020\014\022\010\n\004TIME\020\r\022\n\n\006TIM"
-      "ETZ\020\016\022\017\n\013TIMESTAMPTZ\020\017\022\r\n\tTIMESTAMP\020\020\022\014\n"
-      "\010INTERVAL\020\021\022\n\n\006FLOAT4\020\022\022\n\n\006FLOAT8\020\023\022\007\n\003B"
-      "IT\020\024\022\r\n\tFIXEDCHAR\020\025\022\017\n\013FIXED16CHAR\020\026\022\017\n\013"
-      "FIXEDBINARY\020\027\022\013\n\007VARCHAR\020\030\022\r\n\tVAR16CHAR\020"
-      "\031\022\r\n\tVARBINARY\020\032\022\t\n\005UINT1\020\035\022\t\n\005UINT2\020\036\022\t"
-      "\n\005UINT4\020\037\022\t\n\005UINT8\020 \022\022\n\016DECIMAL28DENSE\020!"
-      "\022\022\n\016DECIMAL38DENSE\020\"\022\016\n\nDM_UNKNOWN\020%\022\020\n\014"
-      "INTERVALYEAR\020&\022\017\n\013INTERVALDAY\020\'\022\010\n\004LIST\020"
-      "(\022\022\n\016GENERIC_OBJECT\020)\022\t\n\005UNION\020*\022\016\n\nVARD"
-      "ECIMAL\020+*=\n\010DataMode\022\017\n\013DM_OPTIONAL\020\000\022\017\n"
-      "\013DM_REQUIRED\020\001\022\017\n\013DM_REPEATED\020\002B-\n\035org.a"
-      "pache.drill.common.typesB\nTypeProtosH\001"
-  };
+}  // namespace
+
+void protobuf_ShutdownFile_Types_2eproto() {
+  delete MajorType::default_instance_;
+  delete MajorType_reflection_;
+}
+
+void protobuf_AddDesc_Types_2eproto() {
+  static bool already_here = false;
+  if (already_here) return;
+  already_here = true;
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
   ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
-      descriptor, 878);
+    "\n\013Types.proto\022\006common\"\272\001\n\tMajorType\022%\n\nm"
+    "inor_type\030\001 \001(\0162\021.common.MinorType\022\036\n\004mo"
+    "de\030\002 \001(\0162\020.common.DataMode\022\r\n\005width\030\003 \001("
+    "\005\022\021\n\tprecision\030\004 \001(\005\022\r\n\005scale\030\005 \001(\005\022\020\n\010t"
+    "imeZone\030\006 \001(\005\022#\n\010sub_type\030\007 \003(\0162\021.common"
+    ".MinorType*\253\004\n\tMinorType\022\010\n\004LATE\020\000\022\007\n\003MA"
+    "P\020\001\022\013\n\007TINYINT\020\003\022\014\n\010SMALLINT\020\004\022\007\n\003INT\020\005\022"
+    "\n\n\006BIGINT\020\006\022\014\n\010DECIMAL9\020\007\022\r\n\tDECIMAL18\020\010"
+    "\022\023\n\017DECIMAL28SPARSE\020\t\022\023\n\017DECIMAL38SPARSE"
+    "\020\n\022\t\n\005MONEY\020\013\022\010\n\004DATE\020\014\022\010\n\004TIME\020\r\022\n\n\006TIM"
+    "ETZ\020\016\022\017\n\013TIMESTAMPTZ\020\017\022\r\n\tTIMESTAMP\020\020\022\014\n"
+    "\010INTERVAL\020\021\022\n\n\006FLOAT4\020\022\022\n\n\006FLOAT8\020\023\022\007\n\003B"
+    "IT\020\024\022\r\n\tFIXEDCHAR\020\025\022\017\n\013FIXED16CHAR\020\026\022\017\n\013"
+    "FIXEDBINARY\020\027\022\013\n\007VARCHAR\020\030\022\r\n\tVAR16CHAR\020"
+    "\031\022\r\n\tVARBINARY\020\032\022\t\n\005UINT1\020\035\022\t\n\005UINT2\020\036\022\t"
+    "\n\005UINT4\020\037\022\t\n\005UINT8\020 \022\022\n\016DECIMAL28DENSE\020!"
+    "\022\022\n\016DECIMAL38DENSE\020\"\022\016\n\nDM_UNKNOWN\020%\022\020\n\014"
+    "INTERVALYEAR\020&\022\017\n\013INTERVALDAY\020\'\022\010\n\004LIST\020"
+    "(\022\022\n\016GENERIC_OBJECT\020)\022\t\n\005UNION\020*\022\016\n\nVARD"
+    "ECIMAL\020+*=\n\010DataMode\022\017\n\013DM_OPTIONAL\020\000\022\017\n"
+    "\013DM_REQUIRED\020\001\022\017\n\013DM_REPEATED\020\002B-\n\035org.a"
+    "pache.drill.common.typesB\nTypeProtosH\001", 878);
   ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
     "Types.proto", &protobuf_RegisterTypes);
+  MajorType::default_instance_ = new MajorType();
+  MajorType::default_instance_->InitAsDefaultInstance();
+  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_Types_2eproto);
 }
 
-void AddDescriptors() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, AddDescriptorsImpl);
-}
-// Force AddDescriptors() to be called at dynamic initialization time.
-struct StaticDescriptorInitializer {
-  StaticDescriptorInitializer() {
-    AddDescriptors();
+// Force AddDescriptors() to be called at static initialization time.
+struct StaticDescriptorInitializer_Types_2eproto {
+  StaticDescriptorInitializer_Types_2eproto() {
+    protobuf_AddDesc_Types_2eproto();
   }
-} static_descriptor_initializer;
-}  // namespace protobuf_Types_2eproto
-namespace common {
+} static_descriptor_initializer_Types_2eproto_;
 const ::google::protobuf::EnumDescriptor* MinorType_descriptor() {
-  protobuf_Types_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_Types_2eproto::file_level_enum_descriptors[0];
+  protobuf_AssignDescriptorsOnce();
+  return MinorType_descriptor_;
 }
 bool MinorType_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 3:
@@ -191,11 +175,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* DataMode_descriptor() {
-  protobuf_Types_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_Types_2eproto::file_level_enum_descriptors[1];
+  protobuf_AssignDescriptorsOnce();
+  return DataMode_descriptor_;
 }
 bool DataMode_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -208,9 +192,7 @@
 
 // ===================================================================
 
-void MajorType::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int MajorType::kMinorTypeFieldNumber;
 const int MajorType::kModeFieldNumber;
 const int MajorType::kWidthFieldNumber;
@@ -218,86 +200,87 @@
 const int MajorType::kScaleFieldNumber;
 const int MajorType::kTimeZoneFieldNumber;
 const int MajorType::kSubTypeFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 MajorType::MajorType()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_Types_2eproto::scc_info_MajorType.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:common.MajorType)
 }
+
+void MajorType::InitAsDefaultInstance() {
+}
+
 MajorType::MajorType(const MajorType& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      sub_type_(from.sub_type_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&minor_type_, &from.minor_type_,
-    static_cast<size_t>(reinterpret_cast<char*>(&timezone_) -
-    reinterpret_cast<char*>(&minor_type_)) + sizeof(timezone_));
-  // @@protoc_insertion_point(copy_constructor:common.MajorType)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void MajorType::SharedCtor() {
-  ::memset(&minor_type_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&timezone_) -
-      reinterpret_cast<char*>(&minor_type_)) + sizeof(timezone_));
+  _cached_size_ = 0;
+  minor_type_ = 0;
+  mode_ = 0;
+  width_ = 0;
+  precision_ = 0;
+  scale_ = 0;
+  timezone_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 MajorType::~MajorType() {
-  // @@protoc_insertion_point(destructor:common.MajorType)
   SharedDtor();
 }
 
 void MajorType::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void MajorType::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* MajorType::descriptor() {
-  ::protobuf_Types_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_Types_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return MajorType_descriptor_;
 }
 
 const MajorType& MajorType::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_Types_2eproto::scc_info_MajorType.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_Types_2eproto();
+  return *default_instance_;
 }
 
+MajorType* MajorType::default_instance_ = NULL;
+
+MajorType* MajorType::New() const {
+  return new MajorType;
+}
 
 void MajorType::Clear() {
-// @@protoc_insertion_point(message_clear_start:common.MajorType)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  sub_type_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 63u) {
-    ::memset(&minor_type_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&timezone_) -
-        reinterpret_cast<char*>(&minor_type_)) + sizeof(timezone_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    minor_type_ = 0;
+    mode_ = 0;
+    width_ = 0;
+    precision_ = 0;
+    scale_ = 0;
+    timezone_ = 0;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  sub_type_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool MajorType::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:common.MajorType)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .common.MinorType minor_type = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -305,19 +288,20 @@
           if (::common::MinorType_IsValid(value)) {
             set_minor_type(static_cast< ::common::MinorType >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_mode;
         break;
       }
 
       // optional .common.DataMode mode = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_mode:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -325,75 +309,84 @@
           if (::common::DataMode_IsValid(value)) {
             set_mode(static_cast< ::common::DataMode >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                2, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(2, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_width;
         break;
       }
 
       // optional int32 width = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_width();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_width:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &width_)));
+          set_has_width();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_precision;
         break;
       }
 
       // optional int32 precision = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_precision();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_precision:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &precision_)));
+          set_has_precision();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_scale;
         break;
       }
 
       // optional int32 scale = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_scale();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_scale:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &scale_)));
+          set_has_scale();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(48)) goto parse_timeZone;
         break;
       }
 
       // optional int32 timeZone = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(48u /* 48 & 0xFF */)) {
-          set_has_timezone();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_timeZone:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &timezone_)));
+          set_has_timezone();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_sub_type;
         break;
       }
 
       // repeated .common.MinorType sub_type = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_sub_type:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -401,168 +394,136 @@
           if (::common::MinorType_IsValid(value)) {
             add_sub_type(static_cast< ::common::MinorType >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                7, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(7, value);
           }
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(58u /* 58 & 0xFF */)) {
-          DO_((::google::protobuf::internal::WireFormat::ReadPackedEnumPreserveUnknowns(
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
+          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
                  input,
-                 7,
-                 ::common::MinorType_IsValid,
-                 mutable_unknown_fields(),
+                 &::common::MinorType_IsValid,
                  this->mutable_sub_type())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_sub_type;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:common.MajorType)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:common.MajorType)
-  return false;
 #undef DO_
 }
 
 void MajorType::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:common.MajorType)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .common.MinorType minor_type = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_minor_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->minor_type(), output);
   }
 
   // optional .common.DataMode mode = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_mode()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       2, this->mode(), output);
   }
 
   // optional int32 width = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_width()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->width(), output);
   }
 
   // optional int32 precision = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_precision()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->precision(), output);
   }
 
   // optional int32 scale = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_scale()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->scale(), output);
   }
 
   // optional int32 timeZone = 6;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_timezone()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(6, this->timezone(), output);
   }
 
   // repeated .common.MinorType sub_type = 7;
-  for (int i = 0, n = this->sub_type_size(); i < n; i++) {
+  for (int i = 0; i < this->sub_type_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       7, this->sub_type(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:common.MajorType)
 }
 
-::google::protobuf::uint8* MajorType::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:common.MajorType)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* MajorType::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .common.MinorType minor_type = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_minor_type()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->minor_type(), target);
   }
 
   // optional .common.DataMode mode = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_mode()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       2, this->mode(), target);
   }
 
   // optional int32 width = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_width()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->width(), target);
   }
 
   // optional int32 precision = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_precision()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->precision(), target);
   }
 
   // optional int32 scale = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_scale()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(5, this->scale(), target);
   }
 
   // optional int32 timeZone = 6;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_timezone()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(6, this->timezone(), target);
   }
 
   // repeated .common.MinorType sub_type = 7;
-  target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
-    7, this->sub_type_, target);
-
-  if (_internal_metadata_.have_unknown_fields()) {
-    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+  for (int i = 0; i < this->sub_type_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
+      7, this->sub_type(i), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:common.MajorType)
+
+  if (!unknown_fields().empty()) {
+    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
+        unknown_fields(), target);
+  }
   return target;
 }
 
-size_t MajorType::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:common.MajorType)
-  size_t total_size = 0;
+int MajorType::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .common.MinorType sub_type = 7;
-  {
-    size_t data_size = 0;
-    unsigned int count = static_cast<unsigned int>(this->sub_type_size());for (unsigned int i = 0; i < count; i++) {
-      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
-        this->sub_type(static_cast<int>(i)));
-    }
-    total_size += (1UL * count) + data_size;
-  }
-
-  if (_has_bits_[0 / 32] & 63u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .common.MinorType minor_type = 1;
     if (has_minor_type()) {
       total_size += 1 +
@@ -604,107 +565,108 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .common.MinorType sub_type = 7;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->sub_type_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
+        this->sub_type(i));
+    }
+    total_size += 1 * this->sub_type_size() + data_size;
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void MajorType::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:common.MajorType)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const MajorType* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const MajorType>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const MajorType*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:common.MajorType)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:common.MajorType)
     MergeFrom(*source);
   }
 }
 
 void MajorType::MergeFrom(const MajorType& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:common.MajorType)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   sub_type_.MergeFrom(from.sub_type_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 63u) {
-    if (cached_has_bits & 0x00000001u) {
-      minor_type_ = from.minor_type_;
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_minor_type()) {
+      set_minor_type(from.minor_type());
     }
-    if (cached_has_bits & 0x00000002u) {
-      mode_ = from.mode_;
+    if (from.has_mode()) {
+      set_mode(from.mode());
     }
-    if (cached_has_bits & 0x00000004u) {
-      width_ = from.width_;
+    if (from.has_width()) {
+      set_width(from.width());
     }
-    if (cached_has_bits & 0x00000008u) {
-      precision_ = from.precision_;
+    if (from.has_precision()) {
+      set_precision(from.precision());
     }
-    if (cached_has_bits & 0x00000010u) {
-      scale_ = from.scale_;
+    if (from.has_scale()) {
+      set_scale(from.scale());
     }
-    if (cached_has_bits & 0x00000020u) {
-      timezone_ = from.timezone_;
+    if (from.has_timezone()) {
+      set_timezone(from.timezone());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void MajorType::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:common.MajorType)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void MajorType::CopyFrom(const MajorType& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:common.MajorType)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool MajorType::IsInitialized() const {
+
   return true;
 }
 
 void MajorType::Swap(MajorType* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void MajorType::InternalSwap(MajorType* other) {
-  using std::swap;
-  sub_type_.InternalSwap(&other->sub_type_);
-  swap(minor_type_, other->minor_type_);
-  swap(mode_, other->mode_);
-  swap(width_, other->width_);
-  swap(precision_, other->precision_);
-  swap(scale_, other->scale_);
-  swap(timezone_, other->timezone_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(minor_type_, other->minor_type_);
+    std::swap(mode_, other->mode_);
+    std::swap(width_, other->width_);
+    std::swap(precision_, other->precision_);
+    std::swap(scale_, other->scale_);
+    std::swap(timezone_, other->timezone_);
+    sub_type_.Swap(&other->sub_type_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata MajorType::GetMetadata() const {
-  protobuf_Types_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_Types_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = MajorType_descriptor_;
+  metadata.reflection = MajorType_reflection_;
+  return metadata;
 }
 
 
 // @@protoc_insertion_point(namespace_scope)
+
 }  // namespace common
-namespace google {
-namespace protobuf {
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::common::MajorType* Arena::CreateMaybeMessage< ::common::MajorType >(Arena* arena) {
-  return Arena::CreateInternal< ::common::MajorType >(arena);
-}
-}  // namespace protobuf
-}  // namespace google
 
 // @@protoc_insertion_point(global_scope)
diff --git a/contrib/native/client/src/protobuf/User.pb.cc b/contrib/native/client/src/protobuf/User.pb.cc
index 108d903..beb720c 100644
--- a/contrib/native/client/src/protobuf/User.pb.cc
+++ b/contrib/native/client/src/protobuf/User.pb.cc
@@ -1,1568 +1,1235 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: User.proto
 
+#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
 #include "User.pb.h"
 
 #include <algorithm>
 
 #include <google/protobuf/stubs/common.h>
-#include <google/protobuf/stubs/port.h>
+#include <google/protobuf/stubs/once.h>
 #include <google/protobuf/io/coded_stream.h>
 #include <google/protobuf/wire_format_lite_inl.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>
-// This is a temporary google only hack
-#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
-#include "third_party/protobuf/version.h"
-#endif
 // @@protoc_insertion_point(includes)
 
-namespace protobuf_BitControl_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_BitControl_2eproto ::google::protobuf::internal::SCCInfo<5> scc_info_PlanFragment;
-}  // namespace protobuf_BitControl_2eproto
-namespace protobuf_UserBitShared_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_QueryId;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_UserCredentials;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<3> scc_info_DrillPBError;
-}  // namespace protobuf_UserBitShared_2eproto
-namespace protobuf_User_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_CatalogMetadata;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_ColumnMetadata;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_ConvertSupport;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_LikeFilter;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_PreparedStatementHandle;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_Property;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_ResultColumnMetadata;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_RpcEndpointInfos;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_SchemaMetadata;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_TableMetadata;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_ServerMeta;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_UserProperties;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto ::google::protobuf::internal::SCCInfo<2> scc_info_PreparedStatement;
-}  // namespace protobuf_User_2eproto
 namespace exec {
 namespace user {
-class PropertyDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<Property>
-      _instance;
-} _Property_default_instance_;
-class UserPropertiesDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<UserProperties>
-      _instance;
-} _UserProperties_default_instance_;
-class RpcEndpointInfosDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<RpcEndpointInfos>
-      _instance;
-} _RpcEndpointInfos_default_instance_;
-class UserToBitHandshakeDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<UserToBitHandshake>
-      _instance;
-} _UserToBitHandshake_default_instance_;
-class RequestResultsDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<RequestResults>
-      _instance;
-} _RequestResults_default_instance_;
-class GetQueryPlanFragmentsDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetQueryPlanFragments>
-      _instance;
-} _GetQueryPlanFragments_default_instance_;
-class QueryPlanFragmentsDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<QueryPlanFragments>
-      _instance;
-} _QueryPlanFragments_default_instance_;
-class BitToUserHandshakeDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<BitToUserHandshake>
-      _instance;
-} _BitToUserHandshake_default_instance_;
-class LikeFilterDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<LikeFilter>
-      _instance;
-} _LikeFilter_default_instance_;
-class GetCatalogsReqDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetCatalogsReq>
-      _instance;
-} _GetCatalogsReq_default_instance_;
-class CatalogMetadataDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<CatalogMetadata>
-      _instance;
-} _CatalogMetadata_default_instance_;
-class GetCatalogsRespDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetCatalogsResp>
-      _instance;
-} _GetCatalogsResp_default_instance_;
-class GetSchemasReqDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetSchemasReq>
-      _instance;
-} _GetSchemasReq_default_instance_;
-class SchemaMetadataDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<SchemaMetadata>
-      _instance;
-} _SchemaMetadata_default_instance_;
-class GetSchemasRespDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetSchemasResp>
-      _instance;
-} _GetSchemasResp_default_instance_;
-class GetTablesReqDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetTablesReq>
-      _instance;
-} _GetTablesReq_default_instance_;
-class TableMetadataDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<TableMetadata>
-      _instance;
-} _TableMetadata_default_instance_;
-class GetTablesRespDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetTablesResp>
-      _instance;
-} _GetTablesResp_default_instance_;
-class GetColumnsReqDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetColumnsReq>
-      _instance;
-} _GetColumnsReq_default_instance_;
-class ColumnMetadataDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<ColumnMetadata>
-      _instance;
-} _ColumnMetadata_default_instance_;
-class GetColumnsRespDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetColumnsResp>
-      _instance;
-} _GetColumnsResp_default_instance_;
-class CreatePreparedStatementReqDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<CreatePreparedStatementReq>
-      _instance;
-} _CreatePreparedStatementReq_default_instance_;
-class ResultColumnMetadataDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<ResultColumnMetadata>
-      _instance;
-} _ResultColumnMetadata_default_instance_;
-class PreparedStatementHandleDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<PreparedStatementHandle>
-      _instance;
-} _PreparedStatementHandle_default_instance_;
-class PreparedStatementDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<PreparedStatement>
-      _instance;
-} _PreparedStatement_default_instance_;
-class CreatePreparedStatementRespDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<CreatePreparedStatementResp>
-      _instance;
-} _CreatePreparedStatementResp_default_instance_;
-class GetServerMetaReqDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetServerMetaReq>
-      _instance;
-} _GetServerMetaReq_default_instance_;
-class ConvertSupportDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<ConvertSupport>
-      _instance;
-} _ConvertSupport_default_instance_;
-class GetServerMetaRespDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<GetServerMetaResp>
-      _instance;
-} _GetServerMetaResp_default_instance_;
-class ServerMetaDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<ServerMeta>
-      _instance;
-} _ServerMeta_default_instance_;
-class RunQueryDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<RunQuery>
-      _instance;
-} _RunQuery_default_instance_;
-}  // namespace user
-}  // namespace exec
-namespace protobuf_User_2eproto {
-static void InitDefaultsProperty() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
 
-  {
-    void* ptr = &::exec::user::_Property_default_instance_;
-    new (ptr) ::exec::user::Property();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::Property::InitAsDefaultInstance();
+namespace {
+
+const ::google::protobuf::Descriptor* Property_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  Property_reflection_ = NULL;
+const ::google::protobuf::Descriptor* UserProperties_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  UserProperties_reflection_ = NULL;
+const ::google::protobuf::Descriptor* RpcEndpointInfos_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  RpcEndpointInfos_reflection_ = NULL;
+const ::google::protobuf::Descriptor* UserToBitHandshake_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  UserToBitHandshake_reflection_ = NULL;
+const ::google::protobuf::Descriptor* RequestResults_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  RequestResults_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetQueryPlanFragments_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetQueryPlanFragments_reflection_ = NULL;
+const ::google::protobuf::Descriptor* QueryPlanFragments_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  QueryPlanFragments_reflection_ = NULL;
+const ::google::protobuf::Descriptor* BitToUserHandshake_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  BitToUserHandshake_reflection_ = NULL;
+const ::google::protobuf::Descriptor* LikeFilter_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  LikeFilter_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetCatalogsReq_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetCatalogsReq_reflection_ = NULL;
+const ::google::protobuf::Descriptor* CatalogMetadata_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  CatalogMetadata_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetCatalogsResp_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetCatalogsResp_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetSchemasReq_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetSchemasReq_reflection_ = NULL;
+const ::google::protobuf::Descriptor* SchemaMetadata_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  SchemaMetadata_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetSchemasResp_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetSchemasResp_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetTablesReq_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetTablesReq_reflection_ = NULL;
+const ::google::protobuf::Descriptor* TableMetadata_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  TableMetadata_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetTablesResp_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetTablesResp_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetColumnsReq_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetColumnsReq_reflection_ = NULL;
+const ::google::protobuf::Descriptor* ColumnMetadata_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  ColumnMetadata_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetColumnsResp_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetColumnsResp_reflection_ = NULL;
+const ::google::protobuf::Descriptor* CreatePreparedStatementReq_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  CreatePreparedStatementReq_reflection_ = NULL;
+const ::google::protobuf::Descriptor* ResultColumnMetadata_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  ResultColumnMetadata_reflection_ = NULL;
+const ::google::protobuf::Descriptor* PreparedStatementHandle_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  PreparedStatementHandle_reflection_ = NULL;
+const ::google::protobuf::Descriptor* PreparedStatement_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  PreparedStatement_reflection_ = NULL;
+const ::google::protobuf::Descriptor* CreatePreparedStatementResp_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  CreatePreparedStatementResp_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetServerMetaReq_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetServerMetaReq_reflection_ = NULL;
+const ::google::protobuf::Descriptor* ConvertSupport_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  ConvertSupport_reflection_ = NULL;
+const ::google::protobuf::Descriptor* GetServerMetaResp_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  GetServerMetaResp_reflection_ = NULL;
+const ::google::protobuf::Descriptor* ServerMeta_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  ServerMeta_reflection_ = NULL;
+const ::google::protobuf::Descriptor* RunQuery_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  RunQuery_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* RpcType_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* SaslSupport_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* QueryResultsMode_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* HandshakeStatus_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* RequestStatus_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* ColumnSearchability_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* ColumnUpdatability_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* CollateSupport_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* CorrelationNamesSupport_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* DateTimeLiteralsSupport_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* GroupBySupport_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* IdentifierCasing_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* NullCollation_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* OrderBySupport_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* OuterJoinSupport_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* SubQuerySupport_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* UnionSupport_descriptor_ = NULL;
+
+}  // namespace
+
+
+void protobuf_AssignDesc_User_2eproto() {
+  protobuf_AddDesc_User_2eproto();
+  const ::google::protobuf::FileDescriptor* file =
+    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
+      "User.proto");
+  GOOGLE_CHECK(file != NULL);
+  Property_descriptor_ = file->message_type(0);
+  static const int Property_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Property, key_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Property, value_),
+  };
+  Property_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      Property_descriptor_,
+      Property::default_instance_,
+      Property_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Property, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Property, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(Property));
+  UserProperties_descriptor_ = file->message_type(1);
+  static const int UserProperties_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserProperties, properties_),
+  };
+  UserProperties_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      UserProperties_descriptor_,
+      UserProperties::default_instance_,
+      UserProperties_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserProperties, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserProperties, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(UserProperties));
+  RpcEndpointInfos_descriptor_ = file->message_type(2);
+  static const int RpcEndpointInfos_offsets_[8] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, version_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, majorversion_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, minorversion_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, patchversion_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, application_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, buildnumber_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, versionqualifier_),
+  };
+  RpcEndpointInfos_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      RpcEndpointInfos_descriptor_,
+      RpcEndpointInfos::default_instance_,
+      RpcEndpointInfos_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RpcEndpointInfos, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(RpcEndpointInfos));
+  UserToBitHandshake_descriptor_ = file->message_type(3);
+  static const int UserToBitHandshake_offsets_[9] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, channel_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, support_listening_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, rpc_version_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, credentials_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, properties_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, support_complex_types_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, support_timeout_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, client_infos_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, sasl_support_),
+  };
+  UserToBitHandshake_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      UserToBitHandshake_descriptor_,
+      UserToBitHandshake::default_instance_,
+      UserToBitHandshake_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserToBitHandshake, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(UserToBitHandshake));
+  RequestResults_descriptor_ = file->message_type(4);
+  static const int RequestResults_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RequestResults, query_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RequestResults, maximum_responses_),
+  };
+  RequestResults_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      RequestResults_descriptor_,
+      RequestResults::default_instance_,
+      RequestResults_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RequestResults, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RequestResults, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(RequestResults));
+  GetQueryPlanFragments_descriptor_ = file->message_type(5);
+  static const int GetQueryPlanFragments_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetQueryPlanFragments, query_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetQueryPlanFragments, type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetQueryPlanFragments, split_plan_),
+  };
+  GetQueryPlanFragments_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetQueryPlanFragments_descriptor_,
+      GetQueryPlanFragments::default_instance_,
+      GetQueryPlanFragments_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetQueryPlanFragments, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetQueryPlanFragments, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetQueryPlanFragments));
+  QueryPlanFragments_descriptor_ = file->message_type(6);
+  static const int QueryPlanFragments_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryPlanFragments, status_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryPlanFragments, query_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryPlanFragments, fragments_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryPlanFragments, error_),
+  };
+  QueryPlanFragments_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      QueryPlanFragments_descriptor_,
+      QueryPlanFragments::default_instance_,
+      QueryPlanFragments_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryPlanFragments, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryPlanFragments, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(QueryPlanFragments));
+  BitToUserHandshake_descriptor_ = file->message_type(7);
+  static const int BitToUserHandshake_offsets_[9] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, rpc_version_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, status_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, errorid_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, errormessage_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, server_infos_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, authenticationmechanisms_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, supported_methods_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, encrypted_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, maxwrappedsize_),
+  };
+  BitToUserHandshake_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      BitToUserHandshake_descriptor_,
+      BitToUserHandshake::default_instance_,
+      BitToUserHandshake_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(BitToUserHandshake, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(BitToUserHandshake));
+  LikeFilter_descriptor_ = file->message_type(8);
+  static const int LikeFilter_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(LikeFilter, pattern_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(LikeFilter, escape_),
+  };
+  LikeFilter_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      LikeFilter_descriptor_,
+      LikeFilter::default_instance_,
+      LikeFilter_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(LikeFilter, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(LikeFilter, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(LikeFilter));
+  GetCatalogsReq_descriptor_ = file->message_type(9);
+  static const int GetCatalogsReq_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetCatalogsReq, catalog_name_filter_),
+  };
+  GetCatalogsReq_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetCatalogsReq_descriptor_,
+      GetCatalogsReq::default_instance_,
+      GetCatalogsReq_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetCatalogsReq, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetCatalogsReq, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetCatalogsReq));
+  CatalogMetadata_descriptor_ = file->message_type(10);
+  static const int CatalogMetadata_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CatalogMetadata, catalog_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CatalogMetadata, description_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CatalogMetadata, connect_),
+  };
+  CatalogMetadata_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      CatalogMetadata_descriptor_,
+      CatalogMetadata::default_instance_,
+      CatalogMetadata_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CatalogMetadata, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CatalogMetadata, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(CatalogMetadata));
+  GetCatalogsResp_descriptor_ = file->message_type(11);
+  static const int GetCatalogsResp_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetCatalogsResp, status_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetCatalogsResp, catalogs_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetCatalogsResp, error_),
+  };
+  GetCatalogsResp_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetCatalogsResp_descriptor_,
+      GetCatalogsResp::default_instance_,
+      GetCatalogsResp_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetCatalogsResp, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetCatalogsResp, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetCatalogsResp));
+  GetSchemasReq_descriptor_ = file->message_type(12);
+  static const int GetSchemasReq_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetSchemasReq, catalog_name_filter_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetSchemasReq, schema_name_filter_),
+  };
+  GetSchemasReq_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetSchemasReq_descriptor_,
+      GetSchemasReq::default_instance_,
+      GetSchemasReq_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetSchemasReq, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetSchemasReq, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetSchemasReq));
+  SchemaMetadata_descriptor_ = file->message_type(13);
+  static const int SchemaMetadata_offsets_[5] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SchemaMetadata, catalog_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SchemaMetadata, schema_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SchemaMetadata, owner_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SchemaMetadata, type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SchemaMetadata, mutable__),
+  };
+  SchemaMetadata_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      SchemaMetadata_descriptor_,
+      SchemaMetadata::default_instance_,
+      SchemaMetadata_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SchemaMetadata, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SchemaMetadata, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(SchemaMetadata));
+  GetSchemasResp_descriptor_ = file->message_type(14);
+  static const int GetSchemasResp_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetSchemasResp, status_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetSchemasResp, schemas_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetSchemasResp, error_),
+  };
+  GetSchemasResp_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetSchemasResp_descriptor_,
+      GetSchemasResp::default_instance_,
+      GetSchemasResp_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetSchemasResp, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetSchemasResp, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetSchemasResp));
+  GetTablesReq_descriptor_ = file->message_type(15);
+  static const int GetTablesReq_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesReq, catalog_name_filter_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesReq, schema_name_filter_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesReq, table_name_filter_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesReq, table_type_filter_),
+  };
+  GetTablesReq_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetTablesReq_descriptor_,
+      GetTablesReq::default_instance_,
+      GetTablesReq_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesReq, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesReq, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetTablesReq));
+  TableMetadata_descriptor_ = file->message_type(16);
+  static const int TableMetadata_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(TableMetadata, catalog_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(TableMetadata, schema_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(TableMetadata, table_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(TableMetadata, type_),
+  };
+  TableMetadata_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      TableMetadata_descriptor_,
+      TableMetadata::default_instance_,
+      TableMetadata_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(TableMetadata, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(TableMetadata, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(TableMetadata));
+  GetTablesResp_descriptor_ = file->message_type(17);
+  static const int GetTablesResp_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesResp, status_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesResp, tables_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesResp, error_),
+  };
+  GetTablesResp_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetTablesResp_descriptor_,
+      GetTablesResp::default_instance_,
+      GetTablesResp_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesResp, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetTablesResp, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetTablesResp));
+  GetColumnsReq_descriptor_ = file->message_type(18);
+  static const int GetColumnsReq_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsReq, catalog_name_filter_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsReq, schema_name_filter_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsReq, table_name_filter_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsReq, column_name_filter_),
+  };
+  GetColumnsReq_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetColumnsReq_descriptor_,
+      GetColumnsReq::default_instance_,
+      GetColumnsReq_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsReq, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsReq, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetColumnsReq));
+  ColumnMetadata_descriptor_ = file->message_type(19);
+  static const int ColumnMetadata_offsets_[17] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, catalog_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, schema_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, table_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, column_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, ordinal_position_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, default_value_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, is_nullable_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, data_type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, char_max_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, char_octet_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, numeric_precision_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, numeric_precision_radix_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, numeric_scale_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, date_time_precision_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, interval_type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, interval_precision_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, column_size_),
+  };
+  ColumnMetadata_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      ColumnMetadata_descriptor_,
+      ColumnMetadata::default_instance_,
+      ColumnMetadata_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ColumnMetadata, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(ColumnMetadata));
+  GetColumnsResp_descriptor_ = file->message_type(20);
+  static const int GetColumnsResp_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsResp, status_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsResp, columns_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsResp, error_),
+  };
+  GetColumnsResp_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetColumnsResp_descriptor_,
+      GetColumnsResp::default_instance_,
+      GetColumnsResp_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsResp, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetColumnsResp, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetColumnsResp));
+  CreatePreparedStatementReq_descriptor_ = file->message_type(21);
+  static const int CreatePreparedStatementReq_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CreatePreparedStatementReq, sql_query_),
+  };
+  CreatePreparedStatementReq_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      CreatePreparedStatementReq_descriptor_,
+      CreatePreparedStatementReq::default_instance_,
+      CreatePreparedStatementReq_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CreatePreparedStatementReq, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CreatePreparedStatementReq, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(CreatePreparedStatementReq));
+  ResultColumnMetadata_descriptor_ = file->message_type(22);
+  static const int ResultColumnMetadata_offsets_[19] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, catalog_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, schema_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, table_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, column_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, label_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, data_type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, is_nullable_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, precision_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, scale_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, signed__),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, display_size_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, is_aliased_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, searchability_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, updatability_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, auto_increment_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, case_sensitivity_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, sortable_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, class_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, is_currency_),
+  };
+  ResultColumnMetadata_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      ResultColumnMetadata_descriptor_,
+      ResultColumnMetadata::default_instance_,
+      ResultColumnMetadata_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ResultColumnMetadata, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(ResultColumnMetadata));
+  PreparedStatementHandle_descriptor_ = file->message_type(23);
+  static const int PreparedStatementHandle_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PreparedStatementHandle, server_info_),
+  };
+  PreparedStatementHandle_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      PreparedStatementHandle_descriptor_,
+      PreparedStatementHandle::default_instance_,
+      PreparedStatementHandle_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PreparedStatementHandle, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PreparedStatementHandle, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(PreparedStatementHandle));
+  PreparedStatement_descriptor_ = file->message_type(24);
+  static const int PreparedStatement_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PreparedStatement, columns_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PreparedStatement, server_handle_),
+  };
+  PreparedStatement_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      PreparedStatement_descriptor_,
+      PreparedStatement::default_instance_,
+      PreparedStatement_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PreparedStatement, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(PreparedStatement, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(PreparedStatement));
+  CreatePreparedStatementResp_descriptor_ = file->message_type(25);
+  static const int CreatePreparedStatementResp_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CreatePreparedStatementResp, status_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CreatePreparedStatementResp, prepared_statement_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CreatePreparedStatementResp, error_),
+  };
+  CreatePreparedStatementResp_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      CreatePreparedStatementResp_descriptor_,
+      CreatePreparedStatementResp::default_instance_,
+      CreatePreparedStatementResp_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CreatePreparedStatementResp, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(CreatePreparedStatementResp, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(CreatePreparedStatementResp));
+  GetServerMetaReq_descriptor_ = file->message_type(26);
+  static const int GetServerMetaReq_offsets_[1] = {
+  };
+  GetServerMetaReq_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetServerMetaReq_descriptor_,
+      GetServerMetaReq::default_instance_,
+      GetServerMetaReq_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetServerMetaReq, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetServerMetaReq, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetServerMetaReq));
+  ConvertSupport_descriptor_ = file->message_type(27);
+  static const int ConvertSupport_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ConvertSupport, from_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ConvertSupport, to_),
+  };
+  ConvertSupport_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      ConvertSupport_descriptor_,
+      ConvertSupport::default_instance_,
+      ConvertSupport_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ConvertSupport, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ConvertSupport, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(ConvertSupport));
+  GetServerMetaResp_descriptor_ = file->message_type(28);
+  static const int GetServerMetaResp_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetServerMetaResp, status_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetServerMetaResp, server_meta_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetServerMetaResp, error_),
+  };
+  GetServerMetaResp_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      GetServerMetaResp_descriptor_,
+      GetServerMetaResp::default_instance_,
+      GetServerMetaResp_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetServerMetaResp, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(GetServerMetaResp, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(GetServerMetaResp));
+  ServerMeta_descriptor_ = file->message_type(29);
+  static const int ServerMeta_offsets_[50] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, all_tables_selectable_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, blob_included_in_max_row_size_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, catalog_at_start_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, catalog_separator_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, catalog_term_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, collate_support_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, column_aliasing_supported_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, convert_support_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, correlation_names_support_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, date_time_functions_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, date_time_literals_support_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, group_by_support_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, identifier_casing_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, identifier_quote_string_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, like_escape_clause_supported_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_binary_literal_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_catalog_name_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_char_literal_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_column_name_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_columns_in_group_by_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_columns_in_order_by_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_columns_in_select_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_cursor_name_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_logical_lob_size_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_row_size_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_schema_name_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_statement_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_statements_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_table_name_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_tables_in_select_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, max_user_name_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, null_collation_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, null_plus_non_null_equals_null_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, numeric_functions_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, order_by_support_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, outer_join_support_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, quoted_identifier_casing_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, read_only_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, schema_term_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, search_escape_string_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, select_for_update_supported_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, special_characters_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, sql_keywords_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, string_functions_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, subquery_support_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, system_functions_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, table_term_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, transaction_supported_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, union_support_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, current_schema_),
+  };
+  ServerMeta_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      ServerMeta_descriptor_,
+      ServerMeta::default_instance_,
+      ServerMeta_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ServerMeta, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(ServerMeta));
+  RunQuery_descriptor_ = file->message_type(30);
+  static const int RunQuery_offsets_[6] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RunQuery, results_mode_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RunQuery, type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RunQuery, plan_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RunQuery, fragments_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RunQuery, prepared_statement_handle_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RunQuery, autolimit_rowcount_),
+  };
+  RunQuery_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      RunQuery_descriptor_,
+      RunQuery::default_instance_,
+      RunQuery_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RunQuery, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RunQuery, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(RunQuery));
+  RpcType_descriptor_ = file->enum_type(0);
+  SaslSupport_descriptor_ = file->enum_type(1);
+  QueryResultsMode_descriptor_ = file->enum_type(2);
+  HandshakeStatus_descriptor_ = file->enum_type(3);
+  RequestStatus_descriptor_ = file->enum_type(4);
+  ColumnSearchability_descriptor_ = file->enum_type(5);
+  ColumnUpdatability_descriptor_ = file->enum_type(6);
+  CollateSupport_descriptor_ = file->enum_type(7);
+  CorrelationNamesSupport_descriptor_ = file->enum_type(8);
+  DateTimeLiteralsSupport_descriptor_ = file->enum_type(9);
+  GroupBySupport_descriptor_ = file->enum_type(10);
+  IdentifierCasing_descriptor_ = file->enum_type(11);
+  NullCollation_descriptor_ = file->enum_type(12);
+  OrderBySupport_descriptor_ = file->enum_type(13);
+  OuterJoinSupport_descriptor_ = file->enum_type(14);
+  SubQuerySupport_descriptor_ = file->enum_type(15);
+  UnionSupport_descriptor_ = file->enum_type(16);
 }
 
-::google::protobuf::internal::SCCInfo<0> scc_info_Property =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsProperty}, {}};
+namespace {
 
-static void InitDefaultsUserProperties() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_UserProperties_default_instance_;
-    new (ptr) ::exec::user::UserProperties();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::UserProperties::InitAsDefaultInstance();
+GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
+inline void protobuf_AssignDescriptorsOnce() {
+  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
+                 &protobuf_AssignDesc_User_2eproto);
 }
 
-::google::protobuf::internal::SCCInfo<1> scc_info_UserProperties =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsUserProperties}, {
-      &protobuf_User_2eproto::scc_info_Property.base,}};
-
-static void InitDefaultsRpcEndpointInfos() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_RpcEndpointInfos_default_instance_;
-    new (ptr) ::exec::user::RpcEndpointInfos();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::RpcEndpointInfos::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_RpcEndpointInfos =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsRpcEndpointInfos}, {}};
-
-static void InitDefaultsUserToBitHandshake() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_UserToBitHandshake_default_instance_;
-    new (ptr) ::exec::user::UserToBitHandshake();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::UserToBitHandshake::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<3> scc_info_UserToBitHandshake =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 3, InitDefaultsUserToBitHandshake}, {
-      &protobuf_UserBitShared_2eproto::scc_info_UserCredentials.base,
-      &protobuf_User_2eproto::scc_info_UserProperties.base,
-      &protobuf_User_2eproto::scc_info_RpcEndpointInfos.base,}};
-
-static void InitDefaultsRequestResults() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_RequestResults_default_instance_;
-    new (ptr) ::exec::user::RequestResults();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::RequestResults::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_RequestResults =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsRequestResults}, {
-      &protobuf_UserBitShared_2eproto::scc_info_QueryId.base,}};
-
-static void InitDefaultsGetQueryPlanFragments() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetQueryPlanFragments_default_instance_;
-    new (ptr) ::exec::user::GetQueryPlanFragments();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetQueryPlanFragments::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_GetQueryPlanFragments =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsGetQueryPlanFragments}, {}};
-
-static void InitDefaultsQueryPlanFragments() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_QueryPlanFragments_default_instance_;
-    new (ptr) ::exec::user::QueryPlanFragments();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::QueryPlanFragments::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<3> scc_info_QueryPlanFragments =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 3, InitDefaultsQueryPlanFragments}, {
-      &protobuf_UserBitShared_2eproto::scc_info_QueryId.base,
-      &protobuf_BitControl_2eproto::scc_info_PlanFragment.base,
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base,}};
-
-static void InitDefaultsBitToUserHandshake() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_BitToUserHandshake_default_instance_;
-    new (ptr) ::exec::user::BitToUserHandshake();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::BitToUserHandshake::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_BitToUserHandshake =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsBitToUserHandshake}, {
-      &protobuf_User_2eproto::scc_info_RpcEndpointInfos.base,}};
-
-static void InitDefaultsLikeFilter() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_LikeFilter_default_instance_;
-    new (ptr) ::exec::user::LikeFilter();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::LikeFilter::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_LikeFilter =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsLikeFilter}, {}};
-
-static void InitDefaultsGetCatalogsReq() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetCatalogsReq_default_instance_;
-    new (ptr) ::exec::user::GetCatalogsReq();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetCatalogsReq::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_GetCatalogsReq =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsGetCatalogsReq}, {
-      &protobuf_User_2eproto::scc_info_LikeFilter.base,}};
-
-static void InitDefaultsCatalogMetadata() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_CatalogMetadata_default_instance_;
-    new (ptr) ::exec::user::CatalogMetadata();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::CatalogMetadata::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_CatalogMetadata =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsCatalogMetadata}, {}};
-
-static void InitDefaultsGetCatalogsResp() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetCatalogsResp_default_instance_;
-    new (ptr) ::exec::user::GetCatalogsResp();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetCatalogsResp::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_GetCatalogsResp =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsGetCatalogsResp}, {
-      &protobuf_User_2eproto::scc_info_CatalogMetadata.base,
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base,}};
-
-static void InitDefaultsGetSchemasReq() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetSchemasReq_default_instance_;
-    new (ptr) ::exec::user::GetSchemasReq();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetSchemasReq::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_GetSchemasReq =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsGetSchemasReq}, {
-      &protobuf_User_2eproto::scc_info_LikeFilter.base,}};
-
-static void InitDefaultsSchemaMetadata() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_SchemaMetadata_default_instance_;
-    new (ptr) ::exec::user::SchemaMetadata();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::SchemaMetadata::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_SchemaMetadata =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsSchemaMetadata}, {}};
-
-static void InitDefaultsGetSchemasResp() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetSchemasResp_default_instance_;
-    new (ptr) ::exec::user::GetSchemasResp();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetSchemasResp::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_GetSchemasResp =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsGetSchemasResp}, {
-      &protobuf_User_2eproto::scc_info_SchemaMetadata.base,
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base,}};
-
-static void InitDefaultsGetTablesReq() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetTablesReq_default_instance_;
-    new (ptr) ::exec::user::GetTablesReq();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetTablesReq::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_GetTablesReq =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsGetTablesReq}, {
-      &protobuf_User_2eproto::scc_info_LikeFilter.base,}};
-
-static void InitDefaultsTableMetadata() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_TableMetadata_default_instance_;
-    new (ptr) ::exec::user::TableMetadata();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::TableMetadata::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_TableMetadata =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsTableMetadata}, {}};
-
-static void InitDefaultsGetTablesResp() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetTablesResp_default_instance_;
-    new (ptr) ::exec::user::GetTablesResp();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetTablesResp::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_GetTablesResp =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsGetTablesResp}, {
-      &protobuf_User_2eproto::scc_info_TableMetadata.base,
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base,}};
-
-static void InitDefaultsGetColumnsReq() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetColumnsReq_default_instance_;
-    new (ptr) ::exec::user::GetColumnsReq();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetColumnsReq::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_GetColumnsReq =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsGetColumnsReq}, {
-      &protobuf_User_2eproto::scc_info_LikeFilter.base,}};
-
-static void InitDefaultsColumnMetadata() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_ColumnMetadata_default_instance_;
-    new (ptr) ::exec::user::ColumnMetadata();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::ColumnMetadata::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_ColumnMetadata =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsColumnMetadata}, {}};
-
-static void InitDefaultsGetColumnsResp() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetColumnsResp_default_instance_;
-    new (ptr) ::exec::user::GetColumnsResp();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetColumnsResp::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_GetColumnsResp =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsGetColumnsResp}, {
-      &protobuf_User_2eproto::scc_info_ColumnMetadata.base,
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base,}};
-
-static void InitDefaultsCreatePreparedStatementReq() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_CreatePreparedStatementReq_default_instance_;
-    new (ptr) ::exec::user::CreatePreparedStatementReq();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::CreatePreparedStatementReq::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_CreatePreparedStatementReq =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsCreatePreparedStatementReq}, {}};
-
-static void InitDefaultsResultColumnMetadata() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_ResultColumnMetadata_default_instance_;
-    new (ptr) ::exec::user::ResultColumnMetadata();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::ResultColumnMetadata::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_ResultColumnMetadata =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsResultColumnMetadata}, {}};
-
-static void InitDefaultsPreparedStatementHandle() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_PreparedStatementHandle_default_instance_;
-    new (ptr) ::exec::user::PreparedStatementHandle();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::PreparedStatementHandle::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_PreparedStatementHandle =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsPreparedStatementHandle}, {}};
-
-static void InitDefaultsPreparedStatement() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_PreparedStatement_default_instance_;
-    new (ptr) ::exec::user::PreparedStatement();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::PreparedStatement::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_PreparedStatement =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsPreparedStatement}, {
-      &protobuf_User_2eproto::scc_info_ResultColumnMetadata.base,
-      &protobuf_User_2eproto::scc_info_PreparedStatementHandle.base,}};
-
-static void InitDefaultsCreatePreparedStatementResp() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_CreatePreparedStatementResp_default_instance_;
-    new (ptr) ::exec::user::CreatePreparedStatementResp();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::CreatePreparedStatementResp::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_CreatePreparedStatementResp =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsCreatePreparedStatementResp}, {
-      &protobuf_User_2eproto::scc_info_PreparedStatement.base,
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base,}};
-
-static void InitDefaultsGetServerMetaReq() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetServerMetaReq_default_instance_;
-    new (ptr) ::exec::user::GetServerMetaReq();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetServerMetaReq::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_GetServerMetaReq =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsGetServerMetaReq}, {}};
-
-static void InitDefaultsConvertSupport() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_ConvertSupport_default_instance_;
-    new (ptr) ::exec::user::ConvertSupport();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::ConvertSupport::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_ConvertSupport =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsConvertSupport}, {}};
-
-static void InitDefaultsGetServerMetaResp() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_GetServerMetaResp_default_instance_;
-    new (ptr) ::exec::user::GetServerMetaResp();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::GetServerMetaResp::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_GetServerMetaResp =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsGetServerMetaResp}, {
-      &protobuf_User_2eproto::scc_info_ServerMeta.base,
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base,}};
-
-static void InitDefaultsServerMeta() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_ServerMeta_default_instance_;
-    new (ptr) ::exec::user::ServerMeta();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::ServerMeta::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_ServerMeta =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsServerMeta}, {
-      &protobuf_User_2eproto::scc_info_ConvertSupport.base,}};
-
-static void InitDefaultsRunQuery() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::user::_RunQuery_default_instance_;
-    new (ptr) ::exec::user::RunQuery();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::user::RunQuery::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_RunQuery =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsRunQuery}, {
-      &protobuf_BitControl_2eproto::scc_info_PlanFragment.base,
-      &protobuf_User_2eproto::scc_info_PreparedStatementHandle.base,}};
-
-void InitDefaults() {
-  ::google::protobuf::internal::InitSCC(&scc_info_Property.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_UserProperties.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_RpcEndpointInfos.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_UserToBitHandshake.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_RequestResults.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetQueryPlanFragments.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_QueryPlanFragments.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_BitToUserHandshake.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_LikeFilter.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetCatalogsReq.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_CatalogMetadata.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetCatalogsResp.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetSchemasReq.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_SchemaMetadata.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetSchemasResp.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetTablesReq.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_TableMetadata.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetTablesResp.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetColumnsReq.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_ColumnMetadata.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetColumnsResp.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_CreatePreparedStatementReq.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_ResultColumnMetadata.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_PreparedStatementHandle.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_PreparedStatement.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_CreatePreparedStatementResp.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetServerMetaReq.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_ConvertSupport.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_GetServerMetaResp.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_ServerMeta.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_RunQuery.base);
-}
-
-::google::protobuf::Metadata file_level_metadata[31];
-const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors[17];
-
-const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::Property, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::Property, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::Property, key_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::Property, value_),
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserProperties, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserProperties, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserProperties, properties_),
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, version_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, majorversion_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, minorversion_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, patchversion_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, application_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, buildnumber_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RpcEndpointInfos, versionqualifier_),
-  0,
-  1,
-  4,
-  5,
-  6,
-  2,
-  7,
-  3,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, channel_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, support_listening_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, rpc_version_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, credentials_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, properties_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, support_complex_types_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, support_timeout_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, client_infos_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::UserToBitHandshake, sasl_support_),
-  8,
-  4,
-  3,
-  0,
-  1,
-  5,
-  6,
-  2,
-  7,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RequestResults, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RequestResults, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RequestResults, query_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RequestResults, maximum_responses_),
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetQueryPlanFragments, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetQueryPlanFragments, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetQueryPlanFragments, query_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetQueryPlanFragments, type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetQueryPlanFragments, split_plan_),
-  0,
-  2,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::QueryPlanFragments, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::QueryPlanFragments, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::QueryPlanFragments, status_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::QueryPlanFragments, query_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::QueryPlanFragments, fragments_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::QueryPlanFragments, error_),
-  2,
-  0,
-  ~0u,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, rpc_version_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, status_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, errorid_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, errormessage_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, server_infos_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, authenticationmechanisms_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, supported_methods_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, encrypted_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::BitToUserHandshake, maxwrappedsize_),
-  3,
-  6,
-  0,
-  1,
-  2,
-  ~0u,
-  ~0u,
-  4,
-  5,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::LikeFilter, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::LikeFilter, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::LikeFilter, pattern_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::LikeFilter, escape_),
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetCatalogsReq, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetCatalogsReq, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetCatalogsReq, catalog_name_filter_),
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CatalogMetadata, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CatalogMetadata, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CatalogMetadata, catalog_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CatalogMetadata, description_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CatalogMetadata, connect_),
-  0,
-  1,
-  2,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetCatalogsResp, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetCatalogsResp, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetCatalogsResp, status_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetCatalogsResp, catalogs_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetCatalogsResp, error_),
-  1,
-  ~0u,
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetSchemasReq, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetSchemasReq, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetSchemasReq, catalog_name_filter_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetSchemasReq, schema_name_filter_),
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::SchemaMetadata, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::SchemaMetadata, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::SchemaMetadata, catalog_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::SchemaMetadata, schema_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::SchemaMetadata, owner_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::SchemaMetadata, type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::SchemaMetadata, mutable__),
-  0,
-  1,
-  2,
-  3,
-  4,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetSchemasResp, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetSchemasResp, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetSchemasResp, status_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetSchemasResp, schemas_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetSchemasResp, error_),
-  1,
-  ~0u,
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesReq, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesReq, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesReq, catalog_name_filter_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesReq, schema_name_filter_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesReq, table_name_filter_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesReq, table_type_filter_),
-  0,
-  1,
-  2,
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::TableMetadata, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::TableMetadata, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::TableMetadata, catalog_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::TableMetadata, schema_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::TableMetadata, table_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::TableMetadata, type_),
-  0,
-  1,
-  2,
-  3,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesResp, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesResp, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesResp, status_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesResp, tables_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetTablesResp, error_),
-  1,
-  ~0u,
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsReq, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsReq, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsReq, catalog_name_filter_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsReq, schema_name_filter_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsReq, table_name_filter_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsReq, column_name_filter_),
-  0,
-  1,
-  2,
-  3,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, catalog_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, schema_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, table_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, column_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, ordinal_position_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, default_value_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, is_nullable_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, data_type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, char_max_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, char_octet_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, numeric_precision_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, numeric_precision_radix_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, numeric_scale_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, date_time_precision_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, interval_type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, interval_precision_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ColumnMetadata, column_size_),
-  0,
-  1,
-  2,
-  3,
-  7,
-  4,
-  8,
-  5,
-  9,
-  10,
-  11,
-  12,
-  13,
-  14,
-  6,
-  15,
-  16,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsResp, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsResp, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsResp, status_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsResp, columns_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetColumnsResp, error_),
-  1,
-  ~0u,
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CreatePreparedStatementReq, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CreatePreparedStatementReq, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CreatePreparedStatementReq, sql_query_),
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, catalog_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, schema_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, table_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, column_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, label_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, data_type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, is_nullable_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, precision_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, scale_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, signed__),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, display_size_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, is_aliased_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, searchability_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, updatability_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, auto_increment_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, case_sensitivity_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, sortable_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, class_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ResultColumnMetadata, is_currency_),
-  0,
-  1,
-  2,
-  3,
-  4,
-  5,
-  10,
-  7,
-  8,
-  11,
-  9,
-  12,
-  14,
-  15,
-  13,
-  16,
-  17,
-  6,
-  18,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::PreparedStatementHandle, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::PreparedStatementHandle, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::PreparedStatementHandle, server_info_),
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::PreparedStatement, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::PreparedStatement, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::PreparedStatement, columns_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::PreparedStatement, server_handle_),
-  ~0u,
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CreatePreparedStatementResp, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CreatePreparedStatementResp, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CreatePreparedStatementResp, status_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CreatePreparedStatementResp, prepared_statement_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::CreatePreparedStatementResp, error_),
-  2,
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetServerMetaReq, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetServerMetaReq, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ConvertSupport, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ConvertSupport, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ConvertSupport, from_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ConvertSupport, to_),
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetServerMetaResp, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetServerMetaResp, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetServerMetaResp, status_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetServerMetaResp, server_meta_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::GetServerMetaResp, error_),
-  2,
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, all_tables_selectable_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, blob_included_in_max_row_size_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, catalog_at_start_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, catalog_separator_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, catalog_term_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, collate_support_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, column_aliasing_supported_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, convert_support_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, correlation_names_support_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, date_time_functions_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, date_time_literals_support_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, group_by_support_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, identifier_casing_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, identifier_quote_string_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, like_escape_clause_supported_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_binary_literal_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_catalog_name_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_char_literal_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_column_name_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_columns_in_group_by_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_columns_in_order_by_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_columns_in_select_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_cursor_name_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_logical_lob_size_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_row_size_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_schema_name_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_statement_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_statements_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_table_name_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_tables_in_select_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, max_user_name_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, null_collation_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, null_plus_non_null_equals_null_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, numeric_functions_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, order_by_support_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, outer_join_support_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, quoted_identifier_casing_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, read_only_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, schema_term_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, search_escape_string_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, select_for_update_supported_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, special_characters_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, sql_keywords_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, string_functions_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, subquery_support_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, system_functions_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, table_term_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, transaction_supported_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, union_support_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::ServerMeta, current_schema_),
-  8,
-  9,
-  10,
-  0,
-  1,
-  ~0u,
-  11,
-  ~0u,
-  36,
-  ~0u,
-  ~0u,
-  37,
-  12,
-  2,
-  29,
-  13,
-  14,
-  15,
-  16,
-  17,
-  18,
-  19,
-  20,
-  21,
-  22,
-  23,
-  24,
-  25,
-  26,
-  27,
-  28,
-  33,
-  30,
-  ~0u,
-  ~0u,
-  ~0u,
-  34,
-  31,
-  3,
-  4,
-  32,
-  5,
-  ~0u,
-  ~0u,
-  ~0u,
-  ~0u,
-  6,
-  35,
-  ~0u,
-  7,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RunQuery, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RunQuery, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RunQuery, results_mode_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RunQuery, type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RunQuery, plan_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RunQuery, fragments_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RunQuery, prepared_statement_handle_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::user::RunQuery, autolimit_rowcount_),
-  3,
-  4,
-  0,
-  ~0u,
-  1,
-  2,
-};
-static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  { 0, 7, sizeof(::exec::user::Property)},
-  { 9, 15, sizeof(::exec::user::UserProperties)},
-  { 16, 29, sizeof(::exec::user::RpcEndpointInfos)},
-  { 37, 51, sizeof(::exec::user::UserToBitHandshake)},
-  { 60, 67, sizeof(::exec::user::RequestResults)},
-  { 69, 77, sizeof(::exec::user::GetQueryPlanFragments)},
-  { 80, 89, sizeof(::exec::user::QueryPlanFragments)},
-  { 93, 107, sizeof(::exec::user::BitToUserHandshake)},
-  { 116, 123, sizeof(::exec::user::LikeFilter)},
-  { 125, 131, sizeof(::exec::user::GetCatalogsReq)},
-  { 132, 140, sizeof(::exec::user::CatalogMetadata)},
-  { 143, 151, sizeof(::exec::user::GetCatalogsResp)},
-  { 154, 161, sizeof(::exec::user::GetSchemasReq)},
-  { 163, 173, sizeof(::exec::user::SchemaMetadata)},
-  { 178, 186, sizeof(::exec::user::GetSchemasResp)},
-  { 189, 198, sizeof(::exec::user::GetTablesReq)},
-  { 202, 211, sizeof(::exec::user::TableMetadata)},
-  { 215, 223, sizeof(::exec::user::GetTablesResp)},
-  { 226, 235, sizeof(::exec::user::GetColumnsReq)},
-  { 239, 261, sizeof(::exec::user::ColumnMetadata)},
-  { 278, 286, sizeof(::exec::user::GetColumnsResp)},
-  { 289, 295, sizeof(::exec::user::CreatePreparedStatementReq)},
-  { 296, 320, sizeof(::exec::user::ResultColumnMetadata)},
-  { 339, 345, sizeof(::exec::user::PreparedStatementHandle)},
-  { 346, 353, sizeof(::exec::user::PreparedStatement)},
-  { 355, 363, sizeof(::exec::user::CreatePreparedStatementResp)},
-  { 366, 371, sizeof(::exec::user::GetServerMetaReq)},
-  { 371, 378, sizeof(::exec::user::ConvertSupport)},
-  { 380, 388, sizeof(::exec::user::GetServerMetaResp)},
-  { 391, 446, sizeof(::exec::user::ServerMeta)},
-  { 496, 507, sizeof(::exec::user::RunQuery)},
-};
-
-static ::google::protobuf::Message const * const file_default_instances[] = {
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_Property_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_UserProperties_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_RpcEndpointInfos_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_UserToBitHandshake_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_RequestResults_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetQueryPlanFragments_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_QueryPlanFragments_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_BitToUserHandshake_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_LikeFilter_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetCatalogsReq_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_CatalogMetadata_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetCatalogsResp_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetSchemasReq_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_SchemaMetadata_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetSchemasResp_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetTablesReq_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_TableMetadata_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetTablesResp_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetColumnsReq_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_ColumnMetadata_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetColumnsResp_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_CreatePreparedStatementReq_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_ResultColumnMetadata_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_PreparedStatementHandle_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_PreparedStatement_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_CreatePreparedStatementResp_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetServerMetaReq_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_ConvertSupport_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_GetServerMetaResp_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_ServerMeta_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::user::_RunQuery_default_instance_),
-};
-
-void protobuf_AssignDescriptors() {
-  AddDescriptors();
-  AssignDescriptors(
-      "User.proto", schemas, file_default_instances, TableStruct::offsets,
-      file_level_metadata, file_level_enum_descriptors, NULL);
-}
-
-void protobuf_AssignDescriptorsOnce() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, protobuf_AssignDescriptors);
-}
-
-void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
 void protobuf_RegisterTypes(const ::std::string&) {
   protobuf_AssignDescriptorsOnce();
-  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 31);
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    Property_descriptor_, &Property::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    UserProperties_descriptor_, &UserProperties::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    RpcEndpointInfos_descriptor_, &RpcEndpointInfos::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    UserToBitHandshake_descriptor_, &UserToBitHandshake::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    RequestResults_descriptor_, &RequestResults::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetQueryPlanFragments_descriptor_, &GetQueryPlanFragments::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    QueryPlanFragments_descriptor_, &QueryPlanFragments::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    BitToUserHandshake_descriptor_, &BitToUserHandshake::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    LikeFilter_descriptor_, &LikeFilter::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetCatalogsReq_descriptor_, &GetCatalogsReq::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    CatalogMetadata_descriptor_, &CatalogMetadata::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetCatalogsResp_descriptor_, &GetCatalogsResp::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetSchemasReq_descriptor_, &GetSchemasReq::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    SchemaMetadata_descriptor_, &SchemaMetadata::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetSchemasResp_descriptor_, &GetSchemasResp::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetTablesReq_descriptor_, &GetTablesReq::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    TableMetadata_descriptor_, &TableMetadata::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetTablesResp_descriptor_, &GetTablesResp::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetColumnsReq_descriptor_, &GetColumnsReq::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    ColumnMetadata_descriptor_, &ColumnMetadata::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetColumnsResp_descriptor_, &GetColumnsResp::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    CreatePreparedStatementReq_descriptor_, &CreatePreparedStatementReq::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    ResultColumnMetadata_descriptor_, &ResultColumnMetadata::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    PreparedStatementHandle_descriptor_, &PreparedStatementHandle::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    PreparedStatement_descriptor_, &PreparedStatement::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    CreatePreparedStatementResp_descriptor_, &CreatePreparedStatementResp::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetServerMetaReq_descriptor_, &GetServerMetaReq::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    ConvertSupport_descriptor_, &ConvertSupport::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    GetServerMetaResp_descriptor_, &GetServerMetaResp::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    ServerMeta_descriptor_, &ServerMeta::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    RunQuery_descriptor_, &RunQuery::default_instance());
 }
 
-void AddDescriptorsImpl() {
-  InitDefaults();
-  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-      "\n\nUser.proto\022\texec.user\032\017SchemaDef.proto"
-      "\032\013Types.proto\032\023UserBitShared.proto\032\rBitD"
-      "ata.proto\032\020BitControl.proto\032\025ExecutionPr"
-      "otos.proto\"&\n\010Property\022\013\n\003key\030\001 \002(\t\022\r\n\005v"
-      "alue\030\002 \002(\t\"9\n\016UserProperties\022\'\n\nproperti"
-      "es\030\001 \003(\0132\023.exec.user.Property\"\267\001\n\020RpcEnd"
-      "pointInfos\022\014\n\004name\030\001 \001(\t\022\017\n\007version\030\002 \001("
-      "\t\022\024\n\014majorVersion\030\003 \001(\r\022\024\n\014minorVersion\030"
-      "\004 \001(\r\022\024\n\014patchVersion\030\005 \001(\r\022\023\n\013applicati"
-      "on\030\006 \001(\t\022\023\n\013buildNumber\030\007 \001(\r\022\030\n\020version"
-      "Qualifier\030\010 \001(\t\"\375\002\n\022UserToBitHandshake\022."
-      "\n\007channel\030\001 \001(\0162\027.exec.shared.RpcChannel"
-      ":\004USER\022\031\n\021support_listening\030\002 \001(\010\022\023\n\013rpc"
-      "_version\030\003 \001(\005\0221\n\013credentials\030\004 \001(\0132\034.ex"
-      "ec.shared.UserCredentials\022-\n\nproperties\030"
-      "\005 \001(\0132\031.exec.user.UserProperties\022$\n\025supp"
-      "ort_complex_types\030\006 \001(\010:\005false\022\036\n\017suppor"
-      "t_timeout\030\007 \001(\010:\005false\0221\n\014client_infos\030\010"
-      " \001(\0132\033.exec.user.RpcEndpointInfos\022,\n\014sas"
-      "l_support\030\t \001(\0162\026.exec.user.SaslSupport\""
-      "S\n\016RequestResults\022&\n\010query_id\030\001 \001(\0132\024.ex"
-      "ec.shared.QueryId\022\031\n\021maximum_responses\030\002"
-      " \001(\005\"g\n\025GetQueryPlanFragments\022\r\n\005query\030\001"
-      " \002(\t\022$\n\004type\030\002 \001(\0162\026.exec.shared.QueryTy"
-      "pe\022\031\n\nsplit_plan\030\003 \001(\010:\005false\"\316\001\n\022QueryP"
-      "lanFragments\0223\n\006status\030\001 \002(\0162#.exec.shar"
-      "ed.QueryResult.QueryState\022&\n\010query_id\030\002 "
-      "\001(\0132\024.exec.shared.QueryId\0221\n\tfragments\030\003"
-      " \003(\0132\036.exec.bit.control.PlanFragment\022(\n\005"
-      "error\030\004 \001(\0132\031.exec.shared.DrillPBError\"\253"
-      "\002\n\022BitToUserHandshake\022\023\n\013rpc_version\030\002 \001"
-      "(\005\022*\n\006status\030\003 \001(\0162\032.exec.user.Handshake"
-      "Status\022\017\n\007errorId\030\004 \001(\t\022\024\n\014errorMessage\030"
-      "\005 \001(\t\0221\n\014server_infos\030\006 \001(\0132\033.exec.user."
-      "RpcEndpointInfos\022 \n\030authenticationMechan"
-      "isms\030\007 \003(\t\022-\n\021supported_methods\030\010 \003(\0162\022."
-      "exec.user.RpcType\022\021\n\tencrypted\030\t \001(\010\022\026\n\016"
-      "maxWrappedSize\030\n \001(\005\"-\n\nLikeFilter\022\017\n\007pa"
-      "ttern\030\001 \001(\t\022\016\n\006escape\030\002 \001(\t\"D\n\016GetCatalo"
-      "gsReq\0222\n\023catalog_name_filter\030\001 \001(\0132\025.exe"
-      "c.user.LikeFilter\"M\n\017CatalogMetadata\022\024\n\014"
-      "catalog_name\030\001 \001(\t\022\023\n\013description\030\002 \001(\t\022"
-      "\017\n\007connect\030\003 \001(\t\"\223\001\n\017GetCatalogsResp\022(\n\006"
-      "status\030\001 \001(\0162\030.exec.user.RequestStatus\022,"
-      "\n\010catalogs\030\002 \003(\0132\032.exec.user.CatalogMeta"
-      "data\022(\n\005error\030\003 \001(\0132\031.exec.shared.DrillP"
-      "BError\"v\n\rGetSchemasReq\0222\n\023catalog_name_"
-      "filter\030\001 \001(\0132\025.exec.user.LikeFilter\0221\n\022s"
-      "chema_name_filter\030\002 \001(\0132\025.exec.user.Like"
-      "Filter\"i\n\016SchemaMetadata\022\024\n\014catalog_name"
-      "\030\001 \001(\t\022\023\n\013schema_name\030\002 \001(\t\022\r\n\005owner\030\003 \001"
-      "(\t\022\014\n\004type\030\004 \001(\t\022\017\n\007mutable\030\005 \001(\t\"\220\001\n\016Ge"
-      "tSchemasResp\022(\n\006status\030\001 \001(\0162\030.exec.user"
-      ".RequestStatus\022*\n\007schemas\030\002 \003(\0132\031.exec.u"
-      "ser.SchemaMetadata\022(\n\005error\030\003 \001(\0132\031.exec"
-      ".shared.DrillPBError\"\302\001\n\014GetTablesReq\0222\n"
-      "\023catalog_name_filter\030\001 \001(\0132\025.exec.user.L"
-      "ikeFilter\0221\n\022schema_name_filter\030\002 \001(\0132\025."
-      "exec.user.LikeFilter\0220\n\021table_name_filte"
-      "r\030\003 \001(\0132\025.exec.user.LikeFilter\022\031\n\021table_"
-      "type_filter\030\004 \003(\t\"\\\n\rTableMetadata\022\024\n\014ca"
-      "talog_name\030\001 \001(\t\022\023\n\013schema_name\030\002 \001(\t\022\022\n"
-      "\ntable_name\030\003 \001(\t\022\014\n\004type\030\004 \001(\t\"\215\001\n\rGetT"
-      "ablesResp\022(\n\006status\030\001 \001(\0162\030.exec.user.Re"
-      "questStatus\022(\n\006tables\030\002 \003(\0132\030.exec.user."
-      "TableMetadata\022(\n\005error\030\003 \001(\0132\031.exec.shar"
-      "ed.DrillPBError\"\333\001\n\rGetColumnsReq\0222\n\023cat"
-      "alog_name_filter\030\001 \001(\0132\025.exec.user.LikeF"
-      "ilter\0221\n\022schema_name_filter\030\002 \001(\0132\025.exec"
-      ".user.LikeFilter\0220\n\021table_name_filter\030\003 "
-      "\001(\0132\025.exec.user.LikeFilter\0221\n\022column_nam"
-      "e_filter\030\004 \001(\0132\025.exec.user.LikeFilter\"\251\003"
-      "\n\016ColumnMetadata\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"
-      "\023\n\013column_name\030\004 \001(\t\022\030\n\020ordinal_position"
-      "\030\005 \001(\005\022\025\n\rdefault_value\030\006 \001(\t\022\023\n\013is_null"
-      "able\030\007 \001(\010\022\021\n\tdata_type\030\010 \001(\t\022\027\n\017char_ma"
-      "x_length\030\t \001(\005\022\031\n\021char_octet_length\030\n \001("
-      "\005\022\031\n\021numeric_precision\030\013 \001(\005\022\037\n\027numeric_"
-      "precision_radix\030\014 \001(\005\022\025\n\rnumeric_scale\030\r"
-      " \001(\005\022\033\n\023date_time_precision\030\016 \001(\005\022\025\n\rint"
-      "erval_type\030\017 \001(\t\022\032\n\022interval_precision\030\020"
-      " \001(\005\022\023\n\013column_size\030\021 \001(\005\"\220\001\n\016GetColumns"
-      "Resp\022(\n\006status\030\001 \001(\0162\030.exec.user.Request"
-      "Status\022*\n\007columns\030\002 \003(\0132\031.exec.user.Colu"
-      "mnMetadata\022(\n\005error\030\003 \001(\0132\031.exec.shared."
-      "DrillPBError\"/\n\032CreatePreparedStatementR"
-      "eq\022\021\n\tsql_query\030\001 \001(\t\"\326\003\n\024ResultColumnMe"
-      "tadata\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013schema_n"
-      "ame\030\002 \001(\t\022\022\n\ntable_name\030\003 \001(\t\022\023\n\013column_"
-      "name\030\004 \001(\t\022\r\n\005label\030\005 \001(\t\022\021\n\tdata_type\030\006"
-      " \001(\t\022\023\n\013is_nullable\030\007 \001(\010\022\021\n\tprecision\030\010"
-      " \001(\005\022\r\n\005scale\030\t \001(\005\022\016\n\006signed\030\n \001(\010\022\024\n\014d"
-      "isplay_size\030\013 \001(\005\022\022\n\nis_aliased\030\014 \001(\010\0225\n"
-      "\rsearchability\030\r \001(\0162\036.exec.user.ColumnS"
-      "earchability\0223\n\014updatability\030\016 \001(\0162\035.exe"
-      "c.user.ColumnUpdatability\022\026\n\016auto_increm"
-      "ent\030\017 \001(\010\022\030\n\020case_sensitivity\030\020 \001(\010\022\020\n\010s"
-      "ortable\030\021 \001(\010\022\022\n\nclass_name\030\022 \001(\t\022\023\n\013is_"
-      "currency\030\024 \001(\010\".\n\027PreparedStatementHandl"
-      "e\022\023\n\013server_info\030\001 \001(\014\"\200\001\n\021PreparedState"
-      "ment\0220\n\007columns\030\001 \003(\0132\037.exec.user.Result"
-      "ColumnMetadata\0229\n\rserver_handle\030\002 \001(\0132\"."
-      "exec.user.PreparedStatementHandle\"\253\001\n\033Cr"
-      "eatePreparedStatementResp\022(\n\006status\030\001 \001("
-      "\0162\030.exec.user.RequestStatus\0228\n\022prepared_"
-      "statement\030\002 \001(\0132\034.exec.user.PreparedStat"
-      "ement\022(\n\005error\030\003 \001(\0132\031.exec.shared.Drill"
-      "PBError\"\022\n\020GetServerMetaReq\"P\n\016ConvertSu"
-      "pport\022\037\n\004from\030\001 \002(\0162\021.common.MinorType\022\035"
-      "\n\002to\030\002 \002(\0162\021.common.MinorType\"\223\001\n\021GetSer"
-      "verMetaResp\022(\n\006status\030\001 \001(\0162\030.exec.user."
-      "RequestStatus\022*\n\013server_meta\030\002 \001(\0132\025.exe"
-      "c.user.ServerMeta\022(\n\005error\030\003 \001(\0132\031.exec."
-      "shared.DrillPBError\"\227\016\n\nServerMeta\022\035\n\025al"
-      "l_tables_selectable\030\001 \001(\010\022%\n\035blob_includ"
-      "ed_in_max_row_size\030\002 \001(\010\022\030\n\020catalog_at_s"
-      "tart\030\003 \001(\010\022\031\n\021catalog_separator\030\004 \001(\t\022\024\n"
-      "\014catalog_term\030\005 \001(\t\0222\n\017collate_support\030\006"
-      " \003(\0162\031.exec.user.CollateSupport\022!\n\031colum"
-      "n_aliasing_supported\030\007 \001(\010\0222\n\017convert_su"
-      "pport\030\010 \003(\0132\031.exec.user.ConvertSupport\022E"
-      "\n\031correlation_names_support\030\t \001(\0162\".exec"
-      ".user.CorrelationNamesSupport\022\033\n\023date_ti"
-      "me_functions\030\n \003(\t\022F\n\032date_time_literals"
-      "_support\030\013 \003(\0162\".exec.user.DateTimeLiter"
-      "alsSupport\0223\n\020group_by_support\030\014 \001(\0162\031.e"
-      "xec.user.GroupBySupport\0226\n\021identifier_ca"
-      "sing\030\r \001(\0162\033.exec.user.IdentifierCasing\022"
-      "\037\n\027identifier_quote_string\030\016 \001(\t\022$\n\034like"
-      "_escape_clause_supported\030\017 \001(\010\022!\n\031max_bi"
-      "nary_literal_length\030\020 \001(\r\022\037\n\027max_catalog"
-      "_name_length\030\021 \001(\r\022\037\n\027max_char_literal_l"
-      "ength\030\022 \001(\r\022\036\n\026max_column_name_length\030\023 "
-      "\001(\r\022\037\n\027max_columns_in_group_by\030\024 \001(\r\022\037\n\027"
-      "max_columns_in_order_by\030\025 \001(\r\022\035\n\025max_col"
-      "umns_in_select\030\026 \001(\r\022\036\n\026max_cursor_name_"
-      "length\030\027 \001(\r\022\034\n\024max_logical_lob_size\030\030 \001"
-      "(\r\022\024\n\014max_row_size\030\031 \001(\r\022\036\n\026max_schema_n"
-      "ame_length\030\032 \001(\r\022\034\n\024max_statement_length"
-      "\030\033 \001(\r\022\026\n\016max_statements\030\034 \001(\r\022\035\n\025max_ta"
-      "ble_name_length\030\035 \001(\r\022\034\n\024max_tables_in_s"
-      "elect\030\036 \001(\r\022\034\n\024max_user_name_length\030\037 \001("
-      "\r\0220\n\016null_collation\030  \001(\0162\030.exec.user.Nu"
-      "llCollation\022&\n\036null_plus_non_null_equals"
-      "_null\030! \001(\010\022\031\n\021numeric_functions\030\" \003(\t\0223"
-      "\n\020order_by_support\030# \003(\0162\031.exec.user.Ord"
-      "erBySupport\0227\n\022outer_join_support\030$ \003(\0162"
-      "\033.exec.user.OuterJoinSupport\022=\n\030quoted_i"
-      "dentifier_casing\030% \001(\0162\033.exec.user.Ident"
-      "ifierCasing\022\021\n\tread_only\030& \001(\010\022\023\n\013schema"
-      "_term\030\' \001(\t\022\034\n\024search_escape_string\030( \001("
-      "\t\022#\n\033select_for_update_supported\030) \001(\010\022\032"
-      "\n\022special_characters\030* \001(\t\022\024\n\014sql_keywor"
-      "ds\030+ \003(\t\022\030\n\020string_functions\030, \003(\t\0224\n\020su"
-      "bquery_support\030- \003(\0162\032.exec.user.SubQuer"
-      "ySupport\022\030\n\020system_functions\030. \003(\t\022\022\n\nta"
-      "ble_term\030/ \001(\t\022\035\n\025transaction_supported\030"
-      "0 \001(\010\022.\n\runion_support\0301 \003(\0162\027.exec.user"
-      ".UnionSupport\022\026\n\016current_schema\0302 \001(\t\"\207\002"
-      "\n\010RunQuery\0221\n\014results_mode\030\001 \001(\0162\033.exec."
-      "user.QueryResultsMode\022$\n\004type\030\002 \001(\0162\026.ex"
-      "ec.shared.QueryType\022\014\n\004plan\030\003 \001(\t\0221\n\tfra"
-      "gments\030\004 \003(\0132\036.exec.bit.control.PlanFrag"
-      "ment\022E\n\031prepared_statement_handle\030\005 \001(\0132"
-      "\".exec.user.PreparedStatementHandle\022\032\n\022a"
-      "utolimit_rowcount\030\006 \001(\005*\320\003\n\007RpcType\022\r\n\tH"
-      "ANDSHAKE\020\000\022\007\n\003ACK\020\001\022\013\n\007GOODBYE\020\002\022\r\n\tRUN_"
-      "QUERY\020\003\022\020\n\014CANCEL_QUERY\020\004\022\023\n\017REQUEST_RES"
-      "ULTS\020\005\022\027\n\023RESUME_PAUSED_QUERY\020\013\022\034\n\030GET_Q"
-      "UERY_PLAN_FRAGMENTS\020\014\022\020\n\014GET_CATALOGS\020\016\022"
-      "\017\n\013GET_SCHEMAS\020\017\022\016\n\nGET_TABLES\020\020\022\017\n\013GET_"
-      "COLUMNS\020\021\022\035\n\031CREATE_PREPARED_STATEMENT\020\026"
-      "\022\023\n\017GET_SERVER_META\020\010\022\016\n\nQUERY_DATA\020\006\022\020\n"
-      "\014QUERY_HANDLE\020\007\022\030\n\024QUERY_PLAN_FRAGMENTS\020"
-      "\r\022\014\n\010CATALOGS\020\022\022\013\n\007SCHEMAS\020\023\022\n\n\006TABLES\020\024"
-      "\022\013\n\007COLUMNS\020\025\022\026\n\022PREPARED_STATEMENT\020\027\022\017\n"
-      "\013SERVER_META\020\t\022\020\n\014QUERY_RESULT\020\n\022\020\n\014SASL"
-      "_MESSAGE\020\030*H\n\013SaslSupport\022\030\n\024UNKNOWN_SAS"
-      "L_SUPPORT\020\000\022\r\n\tSASL_AUTH\020\001\022\020\n\014SASL_PRIVA"
-      "CY\020\002*#\n\020QueryResultsMode\022\017\n\013STREAM_FULL\020"
-      "\001*q\n\017HandshakeStatus\022\013\n\007SUCCESS\020\001\022\030\n\024RPC"
-      "_VERSION_MISMATCH\020\002\022\017\n\013AUTH_FAILED\020\003\022\023\n\017"
-      "UNKNOWN_FAILURE\020\004\022\021\n\rAUTH_REQUIRED\020\005*D\n\r"
-      "RequestStatus\022\022\n\016UNKNOWN_STATUS\020\000\022\006\n\002OK\020"
-      "\001\022\n\n\006FAILED\020\002\022\013\n\007TIMEOUT\020\003*Y\n\023ColumnSear"
-      "chability\022\031\n\025UNKNOWN_SEARCHABILITY\020\000\022\010\n\004"
-      "NONE\020\001\022\010\n\004CHAR\020\002\022\n\n\006NUMBER\020\003\022\007\n\003ALL\020\004*K\n"
-      "\022ColumnUpdatability\022\030\n\024UNKNOWN_UPDATABIL"
-      "ITY\020\000\022\r\n\tREAD_ONLY\020\001\022\014\n\010WRITABLE\020\002*1\n\016Co"
-      "llateSupport\022\016\n\nCS_UNKNOWN\020\000\022\017\n\013CS_GROUP"
-      "_BY\020\001*J\n\027CorrelationNamesSupport\022\013\n\007CN_N"
-      "ONE\020\001\022\026\n\022CN_DIFFERENT_NAMES\020\002\022\n\n\006CN_ANY\020"
-      "\003*\271\003\n\027DateTimeLiteralsSupport\022\016\n\nDL_UNKN"
-      "OWN\020\000\022\013\n\007DL_DATE\020\001\022\013\n\007DL_TIME\020\002\022\020\n\014DL_TI"
-      "MESTAMP\020\003\022\024\n\020DL_INTERVAL_YEAR\020\004\022\025\n\021DL_IN"
-      "TERVAL_MONTH\020\005\022\023\n\017DL_INTERVAL_DAY\020\006\022\024\n\020D"
-      "L_INTERVAL_HOUR\020\007\022\026\n\022DL_INTERVAL_MINUTE\020"
-      "\010\022\026\n\022DL_INTERVAL_SECOND\020\t\022\035\n\031DL_INTERVAL"
-      "_YEAR_TO_MONTH\020\n\022\033\n\027DL_INTERVAL_DAY_TO_H"
-      "OUR\020\013\022\035\n\031DL_INTERVAL_DAY_TO_MINUTE\020\014\022\035\n\031"
-      "DL_INTERVAL_DAY_TO_SECOND\020\r\022\036\n\032DL_INTERV"
-      "AL_HOUR_TO_MINUTE\020\016\022\036\n\032DL_INTERVAL_HOUR_"
-      "TO_SECOND\020\017\022 \n\034DL_INTERVAL_MINUTE_TO_SEC"
-      "OND\020\020*Y\n\016GroupBySupport\022\013\n\007GB_NONE\020\001\022\022\n\016"
-      "GB_SELECT_ONLY\020\002\022\024\n\020GB_BEYOND_SELECT\020\003\022\020"
-      "\n\014GB_UNRELATED\020\004*x\n\020IdentifierCasing\022\016\n\n"
-      "IC_UNKNOWN\020\000\022\023\n\017IC_STORES_LOWER\020\001\022\023\n\017IC_"
-      "STORES_MIXED\020\002\022\023\n\017IC_STORES_UPPER\020\003\022\025\n\021I"
-      "C_SUPPORTS_MIXED\020\004*X\n\rNullCollation\022\016\n\nN"
-      "C_UNKNOWN\020\000\022\017\n\013NC_AT_START\020\001\022\r\n\tNC_AT_EN"
-      "D\020\002\022\013\n\007NC_HIGH\020\003\022\n\n\006NC_LOW\020\004*E\n\016OrderByS"
-      "upport\022\016\n\nOB_UNKNOWN\020\000\022\020\n\014OB_UNRELATED\020\001"
-      "\022\021\n\rOB_EXPRESSION\020\002*\226\001\n\020OuterJoinSupport"
-      "\022\016\n\nOJ_UNKNOWN\020\000\022\013\n\007OJ_LEFT\020\001\022\014\n\010OJ_RIGH"
-      "T\020\002\022\013\n\007OJ_FULL\020\003\022\r\n\tOJ_NESTED\020\004\022\022\n\016OJ_NO"
-      "T_ORDERED\020\005\022\014\n\010OJ_INNER\020\006\022\031\n\025OJ_ALL_COMP"
-      "ARISON_OPS\020\007*\204\001\n\017SubQuerySupport\022\016\n\nSQ_U"
-      "NKNOWN\020\000\022\021\n\rSQ_CORRELATED\020\001\022\024\n\020SQ_IN_COM"
-      "PARISON\020\002\022\020\n\014SQ_IN_EXISTS\020\003\022\020\n\014SQ_IN_INS"
-      "ERT\020\004\022\024\n\020SQ_IN_QUANTIFIED\020\005*;\n\014UnionSupp"
-      "ort\022\r\n\tU_UNKNOWN\020\000\022\013\n\007U_UNION\020\001\022\017\n\013U_UNI"
-      "ON_ALL\020\002B+\n\033org.apache.drill.exec.protoB"
-      "\nUserProtosH\001"
-  };
+}  // namespace
+
+void protobuf_ShutdownFile_User_2eproto() {
+  delete Property::default_instance_;
+  delete Property_reflection_;
+  delete UserProperties::default_instance_;
+  delete UserProperties_reflection_;
+  delete RpcEndpointInfos::default_instance_;
+  delete RpcEndpointInfos_reflection_;
+  delete UserToBitHandshake::default_instance_;
+  delete UserToBitHandshake_reflection_;
+  delete RequestResults::default_instance_;
+  delete RequestResults_reflection_;
+  delete GetQueryPlanFragments::default_instance_;
+  delete GetQueryPlanFragments_reflection_;
+  delete QueryPlanFragments::default_instance_;
+  delete QueryPlanFragments_reflection_;
+  delete BitToUserHandshake::default_instance_;
+  delete BitToUserHandshake_reflection_;
+  delete LikeFilter::default_instance_;
+  delete LikeFilter_reflection_;
+  delete GetCatalogsReq::default_instance_;
+  delete GetCatalogsReq_reflection_;
+  delete CatalogMetadata::default_instance_;
+  delete CatalogMetadata_reflection_;
+  delete GetCatalogsResp::default_instance_;
+  delete GetCatalogsResp_reflection_;
+  delete GetSchemasReq::default_instance_;
+  delete GetSchemasReq_reflection_;
+  delete SchemaMetadata::default_instance_;
+  delete SchemaMetadata_reflection_;
+  delete GetSchemasResp::default_instance_;
+  delete GetSchemasResp_reflection_;
+  delete GetTablesReq::default_instance_;
+  delete GetTablesReq_reflection_;
+  delete TableMetadata::default_instance_;
+  delete TableMetadata_reflection_;
+  delete GetTablesResp::default_instance_;
+  delete GetTablesResp_reflection_;
+  delete GetColumnsReq::default_instance_;
+  delete GetColumnsReq_reflection_;
+  delete ColumnMetadata::default_instance_;
+  delete ColumnMetadata_reflection_;
+  delete GetColumnsResp::default_instance_;
+  delete GetColumnsResp_reflection_;
+  delete CreatePreparedStatementReq::default_instance_;
+  delete CreatePreparedStatementReq_reflection_;
+  delete ResultColumnMetadata::default_instance_;
+  delete ResultColumnMetadata_reflection_;
+  delete PreparedStatementHandle::default_instance_;
+  delete PreparedStatementHandle_reflection_;
+  delete PreparedStatement::default_instance_;
+  delete PreparedStatement_reflection_;
+  delete CreatePreparedStatementResp::default_instance_;
+  delete CreatePreparedStatementResp_reflection_;
+  delete GetServerMetaReq::default_instance_;
+  delete GetServerMetaReq_reflection_;
+  delete ConvertSupport::default_instance_;
+  delete ConvertSupport_reflection_;
+  delete GetServerMetaResp::default_instance_;
+  delete GetServerMetaResp_reflection_;
+  delete ServerMeta::default_instance_;
+  delete ServerMeta_reflection_;
+  delete RunQuery::default_instance_;
+  delete RunQuery_reflection_;
+}
+
+void protobuf_AddDesc_User_2eproto() {
+  static bool already_here = false;
+  if (already_here) return;
+  already_here = true;
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  ::exec::protobuf_AddDesc_SchemaDef_2eproto();
+  ::common::protobuf_AddDesc_Types_2eproto();
+  ::exec::shared::protobuf_AddDesc_UserBitShared_2eproto();
+  ::exec::bit::data::protobuf_AddDesc_BitData_2eproto();
+  ::exec::bit::control::protobuf_AddDesc_BitControl_2eproto();
+  ::exec::bit::protobuf_AddDesc_ExecutionProtos_2eproto();
   ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
-      descriptor, 8933);
+    "\n\nUser.proto\022\texec.user\032\017SchemaDef.proto"
+    "\032\013Types.proto\032\023UserBitShared.proto\032\rBitD"
+    "ata.proto\032\020BitControl.proto\032\025ExecutionPr"
+    "otos.proto\"&\n\010Property\022\013\n\003key\030\001 \002(\t\022\r\n\005v"
+    "alue\030\002 \002(\t\"9\n\016UserProperties\022\'\n\nproperti"
+    "es\030\001 \003(\0132\023.exec.user.Property\"\267\001\n\020RpcEnd"
+    "pointInfos\022\014\n\004name\030\001 \001(\t\022\017\n\007version\030\002 \001("
+    "\t\022\024\n\014majorVersion\030\003 \001(\r\022\024\n\014minorVersion\030"
+    "\004 \001(\r\022\024\n\014patchVersion\030\005 \001(\r\022\023\n\013applicati"
+    "on\030\006 \001(\t\022\023\n\013buildNumber\030\007 \001(\r\022\030\n\020version"
+    "Qualifier\030\010 \001(\t\"\375\002\n\022UserToBitHandshake\022."
+    "\n\007channel\030\001 \001(\0162\027.exec.shared.RpcChannel"
+    ":\004USER\022\031\n\021support_listening\030\002 \001(\010\022\023\n\013rpc"
+    "_version\030\003 \001(\005\0221\n\013credentials\030\004 \001(\0132\034.ex"
+    "ec.shared.UserCredentials\022-\n\nproperties\030"
+    "\005 \001(\0132\031.exec.user.UserProperties\022$\n\025supp"
+    "ort_complex_types\030\006 \001(\010:\005false\022\036\n\017suppor"
+    "t_timeout\030\007 \001(\010:\005false\0221\n\014client_infos\030\010"
+    " \001(\0132\033.exec.user.RpcEndpointInfos\022,\n\014sas"
+    "l_support\030\t \001(\0162\026.exec.user.SaslSupport\""
+    "S\n\016RequestResults\022&\n\010query_id\030\001 \001(\0132\024.ex"
+    "ec.shared.QueryId\022\031\n\021maximum_responses\030\002"
+    " \001(\005\"g\n\025GetQueryPlanFragments\022\r\n\005query\030\001"
+    " \002(\t\022$\n\004type\030\002 \001(\0162\026.exec.shared.QueryTy"
+    "pe\022\031\n\nsplit_plan\030\003 \001(\010:\005false\"\316\001\n\022QueryP"
+    "lanFragments\0223\n\006status\030\001 \002(\0162#.exec.shar"
+    "ed.QueryResult.QueryState\022&\n\010query_id\030\002 "
+    "\001(\0132\024.exec.shared.QueryId\0221\n\tfragments\030\003"
+    " \003(\0132\036.exec.bit.control.PlanFragment\022(\n\005"
+    "error\030\004 \001(\0132\031.exec.shared.DrillPBError\"\253"
+    "\002\n\022BitToUserHandshake\022\023\n\013rpc_version\030\002 \001"
+    "(\005\022*\n\006status\030\003 \001(\0162\032.exec.user.Handshake"
+    "Status\022\017\n\007errorId\030\004 \001(\t\022\024\n\014errorMessage\030"
+    "\005 \001(\t\0221\n\014server_infos\030\006 \001(\0132\033.exec.user."
+    "RpcEndpointInfos\022 \n\030authenticationMechan"
+    "isms\030\007 \003(\t\022-\n\021supported_methods\030\010 \003(\0162\022."
+    "exec.user.RpcType\022\021\n\tencrypted\030\t \001(\010\022\026\n\016"
+    "maxWrappedSize\030\n \001(\005\"-\n\nLikeFilter\022\017\n\007pa"
+    "ttern\030\001 \001(\t\022\016\n\006escape\030\002 \001(\t\"D\n\016GetCatalo"
+    "gsReq\0222\n\023catalog_name_filter\030\001 \001(\0132\025.exe"
+    "c.user.LikeFilter\"M\n\017CatalogMetadata\022\024\n\014"
+    "catalog_name\030\001 \001(\t\022\023\n\013description\030\002 \001(\t\022"
+    "\017\n\007connect\030\003 \001(\t\"\223\001\n\017GetCatalogsResp\022(\n\006"
+    "status\030\001 \001(\0162\030.exec.user.RequestStatus\022,"
+    "\n\010catalogs\030\002 \003(\0132\032.exec.user.CatalogMeta"
+    "data\022(\n\005error\030\003 \001(\0132\031.exec.shared.DrillP"
+    "BError\"v\n\rGetSchemasReq\0222\n\023catalog_name_"
+    "filter\030\001 \001(\0132\025.exec.user.LikeFilter\0221\n\022s"
+    "chema_name_filter\030\002 \001(\0132\025.exec.user.Like"
+    "Filter\"i\n\016SchemaMetadata\022\024\n\014catalog_name"
+    "\030\001 \001(\t\022\023\n\013schema_name\030\002 \001(\t\022\r\n\005owner\030\003 \001"
+    "(\t\022\014\n\004type\030\004 \001(\t\022\017\n\007mutable\030\005 \001(\t\"\220\001\n\016Ge"
+    "tSchemasResp\022(\n\006status\030\001 \001(\0162\030.exec.user"
+    ".RequestStatus\022*\n\007schemas\030\002 \003(\0132\031.exec.u"
+    "ser.SchemaMetadata\022(\n\005error\030\003 \001(\0132\031.exec"
+    ".shared.DrillPBError\"\302\001\n\014GetTablesReq\0222\n"
+    "\023catalog_name_filter\030\001 \001(\0132\025.exec.user.L"
+    "ikeFilter\0221\n\022schema_name_filter\030\002 \001(\0132\025."
+    "exec.user.LikeFilter\0220\n\021table_name_filte"
+    "r\030\003 \001(\0132\025.exec.user.LikeFilter\022\031\n\021table_"
+    "type_filter\030\004 \003(\t\"\\\n\rTableMetadata\022\024\n\014ca"
+    "talog_name\030\001 \001(\t\022\023\n\013schema_name\030\002 \001(\t\022\022\n"
+    "\ntable_name\030\003 \001(\t\022\014\n\004type\030\004 \001(\t\"\215\001\n\rGetT"
+    "ablesResp\022(\n\006status\030\001 \001(\0162\030.exec.user.Re"
+    "questStatus\022(\n\006tables\030\002 \003(\0132\030.exec.user."
+    "TableMetadata\022(\n\005error\030\003 \001(\0132\031.exec.shar"
+    "ed.DrillPBError\"\333\001\n\rGetColumnsReq\0222\n\023cat"
+    "alog_name_filter\030\001 \001(\0132\025.exec.user.LikeF"
+    "ilter\0221\n\022schema_name_filter\030\002 \001(\0132\025.exec"
+    ".user.LikeFilter\0220\n\021table_name_filter\030\003 "
+    "\001(\0132\025.exec.user.LikeFilter\0221\n\022column_nam"
+    "e_filter\030\004 \001(\0132\025.exec.user.LikeFilter\"\251\003"
+    "\n\016ColumnMetadata\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"
+    "\023\n\013column_name\030\004 \001(\t\022\030\n\020ordinal_position"
+    "\030\005 \001(\005\022\025\n\rdefault_value\030\006 \001(\t\022\023\n\013is_null"
+    "able\030\007 \001(\010\022\021\n\tdata_type\030\010 \001(\t\022\027\n\017char_ma"
+    "x_length\030\t \001(\005\022\031\n\021char_octet_length\030\n \001("
+    "\005\022\031\n\021numeric_precision\030\013 \001(\005\022\037\n\027numeric_"
+    "precision_radix\030\014 \001(\005\022\025\n\rnumeric_scale\030\r"
+    " \001(\005\022\033\n\023date_time_precision\030\016 \001(\005\022\025\n\rint"
+    "erval_type\030\017 \001(\t\022\032\n\022interval_precision\030\020"
+    " \001(\005\022\023\n\013column_size\030\021 \001(\005\"\220\001\n\016GetColumns"
+    "Resp\022(\n\006status\030\001 \001(\0162\030.exec.user.Request"
+    "Status\022*\n\007columns\030\002 \003(\0132\031.exec.user.Colu"
+    "mnMetadata\022(\n\005error\030\003 \001(\0132\031.exec.shared."
+    "DrillPBError\"/\n\032CreatePreparedStatementR"
+    "eq\022\021\n\tsql_query\030\001 \001(\t\"\326\003\n\024ResultColumnMe"
+    "tadata\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013schema_n"
+    "ame\030\002 \001(\t\022\022\n\ntable_name\030\003 \001(\t\022\023\n\013column_"
+    "name\030\004 \001(\t\022\r\n\005label\030\005 \001(\t\022\021\n\tdata_type\030\006"
+    " \001(\t\022\023\n\013is_nullable\030\007 \001(\010\022\021\n\tprecision\030\010"
+    " \001(\005\022\r\n\005scale\030\t \001(\005\022\016\n\006signed\030\n \001(\010\022\024\n\014d"
+    "isplay_size\030\013 \001(\005\022\022\n\nis_aliased\030\014 \001(\010\0225\n"
+    "\rsearchability\030\r \001(\0162\036.exec.user.ColumnS"
+    "earchability\0223\n\014updatability\030\016 \001(\0162\035.exe"
+    "c.user.ColumnUpdatability\022\026\n\016auto_increm"
+    "ent\030\017 \001(\010\022\030\n\020case_sensitivity\030\020 \001(\010\022\020\n\010s"
+    "ortable\030\021 \001(\010\022\022\n\nclass_name\030\022 \001(\t\022\023\n\013is_"
+    "currency\030\024 \001(\010\".\n\027PreparedStatementHandl"
+    "e\022\023\n\013server_info\030\001 \001(\014\"\200\001\n\021PreparedState"
+    "ment\0220\n\007columns\030\001 \003(\0132\037.exec.user.Result"
+    "ColumnMetadata\0229\n\rserver_handle\030\002 \001(\0132\"."
+    "exec.user.PreparedStatementHandle\"\253\001\n\033Cr"
+    "eatePreparedStatementResp\022(\n\006status\030\001 \001("
+    "\0162\030.exec.user.RequestStatus\0228\n\022prepared_"
+    "statement\030\002 \001(\0132\034.exec.user.PreparedStat"
+    "ement\022(\n\005error\030\003 \001(\0132\031.exec.shared.Drill"
+    "PBError\"\022\n\020GetServerMetaReq\"P\n\016ConvertSu"
+    "pport\022\037\n\004from\030\001 \002(\0162\021.common.MinorType\022\035"
+    "\n\002to\030\002 \002(\0162\021.common.MinorType\"\223\001\n\021GetSer"
+    "verMetaResp\022(\n\006status\030\001 \001(\0162\030.exec.user."
+    "RequestStatus\022*\n\013server_meta\030\002 \001(\0132\025.exe"
+    "c.user.ServerMeta\022(\n\005error\030\003 \001(\0132\031.exec."
+    "shared.DrillPBError\"\227\016\n\nServerMeta\022\035\n\025al"
+    "l_tables_selectable\030\001 \001(\010\022%\n\035blob_includ"
+    "ed_in_max_row_size\030\002 \001(\010\022\030\n\020catalog_at_s"
+    "tart\030\003 \001(\010\022\031\n\021catalog_separator\030\004 \001(\t\022\024\n"
+    "\014catalog_term\030\005 \001(\t\0222\n\017collate_support\030\006"
+    " \003(\0162\031.exec.user.CollateSupport\022!\n\031colum"
+    "n_aliasing_supported\030\007 \001(\010\0222\n\017convert_su"
+    "pport\030\010 \003(\0132\031.exec.user.ConvertSupport\022E"
+    "\n\031correlation_names_support\030\t \001(\0162\".exec"
+    ".user.CorrelationNamesSupport\022\033\n\023date_ti"
+    "me_functions\030\n \003(\t\022F\n\032date_time_literals"
+    "_support\030\013 \003(\0162\".exec.user.DateTimeLiter"
+    "alsSupport\0223\n\020group_by_support\030\014 \001(\0162\031.e"
+    "xec.user.GroupBySupport\0226\n\021identifier_ca"
+    "sing\030\r \001(\0162\033.exec.user.IdentifierCasing\022"
+    "\037\n\027identifier_quote_string\030\016 \001(\t\022$\n\034like"
+    "_escape_clause_supported\030\017 \001(\010\022!\n\031max_bi"
+    "nary_literal_length\030\020 \001(\r\022\037\n\027max_catalog"
+    "_name_length\030\021 \001(\r\022\037\n\027max_char_literal_l"
+    "ength\030\022 \001(\r\022\036\n\026max_column_name_length\030\023 "
+    "\001(\r\022\037\n\027max_columns_in_group_by\030\024 \001(\r\022\037\n\027"
+    "max_columns_in_order_by\030\025 \001(\r\022\035\n\025max_col"
+    "umns_in_select\030\026 \001(\r\022\036\n\026max_cursor_name_"
+    "length\030\027 \001(\r\022\034\n\024max_logical_lob_size\030\030 \001"
+    "(\r\022\024\n\014max_row_size\030\031 \001(\r\022\036\n\026max_schema_n"
+    "ame_length\030\032 \001(\r\022\034\n\024max_statement_length"
+    "\030\033 \001(\r\022\026\n\016max_statements\030\034 \001(\r\022\035\n\025max_ta"
+    "ble_name_length\030\035 \001(\r\022\034\n\024max_tables_in_s"
+    "elect\030\036 \001(\r\022\034\n\024max_user_name_length\030\037 \001("
+    "\r\0220\n\016null_collation\030  \001(\0162\030.exec.user.Nu"
+    "llCollation\022&\n\036null_plus_non_null_equals"
+    "_null\030! \001(\010\022\031\n\021numeric_functions\030\" \003(\t\0223"
+    "\n\020order_by_support\030# \003(\0162\031.exec.user.Ord"
+    "erBySupport\0227\n\022outer_join_support\030$ \003(\0162"
+    "\033.exec.user.OuterJoinSupport\022=\n\030quoted_i"
+    "dentifier_casing\030% \001(\0162\033.exec.user.Ident"
+    "ifierCasing\022\021\n\tread_only\030& \001(\010\022\023\n\013schema"
+    "_term\030\' \001(\t\022\034\n\024search_escape_string\030( \001("
+    "\t\022#\n\033select_for_update_supported\030) \001(\010\022\032"
+    "\n\022special_characters\030* \001(\t\022\024\n\014sql_keywor"
+    "ds\030+ \003(\t\022\030\n\020string_functions\030, \003(\t\0224\n\020su"
+    "bquery_support\030- \003(\0162\032.exec.user.SubQuer"
+    "ySupport\022\030\n\020system_functions\030. \003(\t\022\022\n\nta"
+    "ble_term\030/ \001(\t\022\035\n\025transaction_supported\030"
+    "0 \001(\010\022.\n\runion_support\0301 \003(\0162\027.exec.user"
+    ".UnionSupport\022\026\n\016current_schema\0302 \001(\t\"\207\002"
+    "\n\010RunQuery\0221\n\014results_mode\030\001 \001(\0162\033.exec."
+    "user.QueryResultsMode\022$\n\004type\030\002 \001(\0162\026.ex"
+    "ec.shared.QueryType\022\014\n\004plan\030\003 \001(\t\0221\n\tfra"
+    "gments\030\004 \003(\0132\036.exec.bit.control.PlanFrag"
+    "ment\022E\n\031prepared_statement_handle\030\005 \001(\0132"
+    "\".exec.user.PreparedStatementHandle\022\032\n\022a"
+    "utolimit_rowcount\030\006 \001(\005*\320\003\n\007RpcType\022\r\n\tH"
+    "ANDSHAKE\020\000\022\007\n\003ACK\020\001\022\013\n\007GOODBYE\020\002\022\r\n\tRUN_"
+    "QUERY\020\003\022\020\n\014CANCEL_QUERY\020\004\022\023\n\017REQUEST_RES"
+    "ULTS\020\005\022\027\n\023RESUME_PAUSED_QUERY\020\013\022\034\n\030GET_Q"
+    "UERY_PLAN_FRAGMENTS\020\014\022\020\n\014GET_CATALOGS\020\016\022"
+    "\017\n\013GET_SCHEMAS\020\017\022\016\n\nGET_TABLES\020\020\022\017\n\013GET_"
+    "COLUMNS\020\021\022\035\n\031CREATE_PREPARED_STATEMENT\020\026"
+    "\022\023\n\017GET_SERVER_META\020\010\022\016\n\nQUERY_DATA\020\006\022\020\n"
+    "\014QUERY_HANDLE\020\007\022\030\n\024QUERY_PLAN_FRAGMENTS\020"
+    "\r\022\014\n\010CATALOGS\020\022\022\013\n\007SCHEMAS\020\023\022\n\n\006TABLES\020\024"
+    "\022\013\n\007COLUMNS\020\025\022\026\n\022PREPARED_STATEMENT\020\027\022\017\n"
+    "\013SERVER_META\020\t\022\020\n\014QUERY_RESULT\020\n\022\020\n\014SASL"
+    "_MESSAGE\020\030*H\n\013SaslSupport\022\030\n\024UNKNOWN_SAS"
+    "L_SUPPORT\020\000\022\r\n\tSASL_AUTH\020\001\022\020\n\014SASL_PRIVA"
+    "CY\020\002*#\n\020QueryResultsMode\022\017\n\013STREAM_FULL\020"
+    "\001*q\n\017HandshakeStatus\022\013\n\007SUCCESS\020\001\022\030\n\024RPC"
+    "_VERSION_MISMATCH\020\002\022\017\n\013AUTH_FAILED\020\003\022\023\n\017"
+    "UNKNOWN_FAILURE\020\004\022\021\n\rAUTH_REQUIRED\020\005*D\n\r"
+    "RequestStatus\022\022\n\016UNKNOWN_STATUS\020\000\022\006\n\002OK\020"
+    "\001\022\n\n\006FAILED\020\002\022\013\n\007TIMEOUT\020\003*Y\n\023ColumnSear"
+    "chability\022\031\n\025UNKNOWN_SEARCHABILITY\020\000\022\010\n\004"
+    "NONE\020\001\022\010\n\004CHAR\020\002\022\n\n\006NUMBER\020\003\022\007\n\003ALL\020\004*K\n"
+    "\022ColumnUpdatability\022\030\n\024UNKNOWN_UPDATABIL"
+    "ITY\020\000\022\r\n\tREAD_ONLY\020\001\022\014\n\010WRITABLE\020\002*1\n\016Co"
+    "llateSupport\022\016\n\nCS_UNKNOWN\020\000\022\017\n\013CS_GROUP"
+    "_BY\020\001*J\n\027CorrelationNamesSupport\022\013\n\007CN_N"
+    "ONE\020\001\022\026\n\022CN_DIFFERENT_NAMES\020\002\022\n\n\006CN_ANY\020"
+    "\003*\271\003\n\027DateTimeLiteralsSupport\022\016\n\nDL_UNKN"
+    "OWN\020\000\022\013\n\007DL_DATE\020\001\022\013\n\007DL_TIME\020\002\022\020\n\014DL_TI"
+    "MESTAMP\020\003\022\024\n\020DL_INTERVAL_YEAR\020\004\022\025\n\021DL_IN"
+    "TERVAL_MONTH\020\005\022\023\n\017DL_INTERVAL_DAY\020\006\022\024\n\020D"
+    "L_INTERVAL_HOUR\020\007\022\026\n\022DL_INTERVAL_MINUTE\020"
+    "\010\022\026\n\022DL_INTERVAL_SECOND\020\t\022\035\n\031DL_INTERVAL"
+    "_YEAR_TO_MONTH\020\n\022\033\n\027DL_INTERVAL_DAY_TO_H"
+    "OUR\020\013\022\035\n\031DL_INTERVAL_DAY_TO_MINUTE\020\014\022\035\n\031"
+    "DL_INTERVAL_DAY_TO_SECOND\020\r\022\036\n\032DL_INTERV"
+    "AL_HOUR_TO_MINUTE\020\016\022\036\n\032DL_INTERVAL_HOUR_"
+    "TO_SECOND\020\017\022 \n\034DL_INTERVAL_MINUTE_TO_SEC"
+    "OND\020\020*Y\n\016GroupBySupport\022\013\n\007GB_NONE\020\001\022\022\n\016"
+    "GB_SELECT_ONLY\020\002\022\024\n\020GB_BEYOND_SELECT\020\003\022\020"
+    "\n\014GB_UNRELATED\020\004*x\n\020IdentifierCasing\022\016\n\n"
+    "IC_UNKNOWN\020\000\022\023\n\017IC_STORES_LOWER\020\001\022\023\n\017IC_"
+    "STORES_MIXED\020\002\022\023\n\017IC_STORES_UPPER\020\003\022\025\n\021I"
+    "C_SUPPORTS_MIXED\020\004*X\n\rNullCollation\022\016\n\nN"
+    "C_UNKNOWN\020\000\022\017\n\013NC_AT_START\020\001\022\r\n\tNC_AT_EN"
+    "D\020\002\022\013\n\007NC_HIGH\020\003\022\n\n\006NC_LOW\020\004*E\n\016OrderByS"
+    "upport\022\016\n\nOB_UNKNOWN\020\000\022\020\n\014OB_UNRELATED\020\001"
+    "\022\021\n\rOB_EXPRESSION\020\002*\226\001\n\020OuterJoinSupport"
+    "\022\016\n\nOJ_UNKNOWN\020\000\022\013\n\007OJ_LEFT\020\001\022\014\n\010OJ_RIGH"
+    "T\020\002\022\013\n\007OJ_FULL\020\003\022\r\n\tOJ_NESTED\020\004\022\022\n\016OJ_NO"
+    "T_ORDERED\020\005\022\014\n\010OJ_INNER\020\006\022\031\n\025OJ_ALL_COMP"
+    "ARISON_OPS\020\007*\204\001\n\017SubQuerySupport\022\016\n\nSQ_U"
+    "NKNOWN\020\000\022\021\n\rSQ_CORRELATED\020\001\022\024\n\020SQ_IN_COM"
+    "PARISON\020\002\022\020\n\014SQ_IN_EXISTS\020\003\022\020\n\014SQ_IN_INS"
+    "ERT\020\004\022\024\n\020SQ_IN_QUANTIFIED\020\005*;\n\014UnionSupp"
+    "ort\022\r\n\tU_UNKNOWN\020\000\022\013\n\007U_UNION\020\001\022\017\n\013U_UNI"
+    "ON_ALL\020\002B+\n\033org.apache.drill.exec.protoB"
+    "\nUserProtosH\001", 8933);
   ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
     "User.proto", &protobuf_RegisterTypes);
-  ::protobuf_SchemaDef_2eproto::AddDescriptors();
-  ::protobuf_Types_2eproto::AddDescriptors();
-  ::protobuf_UserBitShared_2eproto::AddDescriptors();
-  ::protobuf_BitData_2eproto::AddDescriptors();
-  ::protobuf_BitControl_2eproto::AddDescriptors();
-  ::protobuf_ExecutionProtos_2eproto::AddDescriptors();
+  Property::default_instance_ = new Property();
+  UserProperties::default_instance_ = new UserProperties();
+  RpcEndpointInfos::default_instance_ = new RpcEndpointInfos();
+  UserToBitHandshake::default_instance_ = new UserToBitHandshake();
+  RequestResults::default_instance_ = new RequestResults();
+  GetQueryPlanFragments::default_instance_ = new GetQueryPlanFragments();
+  QueryPlanFragments::default_instance_ = new QueryPlanFragments();
+  BitToUserHandshake::default_instance_ = new BitToUserHandshake();
+  LikeFilter::default_instance_ = new LikeFilter();
+  GetCatalogsReq::default_instance_ = new GetCatalogsReq();
+  CatalogMetadata::default_instance_ = new CatalogMetadata();
+  GetCatalogsResp::default_instance_ = new GetCatalogsResp();
+  GetSchemasReq::default_instance_ = new GetSchemasReq();
+  SchemaMetadata::default_instance_ = new SchemaMetadata();
+  GetSchemasResp::default_instance_ = new GetSchemasResp();
+  GetTablesReq::default_instance_ = new GetTablesReq();
+  TableMetadata::default_instance_ = new TableMetadata();
+  GetTablesResp::default_instance_ = new GetTablesResp();
+  GetColumnsReq::default_instance_ = new GetColumnsReq();
+  ColumnMetadata::default_instance_ = new ColumnMetadata();
+  GetColumnsResp::default_instance_ = new GetColumnsResp();
+  CreatePreparedStatementReq::default_instance_ = new CreatePreparedStatementReq();
+  ResultColumnMetadata::default_instance_ = new ResultColumnMetadata();
+  PreparedStatementHandle::default_instance_ = new PreparedStatementHandle();
+  PreparedStatement::default_instance_ = new PreparedStatement();
+  CreatePreparedStatementResp::default_instance_ = new CreatePreparedStatementResp();
+  GetServerMetaReq::default_instance_ = new GetServerMetaReq();
+  ConvertSupport::default_instance_ = new ConvertSupport();
+  GetServerMetaResp::default_instance_ = new GetServerMetaResp();
+  ServerMeta::default_instance_ = new ServerMeta();
+  RunQuery::default_instance_ = new RunQuery();
+  Property::default_instance_->InitAsDefaultInstance();
+  UserProperties::default_instance_->InitAsDefaultInstance();
+  RpcEndpointInfos::default_instance_->InitAsDefaultInstance();
+  UserToBitHandshake::default_instance_->InitAsDefaultInstance();
+  RequestResults::default_instance_->InitAsDefaultInstance();
+  GetQueryPlanFragments::default_instance_->InitAsDefaultInstance();
+  QueryPlanFragments::default_instance_->InitAsDefaultInstance();
+  BitToUserHandshake::default_instance_->InitAsDefaultInstance();
+  LikeFilter::default_instance_->InitAsDefaultInstance();
+  GetCatalogsReq::default_instance_->InitAsDefaultInstance();
+  CatalogMetadata::default_instance_->InitAsDefaultInstance();
+  GetCatalogsResp::default_instance_->InitAsDefaultInstance();
+  GetSchemasReq::default_instance_->InitAsDefaultInstance();
+  SchemaMetadata::default_instance_->InitAsDefaultInstance();
+  GetSchemasResp::default_instance_->InitAsDefaultInstance();
+  GetTablesReq::default_instance_->InitAsDefaultInstance();
+  TableMetadata::default_instance_->InitAsDefaultInstance();
+  GetTablesResp::default_instance_->InitAsDefaultInstance();
+  GetColumnsReq::default_instance_->InitAsDefaultInstance();
+  ColumnMetadata::default_instance_->InitAsDefaultInstance();
+  GetColumnsResp::default_instance_->InitAsDefaultInstance();
+  CreatePreparedStatementReq::default_instance_->InitAsDefaultInstance();
+  ResultColumnMetadata::default_instance_->InitAsDefaultInstance();
+  PreparedStatementHandle::default_instance_->InitAsDefaultInstance();
+  PreparedStatement::default_instance_->InitAsDefaultInstance();
+  CreatePreparedStatementResp::default_instance_->InitAsDefaultInstance();
+  GetServerMetaReq::default_instance_->InitAsDefaultInstance();
+  ConvertSupport::default_instance_->InitAsDefaultInstance();
+  GetServerMetaResp::default_instance_->InitAsDefaultInstance();
+  ServerMeta::default_instance_->InitAsDefaultInstance();
+  RunQuery::default_instance_->InitAsDefaultInstance();
+  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_User_2eproto);
 }
 
-void AddDescriptors() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, AddDescriptorsImpl);
-}
-// Force AddDescriptors() to be called at dynamic initialization time.
-struct StaticDescriptorInitializer {
-  StaticDescriptorInitializer() {
-    AddDescriptors();
+// Force AddDescriptors() to be called at static initialization time.
+struct StaticDescriptorInitializer_User_2eproto {
+  StaticDescriptorInitializer_User_2eproto() {
+    protobuf_AddDesc_User_2eproto();
   }
-} static_descriptor_initializer;
-}  // namespace protobuf_User_2eproto
-namespace exec {
-namespace user {
+} static_descriptor_initializer_User_2eproto_;
 const ::google::protobuf::EnumDescriptor* RpcType_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[0];
+  protobuf_AssignDescriptorsOnce();
+  return RpcType_descriptor_;
 }
 bool RpcType_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1595,11 +1262,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* SaslSupport_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[1];
+  protobuf_AssignDescriptorsOnce();
+  return SaslSupport_descriptor_;
 }
 bool SaslSupport_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1610,11 +1277,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* QueryResultsMode_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[2];
+  protobuf_AssignDescriptorsOnce();
+  return QueryResultsMode_descriptor_;
 }
 bool QueryResultsMode_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 1:
       return true;
     default:
@@ -1623,11 +1290,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* HandshakeStatus_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[3];
+  protobuf_AssignDescriptorsOnce();
+  return HandshakeStatus_descriptor_;
 }
 bool HandshakeStatus_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 1:
     case 2:
     case 3:
@@ -1640,11 +1307,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* RequestStatus_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[4];
+  protobuf_AssignDescriptorsOnce();
+  return RequestStatus_descriptor_;
 }
 bool RequestStatus_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1656,11 +1323,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* ColumnSearchability_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[5];
+  protobuf_AssignDescriptorsOnce();
+  return ColumnSearchability_descriptor_;
 }
 bool ColumnSearchability_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1673,11 +1340,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* ColumnUpdatability_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[6];
+  protobuf_AssignDescriptorsOnce();
+  return ColumnUpdatability_descriptor_;
 }
 bool ColumnUpdatability_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1688,11 +1355,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* CollateSupport_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[7];
+  protobuf_AssignDescriptorsOnce();
+  return CollateSupport_descriptor_;
 }
 bool CollateSupport_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
       return true;
@@ -1702,11 +1369,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* CorrelationNamesSupport_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[8];
+  protobuf_AssignDescriptorsOnce();
+  return CorrelationNamesSupport_descriptor_;
 }
 bool CorrelationNamesSupport_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 1:
     case 2:
     case 3:
@@ -1717,11 +1384,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* DateTimeLiteralsSupport_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[9];
+  protobuf_AssignDescriptorsOnce();
+  return DateTimeLiteralsSupport_descriptor_;
 }
 bool DateTimeLiteralsSupport_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1746,11 +1413,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* GroupBySupport_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[10];
+  protobuf_AssignDescriptorsOnce();
+  return GroupBySupport_descriptor_;
 }
 bool GroupBySupport_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 1:
     case 2:
     case 3:
@@ -1762,11 +1429,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* IdentifierCasing_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[11];
+  protobuf_AssignDescriptorsOnce();
+  return IdentifierCasing_descriptor_;
 }
 bool IdentifierCasing_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1779,11 +1446,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* NullCollation_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[12];
+  protobuf_AssignDescriptorsOnce();
+  return NullCollation_descriptor_;
 }
 bool NullCollation_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1796,11 +1463,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* OrderBySupport_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[13];
+  protobuf_AssignDescriptorsOnce();
+  return OrderBySupport_descriptor_;
 }
 bool OrderBySupport_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1811,11 +1478,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* OuterJoinSupport_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[14];
+  protobuf_AssignDescriptorsOnce();
+  return OuterJoinSupport_descriptor_;
 }
 bool OuterJoinSupport_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1831,11 +1498,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* SubQuerySupport_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[15];
+  protobuf_AssignDescriptorsOnce();
+  return SubQuerySupport_descriptor_;
 }
 bool SubQuerySupport_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1849,11 +1516,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* UnionSupport_descriptor() {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_User_2eproto::file_level_enum_descriptors[16];
+  protobuf_AssignDescriptorsOnce();
+  return UnionSupport_descriptor_;
 }
 bool UnionSupport_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1866,310 +1533,257 @@
 
 // ===================================================================
 
-void Property::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int Property::kKeyFieldNumber;
 const int Property::kValueFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 Property::Property()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_Property.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.Property)
 }
+
+void Property::InitAsDefaultInstance() {
+}
+
 Property::Property(const Property& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  key_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_key()) {
-    key_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.key_);
-  }
-  value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_value()) {
-    value_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.value_);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.Property)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void Property::SharedCtor() {
-  key_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  key_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  value_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 Property::~Property() {
-  // @@protoc_insertion_point(destructor:exec.user.Property)
   SharedDtor();
 }
 
 void Property::SharedDtor() {
-  key_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  value_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (key_ != &::google::protobuf::internal::kEmptyString) {
+    delete key_;
+  }
+  if (value_ != &::google::protobuf::internal::kEmptyString) {
+    delete value_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void Property::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* Property::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return Property_descriptor_;
 }
 
 const Property& Property::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_Property.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+Property* Property::default_instance_ = NULL;
+
+Property* Property::New() const {
+  return new Property;
+}
 
 void Property::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.Property)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      key_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_key()) {
+      if (key_ != &::google::protobuf::internal::kEmptyString) {
+        key_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      value_.ClearNonDefaultToEmptyNoArena();
+    if (has_value()) {
+      if (value_ != &::google::protobuf::internal::kEmptyString) {
+        value_->clear();
+      }
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool Property::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.Property)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // required string key = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_key()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->key().data(), static_cast<int>(this->key().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.Property.key");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->key().data(), this->key().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_value;
         break;
       }
 
       // required string value = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_value:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_value()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->value().data(), static_cast<int>(this->value().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.Property.value");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->value().data(), this->value().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.Property)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.Property)
-  return false;
 #undef DO_
 }
 
 void Property::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.Property)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // required string key = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->key().data(), static_cast<int>(this->key().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.Property.key");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_key()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->key().data(), this->key().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->key(), output);
   }
 
   // required string value = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->value().data(), static_cast<int>(this->value().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.Property.value");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_value()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->value().data(), this->value().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->value(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.Property)
 }
 
-::google::protobuf::uint8* Property::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.Property)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* Property::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // required string key = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->key().data(), static_cast<int>(this->key().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.Property.key");
+  if (has_key()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->key().data(), this->key().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->key(), target);
   }
 
   // required string value = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->value().data(), static_cast<int>(this->value().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.Property.value");
+  if (has_value()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->value().data(), this->value().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->value(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.Property)
   return target;
 }
 
-size_t Property::RequiredFieldsByteSizeFallback() const {
-// @@protoc_insertion_point(required_fields_byte_size_fallback_start:exec.user.Property)
-  size_t total_size = 0;
+int Property::ByteSize() const {
+  int total_size = 0;
 
-  if (has_key()) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // required string key = 1;
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::StringSize(
-        this->key());
-  }
+    if (has_key()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->key());
+    }
 
-  if (has_value()) {
     // required string value = 2;
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::StringSize(
-        this->value());
+    if (has_value()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->value());
+    }
+
   }
-
-  return total_size;
-}
-size_t Property::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.Property)
-  size_t total_size = 0;
-
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  if (((_has_bits_[0] & 0x00000003) ^ 0x00000003) == 0) {  // All required fields are present.
-    // required string key = 1;
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::StringSize(
-        this->key());
-
-    // required string value = 2;
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::StringSize(
-        this->value());
-
-  } else {
-    total_size += RequiredFieldsByteSizeFallback();
-  }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void Property::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.Property)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const Property* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const Property>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const Property*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.Property)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.Property)
     MergeFrom(*source);
   }
 }
 
 void Property::MergeFrom(const Property& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.Property)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_key();
-      key_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.key_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_key()) {
+      set_key(from.key());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_value();
-      value_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.value_);
+    if (from.has_value()) {
+      set_value(from.value());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void Property::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.Property)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void Property::CopyFrom(const Property& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.Property)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
@@ -2177,267 +1791,238 @@
 
 bool Property::IsInitialized() const {
   if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false;
+
   return true;
 }
 
 void Property::Swap(Property* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void Property::InternalSwap(Property* other) {
-  using std::swap;
-  key_.Swap(&other->key_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  value_.Swap(&other->value_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(key_, other->key_);
+    std::swap(value_, other->value_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata Property::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = Property_descriptor_;
+  metadata.reflection = Property_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void UserProperties::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int UserProperties::kPropertiesFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 UserProperties::UserProperties()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_UserProperties.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.UserProperties)
 }
+
+void UserProperties::InitAsDefaultInstance() {
+}
+
 UserProperties::UserProperties(const UserProperties& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      properties_(from.properties_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  // @@protoc_insertion_point(copy_constructor:exec.user.UserProperties)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void UserProperties::SharedCtor() {
+  _cached_size_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 UserProperties::~UserProperties() {
-  // @@protoc_insertion_point(destructor:exec.user.UserProperties)
   SharedDtor();
 }
 
 void UserProperties::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void UserProperties::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* UserProperties::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return UserProperties_descriptor_;
 }
 
 const UserProperties& UserProperties::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_UserProperties.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+UserProperties* UserProperties::default_instance_ = NULL;
+
+UserProperties* UserProperties::New() const {
+  return new UserProperties;
+}
 
 void UserProperties::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.UserProperties)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
   properties_.Clear();
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool UserProperties::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.UserProperties)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // repeated .exec.user.Property properties = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_properties:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_properties()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(10)) goto parse_properties;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.UserProperties)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.UserProperties)
-  return false;
 #undef DO_
 }
 
 void UserProperties::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.UserProperties)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
   // repeated .exec.user.Property properties = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->properties_size()); i < n; i++) {
+  for (int i = 0; i < this->properties_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1,
-      this->properties(static_cast<int>(i)),
-      output);
+      1, this->properties(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.UserProperties)
 }
 
-::google::protobuf::uint8* UserProperties::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.UserProperties)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+::google::protobuf::uint8* UserProperties::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // repeated .exec.user.Property properties = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->properties_size()); i < n; i++) {
+  for (int i = 0; i < this->properties_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->properties(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->properties(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.UserProperties)
   return target;
 }
 
-size_t UserProperties::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.UserProperties)
-  size_t total_size = 0;
+int UserProperties::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  // repeated .exec.user.Property properties = 1;
+  total_size += 1 * this->properties_size();
+  for (int i = 0; i < this->properties_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->properties(i));
+  }
+
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // repeated .exec.user.Property properties = 1;
-  {
-    unsigned int count = static_cast<unsigned int>(this->properties_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->properties(static_cast<int>(i)));
-    }
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void UserProperties::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.UserProperties)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const UserProperties* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const UserProperties>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const UserProperties*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.UserProperties)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.UserProperties)
     MergeFrom(*source);
   }
 }
 
 void UserProperties::MergeFrom(const UserProperties& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.UserProperties)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   properties_.MergeFrom(from.properties_);
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void UserProperties::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.UserProperties)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void UserProperties::CopyFrom(const UserProperties& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.UserProperties)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool UserProperties::IsInitialized() const {
-  if (!::google::protobuf::internal::AllAreInitialized(this->properties())) return false;
+
+  for (int i = 0; i < properties_size(); i++) {
+    if (!this->properties(i).IsInitialized()) return false;
+  }
   return true;
 }
 
 void UserProperties::Swap(UserProperties* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void UserProperties::InternalSwap(UserProperties* other) {
-  using std::swap;
-  CastToBase(&properties_)->InternalSwap(CastToBase(&other->properties_));
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    properties_.Swap(&other->properties_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata UserProperties::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = UserProperties_descriptor_;
+  metadata.reflection = UserProperties_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void RpcEndpointInfos::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int RpcEndpointInfos::kNameFieldNumber;
 const int RpcEndpointInfos::kVersionFieldNumber;
 const int RpcEndpointInfos::kMajorVersionFieldNumber;
@@ -2446,422 +2031,398 @@
 const int RpcEndpointInfos::kApplicationFieldNumber;
 const int RpcEndpointInfos::kBuildNumberFieldNumber;
 const int RpcEndpointInfos::kVersionQualifierFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 RpcEndpointInfos::RpcEndpointInfos()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_RpcEndpointInfos.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.RpcEndpointInfos)
 }
+
+void RpcEndpointInfos::InitAsDefaultInstance() {
+}
+
 RpcEndpointInfos::RpcEndpointInfos(const RpcEndpointInfos& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_name()) {
-    name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
-  }
-  version_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_version()) {
-    version_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.version_);
-  }
-  application_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_application()) {
-    application_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.application_);
-  }
-  versionqualifier_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_versionqualifier()) {
-    versionqualifier_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.versionqualifier_);
-  }
-  ::memcpy(&majorversion_, &from.majorversion_,
-    static_cast<size_t>(reinterpret_cast<char*>(&buildnumber_) -
-    reinterpret_cast<char*>(&majorversion_)) + sizeof(buildnumber_));
-  // @@protoc_insertion_point(copy_constructor:exec.user.RpcEndpointInfos)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void RpcEndpointInfos::SharedCtor() {
-  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  version_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  application_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  versionqualifier_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&majorversion_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&buildnumber_) -
-      reinterpret_cast<char*>(&majorversion_)) + sizeof(buildnumber_));
+  _cached_size_ = 0;
+  name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  version_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  majorversion_ = 0u;
+  minorversion_ = 0u;
+  patchversion_ = 0u;
+  application_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  buildnumber_ = 0u;
+  versionqualifier_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 RpcEndpointInfos::~RpcEndpointInfos() {
-  // @@protoc_insertion_point(destructor:exec.user.RpcEndpointInfos)
   SharedDtor();
 }
 
 void RpcEndpointInfos::SharedDtor() {
-  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  version_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  application_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  versionqualifier_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ != &::google::protobuf::internal::kEmptyString) {
+    delete name_;
+  }
+  if (version_ != &::google::protobuf::internal::kEmptyString) {
+    delete version_;
+  }
+  if (application_ != &::google::protobuf::internal::kEmptyString) {
+    delete application_;
+  }
+  if (versionqualifier_ != &::google::protobuf::internal::kEmptyString) {
+    delete versionqualifier_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void RpcEndpointInfos::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* RpcEndpointInfos::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return RpcEndpointInfos_descriptor_;
 }
 
 const RpcEndpointInfos& RpcEndpointInfos::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_RpcEndpointInfos.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+RpcEndpointInfos* RpcEndpointInfos::default_instance_ = NULL;
+
+RpcEndpointInfos* RpcEndpointInfos::New() const {
+  return new RpcEndpointInfos;
+}
 
 void RpcEndpointInfos::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.RpcEndpointInfos)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
-      name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_name()) {
+      if (name_ != &::google::protobuf::internal::kEmptyString) {
+        name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      version_.ClearNonDefaultToEmptyNoArena();
+    if (has_version()) {
+      if (version_ != &::google::protobuf::internal::kEmptyString) {
+        version_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      application_.ClearNonDefaultToEmptyNoArena();
+    majorversion_ = 0u;
+    minorversion_ = 0u;
+    patchversion_ = 0u;
+    if (has_application()) {
+      if (application_ != &::google::protobuf::internal::kEmptyString) {
+        application_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000008u) {
-      versionqualifier_.ClearNonDefaultToEmptyNoArena();
+    buildnumber_ = 0u;
+    if (has_versionqualifier()) {
+      if (versionqualifier_ != &::google::protobuf::internal::kEmptyString) {
+        versionqualifier_->clear();
+      }
     }
   }
-  if (cached_has_bits & 240u) {
-    ::memset(&majorversion_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&buildnumber_) -
-        reinterpret_cast<char*>(&majorversion_)) + sizeof(buildnumber_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool RpcEndpointInfos::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.RpcEndpointInfos)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string name = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->name().data(), static_cast<int>(this->name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.RpcEndpointInfos.name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->name().data(), this->name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_version;
         break;
       }
 
       // optional string version = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_version:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_version()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->version().data(), static_cast<int>(this->version().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.RpcEndpointInfos.version");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->version().data(), this->version().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_majorVersion;
         break;
       }
 
       // optional uint32 majorVersion = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_majorversion();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_majorVersion:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &majorversion_)));
+          set_has_majorversion();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_minorVersion;
         break;
       }
 
       // optional uint32 minorVersion = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_minorversion();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_minorVersion:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &minorversion_)));
+          set_has_minorversion();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_patchVersion;
         break;
       }
 
       // optional uint32 patchVersion = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_patchversion();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_patchVersion:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &patchversion_)));
+          set_has_patchversion();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_application;
         break;
       }
 
       // optional string application = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_application:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_application()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->application().data(), static_cast<int>(this->application().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.RpcEndpointInfos.application");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->application().data(), this->application().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_buildNumber;
         break;
       }
 
       // optional uint32 buildNumber = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_buildnumber();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_buildNumber:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &buildnumber_)));
+          set_has_buildnumber();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(66)) goto parse_versionQualifier;
         break;
       }
 
       // optional string versionQualifier = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(66u /* 66 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_versionQualifier:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_versionqualifier()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->versionqualifier().data(), static_cast<int>(this->versionqualifier().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.RpcEndpointInfos.versionQualifier");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->versionqualifier().data(), this->versionqualifier().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.RpcEndpointInfos)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.RpcEndpointInfos)
-  return false;
 #undef DO_
 }
 
 void RpcEndpointInfos::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.RpcEndpointInfos)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->name().data(), static_cast<int>(this->name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RpcEndpointInfos.name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->name().data(), this->name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->name(), output);
   }
 
   // optional string version = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->version().data(), static_cast<int>(this->version().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RpcEndpointInfos.version");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_version()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->version().data(), this->version().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->version(), output);
   }
 
   // optional uint32 majorVersion = 3;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_majorversion()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(3, this->majorversion(), output);
   }
 
   // optional uint32 minorVersion = 4;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_minorversion()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(4, this->minorversion(), output);
   }
 
   // optional uint32 patchVersion = 5;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_patchversion()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(5, this->patchversion(), output);
   }
 
   // optional string application = 6;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->application().data(), static_cast<int>(this->application().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RpcEndpointInfos.application");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_application()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->application().data(), this->application().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       6, this->application(), output);
   }
 
   // optional uint32 buildNumber = 7;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_buildnumber()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(7, this->buildnumber(), output);
   }
 
   // optional string versionQualifier = 8;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->versionqualifier().data(), static_cast<int>(this->versionqualifier().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RpcEndpointInfos.versionQualifier");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_versionqualifier()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->versionqualifier().data(), this->versionqualifier().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       8, this->versionqualifier(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.RpcEndpointInfos)
 }
 
-::google::protobuf::uint8* RpcEndpointInfos::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.RpcEndpointInfos)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* RpcEndpointInfos::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->name().data(), static_cast<int>(this->name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RpcEndpointInfos.name");
+  if (has_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->name().data(), this->name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->name(), target);
   }
 
   // optional string version = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->version().data(), static_cast<int>(this->version().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RpcEndpointInfos.version");
+  if (has_version()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->version().data(), this->version().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->version(), target);
   }
 
   // optional uint32 majorVersion = 3;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_majorversion()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(3, this->majorversion(), target);
   }
 
   // optional uint32 minorVersion = 4;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_minorversion()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(4, this->minorversion(), target);
   }
 
   // optional uint32 patchVersion = 5;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_patchversion()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(5, this->patchversion(), target);
   }
 
   // optional string application = 6;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->application().data(), static_cast<int>(this->application().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RpcEndpointInfos.application");
+  if (has_application()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->application().data(), this->application().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         6, this->application(), target);
   }
 
   // optional uint32 buildNumber = 7;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_buildnumber()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(7, this->buildnumber(), target);
   }
 
   // optional string versionQualifier = 8;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->versionqualifier().data(), static_cast<int>(this->versionqualifier().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RpcEndpointInfos.versionQualifier");
+  if (has_versionqualifier()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->versionqualifier().data(), this->versionqualifier().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         8, this->versionqualifier(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.RpcEndpointInfos)
   return target;
 }
 
-size_t RpcEndpointInfos::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.RpcEndpointInfos)
-  size_t total_size = 0;
+int RpcEndpointInfos::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 255u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string name = 1;
     if (has_name()) {
       total_size += 1 +
@@ -2876,20 +2437,6 @@
           this->version());
     }
 
-    // optional string application = 6;
-    if (has_application()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->application());
-    }
-
-    // optional string versionQualifier = 8;
-    if (has_versionqualifier()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->versionqualifier());
-    }
-
     // optional uint32 majorVersion = 3;
     if (has_majorversion()) {
       total_size += 1 +
@@ -2911,6 +2458,13 @@
           this->patchversion());
     }
 
+    // optional string application = 6;
+    if (has_application()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->application());
+    }
+
     // optional uint32 buildNumber = 7;
     if (has_buildnumber()) {
       total_size += 1 +
@@ -2918,129 +2472,113 @@
           this->buildnumber());
     }
 
+    // optional string versionQualifier = 8;
+    if (has_versionqualifier()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->versionqualifier());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void RpcEndpointInfos::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.RpcEndpointInfos)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const RpcEndpointInfos* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const RpcEndpointInfos>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const RpcEndpointInfos*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.RpcEndpointInfos)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.RpcEndpointInfos)
     MergeFrom(*source);
   }
 }
 
 void RpcEndpointInfos::MergeFrom(const RpcEndpointInfos& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.RpcEndpointInfos)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_name();
-      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_name()) {
+      set_name(from.name());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_version();
-      version_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.version_);
+    if (from.has_version()) {
+      set_version(from.version());
     }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_application();
-      application_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.application_);
+    if (from.has_majorversion()) {
+      set_majorversion(from.majorversion());
     }
-    if (cached_has_bits & 0x00000008u) {
-      set_has_versionqualifier();
-      versionqualifier_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.versionqualifier_);
+    if (from.has_minorversion()) {
+      set_minorversion(from.minorversion());
     }
-    if (cached_has_bits & 0x00000010u) {
-      majorversion_ = from.majorversion_;
+    if (from.has_patchversion()) {
+      set_patchversion(from.patchversion());
     }
-    if (cached_has_bits & 0x00000020u) {
-      minorversion_ = from.minorversion_;
+    if (from.has_application()) {
+      set_application(from.application());
     }
-    if (cached_has_bits & 0x00000040u) {
-      patchversion_ = from.patchversion_;
+    if (from.has_buildnumber()) {
+      set_buildnumber(from.buildnumber());
     }
-    if (cached_has_bits & 0x00000080u) {
-      buildnumber_ = from.buildnumber_;
+    if (from.has_versionqualifier()) {
+      set_versionqualifier(from.versionqualifier());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void RpcEndpointInfos::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.RpcEndpointInfos)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void RpcEndpointInfos::CopyFrom(const RpcEndpointInfos& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.RpcEndpointInfos)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool RpcEndpointInfos::IsInitialized() const {
+
   return true;
 }
 
 void RpcEndpointInfos::Swap(RpcEndpointInfos* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void RpcEndpointInfos::InternalSwap(RpcEndpointInfos* other) {
-  using std::swap;
-  name_.Swap(&other->name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  version_.Swap(&other->version_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  application_.Swap(&other->application_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  versionqualifier_.Swap(&other->versionqualifier_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(majorversion_, other->majorversion_);
-  swap(minorversion_, other->minorversion_);
-  swap(patchversion_, other->patchversion_);
-  swap(buildnumber_, other->buildnumber_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(name_, other->name_);
+    std::swap(version_, other->version_);
+    std::swap(majorversion_, other->majorversion_);
+    std::swap(minorversion_, other->minorversion_);
+    std::swap(patchversion_, other->patchversion_);
+    std::swap(application_, other->application_);
+    std::swap(buildnumber_, other->buildnumber_);
+    std::swap(versionqualifier_, other->versionqualifier_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata RpcEndpointInfos::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = RpcEndpointInfos_descriptor_;
+  metadata.reflection = RpcEndpointInfos_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void UserToBitHandshake::InitAsDefaultInstance() {
-  ::exec::user::_UserToBitHandshake_default_instance_._instance.get_mutable()->credentials_ = const_cast< ::exec::shared::UserCredentials*>(
-      ::exec::shared::UserCredentials::internal_default_instance());
-  ::exec::user::_UserToBitHandshake_default_instance_._instance.get_mutable()->properties_ = const_cast< ::exec::user::UserProperties*>(
-      ::exec::user::UserProperties::internal_default_instance());
-  ::exec::user::_UserToBitHandshake_default_instance_._instance.get_mutable()->client_infos_ = const_cast< ::exec::user::RpcEndpointInfos*>(
-      ::exec::user::RpcEndpointInfos::internal_default_instance());
-}
-void UserToBitHandshake::clear_credentials() {
-  if (credentials_ != NULL) credentials_->Clear();
-  clear_has_credentials();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int UserToBitHandshake::kChannelFieldNumber;
 const int UserToBitHandshake::kSupportListeningFieldNumber;
 const int UserToBitHandshake::kRpcVersionFieldNumber;
@@ -3050,118 +2588,106 @@
 const int UserToBitHandshake::kSupportTimeoutFieldNumber;
 const int UserToBitHandshake::kClientInfosFieldNumber;
 const int UserToBitHandshake::kSaslSupportFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 UserToBitHandshake::UserToBitHandshake()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_UserToBitHandshake.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.UserToBitHandshake)
 }
+
+void UserToBitHandshake::InitAsDefaultInstance() {
+  credentials_ = const_cast< ::exec::shared::UserCredentials*>(&::exec::shared::UserCredentials::default_instance());
+  properties_ = const_cast< ::exec::user::UserProperties*>(&::exec::user::UserProperties::default_instance());
+  client_infos_ = const_cast< ::exec::user::RpcEndpointInfos*>(&::exec::user::RpcEndpointInfos::default_instance());
+}
+
 UserToBitHandshake::UserToBitHandshake(const UserToBitHandshake& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_credentials()) {
-    credentials_ = new ::exec::shared::UserCredentials(*from.credentials_);
-  } else {
-    credentials_ = NULL;
-  }
-  if (from.has_properties()) {
-    properties_ = new ::exec::user::UserProperties(*from.properties_);
-  } else {
-    properties_ = NULL;
-  }
-  if (from.has_client_infos()) {
-    client_infos_ = new ::exec::user::RpcEndpointInfos(*from.client_infos_);
-  } else {
-    client_infos_ = NULL;
-  }
-  ::memcpy(&rpc_version_, &from.rpc_version_,
-    static_cast<size_t>(reinterpret_cast<char*>(&channel_) -
-    reinterpret_cast<char*>(&rpc_version_)) + sizeof(channel_));
-  // @@protoc_insertion_point(copy_constructor:exec.user.UserToBitHandshake)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void UserToBitHandshake::SharedCtor() {
-  ::memset(&credentials_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&sasl_support_) -
-      reinterpret_cast<char*>(&credentials_)) + sizeof(sasl_support_));
+  _cached_size_ = 0;
   channel_ = 2;
+  support_listening_ = false;
+  rpc_version_ = 0;
+  credentials_ = NULL;
+  properties_ = NULL;
+  support_complex_types_ = false;
+  support_timeout_ = false;
+  client_infos_ = NULL;
+  sasl_support_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 UserToBitHandshake::~UserToBitHandshake() {
-  // @@protoc_insertion_point(destructor:exec.user.UserToBitHandshake)
   SharedDtor();
 }
 
 void UserToBitHandshake::SharedDtor() {
-  if (this != internal_default_instance()) delete credentials_;
-  if (this != internal_default_instance()) delete properties_;
-  if (this != internal_default_instance()) delete client_infos_;
+  if (this != default_instance_) {
+    delete credentials_;
+    delete properties_;
+    delete client_infos_;
+  }
 }
 
 void UserToBitHandshake::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* UserToBitHandshake::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return UserToBitHandshake_descriptor_;
 }
 
 const UserToBitHandshake& UserToBitHandshake::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_UserToBitHandshake.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+UserToBitHandshake* UserToBitHandshake::default_instance_ = NULL;
+
+UserToBitHandshake* UserToBitHandshake::New() const {
+  return new UserToBitHandshake;
+}
 
 void UserToBitHandshake::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.UserToBitHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(credentials_ != NULL);
-      credentials_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    channel_ = 2;
+    support_listening_ = false;
+    rpc_version_ = 0;
+    if (has_credentials()) {
+      if (credentials_ != NULL) credentials_->::exec::shared::UserCredentials::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(properties_ != NULL);
-      properties_->Clear();
+    if (has_properties()) {
+      if (properties_ != NULL) properties_->::exec::user::UserProperties::Clear();
     }
-    if (cached_has_bits & 0x00000004u) {
-      GOOGLE_DCHECK(client_infos_ != NULL);
-      client_infos_->Clear();
+    support_complex_types_ = false;
+    support_timeout_ = false;
+    if (has_client_infos()) {
+      if (client_infos_ != NULL) client_infos_->::exec::user::RpcEndpointInfos::Clear();
     }
   }
-  if (cached_has_bits & 248u) {
-    ::memset(&rpc_version_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&sasl_support_) -
-        reinterpret_cast<char*>(&rpc_version_)) + sizeof(sasl_support_));
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    sasl_support_ = 0;
   }
-  channel_ = 2;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool UserToBitHandshake::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.UserToBitHandshake)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.RpcChannel channel = 1 [default = USER];
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -3169,111 +2695,126 @@
           if (::exec::shared::RpcChannel_IsValid(value)) {
             set_channel(static_cast< ::exec::shared::RpcChannel >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_support_listening;
         break;
       }
 
       // optional bool support_listening = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_support_listening();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_support_listening:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &support_listening_)));
+          set_has_support_listening();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_rpc_version;
         break;
       }
 
       // optional int32 rpc_version = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_rpc_version();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_rpc_version:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &rpc_version_)));
+          set_has_rpc_version();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_credentials;
         break;
       }
 
       // optional .exec.shared.UserCredentials credentials = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_credentials:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_credentials()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(42)) goto parse_properties;
         break;
       }
 
       // optional .exec.user.UserProperties properties = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_properties:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_properties()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(48)) goto parse_support_complex_types;
         break;
       }
 
       // optional bool support_complex_types = 6 [default = false];
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(48u /* 48 & 0xFF */)) {
-          set_has_support_complex_types();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_support_complex_types:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &support_complex_types_)));
+          set_has_support_complex_types();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_support_timeout;
         break;
       }
 
       // optional bool support_timeout = 7 [default = false];
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_support_timeout();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_support_timeout:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &support_timeout_)));
+          set_has_support_timeout();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(66)) goto parse_client_infos;
         break;
       }
 
       // optional .exec.user.RpcEndpointInfos client_infos = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(66u /* 66 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_client_infos:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_client_infos()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(72)) goto parse_sasl_support;
         break;
       }
 
       // optional .exec.user.SaslSupport sasl_support = 9;
       case 9: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(72u /* 72 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_sasl_support:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -3281,197 +2822,164 @@
           if (::exec::user::SaslSupport_IsValid(value)) {
             set_sasl_support(static_cast< ::exec::user::SaslSupport >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                9, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(9, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.UserToBitHandshake)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.UserToBitHandshake)
-  return false;
 #undef DO_
 }
 
 void UserToBitHandshake::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.UserToBitHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.RpcChannel channel = 1 [default = USER];
-  if (cached_has_bits & 0x00000100u) {
+  if (has_channel()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->channel(), output);
   }
 
   // optional bool support_listening = 2;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_support_listening()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->support_listening(), output);
   }
 
   // optional int32 rpc_version = 3;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_rpc_version()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->rpc_version(), output);
   }
 
   // optional .exec.shared.UserCredentials credentials = 4;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_credentials()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      4, this->_internal_credentials(), output);
+      4, this->credentials(), output);
   }
 
   // optional .exec.user.UserProperties properties = 5;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_properties()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      5, this->_internal_properties(), output);
+      5, this->properties(), output);
   }
 
   // optional bool support_complex_types = 6 [default = false];
-  if (cached_has_bits & 0x00000020u) {
+  if (has_support_complex_types()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(6, this->support_complex_types(), output);
   }
 
   // optional bool support_timeout = 7 [default = false];
-  if (cached_has_bits & 0x00000040u) {
+  if (has_support_timeout()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(7, this->support_timeout(), output);
   }
 
   // optional .exec.user.RpcEndpointInfos client_infos = 8;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_client_infos()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      8, this->_internal_client_infos(), output);
+      8, this->client_infos(), output);
   }
 
   // optional .exec.user.SaslSupport sasl_support = 9;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_sasl_support()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       9, this->sasl_support(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.UserToBitHandshake)
 }
 
-::google::protobuf::uint8* UserToBitHandshake::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.UserToBitHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* UserToBitHandshake::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.RpcChannel channel = 1 [default = USER];
-  if (cached_has_bits & 0x00000100u) {
+  if (has_channel()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->channel(), target);
   }
 
   // optional bool support_listening = 2;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_support_listening()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->support_listening(), target);
   }
 
   // optional int32 rpc_version = 3;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_rpc_version()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->rpc_version(), target);
   }
 
   // optional .exec.shared.UserCredentials credentials = 4;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_credentials()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        4, this->_internal_credentials(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        4, this->credentials(), target);
   }
 
   // optional .exec.user.UserProperties properties = 5;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_properties()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        5, this->_internal_properties(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        5, this->properties(), target);
   }
 
   // optional bool support_complex_types = 6 [default = false];
-  if (cached_has_bits & 0x00000020u) {
+  if (has_support_complex_types()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(6, this->support_complex_types(), target);
   }
 
   // optional bool support_timeout = 7 [default = false];
-  if (cached_has_bits & 0x00000040u) {
+  if (has_support_timeout()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(7, this->support_timeout(), target);
   }
 
   // optional .exec.user.RpcEndpointInfos client_infos = 8;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_client_infos()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        8, this->_internal_client_infos(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        8, this->client_infos(), target);
   }
 
   // optional .exec.user.SaslSupport sasl_support = 9;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_sasl_support()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       9, this->sasl_support(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.UserToBitHandshake)
   return target;
 }
 
-size_t UserToBitHandshake::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.UserToBitHandshake)
-  size_t total_size = 0;
+int UserToBitHandshake::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 255u) {
-    // optional .exec.shared.UserCredentials credentials = 4;
-    if (has_credentials()) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional .exec.shared.RpcChannel channel = 1 [default = USER];
+    if (has_channel()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *credentials_);
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->channel());
     }
 
-    // optional .exec.user.UserProperties properties = 5;
-    if (has_properties()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *properties_);
-    }
-
-    // optional .exec.user.RpcEndpointInfos client_infos = 8;
-    if (has_client_infos()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *client_infos_);
+    // optional bool support_listening = 2;
+    if (has_support_listening()) {
+      total_size += 1 + 1;
     }
 
     // optional int32 rpc_version = 3;
@@ -3481,9 +2989,18 @@
           this->rpc_version());
     }
 
-    // optional bool support_listening = 2;
-    if (has_support_listening()) {
-      total_size += 1 + 1;
+    // optional .exec.shared.UserCredentials credentials = 4;
+    if (has_credentials()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->credentials());
+    }
+
+    // optional .exec.user.UserProperties properties = 5;
+    if (has_properties()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->properties());
     }
 
     // optional bool support_complex_types = 6 [default = false];
@@ -3496,6 +3013,15 @@
       total_size += 1 + 1;
     }
 
+    // optional .exec.user.RpcEndpointInfos client_infos = 8;
+    if (has_client_infos()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->client_infos());
+    }
+
+  }
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
     // optional .exec.user.SaslSupport sasl_support = 9;
     if (has_sasl_support()) {
       total_size += 1 +
@@ -3503,323 +3029,282 @@
     }
 
   }
-  // optional .exec.shared.RpcChannel channel = 1 [default = USER];
-  if (has_channel()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::EnumSize(this->channel());
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
   }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void UserToBitHandshake::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.UserToBitHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const UserToBitHandshake* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const UserToBitHandshake>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const UserToBitHandshake*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.UserToBitHandshake)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.UserToBitHandshake)
     MergeFrom(*source);
   }
 }
 
 void UserToBitHandshake::MergeFrom(const UserToBitHandshake& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.UserToBitHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_channel()) {
+      set_channel(from.channel());
+    }
+    if (from.has_support_listening()) {
+      set_support_listening(from.support_listening());
+    }
+    if (from.has_rpc_version()) {
+      set_rpc_version(from.rpc_version());
+    }
+    if (from.has_credentials()) {
       mutable_credentials()->::exec::shared::UserCredentials::MergeFrom(from.credentials());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_properties()) {
       mutable_properties()->::exec::user::UserProperties::MergeFrom(from.properties());
     }
-    if (cached_has_bits & 0x00000004u) {
+    if (from.has_support_complex_types()) {
+      set_support_complex_types(from.support_complex_types());
+    }
+    if (from.has_support_timeout()) {
+      set_support_timeout(from.support_timeout());
+    }
+    if (from.has_client_infos()) {
       mutable_client_infos()->::exec::user::RpcEndpointInfos::MergeFrom(from.client_infos());
     }
-    if (cached_has_bits & 0x00000008u) {
-      rpc_version_ = from.rpc_version_;
-    }
-    if (cached_has_bits & 0x00000010u) {
-      support_listening_ = from.support_listening_;
-    }
-    if (cached_has_bits & 0x00000020u) {
-      support_complex_types_ = from.support_complex_types_;
-    }
-    if (cached_has_bits & 0x00000040u) {
-      support_timeout_ = from.support_timeout_;
-    }
-    if (cached_has_bits & 0x00000080u) {
-      sasl_support_ = from.sasl_support_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 0x00000100u) {
-    set_channel(from.channel());
+  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (from.has_sasl_support()) {
+      set_sasl_support(from.sasl_support());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void UserToBitHandshake::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.UserToBitHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void UserToBitHandshake::CopyFrom(const UserToBitHandshake& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.UserToBitHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool UserToBitHandshake::IsInitialized() const {
+
   if (has_properties()) {
-    if (!this->properties_->IsInitialized()) return false;
+    if (!this->properties().IsInitialized()) return false;
   }
   return true;
 }
 
 void UserToBitHandshake::Swap(UserToBitHandshake* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void UserToBitHandshake::InternalSwap(UserToBitHandshake* other) {
-  using std::swap;
-  swap(credentials_, other->credentials_);
-  swap(properties_, other->properties_);
-  swap(client_infos_, other->client_infos_);
-  swap(rpc_version_, other->rpc_version_);
-  swap(support_listening_, other->support_listening_);
-  swap(support_complex_types_, other->support_complex_types_);
-  swap(support_timeout_, other->support_timeout_);
-  swap(sasl_support_, other->sasl_support_);
-  swap(channel_, other->channel_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(channel_, other->channel_);
+    std::swap(support_listening_, other->support_listening_);
+    std::swap(rpc_version_, other->rpc_version_);
+    std::swap(credentials_, other->credentials_);
+    std::swap(properties_, other->properties_);
+    std::swap(support_complex_types_, other->support_complex_types_);
+    std::swap(support_timeout_, other->support_timeout_);
+    std::swap(client_infos_, other->client_infos_);
+    std::swap(sasl_support_, other->sasl_support_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata UserToBitHandshake::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = UserToBitHandshake_descriptor_;
+  metadata.reflection = UserToBitHandshake_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void RequestResults::InitAsDefaultInstance() {
-  ::exec::user::_RequestResults_default_instance_._instance.get_mutable()->query_id_ = const_cast< ::exec::shared::QueryId*>(
-      ::exec::shared::QueryId::internal_default_instance());
-}
-void RequestResults::clear_query_id() {
-  if (query_id_ != NULL) query_id_->Clear();
-  clear_has_query_id();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int RequestResults::kQueryIdFieldNumber;
 const int RequestResults::kMaximumResponsesFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 RequestResults::RequestResults()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_RequestResults.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.RequestResults)
 }
+
+void RequestResults::InitAsDefaultInstance() {
+  query_id_ = const_cast< ::exec::shared::QueryId*>(&::exec::shared::QueryId::default_instance());
+}
+
 RequestResults::RequestResults(const RequestResults& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_query_id()) {
-    query_id_ = new ::exec::shared::QueryId(*from.query_id_);
-  } else {
-    query_id_ = NULL;
-  }
-  maximum_responses_ = from.maximum_responses_;
-  // @@protoc_insertion_point(copy_constructor:exec.user.RequestResults)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void RequestResults::SharedCtor() {
-  ::memset(&query_id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&maximum_responses_) -
-      reinterpret_cast<char*>(&query_id_)) + sizeof(maximum_responses_));
+  _cached_size_ = 0;
+  query_id_ = NULL;
+  maximum_responses_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 RequestResults::~RequestResults() {
-  // @@protoc_insertion_point(destructor:exec.user.RequestResults)
   SharedDtor();
 }
 
 void RequestResults::SharedDtor() {
-  if (this != internal_default_instance()) delete query_id_;
+  if (this != default_instance_) {
+    delete query_id_;
+  }
 }
 
 void RequestResults::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* RequestResults::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return RequestResults_descriptor_;
 }
 
 const RequestResults& RequestResults::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_RequestResults.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+RequestResults* RequestResults::default_instance_ = NULL;
+
+RequestResults* RequestResults::New() const {
+  return new RequestResults;
+}
 
 void RequestResults::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.RequestResults)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(query_id_ != NULL);
-    query_id_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_query_id()) {
+      if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
+    }
+    maximum_responses_ = 0;
   }
-  maximum_responses_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool RequestResults::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.RequestResults)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.QueryId query_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_query_id()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_maximum_responses;
         break;
       }
 
       // optional int32 maximum_responses = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_maximum_responses();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_maximum_responses:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &maximum_responses_)));
+          set_has_maximum_responses();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.RequestResults)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.RequestResults)
-  return false;
 #undef DO_
 }
 
 void RequestResults::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.RequestResults)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_query_id(), output);
+      1, this->query_id(), output);
   }
 
   // optional int32 maximum_responses = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_maximum_responses()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->maximum_responses(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.RequestResults)
 }
 
-::google::protobuf::uint8* RequestResults::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.RequestResults)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* RequestResults::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_query_id(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->query_id(), target);
   }
 
   // optional int32 maximum_responses = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_maximum_responses()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->maximum_responses(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.RequestResults)
   return target;
 }
 
-size_t RequestResults::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.RequestResults)
-  size_t total_size = 0;
+int RequestResults::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 3u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.shared.QueryId query_id = 1;
     if (has_query_id()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *query_id_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->query_id());
     }
 
     // optional int32 maximum_responses = 2;
@@ -3830,190 +3315,182 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void RequestResults::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.RequestResults)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const RequestResults* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const RequestResults>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const RequestResults*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.RequestResults)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.RequestResults)
     MergeFrom(*source);
   }
 }
 
 void RequestResults::MergeFrom(const RequestResults& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.RequestResults)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_query_id()) {
       mutable_query_id()->::exec::shared::QueryId::MergeFrom(from.query_id());
     }
-    if (cached_has_bits & 0x00000002u) {
-      maximum_responses_ = from.maximum_responses_;
+    if (from.has_maximum_responses()) {
+      set_maximum_responses(from.maximum_responses());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void RequestResults::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.RequestResults)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void RequestResults::CopyFrom(const RequestResults& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.RequestResults)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool RequestResults::IsInitialized() const {
+
   return true;
 }
 
 void RequestResults::Swap(RequestResults* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void RequestResults::InternalSwap(RequestResults* other) {
-  using std::swap;
-  swap(query_id_, other->query_id_);
-  swap(maximum_responses_, other->maximum_responses_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(query_id_, other->query_id_);
+    std::swap(maximum_responses_, other->maximum_responses_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata RequestResults::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = RequestResults_descriptor_;
+  metadata.reflection = RequestResults_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetQueryPlanFragments::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetQueryPlanFragments::kQueryFieldNumber;
 const int GetQueryPlanFragments::kTypeFieldNumber;
 const int GetQueryPlanFragments::kSplitPlanFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetQueryPlanFragments::GetQueryPlanFragments()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetQueryPlanFragments.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetQueryPlanFragments)
 }
+
+void GetQueryPlanFragments::InitAsDefaultInstance() {
+}
+
 GetQueryPlanFragments::GetQueryPlanFragments(const GetQueryPlanFragments& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_query()) {
-    query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.query_);
-  }
-  ::memcpy(&split_plan_, &from.split_plan_,
-    static_cast<size_t>(reinterpret_cast<char*>(&type_) -
-    reinterpret_cast<char*>(&split_plan_)) + sizeof(type_));
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetQueryPlanFragments)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetQueryPlanFragments::SharedCtor() {
-  query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  split_plan_ = false;
+  _cached_size_ = 0;
+  query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   type_ = 1;
+  split_plan_ = false;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetQueryPlanFragments::~GetQueryPlanFragments() {
-  // @@protoc_insertion_point(destructor:exec.user.GetQueryPlanFragments)
   SharedDtor();
 }
 
 void GetQueryPlanFragments::SharedDtor() {
-  query_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ != &::google::protobuf::internal::kEmptyString) {
+    delete query_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void GetQueryPlanFragments::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetQueryPlanFragments::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetQueryPlanFragments_descriptor_;
 }
 
 const GetQueryPlanFragments& GetQueryPlanFragments::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetQueryPlanFragments.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetQueryPlanFragments* GetQueryPlanFragments::default_instance_ = NULL;
+
+GetQueryPlanFragments* GetQueryPlanFragments::New() const {
+  return new GetQueryPlanFragments;
+}
 
 void GetQueryPlanFragments::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetQueryPlanFragments)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    query_.ClearNonDefaultToEmptyNoArena();
-  }
-  if (cached_has_bits & 6u) {
-    split_plan_ = false;
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_query()) {
+      if (query_ != &::google::protobuf::internal::kEmptyString) {
+        query_->clear();
+      }
+    }
     type_ = 1;
+    split_plan_ = false;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetQueryPlanFragments::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetQueryPlanFragments)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // required string query = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_query()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->query().data(), static_cast<int>(this->query().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.GetQueryPlanFragments.query");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->query().data(), this->query().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_type;
         break;
       }
 
       // optional .exec.shared.QueryType type = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_type:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -4021,141 +3498,114 @@
           if (::exec::shared::QueryType_IsValid(value)) {
             set_type(static_cast< ::exec::shared::QueryType >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                2, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(2, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_split_plan;
         break;
       }
 
       // optional bool split_plan = 3 [default = false];
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_split_plan();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_split_plan:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &split_plan_)));
+          set_has_split_plan();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetQueryPlanFragments)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetQueryPlanFragments)
-  return false;
 #undef DO_
 }
 
 void GetQueryPlanFragments::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetQueryPlanFragments)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // required string query = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->query().data(), static_cast<int>(this->query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.GetQueryPlanFragments.query");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->query().data(), this->query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->query(), output);
   }
 
   // optional .exec.shared.QueryType type = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       2, this->type(), output);
   }
 
   // optional bool split_plan = 3 [default = false];
-  if (cached_has_bits & 0x00000002u) {
+  if (has_split_plan()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->split_plan(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetQueryPlanFragments)
 }
 
-::google::protobuf::uint8* GetQueryPlanFragments::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetQueryPlanFragments)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetQueryPlanFragments::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // required string query = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->query().data(), static_cast<int>(this->query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.GetQueryPlanFragments.query");
+  if (has_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->query().data(), this->query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->query(), target);
   }
 
   // optional .exec.shared.QueryType type = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_type()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       2, this->type(), target);
   }
 
   // optional bool split_plan = 3 [default = false];
-  if (cached_has_bits & 0x00000002u) {
+  if (has_split_plan()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->split_plan(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetQueryPlanFragments)
   return target;
 }
 
-size_t GetQueryPlanFragments::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetQueryPlanFragments)
-  size_t total_size = 0;
+int GetQueryPlanFragments::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // required string query = 1;
-  if (has_query()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::StringSize(
-        this->query());
-  }
-  if (_has_bits_[0 / 32] & 6u) {
-    // optional bool split_plan = 3 [default = false];
-    if (has_split_plan()) {
-      total_size += 1 + 1;
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // required string query = 1;
+    if (has_query()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->query());
     }
 
     // optional .exec.shared.QueryType type = 2;
@@ -4164,59 +3614,58 @@
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
     }
 
+    // optional bool split_plan = 3 [default = false];
+    if (has_split_plan()) {
+      total_size += 1 + 1;
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetQueryPlanFragments::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetQueryPlanFragments)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetQueryPlanFragments* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetQueryPlanFragments>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetQueryPlanFragments*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetQueryPlanFragments)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetQueryPlanFragments)
     MergeFrom(*source);
   }
 }
 
 void GetQueryPlanFragments::MergeFrom(const GetQueryPlanFragments& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetQueryPlanFragments)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_query();
-      query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.query_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_query()) {
+      set_query(from.query());
     }
-    if (cached_has_bits & 0x00000002u) {
-      split_plan_ = from.split_plan_;
+    if (from.has_type()) {
+      set_type(from.type());
     }
-    if (cached_has_bits & 0x00000004u) {
-      type_ = from.type_;
+    if (from.has_split_plan()) {
+      set_split_plan(from.split_plan());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetQueryPlanFragments::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetQueryPlanFragments)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetQueryPlanFragments::CopyFrom(const GetQueryPlanFragments& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetQueryPlanFragments)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
@@ -4224,149 +3673,120 @@
 
 bool GetQueryPlanFragments::IsInitialized() const {
   if ((_has_bits_[0] & 0x00000001) != 0x00000001) return false;
+
   return true;
 }
 
 void GetQueryPlanFragments::Swap(GetQueryPlanFragments* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetQueryPlanFragments::InternalSwap(GetQueryPlanFragments* other) {
-  using std::swap;
-  query_.Swap(&other->query_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(split_plan_, other->split_plan_);
-  swap(type_, other->type_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(query_, other->query_);
+    std::swap(type_, other->type_);
+    std::swap(split_plan_, other->split_plan_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetQueryPlanFragments::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetQueryPlanFragments_descriptor_;
+  metadata.reflection = GetQueryPlanFragments_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void QueryPlanFragments::InitAsDefaultInstance() {
-  ::exec::user::_QueryPlanFragments_default_instance_._instance.get_mutable()->query_id_ = const_cast< ::exec::shared::QueryId*>(
-      ::exec::shared::QueryId::internal_default_instance());
-  ::exec::user::_QueryPlanFragments_default_instance_._instance.get_mutable()->error_ = const_cast< ::exec::shared::DrillPBError*>(
-      ::exec::shared::DrillPBError::internal_default_instance());
-}
-void QueryPlanFragments::clear_query_id() {
-  if (query_id_ != NULL) query_id_->Clear();
-  clear_has_query_id();
-}
-void QueryPlanFragments::clear_fragments() {
-  fragments_.Clear();
-}
-void QueryPlanFragments::clear_error() {
-  if (error_ != NULL) error_->Clear();
-  clear_has_error();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int QueryPlanFragments::kStatusFieldNumber;
 const int QueryPlanFragments::kQueryIdFieldNumber;
 const int QueryPlanFragments::kFragmentsFieldNumber;
 const int QueryPlanFragments::kErrorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 QueryPlanFragments::QueryPlanFragments()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_QueryPlanFragments.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.QueryPlanFragments)
 }
+
+void QueryPlanFragments::InitAsDefaultInstance() {
+  query_id_ = const_cast< ::exec::shared::QueryId*>(&::exec::shared::QueryId::default_instance());
+  error_ = const_cast< ::exec::shared::DrillPBError*>(&::exec::shared::DrillPBError::default_instance());
+}
+
 QueryPlanFragments::QueryPlanFragments(const QueryPlanFragments& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      fragments_(from.fragments_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_query_id()) {
-    query_id_ = new ::exec::shared::QueryId(*from.query_id_);
-  } else {
-    query_id_ = NULL;
-  }
-  if (from.has_error()) {
-    error_ = new ::exec::shared::DrillPBError(*from.error_);
-  } else {
-    error_ = NULL;
-  }
-  status_ = from.status_;
-  // @@protoc_insertion_point(copy_constructor:exec.user.QueryPlanFragments)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void QueryPlanFragments::SharedCtor() {
-  ::memset(&query_id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&status_) -
-      reinterpret_cast<char*>(&query_id_)) + sizeof(status_));
+  _cached_size_ = 0;
+  status_ = 0;
+  query_id_ = NULL;
+  error_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 QueryPlanFragments::~QueryPlanFragments() {
-  // @@protoc_insertion_point(destructor:exec.user.QueryPlanFragments)
   SharedDtor();
 }
 
 void QueryPlanFragments::SharedDtor() {
-  if (this != internal_default_instance()) delete query_id_;
-  if (this != internal_default_instance()) delete error_;
+  if (this != default_instance_) {
+    delete query_id_;
+    delete error_;
+  }
 }
 
 void QueryPlanFragments::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* QueryPlanFragments::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return QueryPlanFragments_descriptor_;
 }
 
 const QueryPlanFragments& QueryPlanFragments::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_QueryPlanFragments.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+QueryPlanFragments* QueryPlanFragments::default_instance_ = NULL;
+
+QueryPlanFragments* QueryPlanFragments::New() const {
+  return new QueryPlanFragments;
+}
 
 void QueryPlanFragments::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.QueryPlanFragments)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  fragments_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(query_id_ != NULL);
-      query_id_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    status_ = 0;
+    if (has_query_id()) {
+      if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(error_ != NULL);
-      error_->Clear();
+    if (has_error()) {
+      if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
     }
   }
-  status_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  fragments_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool QueryPlanFragments::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.QueryPlanFragments)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // required .exec.shared.QueryResult.QueryState status = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -4374,286 +3794,257 @@
           if (::exec::shared::QueryResult_QueryState_IsValid(value)) {
             set_status(static_cast< ::exec::shared::QueryResult_QueryState >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_query_id;
         break;
       }
 
       // optional .exec.shared.QueryId query_id = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_query_id:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_query_id()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_fragments;
         break;
       }
 
       // repeated .exec.bit.control.PlanFragment fragments = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_fragments:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_fragments()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_fragments;
+        if (input->ExpectTag(34)) goto parse_error;
         break;
       }
 
       // optional .exec.shared.DrillPBError error = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.QueryPlanFragments)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.QueryPlanFragments)
-  return false;
 #undef DO_
 }
 
 void QueryPlanFragments::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.QueryPlanFragments)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // required .exec.shared.QueryResult.QueryState status = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_status()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->status(), output);
   }
 
   // optional .exec.shared.QueryId query_id = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_query_id(), output);
+      2, this->query_id(), output);
   }
 
   // repeated .exec.bit.control.PlanFragment fragments = 3;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragments_size()); i < n; i++) {
+  for (int i = 0; i < this->fragments_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3,
-      this->fragments(static_cast<int>(i)),
-      output);
+      3, this->fragments(i), output);
   }
 
   // optional .exec.shared.DrillPBError error = 4;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_error()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      4, this->_internal_error(), output);
+      4, this->error(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.QueryPlanFragments)
 }
 
-::google::protobuf::uint8* QueryPlanFragments::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.QueryPlanFragments)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* QueryPlanFragments::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // required .exec.shared.QueryResult.QueryState status = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_status()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->status(), target);
   }
 
   // optional .exec.shared.QueryId query_id = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_query_id(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->query_id(), target);
   }
 
   // repeated .exec.bit.control.PlanFragment fragments = 3;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragments_size()); i < n; i++) {
+  for (int i = 0; i < this->fragments_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->fragments(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->fragments(i), target);
   }
 
   // optional .exec.shared.DrillPBError error = 4;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_error()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        4, this->_internal_error(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        4, this->error(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.QueryPlanFragments)
   return target;
 }
 
-size_t QueryPlanFragments::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.QueryPlanFragments)
-  size_t total_size = 0;
+int QueryPlanFragments::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // required .exec.shared.QueryResult.QueryState status = 1;
-  if (has_status()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
-  }
-  // repeated .exec.bit.control.PlanFragment fragments = 3;
-  {
-    unsigned int count = static_cast<unsigned int>(this->fragments_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->fragments(static_cast<int>(i)));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // required .exec.shared.QueryResult.QueryState status = 1;
+    if (has_status()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
     }
-  }
 
-  if (_has_bits_[0 / 32] & 3u) {
     // optional .exec.shared.QueryId query_id = 2;
     if (has_query_id()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *query_id_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->query_id());
     }
 
     // optional .exec.shared.DrillPBError error = 4;
     if (has_error()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *error_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->error());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.bit.control.PlanFragment fragments = 3;
+  total_size += 1 * this->fragments_size();
+  for (int i = 0; i < this->fragments_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->fragments(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void QueryPlanFragments::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.QueryPlanFragments)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const QueryPlanFragments* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const QueryPlanFragments>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const QueryPlanFragments*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.QueryPlanFragments)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.QueryPlanFragments)
     MergeFrom(*source);
   }
 }
 
 void QueryPlanFragments::MergeFrom(const QueryPlanFragments& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.QueryPlanFragments)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   fragments_.MergeFrom(from.fragments_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_status()) {
+      set_status(from.status());
+    }
+    if (from.has_query_id()) {
       mutable_query_id()->::exec::shared::QueryId::MergeFrom(from.query_id());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_error()) {
       mutable_error()->::exec::shared::DrillPBError::MergeFrom(from.error());
     }
-    if (cached_has_bits & 0x00000004u) {
-      status_ = from.status_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void QueryPlanFragments::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.QueryPlanFragments)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void QueryPlanFragments::CopyFrom(const QueryPlanFragments& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.QueryPlanFragments)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool QueryPlanFragments::IsInitialized() const {
-  if ((_has_bits_[0] & 0x00000004) != 0x00000004) return false;
+  if ((_has_bits_[0] & 0x00000001) != 0x00000001) return false;
+
   return true;
 }
 
 void QueryPlanFragments::Swap(QueryPlanFragments* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void QueryPlanFragments::InternalSwap(QueryPlanFragments* other) {
-  using std::swap;
-  CastToBase(&fragments_)->InternalSwap(CastToBase(&other->fragments_));
-  swap(query_id_, other->query_id_);
-  swap(error_, other->error_);
-  swap(status_, other->status_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(status_, other->status_);
+    std::swap(query_id_, other->query_id_);
+    fragments_.Swap(&other->fragments_);
+    std::swap(error_, other->error_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata QueryPlanFragments::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = QueryPlanFragments_descriptor_;
+  metadata.reflection = QueryPlanFragments_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void BitToUserHandshake::InitAsDefaultInstance() {
-  ::exec::user::_BitToUserHandshake_default_instance_._instance.get_mutable()->server_infos_ = const_cast< ::exec::user::RpcEndpointInfos*>(
-      ::exec::user::RpcEndpointInfos::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int BitToUserHandshake::kRpcVersionFieldNumber;
 const int BitToUserHandshake::kStatusFieldNumber;
 const int BitToUserHandshake::kErrorIdFieldNumber;
@@ -4663,134 +4054,126 @@
 const int BitToUserHandshake::kSupportedMethodsFieldNumber;
 const int BitToUserHandshake::kEncryptedFieldNumber;
 const int BitToUserHandshake::kMaxWrappedSizeFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 BitToUserHandshake::BitToUserHandshake()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_BitToUserHandshake.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.BitToUserHandshake)
 }
+
+void BitToUserHandshake::InitAsDefaultInstance() {
+  server_infos_ = const_cast< ::exec::user::RpcEndpointInfos*>(&::exec::user::RpcEndpointInfos::default_instance());
+}
+
 BitToUserHandshake::BitToUserHandshake(const BitToUserHandshake& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      authenticationmechanisms_(from.authenticationmechanisms_),
-      supported_methods_(from.supported_methods_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  errorid_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_errorid()) {
-    errorid_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.errorid_);
-  }
-  errormessage_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_errormessage()) {
-    errormessage_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.errormessage_);
-  }
-  if (from.has_server_infos()) {
-    server_infos_ = new ::exec::user::RpcEndpointInfos(*from.server_infos_);
-  } else {
-    server_infos_ = NULL;
-  }
-  ::memcpy(&rpc_version_, &from.rpc_version_,
-    static_cast<size_t>(reinterpret_cast<char*>(&status_) -
-    reinterpret_cast<char*>(&rpc_version_)) + sizeof(status_));
-  // @@protoc_insertion_point(copy_constructor:exec.user.BitToUserHandshake)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void BitToUserHandshake::SharedCtor() {
-  errorid_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  errormessage_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&server_infos_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&maxwrappedsize_) -
-      reinterpret_cast<char*>(&server_infos_)) + sizeof(maxwrappedsize_));
+  _cached_size_ = 0;
+  rpc_version_ = 0;
   status_ = 1;
+  errorid_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  errormessage_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  server_infos_ = NULL;
+  encrypted_ = false;
+  maxwrappedsize_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 BitToUserHandshake::~BitToUserHandshake() {
-  // @@protoc_insertion_point(destructor:exec.user.BitToUserHandshake)
   SharedDtor();
 }
 
 void BitToUserHandshake::SharedDtor() {
-  errorid_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  errormessage_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete server_infos_;
+  if (errorid_ != &::google::protobuf::internal::kEmptyString) {
+    delete errorid_;
+  }
+  if (errormessage_ != &::google::protobuf::internal::kEmptyString) {
+    delete errormessage_;
+  }
+  if (this != default_instance_) {
+    delete server_infos_;
+  }
 }
 
 void BitToUserHandshake::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* BitToUserHandshake::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return BitToUserHandshake_descriptor_;
 }
 
 const BitToUserHandshake& BitToUserHandshake::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_BitToUserHandshake.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+BitToUserHandshake* BitToUserHandshake::default_instance_ = NULL;
+
+BitToUserHandshake* BitToUserHandshake::New() const {
+  return new BitToUserHandshake;
+}
 
 void BitToUserHandshake::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.BitToUserHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    rpc_version_ = 0;
+    status_ = 1;
+    if (has_errorid()) {
+      if (errorid_ != &::google::protobuf::internal::kEmptyString) {
+        errorid_->clear();
+      }
+    }
+    if (has_errormessage()) {
+      if (errormessage_ != &::google::protobuf::internal::kEmptyString) {
+        errormessage_->clear();
+      }
+    }
+    if (has_server_infos()) {
+      if (server_infos_ != NULL) server_infos_->::exec::user::RpcEndpointInfos::Clear();
+    }
+    encrypted_ = false;
+  }
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    maxwrappedsize_ = 0;
+  }
   authenticationmechanisms_.Clear();
   supported_methods_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      errorid_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000002u) {
-      errormessage_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000004u) {
-      GOOGLE_DCHECK(server_infos_ != NULL);
-      server_infos_->Clear();
-    }
-  }
-  if (cached_has_bits & 120u) {
-    ::memset(&rpc_version_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&maxwrappedsize_) -
-        reinterpret_cast<char*>(&rpc_version_)) + sizeof(maxwrappedsize_));
-    status_ = 1;
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool BitToUserHandshake::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.BitToUserHandshake)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 rpc_version = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_rpc_version();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &rpc_version_)));
+          set_has_rpc_version();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_status;
         break;
       }
 
       // optional .exec.user.HandshakeStatus status = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_status:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -4798,80 +4181,87 @@
           if (::exec::user::HandshakeStatus_IsValid(value)) {
             set_status(static_cast< ::exec::user::HandshakeStatus >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                3, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(3, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_errorId;
         break;
       }
 
       // optional string errorId = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_errorId:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_errorid()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->errorid().data(), static_cast<int>(this->errorid().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.BitToUserHandshake.errorId");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->errorid().data(), this->errorid().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(42)) goto parse_errorMessage;
         break;
       }
 
       // optional string errorMessage = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_errorMessage:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_errormessage()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->errormessage().data(), static_cast<int>(this->errormessage().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.BitToUserHandshake.errorMessage");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->errormessage().data(), this->errormessage().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_server_infos;
         break;
       }
 
       // optional .exec.user.RpcEndpointInfos server_infos = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_server_infos:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_server_infos()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(58)) goto parse_authenticationMechanisms;
         break;
       }
 
       // repeated string authenticationMechanisms = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(58u /* 58 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_authenticationMechanisms:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_authenticationmechanisms()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->authenticationmechanisms(this->authenticationmechanisms_size() - 1).data(),
-            static_cast<int>(this->authenticationmechanisms(this->authenticationmechanisms_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.BitToUserHandshake.authenticationMechanisms");
+            this->authenticationmechanisms(this->authenticationmechanisms_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(58)) goto parse_authenticationMechanisms;
+        if (input->ExpectTag(64)) goto parse_supported_methods;
         break;
       }
 
       // repeated .exec.user.RpcType supported_methods = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(64u /* 64 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_supported_methods:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -4879,257 +4269,228 @@
           if (::exec::user::RpcType_IsValid(value)) {
             add_supported_methods(static_cast< ::exec::user::RpcType >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                8, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(8, value);
           }
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(66u /* 66 & 0xFF */)) {
-          DO_((::google::protobuf::internal::WireFormat::ReadPackedEnumPreserveUnknowns(
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
+          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
                  input,
-                 8,
-                 ::exec::user::RpcType_IsValid,
-                 mutable_unknown_fields(),
+                 &::exec::user::RpcType_IsValid,
                  this->mutable_supported_methods())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(64)) goto parse_supported_methods;
+        if (input->ExpectTag(72)) goto parse_encrypted;
         break;
       }
 
       // optional bool encrypted = 9;
       case 9: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(72u /* 72 & 0xFF */)) {
-          set_has_encrypted();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_encrypted:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &encrypted_)));
+          set_has_encrypted();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(80)) goto parse_maxWrappedSize;
         break;
       }
 
       // optional int32 maxWrappedSize = 10;
       case 10: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(80u /* 80 & 0xFF */)) {
-          set_has_maxwrappedsize();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_maxWrappedSize:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &maxwrappedsize_)));
+          set_has_maxwrappedsize();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.BitToUserHandshake)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.BitToUserHandshake)
-  return false;
 #undef DO_
 }
 
 void BitToUserHandshake::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.BitToUserHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 rpc_version = 2;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_rpc_version()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->rpc_version(), output);
   }
 
   // optional .exec.user.HandshakeStatus status = 3;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_status()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       3, this->status(), output);
   }
 
   // optional string errorId = 4;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->errorid().data(), static_cast<int>(this->errorid().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.BitToUserHandshake.errorId");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_errorid()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->errorid().data(), this->errorid().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->errorid(), output);
   }
 
   // optional string errorMessage = 5;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->errormessage().data(), static_cast<int>(this->errormessage().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.BitToUserHandshake.errorMessage");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_errormessage()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->errormessage().data(), this->errormessage().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       5, this->errormessage(), output);
   }
 
   // optional .exec.user.RpcEndpointInfos server_infos = 6;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_server_infos()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      6, this->_internal_server_infos(), output);
+      6, this->server_infos(), output);
   }
 
   // repeated string authenticationMechanisms = 7;
-  for (int i = 0, n = this->authenticationmechanisms_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->authenticationmechanisms(i).data(), static_cast<int>(this->authenticationmechanisms(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.BitToUserHandshake.authenticationMechanisms");
+  for (int i = 0; i < this->authenticationmechanisms_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->authenticationmechanisms(i).data(), this->authenticationmechanisms(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       7, this->authenticationmechanisms(i), output);
   }
 
   // repeated .exec.user.RpcType supported_methods = 8;
-  for (int i = 0, n = this->supported_methods_size(); i < n; i++) {
+  for (int i = 0; i < this->supported_methods_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       8, this->supported_methods(i), output);
   }
 
   // optional bool encrypted = 9;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_encrypted()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(9, this->encrypted(), output);
   }
 
   // optional int32 maxWrappedSize = 10;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_maxwrappedsize()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(10, this->maxwrappedsize(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.BitToUserHandshake)
 }
 
-::google::protobuf::uint8* BitToUserHandshake::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.BitToUserHandshake)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* BitToUserHandshake::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 rpc_version = 2;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_rpc_version()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->rpc_version(), target);
   }
 
   // optional .exec.user.HandshakeStatus status = 3;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_status()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       3, this->status(), target);
   }
 
   // optional string errorId = 4;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->errorid().data(), static_cast<int>(this->errorid().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.BitToUserHandshake.errorId");
+  if (has_errorid()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->errorid().data(), this->errorid().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->errorid(), target);
   }
 
   // optional string errorMessage = 5;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->errormessage().data(), static_cast<int>(this->errormessage().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.BitToUserHandshake.errorMessage");
+  if (has_errormessage()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->errormessage().data(), this->errormessage().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         5, this->errormessage(), target);
   }
 
   // optional .exec.user.RpcEndpointInfos server_infos = 6;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_server_infos()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        6, this->_internal_server_infos(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        6, this->server_infos(), target);
   }
 
   // repeated string authenticationMechanisms = 7;
-  for (int i = 0, n = this->authenticationmechanisms_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->authenticationmechanisms(i).data(), static_cast<int>(this->authenticationmechanisms(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.BitToUserHandshake.authenticationMechanisms");
+  for (int i = 0; i < this->authenticationmechanisms_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->authenticationmechanisms(i).data(), this->authenticationmechanisms(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(7, this->authenticationmechanisms(i), target);
   }
 
   // repeated .exec.user.RpcType supported_methods = 8;
-  target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
-    8, this->supported_methods_, target);
+  for (int i = 0; i < this->supported_methods_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
+      8, this->supported_methods(i), target);
+  }
 
   // optional bool encrypted = 9;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_encrypted()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(9, this->encrypted(), target);
   }
 
   // optional int32 maxWrappedSize = 10;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_maxwrappedsize()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(10, this->maxwrappedsize(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.BitToUserHandshake)
   return target;
 }
 
-size_t BitToUserHandshake::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.BitToUserHandshake)
-  size_t total_size = 0;
+int BitToUserHandshake::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated string authenticationMechanisms = 7;
-  total_size += 1 *
-      ::google::protobuf::internal::FromIntSize(this->authenticationmechanisms_size());
-  for (int i = 0, n = this->authenticationmechanisms_size(); i < n; i++) {
-    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
-      this->authenticationmechanisms(i));
-  }
-
-  // repeated .exec.user.RpcType supported_methods = 8;
-  {
-    size_t data_size = 0;
-    unsigned int count = static_cast<unsigned int>(this->supported_methods_size());for (unsigned int i = 0; i < count; i++) {
-      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
-        this->supported_methods(static_cast<int>(i)));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional int32 rpc_version = 2;
+    if (has_rpc_version()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->rpc_version());
     }
-    total_size += (1UL * count) + data_size;
-  }
 
-  if (_has_bits_[0 / 32] & 127u) {
+    // optional .exec.user.HandshakeStatus status = 3;
+    if (has_status()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
+    }
+
     // optional string errorId = 4;
     if (has_errorid()) {
       total_size += 1 +
@@ -5147,15 +4508,8 @@
     // optional .exec.user.RpcEndpointInfos server_infos = 6;
     if (has_server_infos()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *server_infos_);
-    }
-
-    // optional int32 rpc_version = 2;
-    if (has_rpc_version()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int32Size(
-          this->rpc_version());
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->server_infos());
     }
 
     // optional bool encrypted = 9;
@@ -5163,6 +4517,8 @@
       total_size += 1 + 1;
     }
 
+  }
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
     // optional int32 maxWrappedSize = 10;
     if (has_maxwrappedsize()) {
       total_size += 1 +
@@ -5170,340 +4526,317 @@
           this->maxwrappedsize());
     }
 
-    // optional .exec.user.HandshakeStatus status = 3;
-    if (has_status()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
-    }
-
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated string authenticationMechanisms = 7;
+  total_size += 1 * this->authenticationmechanisms_size();
+  for (int i = 0; i < this->authenticationmechanisms_size(); i++) {
+    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
+      this->authenticationmechanisms(i));
+  }
+
+  // repeated .exec.user.RpcType supported_methods = 8;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->supported_methods_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
+        this->supported_methods(i));
+    }
+    total_size += 1 * this->supported_methods_size() + data_size;
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void BitToUserHandshake::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.BitToUserHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const BitToUserHandshake* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const BitToUserHandshake>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const BitToUserHandshake*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.BitToUserHandshake)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.BitToUserHandshake)
     MergeFrom(*source);
   }
 }
 
 void BitToUserHandshake::MergeFrom(const BitToUserHandshake& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.BitToUserHandshake)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   authenticationmechanisms_.MergeFrom(from.authenticationmechanisms_);
   supported_methods_.MergeFrom(from.supported_methods_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 127u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_errorid();
-      errorid_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.errorid_);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_rpc_version()) {
+      set_rpc_version(from.rpc_version());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_errormessage();
-      errormessage_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.errormessage_);
+    if (from.has_status()) {
+      set_status(from.status());
     }
-    if (cached_has_bits & 0x00000004u) {
+    if (from.has_errorid()) {
+      set_errorid(from.errorid());
+    }
+    if (from.has_errormessage()) {
+      set_errormessage(from.errormessage());
+    }
+    if (from.has_server_infos()) {
       mutable_server_infos()->::exec::user::RpcEndpointInfos::MergeFrom(from.server_infos());
     }
-    if (cached_has_bits & 0x00000008u) {
-      rpc_version_ = from.rpc_version_;
+    if (from.has_encrypted()) {
+      set_encrypted(from.encrypted());
     }
-    if (cached_has_bits & 0x00000010u) {
-      encrypted_ = from.encrypted_;
-    }
-    if (cached_has_bits & 0x00000020u) {
-      maxwrappedsize_ = from.maxwrappedsize_;
-    }
-    if (cached_has_bits & 0x00000040u) {
-      status_ = from.status_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (from.has_maxwrappedsize()) {
+      set_maxwrappedsize(from.maxwrappedsize());
+    }
+  }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void BitToUserHandshake::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.BitToUserHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void BitToUserHandshake::CopyFrom(const BitToUserHandshake& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.BitToUserHandshake)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool BitToUserHandshake::IsInitialized() const {
+
   return true;
 }
 
 void BitToUserHandshake::Swap(BitToUserHandshake* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void BitToUserHandshake::InternalSwap(BitToUserHandshake* other) {
-  using std::swap;
-  authenticationmechanisms_.InternalSwap(CastToBase(&other->authenticationmechanisms_));
-  supported_methods_.InternalSwap(&other->supported_methods_);
-  errorid_.Swap(&other->errorid_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  errormessage_.Swap(&other->errormessage_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(server_infos_, other->server_infos_);
-  swap(rpc_version_, other->rpc_version_);
-  swap(encrypted_, other->encrypted_);
-  swap(maxwrappedsize_, other->maxwrappedsize_);
-  swap(status_, other->status_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(rpc_version_, other->rpc_version_);
+    std::swap(status_, other->status_);
+    std::swap(errorid_, other->errorid_);
+    std::swap(errormessage_, other->errormessage_);
+    std::swap(server_infos_, other->server_infos_);
+    authenticationmechanisms_.Swap(&other->authenticationmechanisms_);
+    supported_methods_.Swap(&other->supported_methods_);
+    std::swap(encrypted_, other->encrypted_);
+    std::swap(maxwrappedsize_, other->maxwrappedsize_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata BitToUserHandshake::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = BitToUserHandshake_descriptor_;
+  metadata.reflection = BitToUserHandshake_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void LikeFilter::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int LikeFilter::kPatternFieldNumber;
 const int LikeFilter::kEscapeFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 LikeFilter::LikeFilter()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_LikeFilter.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.LikeFilter)
 }
+
+void LikeFilter::InitAsDefaultInstance() {
+}
+
 LikeFilter::LikeFilter(const LikeFilter& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  pattern_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_pattern()) {
-    pattern_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.pattern_);
-  }
-  escape_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_escape()) {
-    escape_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.escape_);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.LikeFilter)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void LikeFilter::SharedCtor() {
-  pattern_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  escape_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  pattern_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  escape_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 LikeFilter::~LikeFilter() {
-  // @@protoc_insertion_point(destructor:exec.user.LikeFilter)
   SharedDtor();
 }
 
 void LikeFilter::SharedDtor() {
-  pattern_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  escape_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (pattern_ != &::google::protobuf::internal::kEmptyString) {
+    delete pattern_;
+  }
+  if (escape_ != &::google::protobuf::internal::kEmptyString) {
+    delete escape_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void LikeFilter::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* LikeFilter::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return LikeFilter_descriptor_;
 }
 
 const LikeFilter& LikeFilter::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_LikeFilter.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+LikeFilter* LikeFilter::default_instance_ = NULL;
+
+LikeFilter* LikeFilter::New() const {
+  return new LikeFilter;
+}
 
 void LikeFilter::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.LikeFilter)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      pattern_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_pattern()) {
+      if (pattern_ != &::google::protobuf::internal::kEmptyString) {
+        pattern_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      escape_.ClearNonDefaultToEmptyNoArena();
+    if (has_escape()) {
+      if (escape_ != &::google::protobuf::internal::kEmptyString) {
+        escape_->clear();
+      }
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool LikeFilter::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.LikeFilter)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string pattern = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_pattern()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->pattern().data(), static_cast<int>(this->pattern().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.LikeFilter.pattern");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->pattern().data(), this->pattern().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_escape;
         break;
       }
 
       // optional string escape = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_escape:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_escape()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->escape().data(), static_cast<int>(this->escape().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.LikeFilter.escape");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->escape().data(), this->escape().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.LikeFilter)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.LikeFilter)
-  return false;
 #undef DO_
 }
 
 void LikeFilter::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.LikeFilter)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string pattern = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->pattern().data(), static_cast<int>(this->pattern().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.LikeFilter.pattern");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_pattern()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->pattern().data(), this->pattern().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->pattern(), output);
   }
 
   // optional string escape = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->escape().data(), static_cast<int>(this->escape().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.LikeFilter.escape");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_escape()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->escape().data(), this->escape().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->escape(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.LikeFilter)
 }
 
-::google::protobuf::uint8* LikeFilter::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.LikeFilter)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* LikeFilter::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string pattern = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->pattern().data(), static_cast<int>(this->pattern().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.LikeFilter.pattern");
+  if (has_pattern()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->pattern().data(), this->pattern().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->pattern(), target);
   }
 
   // optional string escape = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->escape().data(), static_cast<int>(this->escape().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.LikeFilter.escape");
+  if (has_escape()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->escape().data(), this->escape().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->escape(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.LikeFilter)
   return target;
 }
 
-size_t LikeFilter::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.LikeFilter)
-  size_t total_size = 0;
+int LikeFilter::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 3u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string pattern = 1;
     if (has_pattern()) {
       total_size += 1 +
@@ -5519,595 +4852,532 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void LikeFilter::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.LikeFilter)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const LikeFilter* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const LikeFilter>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const LikeFilter*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.LikeFilter)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.LikeFilter)
     MergeFrom(*source);
   }
 }
 
 void LikeFilter::MergeFrom(const LikeFilter& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.LikeFilter)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_pattern();
-      pattern_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.pattern_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_pattern()) {
+      set_pattern(from.pattern());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_escape();
-      escape_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.escape_);
+    if (from.has_escape()) {
+      set_escape(from.escape());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void LikeFilter::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.LikeFilter)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void LikeFilter::CopyFrom(const LikeFilter& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.LikeFilter)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool LikeFilter::IsInitialized() const {
+
   return true;
 }
 
 void LikeFilter::Swap(LikeFilter* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void LikeFilter::InternalSwap(LikeFilter* other) {
-  using std::swap;
-  pattern_.Swap(&other->pattern_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  escape_.Swap(&other->escape_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(pattern_, other->pattern_);
+    std::swap(escape_, other->escape_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata LikeFilter::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = LikeFilter_descriptor_;
+  metadata.reflection = LikeFilter_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetCatalogsReq::InitAsDefaultInstance() {
-  ::exec::user::_GetCatalogsReq_default_instance_._instance.get_mutable()->catalog_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetCatalogsReq::kCatalogNameFilterFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetCatalogsReq::GetCatalogsReq()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetCatalogsReq.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetCatalogsReq)
 }
+
+void GetCatalogsReq::InitAsDefaultInstance() {
+  catalog_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+}
+
 GetCatalogsReq::GetCatalogsReq(const GetCatalogsReq& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_catalog_name_filter()) {
-    catalog_name_filter_ = new ::exec::user::LikeFilter(*from.catalog_name_filter_);
-  } else {
-    catalog_name_filter_ = NULL;
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetCatalogsReq)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetCatalogsReq::SharedCtor() {
+  _cached_size_ = 0;
   catalog_name_filter_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetCatalogsReq::~GetCatalogsReq() {
-  // @@protoc_insertion_point(destructor:exec.user.GetCatalogsReq)
   SharedDtor();
 }
 
 void GetCatalogsReq::SharedDtor() {
-  if (this != internal_default_instance()) delete catalog_name_filter_;
+  if (this != default_instance_) {
+    delete catalog_name_filter_;
+  }
 }
 
 void GetCatalogsReq::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetCatalogsReq::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetCatalogsReq_descriptor_;
 }
 
 const GetCatalogsReq& GetCatalogsReq::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetCatalogsReq.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetCatalogsReq* GetCatalogsReq::default_instance_ = NULL;
+
+GetCatalogsReq* GetCatalogsReq::New() const {
+  return new GetCatalogsReq;
+}
 
 void GetCatalogsReq::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetCatalogsReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(catalog_name_filter_ != NULL);
-    catalog_name_filter_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_catalog_name_filter()) {
+      if (catalog_name_filter_ != NULL) catalog_name_filter_->::exec::user::LikeFilter::Clear();
+    }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetCatalogsReq::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetCatalogsReq)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.LikeFilter catalog_name_filter = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_catalog_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetCatalogsReq)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetCatalogsReq)
-  return false;
 #undef DO_
 }
 
 void GetCatalogsReq::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetCatalogsReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_catalog_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_catalog_name_filter(), output);
+      1, this->catalog_name_filter(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetCatalogsReq)
 }
 
-::google::protobuf::uint8* GetCatalogsReq::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetCatalogsReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetCatalogsReq::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_catalog_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_catalog_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->catalog_name_filter(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetCatalogsReq)
   return target;
 }
 
-size_t GetCatalogsReq::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetCatalogsReq)
-  size_t total_size = 0;
+int GetCatalogsReq::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional .exec.user.LikeFilter catalog_name_filter = 1;
+    if (has_catalog_name_filter()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->catalog_name_filter());
+    }
+
+  }
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  if (has_catalog_name_filter()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::MessageSize(
-        *catalog_name_filter_);
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetCatalogsReq::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetCatalogsReq)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetCatalogsReq* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetCatalogsReq>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetCatalogsReq*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetCatalogsReq)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetCatalogsReq)
     MergeFrom(*source);
   }
 }
 
 void GetCatalogsReq::MergeFrom(const GetCatalogsReq& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetCatalogsReq)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  if (from.has_catalog_name_filter()) {
-    mutable_catalog_name_filter()->::exec::user::LikeFilter::MergeFrom(from.catalog_name_filter());
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_catalog_name_filter()) {
+      mutable_catalog_name_filter()->::exec::user::LikeFilter::MergeFrom(from.catalog_name_filter());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetCatalogsReq::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetCatalogsReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetCatalogsReq::CopyFrom(const GetCatalogsReq& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetCatalogsReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetCatalogsReq::IsInitialized() const {
+
   return true;
 }
 
 void GetCatalogsReq::Swap(GetCatalogsReq* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetCatalogsReq::InternalSwap(GetCatalogsReq* other) {
-  using std::swap;
-  swap(catalog_name_filter_, other->catalog_name_filter_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(catalog_name_filter_, other->catalog_name_filter_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetCatalogsReq::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetCatalogsReq_descriptor_;
+  metadata.reflection = GetCatalogsReq_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void CatalogMetadata::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int CatalogMetadata::kCatalogNameFieldNumber;
 const int CatalogMetadata::kDescriptionFieldNumber;
 const int CatalogMetadata::kConnectFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 CatalogMetadata::CatalogMetadata()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_CatalogMetadata.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.CatalogMetadata)
 }
+
+void CatalogMetadata::InitAsDefaultInstance() {
+}
+
 CatalogMetadata::CatalogMetadata(const CatalogMetadata& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_catalog_name()) {
-    catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
-  }
-  description_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_description()) {
-    description_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.description_);
-  }
-  connect_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_connect()) {
-    connect_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.connect_);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.CatalogMetadata)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void CatalogMetadata::SharedCtor() {
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  description_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  connect_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  description_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  connect_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 CatalogMetadata::~CatalogMetadata() {
-  // @@protoc_insertion_point(destructor:exec.user.CatalogMetadata)
   SharedDtor();
 }
 
 void CatalogMetadata::SharedDtor() {
-  catalog_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  description_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  connect_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (description_ != &::google::protobuf::internal::kEmptyString) {
+    delete description_;
+  }
+  if (connect_ != &::google::protobuf::internal::kEmptyString) {
+    delete connect_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void CatalogMetadata::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* CatalogMetadata::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return CatalogMetadata_descriptor_;
 }
 
 const CatalogMetadata& CatalogMetadata::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_CatalogMetadata.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+CatalogMetadata* CatalogMetadata::default_instance_ = NULL;
+
+CatalogMetadata* CatalogMetadata::New() const {
+  return new CatalogMetadata;
+}
 
 void CatalogMetadata::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.CatalogMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      catalog_name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_catalog_name()) {
+      if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+        catalog_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      description_.ClearNonDefaultToEmptyNoArena();
+    if (has_description()) {
+      if (description_ != &::google::protobuf::internal::kEmptyString) {
+        description_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      connect_.ClearNonDefaultToEmptyNoArena();
+    if (has_connect()) {
+      if (connect_ != &::google::protobuf::internal::kEmptyString) {
+        connect_->clear();
+      }
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool CatalogMetadata::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.CatalogMetadata)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string catalog_name = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_catalog_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.CatalogMetadata.catalog_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->catalog_name().data(), this->catalog_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_description;
         break;
       }
 
       // optional string description = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_description:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_description()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->description().data(), static_cast<int>(this->description().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.CatalogMetadata.description");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->description().data(), this->description().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_connect;
         break;
       }
 
       // optional string connect = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_connect:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_connect()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->connect().data(), static_cast<int>(this->connect().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.CatalogMetadata.connect");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->connect().data(), this->connect().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.CatalogMetadata)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.CatalogMetadata)
-  return false;
 #undef DO_
 }
 
 void CatalogMetadata::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.CatalogMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.CatalogMetadata.catalog_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->catalog_name(), output);
   }
 
   // optional string description = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->description().data(), static_cast<int>(this->description().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.CatalogMetadata.description");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_description()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->description().data(), this->description().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->description(), output);
   }
 
   // optional string connect = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->connect().data(), static_cast<int>(this->connect().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.CatalogMetadata.connect");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_connect()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->connect().data(), this->connect().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       3, this->connect(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.CatalogMetadata)
 }
 
-::google::protobuf::uint8* CatalogMetadata::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.CatalogMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* CatalogMetadata::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.CatalogMetadata.catalog_name");
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->catalog_name(), target);
   }
 
   // optional string description = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->description().data(), static_cast<int>(this->description().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.CatalogMetadata.description");
+  if (has_description()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->description().data(), this->description().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->description(), target);
   }
 
   // optional string connect = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->connect().data(), static_cast<int>(this->connect().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.CatalogMetadata.connect");
+  if (has_connect()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->connect().data(), this->connect().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         3, this->connect(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.CatalogMetadata)
   return target;
 }
 
-size_t CatalogMetadata::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.CatalogMetadata)
-  size_t total_size = 0;
+int CatalogMetadata::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string catalog_name = 1;
     if (has_catalog_name()) {
       total_size += 1 +
@@ -6130,188 +5400,165 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void CatalogMetadata::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.CatalogMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const CatalogMetadata* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const CatalogMetadata>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const CatalogMetadata*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.CatalogMetadata)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.CatalogMetadata)
     MergeFrom(*source);
   }
 }
 
 void CatalogMetadata::MergeFrom(const CatalogMetadata& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.CatalogMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_catalog_name();
-      catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_catalog_name()) {
+      set_catalog_name(from.catalog_name());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_description();
-      description_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.description_);
+    if (from.has_description()) {
+      set_description(from.description());
     }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_connect();
-      connect_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.connect_);
+    if (from.has_connect()) {
+      set_connect(from.connect());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void CatalogMetadata::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.CatalogMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void CatalogMetadata::CopyFrom(const CatalogMetadata& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.CatalogMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool CatalogMetadata::IsInitialized() const {
+
   return true;
 }
 
 void CatalogMetadata::Swap(CatalogMetadata* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void CatalogMetadata::InternalSwap(CatalogMetadata* other) {
-  using std::swap;
-  catalog_name_.Swap(&other->catalog_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  description_.Swap(&other->description_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  connect_.Swap(&other->connect_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(catalog_name_, other->catalog_name_);
+    std::swap(description_, other->description_);
+    std::swap(connect_, other->connect_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata CatalogMetadata::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = CatalogMetadata_descriptor_;
+  metadata.reflection = CatalogMetadata_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetCatalogsResp::InitAsDefaultInstance() {
-  ::exec::user::_GetCatalogsResp_default_instance_._instance.get_mutable()->error_ = const_cast< ::exec::shared::DrillPBError*>(
-      ::exec::shared::DrillPBError::internal_default_instance());
-}
-void GetCatalogsResp::clear_error() {
-  if (error_ != NULL) error_->Clear();
-  clear_has_error();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetCatalogsResp::kStatusFieldNumber;
 const int GetCatalogsResp::kCatalogsFieldNumber;
 const int GetCatalogsResp::kErrorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetCatalogsResp::GetCatalogsResp()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetCatalogsResp.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetCatalogsResp)
 }
+
+void GetCatalogsResp::InitAsDefaultInstance() {
+  error_ = const_cast< ::exec::shared::DrillPBError*>(&::exec::shared::DrillPBError::default_instance());
+}
+
 GetCatalogsResp::GetCatalogsResp(const GetCatalogsResp& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      catalogs_(from.catalogs_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_error()) {
-    error_ = new ::exec::shared::DrillPBError(*from.error_);
-  } else {
-    error_ = NULL;
-  }
-  status_ = from.status_;
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetCatalogsResp)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetCatalogsResp::SharedCtor() {
-  ::memset(&error_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&status_) -
-      reinterpret_cast<char*>(&error_)) + sizeof(status_));
+  _cached_size_ = 0;
+  status_ = 0;
+  error_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetCatalogsResp::~GetCatalogsResp() {
-  // @@protoc_insertion_point(destructor:exec.user.GetCatalogsResp)
   SharedDtor();
 }
 
 void GetCatalogsResp::SharedDtor() {
-  if (this != internal_default_instance()) delete error_;
+  if (this != default_instance_) {
+    delete error_;
+  }
 }
 
 void GetCatalogsResp::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetCatalogsResp::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetCatalogsResp_descriptor_;
 }
 
 const GetCatalogsResp& GetCatalogsResp::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetCatalogsResp.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetCatalogsResp* GetCatalogsResp::default_instance_ = NULL;
+
+GetCatalogsResp* GetCatalogsResp::New() const {
+  return new GetCatalogsResp;
+}
 
 void GetCatalogsResp::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetCatalogsResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  catalogs_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(error_ != NULL);
-    error_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    status_ = 0;
+    if (has_error()) {
+      if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+    }
   }
-  status_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  catalogs_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetCatalogsResp::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetCatalogsResp)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.RequestStatus status = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -6319,906 +5566,806 @@
           if (::exec::user::RequestStatus_IsValid(value)) {
             set_status(static_cast< ::exec::user::RequestStatus >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_catalogs;
         break;
       }
 
       // repeated .exec.user.CatalogMetadata catalogs = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_catalogs:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_catalogs()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_catalogs;
+        if (input->ExpectTag(26)) goto parse_error;
         break;
       }
 
       // optional .exec.shared.DrillPBError error = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetCatalogsResp)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetCatalogsResp)
-  return false;
 #undef DO_
 }
 
 void GetCatalogsResp::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetCatalogsResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_status()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->status(), output);
   }
 
   // repeated .exec.user.CatalogMetadata catalogs = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->catalogs_size()); i < n; i++) {
+  for (int i = 0; i < this->catalogs_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2,
-      this->catalogs(static_cast<int>(i)),
-      output);
+      2, this->catalogs(i), output);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_error(), output);
+      3, this->error(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetCatalogsResp)
 }
 
-::google::protobuf::uint8* GetCatalogsResp::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetCatalogsResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetCatalogsResp::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_status()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->status(), target);
   }
 
   // repeated .exec.user.CatalogMetadata catalogs = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->catalogs_size()); i < n; i++) {
+  for (int i = 0; i < this->catalogs_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->catalogs(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->catalogs(i), target);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_error(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->error(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetCatalogsResp)
   return target;
 }
 
-size_t GetCatalogsResp::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetCatalogsResp)
-  size_t total_size = 0;
+int GetCatalogsResp::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.user.CatalogMetadata catalogs = 2;
-  {
-    unsigned int count = static_cast<unsigned int>(this->catalogs_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->catalogs(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 3u) {
-    // optional .exec.shared.DrillPBError error = 3;
-    if (has_error()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *error_);
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.RequestStatus status = 1;
     if (has_status()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
+    if (has_error()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->error());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.user.CatalogMetadata catalogs = 2;
+  total_size += 1 * this->catalogs_size();
+  for (int i = 0; i < this->catalogs_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->catalogs(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetCatalogsResp::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetCatalogsResp)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetCatalogsResp* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetCatalogsResp>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetCatalogsResp*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetCatalogsResp)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetCatalogsResp)
     MergeFrom(*source);
   }
 }
 
 void GetCatalogsResp::MergeFrom(const GetCatalogsResp& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetCatalogsResp)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   catalogs_.MergeFrom(from.catalogs_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_status()) {
+      set_status(from.status());
+    }
+    if (from.has_error()) {
       mutable_error()->::exec::shared::DrillPBError::MergeFrom(from.error());
     }
-    if (cached_has_bits & 0x00000002u) {
-      status_ = from.status_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetCatalogsResp::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetCatalogsResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetCatalogsResp::CopyFrom(const GetCatalogsResp& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetCatalogsResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetCatalogsResp::IsInitialized() const {
+
   return true;
 }
 
 void GetCatalogsResp::Swap(GetCatalogsResp* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetCatalogsResp::InternalSwap(GetCatalogsResp* other) {
-  using std::swap;
-  CastToBase(&catalogs_)->InternalSwap(CastToBase(&other->catalogs_));
-  swap(error_, other->error_);
-  swap(status_, other->status_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(status_, other->status_);
+    catalogs_.Swap(&other->catalogs_);
+    std::swap(error_, other->error_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetCatalogsResp::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetCatalogsResp_descriptor_;
+  metadata.reflection = GetCatalogsResp_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetSchemasReq::InitAsDefaultInstance() {
-  ::exec::user::_GetSchemasReq_default_instance_._instance.get_mutable()->catalog_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-  ::exec::user::_GetSchemasReq_default_instance_._instance.get_mutable()->schema_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetSchemasReq::kCatalogNameFilterFieldNumber;
 const int GetSchemasReq::kSchemaNameFilterFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetSchemasReq::GetSchemasReq()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetSchemasReq.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetSchemasReq)
 }
+
+void GetSchemasReq::InitAsDefaultInstance() {
+  catalog_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+  schema_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+}
+
 GetSchemasReq::GetSchemasReq(const GetSchemasReq& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_catalog_name_filter()) {
-    catalog_name_filter_ = new ::exec::user::LikeFilter(*from.catalog_name_filter_);
-  } else {
-    catalog_name_filter_ = NULL;
-  }
-  if (from.has_schema_name_filter()) {
-    schema_name_filter_ = new ::exec::user::LikeFilter(*from.schema_name_filter_);
-  } else {
-    schema_name_filter_ = NULL;
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetSchemasReq)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetSchemasReq::SharedCtor() {
-  ::memset(&catalog_name_filter_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&schema_name_filter_) -
-      reinterpret_cast<char*>(&catalog_name_filter_)) + sizeof(schema_name_filter_));
+  _cached_size_ = 0;
+  catalog_name_filter_ = NULL;
+  schema_name_filter_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetSchemasReq::~GetSchemasReq() {
-  // @@protoc_insertion_point(destructor:exec.user.GetSchemasReq)
   SharedDtor();
 }
 
 void GetSchemasReq::SharedDtor() {
-  if (this != internal_default_instance()) delete catalog_name_filter_;
-  if (this != internal_default_instance()) delete schema_name_filter_;
+  if (this != default_instance_) {
+    delete catalog_name_filter_;
+    delete schema_name_filter_;
+  }
 }
 
 void GetSchemasReq::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetSchemasReq::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetSchemasReq_descriptor_;
 }
 
 const GetSchemasReq& GetSchemasReq::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetSchemasReq.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetSchemasReq* GetSchemasReq::default_instance_ = NULL;
+
+GetSchemasReq* GetSchemasReq::New() const {
+  return new GetSchemasReq;
+}
 
 void GetSchemasReq::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetSchemasReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(catalog_name_filter_ != NULL);
-      catalog_name_filter_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_catalog_name_filter()) {
+      if (catalog_name_filter_ != NULL) catalog_name_filter_->::exec::user::LikeFilter::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(schema_name_filter_ != NULL);
-      schema_name_filter_->Clear();
+    if (has_schema_name_filter()) {
+      if (schema_name_filter_ != NULL) schema_name_filter_->::exec::user::LikeFilter::Clear();
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetSchemasReq::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetSchemasReq)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.LikeFilter catalog_name_filter = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_catalog_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_schema_name_filter;
         break;
       }
 
       // optional .exec.user.LikeFilter schema_name_filter = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_schema_name_filter:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_schema_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetSchemasReq)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetSchemasReq)
-  return false;
 #undef DO_
 }
 
 void GetSchemasReq::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetSchemasReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_catalog_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_catalog_name_filter(), output);
+      1, this->catalog_name_filter(), output);
   }
 
   // optional .exec.user.LikeFilter schema_name_filter = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_schema_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_schema_name_filter(), output);
+      2, this->schema_name_filter(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetSchemasReq)
 }
 
-::google::protobuf::uint8* GetSchemasReq::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetSchemasReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetSchemasReq::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_catalog_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_catalog_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->catalog_name_filter(), target);
   }
 
   // optional .exec.user.LikeFilter schema_name_filter = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_schema_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_schema_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->schema_name_filter(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetSchemasReq)
   return target;
 }
 
-size_t GetSchemasReq::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetSchemasReq)
-  size_t total_size = 0;
+int GetSchemasReq::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 3u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.LikeFilter catalog_name_filter = 1;
     if (has_catalog_name_filter()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *catalog_name_filter_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->catalog_name_filter());
     }
 
     // optional .exec.user.LikeFilter schema_name_filter = 2;
     if (has_schema_name_filter()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *schema_name_filter_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->schema_name_filter());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetSchemasReq::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetSchemasReq)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetSchemasReq* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetSchemasReq>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetSchemasReq*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetSchemasReq)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetSchemasReq)
     MergeFrom(*source);
   }
 }
 
 void GetSchemasReq::MergeFrom(const GetSchemasReq& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetSchemasReq)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_catalog_name_filter()) {
       mutable_catalog_name_filter()->::exec::user::LikeFilter::MergeFrom(from.catalog_name_filter());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_schema_name_filter()) {
       mutable_schema_name_filter()->::exec::user::LikeFilter::MergeFrom(from.schema_name_filter());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetSchemasReq::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetSchemasReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetSchemasReq::CopyFrom(const GetSchemasReq& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetSchemasReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetSchemasReq::IsInitialized() const {
+
   return true;
 }
 
 void GetSchemasReq::Swap(GetSchemasReq* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetSchemasReq::InternalSwap(GetSchemasReq* other) {
-  using std::swap;
-  swap(catalog_name_filter_, other->catalog_name_filter_);
-  swap(schema_name_filter_, other->schema_name_filter_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(catalog_name_filter_, other->catalog_name_filter_);
+    std::swap(schema_name_filter_, other->schema_name_filter_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetSchemasReq::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetSchemasReq_descriptor_;
+  metadata.reflection = GetSchemasReq_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void SchemaMetadata::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int SchemaMetadata::kCatalogNameFieldNumber;
 const int SchemaMetadata::kSchemaNameFieldNumber;
 const int SchemaMetadata::kOwnerFieldNumber;
 const int SchemaMetadata::kTypeFieldNumber;
 const int SchemaMetadata::kMutableFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 SchemaMetadata::SchemaMetadata()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_SchemaMetadata.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.SchemaMetadata)
 }
+
+void SchemaMetadata::InitAsDefaultInstance() {
+}
+
 SchemaMetadata::SchemaMetadata(const SchemaMetadata& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_catalog_name()) {
-    catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
-  }
-  schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_schema_name()) {
-    schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_name_);
-  }
-  owner_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_owner()) {
-    owner_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_);
-  }
-  type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_type()) {
-    type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.type_);
-  }
-  mutable__.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_mutable_()) {
-    mutable__.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.mutable__);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.SchemaMetadata)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void SchemaMetadata::SharedCtor() {
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  owner_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  mutable__.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  owner_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  mutable__ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 SchemaMetadata::~SchemaMetadata() {
-  // @@protoc_insertion_point(destructor:exec.user.SchemaMetadata)
   SharedDtor();
 }
 
 void SchemaMetadata::SharedDtor() {
-  catalog_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  owner_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  type_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  mutable__.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_name_;
+  }
+  if (owner_ != &::google::protobuf::internal::kEmptyString) {
+    delete owner_;
+  }
+  if (type_ != &::google::protobuf::internal::kEmptyString) {
+    delete type_;
+  }
+  if (mutable__ != &::google::protobuf::internal::kEmptyString) {
+    delete mutable__;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void SchemaMetadata::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* SchemaMetadata::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return SchemaMetadata_descriptor_;
 }
 
 const SchemaMetadata& SchemaMetadata::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_SchemaMetadata.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+SchemaMetadata* SchemaMetadata::default_instance_ = NULL;
+
+SchemaMetadata* SchemaMetadata::New() const {
+  return new SchemaMetadata;
+}
 
 void SchemaMetadata::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.SchemaMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 31u) {
-    if (cached_has_bits & 0x00000001u) {
-      catalog_name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_catalog_name()) {
+      if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+        catalog_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      schema_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_schema_name()) {
+      if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+        schema_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      owner_.ClearNonDefaultToEmptyNoArena();
+    if (has_owner()) {
+      if (owner_ != &::google::protobuf::internal::kEmptyString) {
+        owner_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000008u) {
-      type_.ClearNonDefaultToEmptyNoArena();
+    if (has_type()) {
+      if (type_ != &::google::protobuf::internal::kEmptyString) {
+        type_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000010u) {
-      mutable__.ClearNonDefaultToEmptyNoArena();
+    if (has_mutable_()) {
+      if (mutable__ != &::google::protobuf::internal::kEmptyString) {
+        mutable__->clear();
+      }
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool SchemaMetadata::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.SchemaMetadata)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string catalog_name = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_catalog_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.SchemaMetadata.catalog_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->catalog_name().data(), this->catalog_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_schema_name;
         break;
       }
 
       // optional string schema_name = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_schema_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_schema_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.SchemaMetadata.schema_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->schema_name().data(), this->schema_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_owner;
         break;
       }
 
       // optional string owner = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_owner:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_owner()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->owner().data(), static_cast<int>(this->owner().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.SchemaMetadata.owner");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->owner().data(), this->owner().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_type;
         break;
       }
 
       // optional string type = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_type:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_type()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->type().data(), static_cast<int>(this->type().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.SchemaMetadata.type");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->type().data(), this->type().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(42)) goto parse_mutable;
         break;
       }
 
       // optional string mutable = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_mutable:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_mutable_()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->mutable_().data(), static_cast<int>(this->mutable_().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.SchemaMetadata.mutable");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->mutable_().data(), this->mutable_().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.SchemaMetadata)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.SchemaMetadata)
-  return false;
 #undef DO_
 }
 
 void SchemaMetadata::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.SchemaMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.catalog_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->catalog_name(), output);
   }
 
   // optional string schema_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.schema_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_name().data(), this->schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->schema_name(), output);
   }
 
   // optional string owner = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->owner().data(), static_cast<int>(this->owner().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.owner");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_owner()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->owner().data(), this->owner().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       3, this->owner(), output);
   }
 
   // optional string type = 4;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->type().data(), static_cast<int>(this->type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.type");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->type().data(), this->type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->type(), output);
   }
 
   // optional string mutable = 5;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->mutable_().data(), static_cast<int>(this->mutable_().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.mutable");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_mutable_()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->mutable_().data(), this->mutable_().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       5, this->mutable_(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.SchemaMetadata)
 }
 
-::google::protobuf::uint8* SchemaMetadata::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.SchemaMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* SchemaMetadata::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.catalog_name");
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->catalog_name(), target);
   }
 
   // optional string schema_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.schema_name");
+  if (has_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_name().data(), this->schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->schema_name(), target);
   }
 
   // optional string owner = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->owner().data(), static_cast<int>(this->owner().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.owner");
+  if (has_owner()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->owner().data(), this->owner().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         3, this->owner(), target);
   }
 
   // optional string type = 4;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->type().data(), static_cast<int>(this->type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.type");
+  if (has_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->type().data(), this->type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->type(), target);
   }
 
   // optional string mutable = 5;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->mutable_().data(), static_cast<int>(this->mutable_().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.SchemaMetadata.mutable");
+  if (has_mutable_()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->mutable_().data(), this->mutable_().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         5, this->mutable_(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.SchemaMetadata)
   return target;
 }
 
-size_t SchemaMetadata::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.SchemaMetadata)
-  size_t total_size = 0;
+int SchemaMetadata::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 31u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string catalog_name = 1;
     if (has_catalog_name()) {
       total_size += 1 +
@@ -7255,200 +6402,173 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void SchemaMetadata::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.SchemaMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const SchemaMetadata* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const SchemaMetadata>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const SchemaMetadata*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.SchemaMetadata)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.SchemaMetadata)
     MergeFrom(*source);
   }
 }
 
 void SchemaMetadata::MergeFrom(const SchemaMetadata& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.SchemaMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 31u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_catalog_name();
-      catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_catalog_name()) {
+      set_catalog_name(from.catalog_name());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_schema_name();
-      schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_name_);
+    if (from.has_schema_name()) {
+      set_schema_name(from.schema_name());
     }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_owner();
-      owner_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.owner_);
+    if (from.has_owner()) {
+      set_owner(from.owner());
     }
-    if (cached_has_bits & 0x00000008u) {
-      set_has_type();
-      type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.type_);
+    if (from.has_type()) {
+      set_type(from.type());
     }
-    if (cached_has_bits & 0x00000010u) {
-      set_has_mutable_();
-      mutable__.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.mutable__);
+    if (from.has_mutable_()) {
+      set_mutable_(from.mutable_());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void SchemaMetadata::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.SchemaMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void SchemaMetadata::CopyFrom(const SchemaMetadata& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.SchemaMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool SchemaMetadata::IsInitialized() const {
+
   return true;
 }
 
 void SchemaMetadata::Swap(SchemaMetadata* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void SchemaMetadata::InternalSwap(SchemaMetadata* other) {
-  using std::swap;
-  catalog_name_.Swap(&other->catalog_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  schema_name_.Swap(&other->schema_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  owner_.Swap(&other->owner_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  type_.Swap(&other->type_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  mutable__.Swap(&other->mutable__, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(catalog_name_, other->catalog_name_);
+    std::swap(schema_name_, other->schema_name_);
+    std::swap(owner_, other->owner_);
+    std::swap(type_, other->type_);
+    std::swap(mutable__, other->mutable__);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata SchemaMetadata::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = SchemaMetadata_descriptor_;
+  metadata.reflection = SchemaMetadata_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetSchemasResp::InitAsDefaultInstance() {
-  ::exec::user::_GetSchemasResp_default_instance_._instance.get_mutable()->error_ = const_cast< ::exec::shared::DrillPBError*>(
-      ::exec::shared::DrillPBError::internal_default_instance());
-}
-void GetSchemasResp::clear_error() {
-  if (error_ != NULL) error_->Clear();
-  clear_has_error();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetSchemasResp::kStatusFieldNumber;
 const int GetSchemasResp::kSchemasFieldNumber;
 const int GetSchemasResp::kErrorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetSchemasResp::GetSchemasResp()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetSchemasResp.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetSchemasResp)
 }
+
+void GetSchemasResp::InitAsDefaultInstance() {
+  error_ = const_cast< ::exec::shared::DrillPBError*>(&::exec::shared::DrillPBError::default_instance());
+}
+
 GetSchemasResp::GetSchemasResp(const GetSchemasResp& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      schemas_(from.schemas_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_error()) {
-    error_ = new ::exec::shared::DrillPBError(*from.error_);
-  } else {
-    error_ = NULL;
-  }
-  status_ = from.status_;
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetSchemasResp)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetSchemasResp::SharedCtor() {
-  ::memset(&error_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&status_) -
-      reinterpret_cast<char*>(&error_)) + sizeof(status_));
+  _cached_size_ = 0;
+  status_ = 0;
+  error_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetSchemasResp::~GetSchemasResp() {
-  // @@protoc_insertion_point(destructor:exec.user.GetSchemasResp)
   SharedDtor();
 }
 
 void GetSchemasResp::SharedDtor() {
-  if (this != internal_default_instance()) delete error_;
+  if (this != default_instance_) {
+    delete error_;
+  }
 }
 
 void GetSchemasResp::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetSchemasResp::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetSchemasResp_descriptor_;
 }
 
 const GetSchemasResp& GetSchemasResp::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetSchemasResp.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetSchemasResp* GetSchemasResp::default_instance_ = NULL;
+
+GetSchemasResp* GetSchemasResp::New() const {
+  return new GetSchemasResp;
+}
 
 void GetSchemasResp::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetSchemasResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  schemas_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(error_ != NULL);
-    error_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    status_ = 0;
+    if (has_error()) {
+      if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+    }
   }
-  status_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  schemas_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetSchemasResp::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetSchemasResp)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.RequestStatus status = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -7456,958 +6576,853 @@
           if (::exec::user::RequestStatus_IsValid(value)) {
             set_status(static_cast< ::exec::user::RequestStatus >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_schemas;
         break;
       }
 
       // repeated .exec.user.SchemaMetadata schemas = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_schemas:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_schemas()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_schemas;
+        if (input->ExpectTag(26)) goto parse_error;
         break;
       }
 
       // optional .exec.shared.DrillPBError error = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetSchemasResp)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetSchemasResp)
-  return false;
 #undef DO_
 }
 
 void GetSchemasResp::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetSchemasResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_status()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->status(), output);
   }
 
   // repeated .exec.user.SchemaMetadata schemas = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->schemas_size()); i < n; i++) {
+  for (int i = 0; i < this->schemas_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2,
-      this->schemas(static_cast<int>(i)),
-      output);
+      2, this->schemas(i), output);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_error(), output);
+      3, this->error(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetSchemasResp)
 }
 
-::google::protobuf::uint8* GetSchemasResp::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetSchemasResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetSchemasResp::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_status()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->status(), target);
   }
 
   // repeated .exec.user.SchemaMetadata schemas = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->schemas_size()); i < n; i++) {
+  for (int i = 0; i < this->schemas_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->schemas(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->schemas(i), target);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_error(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->error(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetSchemasResp)
   return target;
 }
 
-size_t GetSchemasResp::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetSchemasResp)
-  size_t total_size = 0;
+int GetSchemasResp::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.user.SchemaMetadata schemas = 2;
-  {
-    unsigned int count = static_cast<unsigned int>(this->schemas_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->schemas(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 3u) {
-    // optional .exec.shared.DrillPBError error = 3;
-    if (has_error()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *error_);
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.RequestStatus status = 1;
     if (has_status()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
+    if (has_error()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->error());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.user.SchemaMetadata schemas = 2;
+  total_size += 1 * this->schemas_size();
+  for (int i = 0; i < this->schemas_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->schemas(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetSchemasResp::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetSchemasResp)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetSchemasResp* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetSchemasResp>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetSchemasResp*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetSchemasResp)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetSchemasResp)
     MergeFrom(*source);
   }
 }
 
 void GetSchemasResp::MergeFrom(const GetSchemasResp& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetSchemasResp)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   schemas_.MergeFrom(from.schemas_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_status()) {
+      set_status(from.status());
+    }
+    if (from.has_error()) {
       mutable_error()->::exec::shared::DrillPBError::MergeFrom(from.error());
     }
-    if (cached_has_bits & 0x00000002u) {
-      status_ = from.status_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetSchemasResp::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetSchemasResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetSchemasResp::CopyFrom(const GetSchemasResp& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetSchemasResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetSchemasResp::IsInitialized() const {
+
   return true;
 }
 
 void GetSchemasResp::Swap(GetSchemasResp* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetSchemasResp::InternalSwap(GetSchemasResp* other) {
-  using std::swap;
-  CastToBase(&schemas_)->InternalSwap(CastToBase(&other->schemas_));
-  swap(error_, other->error_);
-  swap(status_, other->status_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(status_, other->status_);
+    schemas_.Swap(&other->schemas_);
+    std::swap(error_, other->error_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetSchemasResp::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetSchemasResp_descriptor_;
+  metadata.reflection = GetSchemasResp_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetTablesReq::InitAsDefaultInstance() {
-  ::exec::user::_GetTablesReq_default_instance_._instance.get_mutable()->catalog_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-  ::exec::user::_GetTablesReq_default_instance_._instance.get_mutable()->schema_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-  ::exec::user::_GetTablesReq_default_instance_._instance.get_mutable()->table_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetTablesReq::kCatalogNameFilterFieldNumber;
 const int GetTablesReq::kSchemaNameFilterFieldNumber;
 const int GetTablesReq::kTableNameFilterFieldNumber;
 const int GetTablesReq::kTableTypeFilterFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetTablesReq::GetTablesReq()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetTablesReq.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetTablesReq)
 }
+
+void GetTablesReq::InitAsDefaultInstance() {
+  catalog_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+  schema_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+  table_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+}
+
 GetTablesReq::GetTablesReq(const GetTablesReq& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      table_type_filter_(from.table_type_filter_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_catalog_name_filter()) {
-    catalog_name_filter_ = new ::exec::user::LikeFilter(*from.catalog_name_filter_);
-  } else {
-    catalog_name_filter_ = NULL;
-  }
-  if (from.has_schema_name_filter()) {
-    schema_name_filter_ = new ::exec::user::LikeFilter(*from.schema_name_filter_);
-  } else {
-    schema_name_filter_ = NULL;
-  }
-  if (from.has_table_name_filter()) {
-    table_name_filter_ = new ::exec::user::LikeFilter(*from.table_name_filter_);
-  } else {
-    table_name_filter_ = NULL;
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetTablesReq)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetTablesReq::SharedCtor() {
-  ::memset(&catalog_name_filter_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&table_name_filter_) -
-      reinterpret_cast<char*>(&catalog_name_filter_)) + sizeof(table_name_filter_));
+  _cached_size_ = 0;
+  catalog_name_filter_ = NULL;
+  schema_name_filter_ = NULL;
+  table_name_filter_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetTablesReq::~GetTablesReq() {
-  // @@protoc_insertion_point(destructor:exec.user.GetTablesReq)
   SharedDtor();
 }
 
 void GetTablesReq::SharedDtor() {
-  if (this != internal_default_instance()) delete catalog_name_filter_;
-  if (this != internal_default_instance()) delete schema_name_filter_;
-  if (this != internal_default_instance()) delete table_name_filter_;
+  if (this != default_instance_) {
+    delete catalog_name_filter_;
+    delete schema_name_filter_;
+    delete table_name_filter_;
+  }
 }
 
 void GetTablesReq::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetTablesReq::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetTablesReq_descriptor_;
 }
 
 const GetTablesReq& GetTablesReq::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetTablesReq.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetTablesReq* GetTablesReq::default_instance_ = NULL;
+
+GetTablesReq* GetTablesReq::New() const {
+  return new GetTablesReq;
+}
 
 void GetTablesReq::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetTablesReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  table_type_filter_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(catalog_name_filter_ != NULL);
-      catalog_name_filter_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_catalog_name_filter()) {
+      if (catalog_name_filter_ != NULL) catalog_name_filter_->::exec::user::LikeFilter::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(schema_name_filter_ != NULL);
-      schema_name_filter_->Clear();
+    if (has_schema_name_filter()) {
+      if (schema_name_filter_ != NULL) schema_name_filter_->::exec::user::LikeFilter::Clear();
     }
-    if (cached_has_bits & 0x00000004u) {
-      GOOGLE_DCHECK(table_name_filter_ != NULL);
-      table_name_filter_->Clear();
+    if (has_table_name_filter()) {
+      if (table_name_filter_ != NULL) table_name_filter_->::exec::user::LikeFilter::Clear();
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  table_type_filter_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetTablesReq::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetTablesReq)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.LikeFilter catalog_name_filter = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_catalog_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_schema_name_filter;
         break;
       }
 
       // optional .exec.user.LikeFilter schema_name_filter = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_schema_name_filter:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_schema_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_table_name_filter;
         break;
       }
 
       // optional .exec.user.LikeFilter table_name_filter = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_table_name_filter:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_table_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_table_type_filter;
         break;
       }
 
       // repeated string table_type_filter = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_table_type_filter:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_table_type_filter()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->table_type_filter(this->table_type_filter_size() - 1).data(),
-            static_cast<int>(this->table_type_filter(this->table_type_filter_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.GetTablesReq.table_type_filter");
+            this->table_type_filter(this->table_type_filter_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_table_type_filter;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetTablesReq)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetTablesReq)
-  return false;
 #undef DO_
 }
 
 void GetTablesReq::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetTablesReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_catalog_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_catalog_name_filter(), output);
+      1, this->catalog_name_filter(), output);
   }
 
   // optional .exec.user.LikeFilter schema_name_filter = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_schema_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_schema_name_filter(), output);
+      2, this->schema_name_filter(), output);
   }
 
   // optional .exec.user.LikeFilter table_name_filter = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_table_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_table_name_filter(), output);
+      3, this->table_name_filter(), output);
   }
 
   // repeated string table_type_filter = 4;
-  for (int i = 0, n = this->table_type_filter_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_type_filter(i).data(), static_cast<int>(this->table_type_filter(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.GetTablesReq.table_type_filter");
+  for (int i = 0; i < this->table_type_filter_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->table_type_filter(i).data(), this->table_type_filter(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->table_type_filter(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetTablesReq)
 }
 
-::google::protobuf::uint8* GetTablesReq::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetTablesReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetTablesReq::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_catalog_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_catalog_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->catalog_name_filter(), target);
   }
 
   // optional .exec.user.LikeFilter schema_name_filter = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_schema_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_schema_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->schema_name_filter(), target);
   }
 
   // optional .exec.user.LikeFilter table_name_filter = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_table_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_table_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->table_name_filter(), target);
   }
 
   // repeated string table_type_filter = 4;
-  for (int i = 0, n = this->table_type_filter_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_type_filter(i).data(), static_cast<int>(this->table_type_filter(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.GetTablesReq.table_type_filter");
+  for (int i = 0; i < this->table_type_filter_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->table_type_filter(i).data(), this->table_type_filter(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(4, this->table_type_filter(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetTablesReq)
   return target;
 }
 
-size_t GetTablesReq::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetTablesReq)
-  size_t total_size = 0;
+int GetTablesReq::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated string table_type_filter = 4;
-  total_size += 1 *
-      ::google::protobuf::internal::FromIntSize(this->table_type_filter_size());
-  for (int i = 0, n = this->table_type_filter_size(); i < n; i++) {
-    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
-      this->table_type_filter(i));
-  }
-
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.LikeFilter catalog_name_filter = 1;
     if (has_catalog_name_filter()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *catalog_name_filter_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->catalog_name_filter());
     }
 
     // optional .exec.user.LikeFilter schema_name_filter = 2;
     if (has_schema_name_filter()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *schema_name_filter_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->schema_name_filter());
     }
 
     // optional .exec.user.LikeFilter table_name_filter = 3;
     if (has_table_name_filter()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *table_name_filter_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->table_name_filter());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated string table_type_filter = 4;
+  total_size += 1 * this->table_type_filter_size();
+  for (int i = 0; i < this->table_type_filter_size(); i++) {
+    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
+      this->table_type_filter(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetTablesReq::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetTablesReq)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetTablesReq* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetTablesReq>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetTablesReq*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetTablesReq)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetTablesReq)
     MergeFrom(*source);
   }
 }
 
 void GetTablesReq::MergeFrom(const GetTablesReq& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetTablesReq)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   table_type_filter_.MergeFrom(from.table_type_filter_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_catalog_name_filter()) {
       mutable_catalog_name_filter()->::exec::user::LikeFilter::MergeFrom(from.catalog_name_filter());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_schema_name_filter()) {
       mutable_schema_name_filter()->::exec::user::LikeFilter::MergeFrom(from.schema_name_filter());
     }
-    if (cached_has_bits & 0x00000004u) {
+    if (from.has_table_name_filter()) {
       mutable_table_name_filter()->::exec::user::LikeFilter::MergeFrom(from.table_name_filter());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetTablesReq::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetTablesReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetTablesReq::CopyFrom(const GetTablesReq& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetTablesReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetTablesReq::IsInitialized() const {
+
   return true;
 }
 
 void GetTablesReq::Swap(GetTablesReq* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetTablesReq::InternalSwap(GetTablesReq* other) {
-  using std::swap;
-  table_type_filter_.InternalSwap(CastToBase(&other->table_type_filter_));
-  swap(catalog_name_filter_, other->catalog_name_filter_);
-  swap(schema_name_filter_, other->schema_name_filter_);
-  swap(table_name_filter_, other->table_name_filter_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(catalog_name_filter_, other->catalog_name_filter_);
+    std::swap(schema_name_filter_, other->schema_name_filter_);
+    std::swap(table_name_filter_, other->table_name_filter_);
+    table_type_filter_.Swap(&other->table_type_filter_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetTablesReq::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetTablesReq_descriptor_;
+  metadata.reflection = GetTablesReq_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void TableMetadata::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int TableMetadata::kCatalogNameFieldNumber;
 const int TableMetadata::kSchemaNameFieldNumber;
 const int TableMetadata::kTableNameFieldNumber;
 const int TableMetadata::kTypeFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 TableMetadata::TableMetadata()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_TableMetadata.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.TableMetadata)
 }
+
+void TableMetadata::InitAsDefaultInstance() {
+}
+
 TableMetadata::TableMetadata(const TableMetadata& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_catalog_name()) {
-    catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
-  }
-  schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_schema_name()) {
-    schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_name_);
-  }
-  table_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_table_name()) {
-    table_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.table_name_);
-  }
-  type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_type()) {
-    type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.type_);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.TableMetadata)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void TableMetadata::SharedCtor() {
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  table_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  table_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 TableMetadata::~TableMetadata() {
-  // @@protoc_insertion_point(destructor:exec.user.TableMetadata)
   SharedDtor();
 }
 
 void TableMetadata::SharedDtor() {
-  catalog_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  table_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  type_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_name_;
+  }
+  if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete table_name_;
+  }
+  if (type_ != &::google::protobuf::internal::kEmptyString) {
+    delete type_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void TableMetadata::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* TableMetadata::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return TableMetadata_descriptor_;
 }
 
 const TableMetadata& TableMetadata::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_TableMetadata.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+TableMetadata* TableMetadata::default_instance_ = NULL;
+
+TableMetadata* TableMetadata::New() const {
+  return new TableMetadata;
+}
 
 void TableMetadata::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.TableMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
-      catalog_name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_catalog_name()) {
+      if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+        catalog_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      schema_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_schema_name()) {
+      if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+        schema_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      table_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_table_name()) {
+      if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+        table_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000008u) {
-      type_.ClearNonDefaultToEmptyNoArena();
+    if (has_type()) {
+      if (type_ != &::google::protobuf::internal::kEmptyString) {
+        type_->clear();
+      }
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool TableMetadata::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.TableMetadata)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string catalog_name = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_catalog_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.TableMetadata.catalog_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->catalog_name().data(), this->catalog_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_schema_name;
         break;
       }
 
       // optional string schema_name = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_schema_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_schema_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.TableMetadata.schema_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->schema_name().data(), this->schema_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_table_name;
         break;
       }
 
       // optional string table_name = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_table_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_table_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->table_name().data(), static_cast<int>(this->table_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.TableMetadata.table_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->table_name().data(), this->table_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_type;
         break;
       }
 
       // optional string type = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_type:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_type()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->type().data(), static_cast<int>(this->type().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.TableMetadata.type");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->type().data(), this->type().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.TableMetadata)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.TableMetadata)
-  return false;
 #undef DO_
 }
 
 void TableMetadata::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.TableMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.TableMetadata.catalog_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->catalog_name(), output);
   }
 
   // optional string schema_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.TableMetadata.schema_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_name().data(), this->schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->schema_name(), output);
   }
 
   // optional string table_name = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_name().data(), static_cast<int>(this->table_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.TableMetadata.table_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_table_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->table_name().data(), this->table_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       3, this->table_name(), output);
   }
 
   // optional string type = 4;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->type().data(), static_cast<int>(this->type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.TableMetadata.type");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->type().data(), this->type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->type(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.TableMetadata)
 }
 
-::google::protobuf::uint8* TableMetadata::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.TableMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* TableMetadata::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.TableMetadata.catalog_name");
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->catalog_name(), target);
   }
 
   // optional string schema_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.TableMetadata.schema_name");
+  if (has_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_name().data(), this->schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->schema_name(), target);
   }
 
   // optional string table_name = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_name().data(), static_cast<int>(this->table_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.TableMetadata.table_name");
+  if (has_table_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->table_name().data(), this->table_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         3, this->table_name(), target);
   }
 
   // optional string type = 4;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->type().data(), static_cast<int>(this->type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.TableMetadata.type");
+  if (has_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->type().data(), this->type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->type(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.TableMetadata)
   return target;
 }
 
-size_t TableMetadata::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.TableMetadata)
-  size_t total_size = 0;
+int TableMetadata::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 15u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string catalog_name = 1;
     if (has_catalog_name()) {
       total_size += 1 +
@@ -8437,194 +7452,169 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void TableMetadata::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.TableMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const TableMetadata* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const TableMetadata>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const TableMetadata*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.TableMetadata)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.TableMetadata)
     MergeFrom(*source);
   }
 }
 
 void TableMetadata::MergeFrom(const TableMetadata& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.TableMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_catalog_name();
-      catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_catalog_name()) {
+      set_catalog_name(from.catalog_name());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_schema_name();
-      schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_name_);
+    if (from.has_schema_name()) {
+      set_schema_name(from.schema_name());
     }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_table_name();
-      table_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.table_name_);
+    if (from.has_table_name()) {
+      set_table_name(from.table_name());
     }
-    if (cached_has_bits & 0x00000008u) {
-      set_has_type();
-      type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.type_);
+    if (from.has_type()) {
+      set_type(from.type());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void TableMetadata::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.TableMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void TableMetadata::CopyFrom(const TableMetadata& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.TableMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool TableMetadata::IsInitialized() const {
+
   return true;
 }
 
 void TableMetadata::Swap(TableMetadata* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void TableMetadata::InternalSwap(TableMetadata* other) {
-  using std::swap;
-  catalog_name_.Swap(&other->catalog_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  schema_name_.Swap(&other->schema_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  table_name_.Swap(&other->table_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  type_.Swap(&other->type_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(catalog_name_, other->catalog_name_);
+    std::swap(schema_name_, other->schema_name_);
+    std::swap(table_name_, other->table_name_);
+    std::swap(type_, other->type_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata TableMetadata::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = TableMetadata_descriptor_;
+  metadata.reflection = TableMetadata_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetTablesResp::InitAsDefaultInstance() {
-  ::exec::user::_GetTablesResp_default_instance_._instance.get_mutable()->error_ = const_cast< ::exec::shared::DrillPBError*>(
-      ::exec::shared::DrillPBError::internal_default_instance());
-}
-void GetTablesResp::clear_error() {
-  if (error_ != NULL) error_->Clear();
-  clear_has_error();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetTablesResp::kStatusFieldNumber;
 const int GetTablesResp::kTablesFieldNumber;
 const int GetTablesResp::kErrorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetTablesResp::GetTablesResp()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetTablesResp.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetTablesResp)
 }
+
+void GetTablesResp::InitAsDefaultInstance() {
+  error_ = const_cast< ::exec::shared::DrillPBError*>(&::exec::shared::DrillPBError::default_instance());
+}
+
 GetTablesResp::GetTablesResp(const GetTablesResp& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      tables_(from.tables_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_error()) {
-    error_ = new ::exec::shared::DrillPBError(*from.error_);
-  } else {
-    error_ = NULL;
-  }
-  status_ = from.status_;
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetTablesResp)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetTablesResp::SharedCtor() {
-  ::memset(&error_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&status_) -
-      reinterpret_cast<char*>(&error_)) + sizeof(status_));
+  _cached_size_ = 0;
+  status_ = 0;
+  error_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetTablesResp::~GetTablesResp() {
-  // @@protoc_insertion_point(destructor:exec.user.GetTablesResp)
   SharedDtor();
 }
 
 void GetTablesResp::SharedDtor() {
-  if (this != internal_default_instance()) delete error_;
+  if (this != default_instance_) {
+    delete error_;
+  }
 }
 
 void GetTablesResp::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetTablesResp::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetTablesResp_descriptor_;
 }
 
 const GetTablesResp& GetTablesResp::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetTablesResp.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetTablesResp* GetTablesResp::default_instance_ = NULL;
+
+GetTablesResp* GetTablesResp::New() const {
+  return new GetTablesResp;
+}
 
 void GetTablesResp::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetTablesResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  tables_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(error_ != NULL);
-    error_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    status_ = 0;
+    if (has_error()) {
+      if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+    }
   }
-  status_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  tables_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetTablesResp::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetTablesResp)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.RequestStatus status = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -8632,644 +7622,566 @@
           if (::exec::user::RequestStatus_IsValid(value)) {
             set_status(static_cast< ::exec::user::RequestStatus >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_tables;
         break;
       }
 
       // repeated .exec.user.TableMetadata tables = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_tables:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_tables()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_tables;
+        if (input->ExpectTag(26)) goto parse_error;
         break;
       }
 
       // optional .exec.shared.DrillPBError error = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetTablesResp)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetTablesResp)
-  return false;
 #undef DO_
 }
 
 void GetTablesResp::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetTablesResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_status()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->status(), output);
   }
 
   // repeated .exec.user.TableMetadata tables = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->tables_size()); i < n; i++) {
+  for (int i = 0; i < this->tables_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2,
-      this->tables(static_cast<int>(i)),
-      output);
+      2, this->tables(i), output);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_error(), output);
+      3, this->error(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetTablesResp)
 }
 
-::google::protobuf::uint8* GetTablesResp::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetTablesResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetTablesResp::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_status()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->status(), target);
   }
 
   // repeated .exec.user.TableMetadata tables = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->tables_size()); i < n; i++) {
+  for (int i = 0; i < this->tables_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->tables(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->tables(i), target);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_error(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->error(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetTablesResp)
   return target;
 }
 
-size_t GetTablesResp::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetTablesResp)
-  size_t total_size = 0;
+int GetTablesResp::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.user.TableMetadata tables = 2;
-  {
-    unsigned int count = static_cast<unsigned int>(this->tables_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->tables(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 3u) {
-    // optional .exec.shared.DrillPBError error = 3;
-    if (has_error()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *error_);
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.RequestStatus status = 1;
     if (has_status()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
+    if (has_error()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->error());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.user.TableMetadata tables = 2;
+  total_size += 1 * this->tables_size();
+  for (int i = 0; i < this->tables_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->tables(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetTablesResp::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetTablesResp)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetTablesResp* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetTablesResp>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetTablesResp*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetTablesResp)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetTablesResp)
     MergeFrom(*source);
   }
 }
 
 void GetTablesResp::MergeFrom(const GetTablesResp& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetTablesResp)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   tables_.MergeFrom(from.tables_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_status()) {
+      set_status(from.status());
+    }
+    if (from.has_error()) {
       mutable_error()->::exec::shared::DrillPBError::MergeFrom(from.error());
     }
-    if (cached_has_bits & 0x00000002u) {
-      status_ = from.status_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetTablesResp::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetTablesResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetTablesResp::CopyFrom(const GetTablesResp& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetTablesResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetTablesResp::IsInitialized() const {
+
   return true;
 }
 
 void GetTablesResp::Swap(GetTablesResp* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetTablesResp::InternalSwap(GetTablesResp* other) {
-  using std::swap;
-  CastToBase(&tables_)->InternalSwap(CastToBase(&other->tables_));
-  swap(error_, other->error_);
-  swap(status_, other->status_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(status_, other->status_);
+    tables_.Swap(&other->tables_);
+    std::swap(error_, other->error_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetTablesResp::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetTablesResp_descriptor_;
+  metadata.reflection = GetTablesResp_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetColumnsReq::InitAsDefaultInstance() {
-  ::exec::user::_GetColumnsReq_default_instance_._instance.get_mutable()->catalog_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-  ::exec::user::_GetColumnsReq_default_instance_._instance.get_mutable()->schema_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-  ::exec::user::_GetColumnsReq_default_instance_._instance.get_mutable()->table_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-  ::exec::user::_GetColumnsReq_default_instance_._instance.get_mutable()->column_name_filter_ = const_cast< ::exec::user::LikeFilter*>(
-      ::exec::user::LikeFilter::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetColumnsReq::kCatalogNameFilterFieldNumber;
 const int GetColumnsReq::kSchemaNameFilterFieldNumber;
 const int GetColumnsReq::kTableNameFilterFieldNumber;
 const int GetColumnsReq::kColumnNameFilterFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetColumnsReq::GetColumnsReq()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetColumnsReq.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetColumnsReq)
 }
+
+void GetColumnsReq::InitAsDefaultInstance() {
+  catalog_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+  schema_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+  table_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+  column_name_filter_ = const_cast< ::exec::user::LikeFilter*>(&::exec::user::LikeFilter::default_instance());
+}
+
 GetColumnsReq::GetColumnsReq(const GetColumnsReq& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_catalog_name_filter()) {
-    catalog_name_filter_ = new ::exec::user::LikeFilter(*from.catalog_name_filter_);
-  } else {
-    catalog_name_filter_ = NULL;
-  }
-  if (from.has_schema_name_filter()) {
-    schema_name_filter_ = new ::exec::user::LikeFilter(*from.schema_name_filter_);
-  } else {
-    schema_name_filter_ = NULL;
-  }
-  if (from.has_table_name_filter()) {
-    table_name_filter_ = new ::exec::user::LikeFilter(*from.table_name_filter_);
-  } else {
-    table_name_filter_ = NULL;
-  }
-  if (from.has_column_name_filter()) {
-    column_name_filter_ = new ::exec::user::LikeFilter(*from.column_name_filter_);
-  } else {
-    column_name_filter_ = NULL;
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetColumnsReq)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetColumnsReq::SharedCtor() {
-  ::memset(&catalog_name_filter_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&column_name_filter_) -
-      reinterpret_cast<char*>(&catalog_name_filter_)) + sizeof(column_name_filter_));
+  _cached_size_ = 0;
+  catalog_name_filter_ = NULL;
+  schema_name_filter_ = NULL;
+  table_name_filter_ = NULL;
+  column_name_filter_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetColumnsReq::~GetColumnsReq() {
-  // @@protoc_insertion_point(destructor:exec.user.GetColumnsReq)
   SharedDtor();
 }
 
 void GetColumnsReq::SharedDtor() {
-  if (this != internal_default_instance()) delete catalog_name_filter_;
-  if (this != internal_default_instance()) delete schema_name_filter_;
-  if (this != internal_default_instance()) delete table_name_filter_;
-  if (this != internal_default_instance()) delete column_name_filter_;
+  if (this != default_instance_) {
+    delete catalog_name_filter_;
+    delete schema_name_filter_;
+    delete table_name_filter_;
+    delete column_name_filter_;
+  }
 }
 
 void GetColumnsReq::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetColumnsReq::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetColumnsReq_descriptor_;
 }
 
 const GetColumnsReq& GetColumnsReq::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetColumnsReq.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetColumnsReq* GetColumnsReq::default_instance_ = NULL;
+
+GetColumnsReq* GetColumnsReq::New() const {
+  return new GetColumnsReq;
+}
 
 void GetColumnsReq::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetColumnsReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(catalog_name_filter_ != NULL);
-      catalog_name_filter_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_catalog_name_filter()) {
+      if (catalog_name_filter_ != NULL) catalog_name_filter_->::exec::user::LikeFilter::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(schema_name_filter_ != NULL);
-      schema_name_filter_->Clear();
+    if (has_schema_name_filter()) {
+      if (schema_name_filter_ != NULL) schema_name_filter_->::exec::user::LikeFilter::Clear();
     }
-    if (cached_has_bits & 0x00000004u) {
-      GOOGLE_DCHECK(table_name_filter_ != NULL);
-      table_name_filter_->Clear();
+    if (has_table_name_filter()) {
+      if (table_name_filter_ != NULL) table_name_filter_->::exec::user::LikeFilter::Clear();
     }
-    if (cached_has_bits & 0x00000008u) {
-      GOOGLE_DCHECK(column_name_filter_ != NULL);
-      column_name_filter_->Clear();
+    if (has_column_name_filter()) {
+      if (column_name_filter_ != NULL) column_name_filter_->::exec::user::LikeFilter::Clear();
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetColumnsReq::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetColumnsReq)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.LikeFilter catalog_name_filter = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_catalog_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_schema_name_filter;
         break;
       }
 
       // optional .exec.user.LikeFilter schema_name_filter = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_schema_name_filter:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_schema_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_table_name_filter;
         break;
       }
 
       // optional .exec.user.LikeFilter table_name_filter = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_table_name_filter:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_table_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_column_name_filter;
         break;
       }
 
       // optional .exec.user.LikeFilter column_name_filter = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_column_name_filter:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_column_name_filter()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetColumnsReq)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetColumnsReq)
-  return false;
 #undef DO_
 }
 
 void GetColumnsReq::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetColumnsReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_catalog_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_catalog_name_filter(), output);
+      1, this->catalog_name_filter(), output);
   }
 
   // optional .exec.user.LikeFilter schema_name_filter = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_schema_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_schema_name_filter(), output);
+      2, this->schema_name_filter(), output);
   }
 
   // optional .exec.user.LikeFilter table_name_filter = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_table_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_table_name_filter(), output);
+      3, this->table_name_filter(), output);
   }
 
   // optional .exec.user.LikeFilter column_name_filter = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_column_name_filter()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      4, this->_internal_column_name_filter(), output);
+      4, this->column_name_filter(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetColumnsReq)
 }
 
-::google::protobuf::uint8* GetColumnsReq::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetColumnsReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetColumnsReq::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_catalog_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_catalog_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->catalog_name_filter(), target);
   }
 
   // optional .exec.user.LikeFilter schema_name_filter = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_schema_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_schema_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->schema_name_filter(), target);
   }
 
   // optional .exec.user.LikeFilter table_name_filter = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_table_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_table_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->table_name_filter(), target);
   }
 
   // optional .exec.user.LikeFilter column_name_filter = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_column_name_filter()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        4, this->_internal_column_name_filter(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        4, this->column_name_filter(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetColumnsReq)
   return target;
 }
 
-size_t GetColumnsReq::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetColumnsReq)
-  size_t total_size = 0;
+int GetColumnsReq::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 15u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.LikeFilter catalog_name_filter = 1;
     if (has_catalog_name_filter()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *catalog_name_filter_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->catalog_name_filter());
     }
 
     // optional .exec.user.LikeFilter schema_name_filter = 2;
     if (has_schema_name_filter()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *schema_name_filter_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->schema_name_filter());
     }
 
     // optional .exec.user.LikeFilter table_name_filter = 3;
     if (has_table_name_filter()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *table_name_filter_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->table_name_filter());
     }
 
     // optional .exec.user.LikeFilter column_name_filter = 4;
     if (has_column_name_filter()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *column_name_filter_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->column_name_filter());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetColumnsReq::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetColumnsReq)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetColumnsReq* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetColumnsReq>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetColumnsReq*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetColumnsReq)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetColumnsReq)
     MergeFrom(*source);
   }
 }
 
 void GetColumnsReq::MergeFrom(const GetColumnsReq& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetColumnsReq)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_catalog_name_filter()) {
       mutable_catalog_name_filter()->::exec::user::LikeFilter::MergeFrom(from.catalog_name_filter());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_schema_name_filter()) {
       mutable_schema_name_filter()->::exec::user::LikeFilter::MergeFrom(from.schema_name_filter());
     }
-    if (cached_has_bits & 0x00000004u) {
+    if (from.has_table_name_filter()) {
       mutable_table_name_filter()->::exec::user::LikeFilter::MergeFrom(from.table_name_filter());
     }
-    if (cached_has_bits & 0x00000008u) {
+    if (from.has_column_name_filter()) {
       mutable_column_name_filter()->::exec::user::LikeFilter::MergeFrom(from.column_name_filter());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetColumnsReq::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetColumnsReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetColumnsReq::CopyFrom(const GetColumnsReq& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetColumnsReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetColumnsReq::IsInitialized() const {
+
   return true;
 }
 
 void GetColumnsReq::Swap(GetColumnsReq* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetColumnsReq::InternalSwap(GetColumnsReq* other) {
-  using std::swap;
-  swap(catalog_name_filter_, other->catalog_name_filter_);
-  swap(schema_name_filter_, other->schema_name_filter_);
-  swap(table_name_filter_, other->table_name_filter_);
-  swap(column_name_filter_, other->column_name_filter_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(catalog_name_filter_, other->catalog_name_filter_);
+    std::swap(schema_name_filter_, other->schema_name_filter_);
+    std::swap(table_name_filter_, other->table_name_filter_);
+    std::swap(column_name_filter_, other->column_name_filter_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetColumnsReq::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetColumnsReq_descriptor_;
+  metadata.reflection = GetColumnsReq_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void ColumnMetadata::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int ColumnMetadata::kCatalogNameFieldNumber;
 const int ColumnMetadata::kSchemaNameFieldNumber;
 const int ColumnMetadata::kTableNameFieldNumber;
@@ -9287,706 +8199,705 @@
 const int ColumnMetadata::kIntervalTypeFieldNumber;
 const int ColumnMetadata::kIntervalPrecisionFieldNumber;
 const int ColumnMetadata::kColumnSizeFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 ColumnMetadata::ColumnMetadata()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_ColumnMetadata.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.ColumnMetadata)
 }
+
+void ColumnMetadata::InitAsDefaultInstance() {
+}
+
 ColumnMetadata::ColumnMetadata(const ColumnMetadata& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_catalog_name()) {
-    catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
-  }
-  schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_schema_name()) {
-    schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_name_);
-  }
-  table_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_table_name()) {
-    table_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.table_name_);
-  }
-  column_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_column_name()) {
-    column_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.column_name_);
-  }
-  default_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_default_value()) {
-    default_value_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.default_value_);
-  }
-  data_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_data_type()) {
-    data_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.data_type_);
-  }
-  interval_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_interval_type()) {
-    interval_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.interval_type_);
-  }
-  ::memcpy(&ordinal_position_, &from.ordinal_position_,
-    static_cast<size_t>(reinterpret_cast<char*>(&column_size_) -
-    reinterpret_cast<char*>(&ordinal_position_)) + sizeof(column_size_));
-  // @@protoc_insertion_point(copy_constructor:exec.user.ColumnMetadata)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void ColumnMetadata::SharedCtor() {
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  table_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  column_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  default_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  data_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  interval_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&ordinal_position_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&column_size_) -
-      reinterpret_cast<char*>(&ordinal_position_)) + sizeof(column_size_));
+  _cached_size_ = 0;
+  catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  table_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  column_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ordinal_position_ = 0;
+  default_value_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  is_nullable_ = false;
+  data_type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  char_max_length_ = 0;
+  char_octet_length_ = 0;
+  numeric_precision_ = 0;
+  numeric_precision_radix_ = 0;
+  numeric_scale_ = 0;
+  date_time_precision_ = 0;
+  interval_type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  interval_precision_ = 0;
+  column_size_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 ColumnMetadata::~ColumnMetadata() {
-  // @@protoc_insertion_point(destructor:exec.user.ColumnMetadata)
   SharedDtor();
 }
 
 void ColumnMetadata::SharedDtor() {
-  catalog_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  table_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  column_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  default_value_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  data_type_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  interval_type_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_name_;
+  }
+  if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete table_name_;
+  }
+  if (column_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete column_name_;
+  }
+  if (default_value_ != &::google::protobuf::internal::kEmptyString) {
+    delete default_value_;
+  }
+  if (data_type_ != &::google::protobuf::internal::kEmptyString) {
+    delete data_type_;
+  }
+  if (interval_type_ != &::google::protobuf::internal::kEmptyString) {
+    delete interval_type_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void ColumnMetadata::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* ColumnMetadata::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return ColumnMetadata_descriptor_;
 }
 
 const ColumnMetadata& ColumnMetadata::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_ColumnMetadata.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+ColumnMetadata* ColumnMetadata::default_instance_ = NULL;
+
+ColumnMetadata* ColumnMetadata::New() const {
+  return new ColumnMetadata;
+}
 
 void ColumnMetadata::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.ColumnMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 127u) {
-    if (cached_has_bits & 0x00000001u) {
-      catalog_name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_catalog_name()) {
+      if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+        catalog_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      schema_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_schema_name()) {
+      if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+        schema_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      table_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_table_name()) {
+      if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+        table_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000008u) {
-      column_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_column_name()) {
+      if (column_name_ != &::google::protobuf::internal::kEmptyString) {
+        column_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000010u) {
-      default_value_.ClearNonDefaultToEmptyNoArena();
+    ordinal_position_ = 0;
+    if (has_default_value()) {
+      if (default_value_ != &::google::protobuf::internal::kEmptyString) {
+        default_value_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000020u) {
-      data_type_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000040u) {
-      interval_type_.ClearNonDefaultToEmptyNoArena();
+    is_nullable_ = false;
+    if (has_data_type()) {
+      if (data_type_ != &::google::protobuf::internal::kEmptyString) {
+        data_type_->clear();
+      }
     }
   }
-  ordinal_position_ = 0;
-  if (cached_has_bits & 65280u) {
-    ::memset(&is_nullable_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&interval_precision_) -
-        reinterpret_cast<char*>(&is_nullable_)) + sizeof(interval_precision_));
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    char_max_length_ = 0;
+    char_octet_length_ = 0;
+    numeric_precision_ = 0;
+    numeric_precision_radix_ = 0;
+    numeric_scale_ = 0;
+    date_time_precision_ = 0;
+    if (has_interval_type()) {
+      if (interval_type_ != &::google::protobuf::internal::kEmptyString) {
+        interval_type_->clear();
+      }
+    }
+    interval_precision_ = 0;
   }
-  column_size_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
+    column_size_ = 0;
+  }
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool ColumnMetadata::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.ColumnMetadata)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(16383u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string catalog_name = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_catalog_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ColumnMetadata.catalog_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->catalog_name().data(), this->catalog_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_schema_name;
         break;
       }
 
       // optional string schema_name = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_schema_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_schema_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ColumnMetadata.schema_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->schema_name().data(), this->schema_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_table_name;
         break;
       }
 
       // optional string table_name = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_table_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_table_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->table_name().data(), static_cast<int>(this->table_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ColumnMetadata.table_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->table_name().data(), this->table_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_column_name;
         break;
       }
 
       // optional string column_name = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_column_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_column_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->column_name().data(), static_cast<int>(this->column_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ColumnMetadata.column_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->column_name().data(), this->column_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_ordinal_position;
         break;
       }
 
       // optional int32 ordinal_position = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_ordinal_position();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_ordinal_position:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &ordinal_position_)));
+          set_has_ordinal_position();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_default_value;
         break;
       }
 
       // optional string default_value = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_default_value:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_default_value()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->default_value().data(), static_cast<int>(this->default_value().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ColumnMetadata.default_value");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->default_value().data(), this->default_value().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_is_nullable;
         break;
       }
 
       // optional bool is_nullable = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_is_nullable();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_is_nullable:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &is_nullable_)));
+          set_has_is_nullable();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(66)) goto parse_data_type;
         break;
       }
 
       // optional string data_type = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(66u /* 66 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_data_type:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_data_type()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->data_type().data(), static_cast<int>(this->data_type().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ColumnMetadata.data_type");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->data_type().data(), this->data_type().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(72)) goto parse_char_max_length;
         break;
       }
 
       // optional int32 char_max_length = 9;
       case 9: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(72u /* 72 & 0xFF */)) {
-          set_has_char_max_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_char_max_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &char_max_length_)));
+          set_has_char_max_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(80)) goto parse_char_octet_length;
         break;
       }
 
       // optional int32 char_octet_length = 10;
       case 10: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(80u /* 80 & 0xFF */)) {
-          set_has_char_octet_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_char_octet_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &char_octet_length_)));
+          set_has_char_octet_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(88)) goto parse_numeric_precision;
         break;
       }
 
       // optional int32 numeric_precision = 11;
       case 11: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(88u /* 88 & 0xFF */)) {
-          set_has_numeric_precision();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_numeric_precision:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &numeric_precision_)));
+          set_has_numeric_precision();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(96)) goto parse_numeric_precision_radix;
         break;
       }
 
       // optional int32 numeric_precision_radix = 12;
       case 12: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(96u /* 96 & 0xFF */)) {
-          set_has_numeric_precision_radix();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_numeric_precision_radix:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &numeric_precision_radix_)));
+          set_has_numeric_precision_radix();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(104)) goto parse_numeric_scale;
         break;
       }
 
       // optional int32 numeric_scale = 13;
       case 13: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(104u /* 104 & 0xFF */)) {
-          set_has_numeric_scale();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_numeric_scale:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &numeric_scale_)));
+          set_has_numeric_scale();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(112)) goto parse_date_time_precision;
         break;
       }
 
       // optional int32 date_time_precision = 14;
       case 14: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(112u /* 112 & 0xFF */)) {
-          set_has_date_time_precision();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_date_time_precision:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &date_time_precision_)));
+          set_has_date_time_precision();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(122)) goto parse_interval_type;
         break;
       }
 
       // optional string interval_type = 15;
       case 15: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(122u /* 122 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_interval_type:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_interval_type()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->interval_type().data(), static_cast<int>(this->interval_type().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ColumnMetadata.interval_type");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->interval_type().data(), this->interval_type().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(128)) goto parse_interval_precision;
         break;
       }
 
       // optional int32 interval_precision = 16;
       case 16: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(128u /* 128 & 0xFF */)) {
-          set_has_interval_precision();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_interval_precision:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &interval_precision_)));
+          set_has_interval_precision();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(136)) goto parse_column_size;
         break;
       }
 
       // optional int32 column_size = 17;
       case 17: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(136u /* 136 & 0xFF */)) {
-          set_has_column_size();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_column_size:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &column_size_)));
+          set_has_column_size();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.ColumnMetadata)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.ColumnMetadata)
-  return false;
 #undef DO_
 }
 
 void ColumnMetadata::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.ColumnMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.catalog_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->catalog_name(), output);
   }
 
   // optional string schema_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.schema_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_name().data(), this->schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->schema_name(), output);
   }
 
   // optional string table_name = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_name().data(), static_cast<int>(this->table_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.table_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_table_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->table_name().data(), this->table_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       3, this->table_name(), output);
   }
 
   // optional string column_name = 4;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->column_name().data(), static_cast<int>(this->column_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.column_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_column_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->column_name().data(), this->column_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->column_name(), output);
   }
 
   // optional int32 ordinal_position = 5;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_ordinal_position()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->ordinal_position(), output);
   }
 
   // optional string default_value = 6;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->default_value().data(), static_cast<int>(this->default_value().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.default_value");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_default_value()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->default_value().data(), this->default_value().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       6, this->default_value(), output);
   }
 
   // optional bool is_nullable = 7;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_is_nullable()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(7, this->is_nullable(), output);
   }
 
   // optional string data_type = 8;
-  if (cached_has_bits & 0x00000020u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->data_type().data(), static_cast<int>(this->data_type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.data_type");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_data_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->data_type().data(), this->data_type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       8, this->data_type(), output);
   }
 
   // optional int32 char_max_length = 9;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_char_max_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(9, this->char_max_length(), output);
   }
 
   // optional int32 char_octet_length = 10;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_char_octet_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(10, this->char_octet_length(), output);
   }
 
   // optional int32 numeric_precision = 11;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_numeric_precision()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(11, this->numeric_precision(), output);
   }
 
   // optional int32 numeric_precision_radix = 12;
-  if (cached_has_bits & 0x00001000u) {
+  if (has_numeric_precision_radix()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(12, this->numeric_precision_radix(), output);
   }
 
   // optional int32 numeric_scale = 13;
-  if (cached_has_bits & 0x00002000u) {
+  if (has_numeric_scale()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(13, this->numeric_scale(), output);
   }
 
   // optional int32 date_time_precision = 14;
-  if (cached_has_bits & 0x00004000u) {
+  if (has_date_time_precision()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(14, this->date_time_precision(), output);
   }
 
   // optional string interval_type = 15;
-  if (cached_has_bits & 0x00000040u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->interval_type().data(), static_cast<int>(this->interval_type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.interval_type");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_interval_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->interval_type().data(), this->interval_type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       15, this->interval_type(), output);
   }
 
   // optional int32 interval_precision = 16;
-  if (cached_has_bits & 0x00008000u) {
+  if (has_interval_precision()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(16, this->interval_precision(), output);
   }
 
   // optional int32 column_size = 17;
-  if (cached_has_bits & 0x00010000u) {
+  if (has_column_size()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(17, this->column_size(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.ColumnMetadata)
 }
 
-::google::protobuf::uint8* ColumnMetadata::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.ColumnMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* ColumnMetadata::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.catalog_name");
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->catalog_name(), target);
   }
 
   // optional string schema_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.schema_name");
+  if (has_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_name().data(), this->schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->schema_name(), target);
   }
 
   // optional string table_name = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_name().data(), static_cast<int>(this->table_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.table_name");
+  if (has_table_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->table_name().data(), this->table_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         3, this->table_name(), target);
   }
 
   // optional string column_name = 4;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->column_name().data(), static_cast<int>(this->column_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.column_name");
+  if (has_column_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->column_name().data(), this->column_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->column_name(), target);
   }
 
   // optional int32 ordinal_position = 5;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_ordinal_position()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(5, this->ordinal_position(), target);
   }
 
   // optional string default_value = 6;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->default_value().data(), static_cast<int>(this->default_value().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.default_value");
+  if (has_default_value()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->default_value().data(), this->default_value().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         6, this->default_value(), target);
   }
 
   // optional bool is_nullable = 7;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_is_nullable()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(7, this->is_nullable(), target);
   }
 
   // optional string data_type = 8;
-  if (cached_has_bits & 0x00000020u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->data_type().data(), static_cast<int>(this->data_type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.data_type");
+  if (has_data_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->data_type().data(), this->data_type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         8, this->data_type(), target);
   }
 
   // optional int32 char_max_length = 9;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_char_max_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(9, this->char_max_length(), target);
   }
 
   // optional int32 char_octet_length = 10;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_char_octet_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(10, this->char_octet_length(), target);
   }
 
   // optional int32 numeric_precision = 11;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_numeric_precision()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(11, this->numeric_precision(), target);
   }
 
   // optional int32 numeric_precision_radix = 12;
-  if (cached_has_bits & 0x00001000u) {
+  if (has_numeric_precision_radix()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(12, this->numeric_precision_radix(), target);
   }
 
   // optional int32 numeric_scale = 13;
-  if (cached_has_bits & 0x00002000u) {
+  if (has_numeric_scale()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(13, this->numeric_scale(), target);
   }
 
   // optional int32 date_time_precision = 14;
-  if (cached_has_bits & 0x00004000u) {
+  if (has_date_time_precision()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(14, this->date_time_precision(), target);
   }
 
   // optional string interval_type = 15;
-  if (cached_has_bits & 0x00000040u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->interval_type().data(), static_cast<int>(this->interval_type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ColumnMetadata.interval_type");
+  if (has_interval_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->interval_type().data(), this->interval_type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         15, this->interval_type(), target);
   }
 
   // optional int32 interval_precision = 16;
-  if (cached_has_bits & 0x00008000u) {
+  if (has_interval_precision()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(16, this->interval_precision(), target);
   }
 
   // optional int32 column_size = 17;
-  if (cached_has_bits & 0x00010000u) {
+  if (has_column_size()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(17, this->column_size(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.ColumnMetadata)
   return target;
 }
 
-size_t ColumnMetadata::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.ColumnMetadata)
-  size_t total_size = 0;
+int ColumnMetadata::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 255u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string catalog_name = 1;
     if (has_catalog_name()) {
       total_size += 1 +
@@ -10015,6 +8926,13 @@
           this->column_name());
     }
 
+    // optional int32 ordinal_position = 5;
+    if (has_ordinal_position()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->ordinal_position());
+    }
+
     // optional string default_value = 6;
     if (has_default_value()) {
       total_size += 1 +
@@ -10022,6 +8940,11 @@
           this->default_value());
     }
 
+    // optional bool is_nullable = 7;
+    if (has_is_nullable()) {
+      total_size += 1 + 1;
+    }
+
     // optional string data_type = 8;
     if (has_data_type()) {
       total_size += 1 +
@@ -10029,27 +8952,8 @@
           this->data_type());
     }
 
-    // optional string interval_type = 15;
-    if (has_interval_type()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->interval_type());
-    }
-
-    // optional int32 ordinal_position = 5;
-    if (has_ordinal_position()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int32Size(
-          this->ordinal_position());
-    }
-
   }
-  if (_has_bits_[8 / 32] & 65280u) {
-    // optional bool is_nullable = 7;
-    if (has_is_nullable()) {
-      total_size += 1 + 1;
-    }
-
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
     // optional int32 char_max_length = 9;
     if (has_char_max_length()) {
       total_size += 1 +
@@ -10092,6 +8996,13 @@
           this->date_time_precision());
     }
 
+    // optional string interval_type = 15;
+    if (has_interval_type()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->interval_type());
+    }
+
     // optional int32 interval_precision = 16;
     if (has_interval_precision()) {
       total_size += 2 +
@@ -10100,263 +9011,234 @@
     }
 
   }
-  // optional int32 column_size = 17;
-  if (has_column_size()) {
-    total_size += 2 +
-      ::google::protobuf::internal::WireFormatLite::Int32Size(
-        this->column_size());
-  }
+  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
+    // optional int32 column_size = 17;
+    if (has_column_size()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->column_size());
+    }
 
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  }
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void ColumnMetadata::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.ColumnMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const ColumnMetadata* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const ColumnMetadata>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const ColumnMetadata*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.ColumnMetadata)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.ColumnMetadata)
     MergeFrom(*source);
   }
 }
 
 void ColumnMetadata::MergeFrom(const ColumnMetadata& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.ColumnMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_catalog_name();
-      catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_catalog_name()) {
+      set_catalog_name(from.catalog_name());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_schema_name();
-      schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_name_);
+    if (from.has_schema_name()) {
+      set_schema_name(from.schema_name());
     }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_table_name();
-      table_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.table_name_);
+    if (from.has_table_name()) {
+      set_table_name(from.table_name());
     }
-    if (cached_has_bits & 0x00000008u) {
-      set_has_column_name();
-      column_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.column_name_);
+    if (from.has_column_name()) {
+      set_column_name(from.column_name());
     }
-    if (cached_has_bits & 0x00000010u) {
-      set_has_default_value();
-      default_value_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.default_value_);
+    if (from.has_ordinal_position()) {
+      set_ordinal_position(from.ordinal_position());
     }
-    if (cached_has_bits & 0x00000020u) {
-      set_has_data_type();
-      data_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.data_type_);
+    if (from.has_default_value()) {
+      set_default_value(from.default_value());
     }
-    if (cached_has_bits & 0x00000040u) {
-      set_has_interval_type();
-      interval_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.interval_type_);
+    if (from.has_is_nullable()) {
+      set_is_nullable(from.is_nullable());
     }
-    if (cached_has_bits & 0x00000080u) {
-      ordinal_position_ = from.ordinal_position_;
+    if (from.has_data_type()) {
+      set_data_type(from.data_type());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 65280u) {
-    if (cached_has_bits & 0x00000100u) {
-      is_nullable_ = from.is_nullable_;
+  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (from.has_char_max_length()) {
+      set_char_max_length(from.char_max_length());
     }
-    if (cached_has_bits & 0x00000200u) {
-      char_max_length_ = from.char_max_length_;
+    if (from.has_char_octet_length()) {
+      set_char_octet_length(from.char_octet_length());
     }
-    if (cached_has_bits & 0x00000400u) {
-      char_octet_length_ = from.char_octet_length_;
+    if (from.has_numeric_precision()) {
+      set_numeric_precision(from.numeric_precision());
     }
-    if (cached_has_bits & 0x00000800u) {
-      numeric_precision_ = from.numeric_precision_;
+    if (from.has_numeric_precision_radix()) {
+      set_numeric_precision_radix(from.numeric_precision_radix());
     }
-    if (cached_has_bits & 0x00001000u) {
-      numeric_precision_radix_ = from.numeric_precision_radix_;
+    if (from.has_numeric_scale()) {
+      set_numeric_scale(from.numeric_scale());
     }
-    if (cached_has_bits & 0x00002000u) {
-      numeric_scale_ = from.numeric_scale_;
+    if (from.has_date_time_precision()) {
+      set_date_time_precision(from.date_time_precision());
     }
-    if (cached_has_bits & 0x00004000u) {
-      date_time_precision_ = from.date_time_precision_;
+    if (from.has_interval_type()) {
+      set_interval_type(from.interval_type());
     }
-    if (cached_has_bits & 0x00008000u) {
-      interval_precision_ = from.interval_precision_;
+    if (from.has_interval_precision()) {
+      set_interval_precision(from.interval_precision());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 0x00010000u) {
-    set_column_size(from.column_size());
+  if (from._has_bits_[16 / 32] & (0xffu << (16 % 32))) {
+    if (from.has_column_size()) {
+      set_column_size(from.column_size());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void ColumnMetadata::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.ColumnMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void ColumnMetadata::CopyFrom(const ColumnMetadata& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.ColumnMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool ColumnMetadata::IsInitialized() const {
+
   return true;
 }
 
 void ColumnMetadata::Swap(ColumnMetadata* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void ColumnMetadata::InternalSwap(ColumnMetadata* other) {
-  using std::swap;
-  catalog_name_.Swap(&other->catalog_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  schema_name_.Swap(&other->schema_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  table_name_.Swap(&other->table_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  column_name_.Swap(&other->column_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  default_value_.Swap(&other->default_value_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  data_type_.Swap(&other->data_type_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  interval_type_.Swap(&other->interval_type_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(ordinal_position_, other->ordinal_position_);
-  swap(is_nullable_, other->is_nullable_);
-  swap(char_max_length_, other->char_max_length_);
-  swap(char_octet_length_, other->char_octet_length_);
-  swap(numeric_precision_, other->numeric_precision_);
-  swap(numeric_precision_radix_, other->numeric_precision_radix_);
-  swap(numeric_scale_, other->numeric_scale_);
-  swap(date_time_precision_, other->date_time_precision_);
-  swap(interval_precision_, other->interval_precision_);
-  swap(column_size_, other->column_size_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(catalog_name_, other->catalog_name_);
+    std::swap(schema_name_, other->schema_name_);
+    std::swap(table_name_, other->table_name_);
+    std::swap(column_name_, other->column_name_);
+    std::swap(ordinal_position_, other->ordinal_position_);
+    std::swap(default_value_, other->default_value_);
+    std::swap(is_nullable_, other->is_nullable_);
+    std::swap(data_type_, other->data_type_);
+    std::swap(char_max_length_, other->char_max_length_);
+    std::swap(char_octet_length_, other->char_octet_length_);
+    std::swap(numeric_precision_, other->numeric_precision_);
+    std::swap(numeric_precision_radix_, other->numeric_precision_radix_);
+    std::swap(numeric_scale_, other->numeric_scale_);
+    std::swap(date_time_precision_, other->date_time_precision_);
+    std::swap(interval_type_, other->interval_type_);
+    std::swap(interval_precision_, other->interval_precision_);
+    std::swap(column_size_, other->column_size_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata ColumnMetadata::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = ColumnMetadata_descriptor_;
+  metadata.reflection = ColumnMetadata_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetColumnsResp::InitAsDefaultInstance() {
-  ::exec::user::_GetColumnsResp_default_instance_._instance.get_mutable()->error_ = const_cast< ::exec::shared::DrillPBError*>(
-      ::exec::shared::DrillPBError::internal_default_instance());
-}
-void GetColumnsResp::clear_error() {
-  if (error_ != NULL) error_->Clear();
-  clear_has_error();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetColumnsResp::kStatusFieldNumber;
 const int GetColumnsResp::kColumnsFieldNumber;
 const int GetColumnsResp::kErrorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetColumnsResp::GetColumnsResp()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetColumnsResp.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetColumnsResp)
 }
+
+void GetColumnsResp::InitAsDefaultInstance() {
+  error_ = const_cast< ::exec::shared::DrillPBError*>(&::exec::shared::DrillPBError::default_instance());
+}
+
 GetColumnsResp::GetColumnsResp(const GetColumnsResp& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      columns_(from.columns_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_error()) {
-    error_ = new ::exec::shared::DrillPBError(*from.error_);
-  } else {
-    error_ = NULL;
-  }
-  status_ = from.status_;
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetColumnsResp)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetColumnsResp::SharedCtor() {
-  ::memset(&error_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&status_) -
-      reinterpret_cast<char*>(&error_)) + sizeof(status_));
+  _cached_size_ = 0;
+  status_ = 0;
+  error_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetColumnsResp::~GetColumnsResp() {
-  // @@protoc_insertion_point(destructor:exec.user.GetColumnsResp)
   SharedDtor();
 }
 
 void GetColumnsResp::SharedDtor() {
-  if (this != internal_default_instance()) delete error_;
+  if (this != default_instance_) {
+    delete error_;
+  }
 }
 
 void GetColumnsResp::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetColumnsResp::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetColumnsResp_descriptor_;
 }
 
 const GetColumnsResp& GetColumnsResp::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetColumnsResp.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetColumnsResp* GetColumnsResp::default_instance_ = NULL;
+
+GetColumnsResp* GetColumnsResp::New() const {
+  return new GetColumnsResp;
+}
 
 void GetColumnsResp::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetColumnsResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  columns_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(error_ != NULL);
-    error_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    status_ = 0;
+    if (has_error()) {
+      if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+    }
   }
-  status_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  columns_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetColumnsResp::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetColumnsResp)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.RequestStatus status = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -10364,498 +9246,443 @@
           if (::exec::user::RequestStatus_IsValid(value)) {
             set_status(static_cast< ::exec::user::RequestStatus >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_columns;
         break;
       }
 
       // repeated .exec.user.ColumnMetadata columns = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_columns:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_columns()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_columns;
+        if (input->ExpectTag(26)) goto parse_error;
         break;
       }
 
       // optional .exec.shared.DrillPBError error = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetColumnsResp)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetColumnsResp)
-  return false;
 #undef DO_
 }
 
 void GetColumnsResp::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetColumnsResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_status()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->status(), output);
   }
 
   // repeated .exec.user.ColumnMetadata columns = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->columns_size()); i < n; i++) {
+  for (int i = 0; i < this->columns_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2,
-      this->columns(static_cast<int>(i)),
-      output);
+      2, this->columns(i), output);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_error(), output);
+      3, this->error(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetColumnsResp)
 }
 
-::google::protobuf::uint8* GetColumnsResp::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetColumnsResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetColumnsResp::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_status()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->status(), target);
   }
 
   // repeated .exec.user.ColumnMetadata columns = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->columns_size()); i < n; i++) {
+  for (int i = 0; i < this->columns_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->columns(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->columns(i), target);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_error(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->error(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetColumnsResp)
   return target;
 }
 
-size_t GetColumnsResp::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetColumnsResp)
-  size_t total_size = 0;
+int GetColumnsResp::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.user.ColumnMetadata columns = 2;
-  {
-    unsigned int count = static_cast<unsigned int>(this->columns_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->columns(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 3u) {
-    // optional .exec.shared.DrillPBError error = 3;
-    if (has_error()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *error_);
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.RequestStatus status = 1;
     if (has_status()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
+    if (has_error()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->error());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.user.ColumnMetadata columns = 2;
+  total_size += 1 * this->columns_size();
+  for (int i = 0; i < this->columns_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->columns(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetColumnsResp::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetColumnsResp)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetColumnsResp* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetColumnsResp>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetColumnsResp*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetColumnsResp)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetColumnsResp)
     MergeFrom(*source);
   }
 }
 
 void GetColumnsResp::MergeFrom(const GetColumnsResp& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetColumnsResp)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   columns_.MergeFrom(from.columns_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_status()) {
+      set_status(from.status());
+    }
+    if (from.has_error()) {
       mutable_error()->::exec::shared::DrillPBError::MergeFrom(from.error());
     }
-    if (cached_has_bits & 0x00000002u) {
-      status_ = from.status_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetColumnsResp::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetColumnsResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetColumnsResp::CopyFrom(const GetColumnsResp& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetColumnsResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetColumnsResp::IsInitialized() const {
+
   return true;
 }
 
 void GetColumnsResp::Swap(GetColumnsResp* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetColumnsResp::InternalSwap(GetColumnsResp* other) {
-  using std::swap;
-  CastToBase(&columns_)->InternalSwap(CastToBase(&other->columns_));
-  swap(error_, other->error_);
-  swap(status_, other->status_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(status_, other->status_);
+    columns_.Swap(&other->columns_);
+    std::swap(error_, other->error_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetColumnsResp::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetColumnsResp_descriptor_;
+  metadata.reflection = GetColumnsResp_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void CreatePreparedStatementReq::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int CreatePreparedStatementReq::kSqlQueryFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 CreatePreparedStatementReq::CreatePreparedStatementReq()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_CreatePreparedStatementReq.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.CreatePreparedStatementReq)
 }
+
+void CreatePreparedStatementReq::InitAsDefaultInstance() {
+}
+
 CreatePreparedStatementReq::CreatePreparedStatementReq(const CreatePreparedStatementReq& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  sql_query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_sql_query()) {
-    sql_query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.sql_query_);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.CreatePreparedStatementReq)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void CreatePreparedStatementReq::SharedCtor() {
-  sql_query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  sql_query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 CreatePreparedStatementReq::~CreatePreparedStatementReq() {
-  // @@protoc_insertion_point(destructor:exec.user.CreatePreparedStatementReq)
   SharedDtor();
 }
 
 void CreatePreparedStatementReq::SharedDtor() {
-  sql_query_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (sql_query_ != &::google::protobuf::internal::kEmptyString) {
+    delete sql_query_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void CreatePreparedStatementReq::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* CreatePreparedStatementReq::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return CreatePreparedStatementReq_descriptor_;
 }
 
 const CreatePreparedStatementReq& CreatePreparedStatementReq::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_CreatePreparedStatementReq.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+CreatePreparedStatementReq* CreatePreparedStatementReq::default_instance_ = NULL;
+
+CreatePreparedStatementReq* CreatePreparedStatementReq::New() const {
+  return new CreatePreparedStatementReq;
+}
 
 void CreatePreparedStatementReq::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.CreatePreparedStatementReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    sql_query_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_sql_query()) {
+      if (sql_query_ != &::google::protobuf::internal::kEmptyString) {
+        sql_query_->clear();
+      }
+    }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool CreatePreparedStatementReq::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.CreatePreparedStatementReq)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string sql_query = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_sql_query()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->sql_query().data(), static_cast<int>(this->sql_query().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.CreatePreparedStatementReq.sql_query");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->sql_query().data(), this->sql_query().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.CreatePreparedStatementReq)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.CreatePreparedStatementReq)
-  return false;
 #undef DO_
 }
 
 void CreatePreparedStatementReq::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.CreatePreparedStatementReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string sql_query = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->sql_query().data(), static_cast<int>(this->sql_query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.CreatePreparedStatementReq.sql_query");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_sql_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->sql_query().data(), this->sql_query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->sql_query(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.CreatePreparedStatementReq)
 }
 
-::google::protobuf::uint8* CreatePreparedStatementReq::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.CreatePreparedStatementReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* CreatePreparedStatementReq::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string sql_query = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->sql_query().data(), static_cast<int>(this->sql_query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.CreatePreparedStatementReq.sql_query");
+  if (has_sql_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->sql_query().data(), this->sql_query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->sql_query(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.CreatePreparedStatementReq)
   return target;
 }
 
-size_t CreatePreparedStatementReq::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.CreatePreparedStatementReq)
-  size_t total_size = 0;
+int CreatePreparedStatementReq::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional string sql_query = 1;
+    if (has_sql_query()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->sql_query());
+    }
+
+  }
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // optional string sql_query = 1;
-  if (has_sql_query()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::StringSize(
-        this->sql_query());
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void CreatePreparedStatementReq::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.CreatePreparedStatementReq)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const CreatePreparedStatementReq* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const CreatePreparedStatementReq>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const CreatePreparedStatementReq*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.CreatePreparedStatementReq)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.CreatePreparedStatementReq)
     MergeFrom(*source);
   }
 }
 
 void CreatePreparedStatementReq::MergeFrom(const CreatePreparedStatementReq& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.CreatePreparedStatementReq)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  if (from.has_sql_query()) {
-    set_has_sql_query();
-    sql_query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.sql_query_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_sql_query()) {
+      set_sql_query(from.sql_query());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void CreatePreparedStatementReq::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.CreatePreparedStatementReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void CreatePreparedStatementReq::CopyFrom(const CreatePreparedStatementReq& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.CreatePreparedStatementReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool CreatePreparedStatementReq::IsInitialized() const {
+
   return true;
 }
 
 void CreatePreparedStatementReq::Swap(CreatePreparedStatementReq* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void CreatePreparedStatementReq::InternalSwap(CreatePreparedStatementReq* other) {
-  using std::swap;
-  sql_query_.Swap(&other->sql_query_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(sql_query_, other->sql_query_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata CreatePreparedStatementReq::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = CreatePreparedStatementReq_descriptor_;
+  metadata.reflection = CreatePreparedStatementReq_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void ResultColumnMetadata::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int ResultColumnMetadata::kCatalogNameFieldNumber;
 const int ResultColumnMetadata::kSchemaNameFieldNumber;
 const int ResultColumnMetadata::kTableNameFieldNumber;
@@ -10875,335 +9702,363 @@
 const int ResultColumnMetadata::kSortableFieldNumber;
 const int ResultColumnMetadata::kClassNameFieldNumber;
 const int ResultColumnMetadata::kIsCurrencyFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 ResultColumnMetadata::ResultColumnMetadata()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_ResultColumnMetadata.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.ResultColumnMetadata)
 }
+
+void ResultColumnMetadata::InitAsDefaultInstance() {
+}
+
 ResultColumnMetadata::ResultColumnMetadata(const ResultColumnMetadata& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_catalog_name()) {
-    catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
-  }
-  schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_schema_name()) {
-    schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_name_);
-  }
-  table_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_table_name()) {
-    table_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.table_name_);
-  }
-  column_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_column_name()) {
-    column_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.column_name_);
-  }
-  label_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_label()) {
-    label_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.label_);
-  }
-  data_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_data_type()) {
-    data_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.data_type_);
-  }
-  class_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_class_name()) {
-    class_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.class_name_);
-  }
-  ::memcpy(&precision_, &from.precision_,
-    static_cast<size_t>(reinterpret_cast<char*>(&is_currency_) -
-    reinterpret_cast<char*>(&precision_)) + sizeof(is_currency_));
-  // @@protoc_insertion_point(copy_constructor:exec.user.ResultColumnMetadata)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void ResultColumnMetadata::SharedCtor() {
-  catalog_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  table_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  column_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  label_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  data_type_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  class_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&precision_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&is_currency_) -
-      reinterpret_cast<char*>(&precision_)) + sizeof(is_currency_));
+  _cached_size_ = 0;
+  catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  table_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  column_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  label_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  data_type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  is_nullable_ = false;
+  precision_ = 0;
+  scale_ = 0;
+  signed__ = false;
+  display_size_ = 0;
+  is_aliased_ = false;
+  searchability_ = 0;
+  updatability_ = 0;
+  auto_increment_ = false;
+  case_sensitivity_ = false;
+  sortable_ = false;
+  class_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  is_currency_ = false;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 ResultColumnMetadata::~ResultColumnMetadata() {
-  // @@protoc_insertion_point(destructor:exec.user.ResultColumnMetadata)
   SharedDtor();
 }
 
 void ResultColumnMetadata::SharedDtor() {
-  catalog_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  table_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  column_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  label_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  data_type_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  class_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_name_;
+  }
+  if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete table_name_;
+  }
+  if (column_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete column_name_;
+  }
+  if (label_ != &::google::protobuf::internal::kEmptyString) {
+    delete label_;
+  }
+  if (data_type_ != &::google::protobuf::internal::kEmptyString) {
+    delete data_type_;
+  }
+  if (class_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete class_name_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void ResultColumnMetadata::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* ResultColumnMetadata::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return ResultColumnMetadata_descriptor_;
 }
 
 const ResultColumnMetadata& ResultColumnMetadata::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_ResultColumnMetadata.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+ResultColumnMetadata* ResultColumnMetadata::default_instance_ = NULL;
+
+ResultColumnMetadata* ResultColumnMetadata::New() const {
+  return new ResultColumnMetadata;
+}
 
 void ResultColumnMetadata::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.ResultColumnMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 127u) {
-    if (cached_has_bits & 0x00000001u) {
-      catalog_name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_catalog_name()) {
+      if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+        catalog_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      schema_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_schema_name()) {
+      if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+        schema_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      table_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_table_name()) {
+      if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+        table_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000008u) {
-      column_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_column_name()) {
+      if (column_name_ != &::google::protobuf::internal::kEmptyString) {
+        column_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000010u) {
-      label_.ClearNonDefaultToEmptyNoArena();
+    if (has_label()) {
+      if (label_ != &::google::protobuf::internal::kEmptyString) {
+        label_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000020u) {
-      data_type_.ClearNonDefaultToEmptyNoArena();
+    if (has_data_type()) {
+      if (data_type_ != &::google::protobuf::internal::kEmptyString) {
+        data_type_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000040u) {
-      class_name_.ClearNonDefaultToEmptyNoArena();
-    }
+    is_nullable_ = false;
+    precision_ = 0;
   }
-  precision_ = 0;
-  if (cached_has_bits & 65280u) {
-    ::memset(&scale_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&updatability_) -
-        reinterpret_cast<char*>(&scale_)) + sizeof(updatability_));
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    scale_ = 0;
+    signed__ = false;
+    display_size_ = 0;
+    is_aliased_ = false;
+    searchability_ = 0;
+    updatability_ = 0;
+    auto_increment_ = false;
+    case_sensitivity_ = false;
   }
-  if (cached_has_bits & 458752u) {
-    ::memset(&case_sensitivity_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&is_currency_) -
-        reinterpret_cast<char*>(&case_sensitivity_)) + sizeof(is_currency_));
+  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
+    sortable_ = false;
+    if (has_class_name()) {
+      if (class_name_ != &::google::protobuf::internal::kEmptyString) {
+        class_name_->clear();
+      }
+    }
+    is_currency_ = false;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool ResultColumnMetadata::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.ResultColumnMetadata)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(16383u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string catalog_name = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_catalog_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ResultColumnMetadata.catalog_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->catalog_name().data(), this->catalog_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_schema_name;
         break;
       }
 
       // optional string schema_name = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_schema_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_schema_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ResultColumnMetadata.schema_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->schema_name().data(), this->schema_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_table_name;
         break;
       }
 
       // optional string table_name = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_table_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_table_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->table_name().data(), static_cast<int>(this->table_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ResultColumnMetadata.table_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->table_name().data(), this->table_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_column_name;
         break;
       }
 
       // optional string column_name = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_column_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_column_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->column_name().data(), static_cast<int>(this->column_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ResultColumnMetadata.column_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->column_name().data(), this->column_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(42)) goto parse_label;
         break;
       }
 
       // optional string label = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_label:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_label()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->label().data(), static_cast<int>(this->label().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ResultColumnMetadata.label");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->label().data(), this->label().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_data_type;
         break;
       }
 
       // optional string data_type = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_data_type:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_data_type()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->data_type().data(), static_cast<int>(this->data_type().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ResultColumnMetadata.data_type");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->data_type().data(), this->data_type().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_is_nullable;
         break;
       }
 
       // optional bool is_nullable = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_is_nullable();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_is_nullable:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &is_nullable_)));
+          set_has_is_nullable();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(64)) goto parse_precision;
         break;
       }
 
       // optional int32 precision = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(64u /* 64 & 0xFF */)) {
-          set_has_precision();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_precision:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &precision_)));
+          set_has_precision();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(72)) goto parse_scale;
         break;
       }
 
       // optional int32 scale = 9;
       case 9: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(72u /* 72 & 0xFF */)) {
-          set_has_scale();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_scale:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &scale_)));
+          set_has_scale();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(80)) goto parse_signed;
         break;
       }
 
       // optional bool signed = 10;
       case 10: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(80u /* 80 & 0xFF */)) {
-          set_has_signed_();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_signed:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &signed__)));
+          set_has_signed_();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(88)) goto parse_display_size;
         break;
       }
 
       // optional int32 display_size = 11;
       case 11: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(88u /* 88 & 0xFF */)) {
-          set_has_display_size();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_display_size:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &display_size_)));
+          set_has_display_size();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(96)) goto parse_is_aliased;
         break;
       }
 
       // optional bool is_aliased = 12;
       case 12: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(96u /* 96 & 0xFF */)) {
-          set_has_is_aliased();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_is_aliased:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &is_aliased_)));
+          set_has_is_aliased();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(104)) goto parse_searchability;
         break;
       }
 
       // optional .exec.user.ColumnSearchability searchability = 13;
       case 13: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(104u /* 104 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_searchability:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -11211,19 +10066,20 @@
           if (::exec::user::ColumnSearchability_IsValid(value)) {
             set_searchability(static_cast< ::exec::user::ColumnSearchability >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                13, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(13, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(112)) goto parse_updatability;
         break;
       }
 
       // optional .exec.user.ColumnUpdatability updatability = 14;
       case 14: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(112u /* 112 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_updatability:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -11231,418 +10087,390 @@
           if (::exec::user::ColumnUpdatability_IsValid(value)) {
             set_updatability(static_cast< ::exec::user::ColumnUpdatability >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                14, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(14, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(120)) goto parse_auto_increment;
         break;
       }
 
       // optional bool auto_increment = 15;
       case 15: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(120u /* 120 & 0xFF */)) {
-          set_has_auto_increment();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_auto_increment:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &auto_increment_)));
+          set_has_auto_increment();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(128)) goto parse_case_sensitivity;
         break;
       }
 
       // optional bool case_sensitivity = 16;
       case 16: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(128u /* 128 & 0xFF */)) {
-          set_has_case_sensitivity();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_case_sensitivity:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &case_sensitivity_)));
+          set_has_case_sensitivity();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(136)) goto parse_sortable;
         break;
       }
 
       // optional bool sortable = 17;
       case 17: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(136u /* 136 & 0xFF */)) {
-          set_has_sortable();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_sortable:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &sortable_)));
+          set_has_sortable();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(146)) goto parse_class_name;
         break;
       }
 
       // optional string class_name = 18;
       case 18: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(146u /* 146 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_class_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_class_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->class_name().data(), static_cast<int>(this->class_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ResultColumnMetadata.class_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->class_name().data(), this->class_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(160)) goto parse_is_currency;
         break;
       }
 
       // optional bool is_currency = 20;
       case 20: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(160u /* 160 & 0xFF */)) {
-          set_has_is_currency();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_is_currency:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &is_currency_)));
+          set_has_is_currency();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.ResultColumnMetadata)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.ResultColumnMetadata)
-  return false;
 #undef DO_
 }
 
 void ResultColumnMetadata::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.ResultColumnMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.catalog_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->catalog_name(), output);
   }
 
   // optional string schema_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.schema_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_name().data(), this->schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->schema_name(), output);
   }
 
   // optional string table_name = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_name().data(), static_cast<int>(this->table_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.table_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_table_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->table_name().data(), this->table_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       3, this->table_name(), output);
   }
 
   // optional string column_name = 4;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->column_name().data(), static_cast<int>(this->column_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.column_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_column_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->column_name().data(), this->column_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->column_name(), output);
   }
 
   // optional string label = 5;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->label().data(), static_cast<int>(this->label().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.label");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_label()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->label().data(), this->label().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       5, this->label(), output);
   }
 
   // optional string data_type = 6;
-  if (cached_has_bits & 0x00000020u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->data_type().data(), static_cast<int>(this->data_type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.data_type");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_data_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->data_type().data(), this->data_type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       6, this->data_type(), output);
   }
 
   // optional bool is_nullable = 7;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_is_nullable()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(7, this->is_nullable(), output);
   }
 
   // optional int32 precision = 8;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_precision()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(8, this->precision(), output);
   }
 
   // optional int32 scale = 9;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_scale()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(9, this->scale(), output);
   }
 
   // optional bool signed = 10;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_signed_()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(10, this->signed_(), output);
   }
 
   // optional int32 display_size = 11;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_display_size()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(11, this->display_size(), output);
   }
 
   // optional bool is_aliased = 12;
-  if (cached_has_bits & 0x00001000u) {
+  if (has_is_aliased()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(12, this->is_aliased(), output);
   }
 
   // optional .exec.user.ColumnSearchability searchability = 13;
-  if (cached_has_bits & 0x00004000u) {
+  if (has_searchability()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       13, this->searchability(), output);
   }
 
   // optional .exec.user.ColumnUpdatability updatability = 14;
-  if (cached_has_bits & 0x00008000u) {
+  if (has_updatability()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       14, this->updatability(), output);
   }
 
   // optional bool auto_increment = 15;
-  if (cached_has_bits & 0x00002000u) {
+  if (has_auto_increment()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(15, this->auto_increment(), output);
   }
 
   // optional bool case_sensitivity = 16;
-  if (cached_has_bits & 0x00010000u) {
+  if (has_case_sensitivity()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(16, this->case_sensitivity(), output);
   }
 
   // optional bool sortable = 17;
-  if (cached_has_bits & 0x00020000u) {
+  if (has_sortable()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(17, this->sortable(), output);
   }
 
   // optional string class_name = 18;
-  if (cached_has_bits & 0x00000040u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->class_name().data(), static_cast<int>(this->class_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.class_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_class_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->class_name().data(), this->class_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       18, this->class_name(), output);
   }
 
   // optional bool is_currency = 20;
-  if (cached_has_bits & 0x00040000u) {
+  if (has_is_currency()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(20, this->is_currency(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.ResultColumnMetadata)
 }
 
-::google::protobuf::uint8* ResultColumnMetadata::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.ResultColumnMetadata)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* ResultColumnMetadata::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string catalog_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_name().data(), static_cast<int>(this->catalog_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.catalog_name");
+  if (has_catalog_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_name().data(), this->catalog_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->catalog_name(), target);
   }
 
   // optional string schema_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_name().data(), static_cast<int>(this->schema_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.schema_name");
+  if (has_schema_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_name().data(), this->schema_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->schema_name(), target);
   }
 
   // optional string table_name = 3;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_name().data(), static_cast<int>(this->table_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.table_name");
+  if (has_table_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->table_name().data(), this->table_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         3, this->table_name(), target);
   }
 
   // optional string column_name = 4;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->column_name().data(), static_cast<int>(this->column_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.column_name");
+  if (has_column_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->column_name().data(), this->column_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->column_name(), target);
   }
 
   // optional string label = 5;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->label().data(), static_cast<int>(this->label().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.label");
+  if (has_label()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->label().data(), this->label().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         5, this->label(), target);
   }
 
   // optional string data_type = 6;
-  if (cached_has_bits & 0x00000020u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->data_type().data(), static_cast<int>(this->data_type().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.data_type");
+  if (has_data_type()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->data_type().data(), this->data_type().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         6, this->data_type(), target);
   }
 
   // optional bool is_nullable = 7;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_is_nullable()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(7, this->is_nullable(), target);
   }
 
   // optional int32 precision = 8;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_precision()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(8, this->precision(), target);
   }
 
   // optional int32 scale = 9;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_scale()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(9, this->scale(), target);
   }
 
   // optional bool signed = 10;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_signed_()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(10, this->signed_(), target);
   }
 
   // optional int32 display_size = 11;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_display_size()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(11, this->display_size(), target);
   }
 
   // optional bool is_aliased = 12;
-  if (cached_has_bits & 0x00001000u) {
+  if (has_is_aliased()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(12, this->is_aliased(), target);
   }
 
   // optional .exec.user.ColumnSearchability searchability = 13;
-  if (cached_has_bits & 0x00004000u) {
+  if (has_searchability()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       13, this->searchability(), target);
   }
 
   // optional .exec.user.ColumnUpdatability updatability = 14;
-  if (cached_has_bits & 0x00008000u) {
+  if (has_updatability()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       14, this->updatability(), target);
   }
 
   // optional bool auto_increment = 15;
-  if (cached_has_bits & 0x00002000u) {
+  if (has_auto_increment()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(15, this->auto_increment(), target);
   }
 
   // optional bool case_sensitivity = 16;
-  if (cached_has_bits & 0x00010000u) {
+  if (has_case_sensitivity()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(16, this->case_sensitivity(), target);
   }
 
   // optional bool sortable = 17;
-  if (cached_has_bits & 0x00020000u) {
+  if (has_sortable()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(17, this->sortable(), target);
   }
 
   // optional string class_name = 18;
-  if (cached_has_bits & 0x00000040u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->class_name().data(), static_cast<int>(this->class_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ResultColumnMetadata.class_name");
+  if (has_class_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->class_name().data(), this->class_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         18, this->class_name(), target);
   }
 
   // optional bool is_currency = 20;
-  if (cached_has_bits & 0x00040000u) {
+  if (has_is_currency()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(20, this->is_currency(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.ResultColumnMetadata)
   return target;
 }
 
-size_t ResultColumnMetadata::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.ResultColumnMetadata)
-  size_t total_size = 0;
+int ResultColumnMetadata::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 255u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string catalog_name = 1;
     if (has_catalog_name()) {
       total_size += 1 +
@@ -11685,11 +10513,9 @@
           this->data_type());
     }
 
-    // optional string class_name = 18;
-    if (has_class_name()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->class_name());
+    // optional bool is_nullable = 7;
+    if (has_is_nullable()) {
+      total_size += 1 + 1;
     }
 
     // optional int32 precision = 8;
@@ -11700,7 +10526,7 @@
     }
 
   }
-  if (_has_bits_[8 / 32] & 65280u) {
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
     // optional int32 scale = 9;
     if (has_scale()) {
       total_size += 1 +
@@ -11708,6 +10534,11 @@
           this->scale());
     }
 
+    // optional bool signed = 10;
+    if (has_signed_()) {
+      total_size += 1 + 1;
+    }
+
     // optional int32 display_size = 11;
     if (has_display_size()) {
       total_size += 1 +
@@ -11715,26 +10546,11 @@
           this->display_size());
     }
 
-    // optional bool is_nullable = 7;
-    if (has_is_nullable()) {
-      total_size += 1 + 1;
-    }
-
-    // optional bool signed = 10;
-    if (has_signed_()) {
-      total_size += 1 + 1;
-    }
-
     // optional bool is_aliased = 12;
     if (has_is_aliased()) {
       total_size += 1 + 1;
     }
 
-    // optional bool auto_increment = 15;
-    if (has_auto_increment()) {
-      total_size += 1 + 1;
-    }
-
     // optional .exec.user.ColumnSearchability searchability = 13;
     if (has_searchability()) {
       total_size += 1 +
@@ -11747,820 +10563,738 @@
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->updatability());
     }
 
-  }
-  if (_has_bits_[16 / 32] & 458752u) {
+    // optional bool auto_increment = 15;
+    if (has_auto_increment()) {
+      total_size += 1 + 1;
+    }
+
     // optional bool case_sensitivity = 16;
     if (has_case_sensitivity()) {
       total_size += 2 + 1;
     }
 
+  }
+  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
     // optional bool sortable = 17;
     if (has_sortable()) {
       total_size += 2 + 1;
     }
 
+    // optional string class_name = 18;
+    if (has_class_name()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->class_name());
+    }
+
     // optional bool is_currency = 20;
     if (has_is_currency()) {
       total_size += 2 + 1;
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void ResultColumnMetadata::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.ResultColumnMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const ResultColumnMetadata* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const ResultColumnMetadata>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const ResultColumnMetadata*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.ResultColumnMetadata)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.ResultColumnMetadata)
     MergeFrom(*source);
   }
 }
 
 void ResultColumnMetadata::MergeFrom(const ResultColumnMetadata& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.ResultColumnMetadata)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_catalog_name();
-      catalog_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_catalog_name()) {
+      set_catalog_name(from.catalog_name());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_schema_name();
-      schema_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_name_);
+    if (from.has_schema_name()) {
+      set_schema_name(from.schema_name());
     }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_table_name();
-      table_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.table_name_);
+    if (from.has_table_name()) {
+      set_table_name(from.table_name());
     }
-    if (cached_has_bits & 0x00000008u) {
-      set_has_column_name();
-      column_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.column_name_);
+    if (from.has_column_name()) {
+      set_column_name(from.column_name());
     }
-    if (cached_has_bits & 0x00000010u) {
-      set_has_label();
-      label_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.label_);
+    if (from.has_label()) {
+      set_label(from.label());
     }
-    if (cached_has_bits & 0x00000020u) {
-      set_has_data_type();
-      data_type_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.data_type_);
+    if (from.has_data_type()) {
+      set_data_type(from.data_type());
     }
-    if (cached_has_bits & 0x00000040u) {
-      set_has_class_name();
-      class_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.class_name_);
+    if (from.has_is_nullable()) {
+      set_is_nullable(from.is_nullable());
     }
-    if (cached_has_bits & 0x00000080u) {
-      precision_ = from.precision_;
+    if (from.has_precision()) {
+      set_precision(from.precision());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 65280u) {
-    if (cached_has_bits & 0x00000100u) {
-      scale_ = from.scale_;
+  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (from.has_scale()) {
+      set_scale(from.scale());
     }
-    if (cached_has_bits & 0x00000200u) {
-      display_size_ = from.display_size_;
+    if (from.has_signed_()) {
+      set_signed_(from.signed_());
     }
-    if (cached_has_bits & 0x00000400u) {
-      is_nullable_ = from.is_nullable_;
+    if (from.has_display_size()) {
+      set_display_size(from.display_size());
     }
-    if (cached_has_bits & 0x00000800u) {
-      signed__ = from.signed__;
+    if (from.has_is_aliased()) {
+      set_is_aliased(from.is_aliased());
     }
-    if (cached_has_bits & 0x00001000u) {
-      is_aliased_ = from.is_aliased_;
+    if (from.has_searchability()) {
+      set_searchability(from.searchability());
     }
-    if (cached_has_bits & 0x00002000u) {
-      auto_increment_ = from.auto_increment_;
+    if (from.has_updatability()) {
+      set_updatability(from.updatability());
     }
-    if (cached_has_bits & 0x00004000u) {
-      searchability_ = from.searchability_;
+    if (from.has_auto_increment()) {
+      set_auto_increment(from.auto_increment());
     }
-    if (cached_has_bits & 0x00008000u) {
-      updatability_ = from.updatability_;
+    if (from.has_case_sensitivity()) {
+      set_case_sensitivity(from.case_sensitivity());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 458752u) {
-    if (cached_has_bits & 0x00010000u) {
-      case_sensitivity_ = from.case_sensitivity_;
+  if (from._has_bits_[16 / 32] & (0xffu << (16 % 32))) {
+    if (from.has_sortable()) {
+      set_sortable(from.sortable());
     }
-    if (cached_has_bits & 0x00020000u) {
-      sortable_ = from.sortable_;
+    if (from.has_class_name()) {
+      set_class_name(from.class_name());
     }
-    if (cached_has_bits & 0x00040000u) {
-      is_currency_ = from.is_currency_;
+    if (from.has_is_currency()) {
+      set_is_currency(from.is_currency());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void ResultColumnMetadata::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.ResultColumnMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void ResultColumnMetadata::CopyFrom(const ResultColumnMetadata& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.ResultColumnMetadata)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool ResultColumnMetadata::IsInitialized() const {
+
   return true;
 }
 
 void ResultColumnMetadata::Swap(ResultColumnMetadata* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void ResultColumnMetadata::InternalSwap(ResultColumnMetadata* other) {
-  using std::swap;
-  catalog_name_.Swap(&other->catalog_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  schema_name_.Swap(&other->schema_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  table_name_.Swap(&other->table_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  column_name_.Swap(&other->column_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  label_.Swap(&other->label_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  data_type_.Swap(&other->data_type_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  class_name_.Swap(&other->class_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(precision_, other->precision_);
-  swap(scale_, other->scale_);
-  swap(display_size_, other->display_size_);
-  swap(is_nullable_, other->is_nullable_);
-  swap(signed__, other->signed__);
-  swap(is_aliased_, other->is_aliased_);
-  swap(auto_increment_, other->auto_increment_);
-  swap(searchability_, other->searchability_);
-  swap(updatability_, other->updatability_);
-  swap(case_sensitivity_, other->case_sensitivity_);
-  swap(sortable_, other->sortable_);
-  swap(is_currency_, other->is_currency_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(catalog_name_, other->catalog_name_);
+    std::swap(schema_name_, other->schema_name_);
+    std::swap(table_name_, other->table_name_);
+    std::swap(column_name_, other->column_name_);
+    std::swap(label_, other->label_);
+    std::swap(data_type_, other->data_type_);
+    std::swap(is_nullable_, other->is_nullable_);
+    std::swap(precision_, other->precision_);
+    std::swap(scale_, other->scale_);
+    std::swap(signed__, other->signed__);
+    std::swap(display_size_, other->display_size_);
+    std::swap(is_aliased_, other->is_aliased_);
+    std::swap(searchability_, other->searchability_);
+    std::swap(updatability_, other->updatability_);
+    std::swap(auto_increment_, other->auto_increment_);
+    std::swap(case_sensitivity_, other->case_sensitivity_);
+    std::swap(sortable_, other->sortable_);
+    std::swap(class_name_, other->class_name_);
+    std::swap(is_currency_, other->is_currency_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata ResultColumnMetadata::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = ResultColumnMetadata_descriptor_;
+  metadata.reflection = ResultColumnMetadata_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void PreparedStatementHandle::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int PreparedStatementHandle::kServerInfoFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 PreparedStatementHandle::PreparedStatementHandle()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_PreparedStatementHandle.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.PreparedStatementHandle)
 }
+
+void PreparedStatementHandle::InitAsDefaultInstance() {
+}
+
 PreparedStatementHandle::PreparedStatementHandle(const PreparedStatementHandle& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  server_info_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_server_info()) {
-    server_info_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.server_info_);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.PreparedStatementHandle)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void PreparedStatementHandle::SharedCtor() {
-  server_info_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  server_info_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 PreparedStatementHandle::~PreparedStatementHandle() {
-  // @@protoc_insertion_point(destructor:exec.user.PreparedStatementHandle)
   SharedDtor();
 }
 
 void PreparedStatementHandle::SharedDtor() {
-  server_info_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (server_info_ != &::google::protobuf::internal::kEmptyString) {
+    delete server_info_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void PreparedStatementHandle::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* PreparedStatementHandle::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return PreparedStatementHandle_descriptor_;
 }
 
 const PreparedStatementHandle& PreparedStatementHandle::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_PreparedStatementHandle.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+PreparedStatementHandle* PreparedStatementHandle::default_instance_ = NULL;
+
+PreparedStatementHandle* PreparedStatementHandle::New() const {
+  return new PreparedStatementHandle;
+}
 
 void PreparedStatementHandle::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.PreparedStatementHandle)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    server_info_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_server_info()) {
+      if (server_info_ != &::google::protobuf::internal::kEmptyString) {
+        server_info_->clear();
+      }
+    }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool PreparedStatementHandle::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.PreparedStatementHandle)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional bytes server_info = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                 input, this->mutable_server_info()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.PreparedStatementHandle)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.PreparedStatementHandle)
-  return false;
 #undef DO_
 }
 
 void PreparedStatementHandle::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.PreparedStatementHandle)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional bytes server_info = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
+  if (has_server_info()) {
+    ::google::protobuf::internal::WireFormatLite::WriteBytes(
       1, this->server_info(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.PreparedStatementHandle)
 }
 
-::google::protobuf::uint8* PreparedStatementHandle::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.PreparedStatementHandle)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* PreparedStatementHandle::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional bytes server_info = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_server_info()) {
     target =
       ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
         1, this->server_info(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.PreparedStatementHandle)
   return target;
 }
 
-size_t PreparedStatementHandle::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.PreparedStatementHandle)
-  size_t total_size = 0;
+int PreparedStatementHandle::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional bytes server_info = 1;
+    if (has_server_info()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::BytesSize(
+          this->server_info());
+    }
+
+  }
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // optional bytes server_info = 1;
-  if (has_server_info()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::BytesSize(
-        this->server_info());
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void PreparedStatementHandle::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.PreparedStatementHandle)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const PreparedStatementHandle* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const PreparedStatementHandle>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const PreparedStatementHandle*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.PreparedStatementHandle)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.PreparedStatementHandle)
     MergeFrom(*source);
   }
 }
 
 void PreparedStatementHandle::MergeFrom(const PreparedStatementHandle& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.PreparedStatementHandle)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  if (from.has_server_info()) {
-    set_has_server_info();
-    server_info_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.server_info_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_server_info()) {
+      set_server_info(from.server_info());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void PreparedStatementHandle::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.PreparedStatementHandle)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void PreparedStatementHandle::CopyFrom(const PreparedStatementHandle& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.PreparedStatementHandle)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool PreparedStatementHandle::IsInitialized() const {
+
   return true;
 }
 
 void PreparedStatementHandle::Swap(PreparedStatementHandle* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void PreparedStatementHandle::InternalSwap(PreparedStatementHandle* other) {
-  using std::swap;
-  server_info_.Swap(&other->server_info_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(server_info_, other->server_info_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata PreparedStatementHandle::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = PreparedStatementHandle_descriptor_;
+  metadata.reflection = PreparedStatementHandle_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void PreparedStatement::InitAsDefaultInstance() {
-  ::exec::user::_PreparedStatement_default_instance_._instance.get_mutable()->server_handle_ = const_cast< ::exec::user::PreparedStatementHandle*>(
-      ::exec::user::PreparedStatementHandle::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int PreparedStatement::kColumnsFieldNumber;
 const int PreparedStatement::kServerHandleFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 PreparedStatement::PreparedStatement()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_PreparedStatement.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.PreparedStatement)
 }
+
+void PreparedStatement::InitAsDefaultInstance() {
+  server_handle_ = const_cast< ::exec::user::PreparedStatementHandle*>(&::exec::user::PreparedStatementHandle::default_instance());
+}
+
 PreparedStatement::PreparedStatement(const PreparedStatement& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      columns_(from.columns_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_server_handle()) {
-    server_handle_ = new ::exec::user::PreparedStatementHandle(*from.server_handle_);
-  } else {
-    server_handle_ = NULL;
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.user.PreparedStatement)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void PreparedStatement::SharedCtor() {
+  _cached_size_ = 0;
   server_handle_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 PreparedStatement::~PreparedStatement() {
-  // @@protoc_insertion_point(destructor:exec.user.PreparedStatement)
   SharedDtor();
 }
 
 void PreparedStatement::SharedDtor() {
-  if (this != internal_default_instance()) delete server_handle_;
+  if (this != default_instance_) {
+    delete server_handle_;
+  }
 }
 
 void PreparedStatement::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* PreparedStatement::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return PreparedStatement_descriptor_;
 }
 
 const PreparedStatement& PreparedStatement::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_PreparedStatement.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+PreparedStatement* PreparedStatement::default_instance_ = NULL;
+
+PreparedStatement* PreparedStatement::New() const {
+  return new PreparedStatement;
+}
 
 void PreparedStatement::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.PreparedStatement)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  columns_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(server_handle_ != NULL);
-    server_handle_->Clear();
+  if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) {
+    if (has_server_handle()) {
+      if (server_handle_ != NULL) server_handle_->::exec::user::PreparedStatementHandle::Clear();
+    }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  columns_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool PreparedStatement::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.PreparedStatement)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // repeated .exec.user.ResultColumnMetadata columns = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_columns:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_columns()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(10)) goto parse_columns;
+        if (input->ExpectTag(18)) goto parse_server_handle;
         break;
       }
 
       // optional .exec.user.PreparedStatementHandle server_handle = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_server_handle:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_server_handle()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.PreparedStatement)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.PreparedStatement)
-  return false;
 #undef DO_
 }
 
 void PreparedStatement::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.PreparedStatement)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
   // repeated .exec.user.ResultColumnMetadata columns = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->columns_size()); i < n; i++) {
+  for (int i = 0; i < this->columns_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1,
-      this->columns(static_cast<int>(i)),
-      output);
-  }
-
-  cached_has_bits = _has_bits_[0];
-  // optional .exec.user.PreparedStatementHandle server_handle = 2;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_server_handle(), output);
-  }
-
-  if (_internal_metadata_.have_unknown_fields()) {
-    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
-  }
-  // @@protoc_insertion_point(serialize_end:exec.user.PreparedStatement)
-}
-
-::google::protobuf::uint8* PreparedStatement::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.PreparedStatement)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  // repeated .exec.user.ResultColumnMetadata columns = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->columns_size()); i < n; i++) {
-    target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->columns(static_cast<int>(i)), deterministic, target);
-  }
-
-  cached_has_bits = _has_bits_[0];
-  // optional .exec.user.PreparedStatementHandle server_handle = 2;
-  if (cached_has_bits & 0x00000001u) {
-    target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_server_handle(), deterministic, target);
-  }
-
-  if (_internal_metadata_.have_unknown_fields()) {
-    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
-  }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.PreparedStatement)
-  return target;
-}
-
-size_t PreparedStatement::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.PreparedStatement)
-  size_t total_size = 0;
-
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.user.ResultColumnMetadata columns = 1;
-  {
-    unsigned int count = static_cast<unsigned int>(this->columns_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->columns(static_cast<int>(i)));
-    }
+      1, this->columns(i), output);
   }
 
   // optional .exec.user.PreparedStatementHandle server_handle = 2;
   if (has_server_handle()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::MessageSize(
-        *server_handle_);
+    ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
+      2, this->server_handle(), output);
   }
 
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
+        unknown_fields(), output);
+  }
+}
+
+::google::protobuf::uint8* PreparedStatement::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
+  // repeated .exec.user.ResultColumnMetadata columns = 1;
+  for (int i = 0; i < this->columns_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::
+      WriteMessageNoVirtualToArray(
+        1, this->columns(i), target);
+  }
+
+  // optional .exec.user.PreparedStatementHandle server_handle = 2;
+  if (has_server_handle()) {
+    target = ::google::protobuf::internal::WireFormatLite::
+      WriteMessageNoVirtualToArray(
+        2, this->server_handle(), target);
+  }
+
+  if (!unknown_fields().empty()) {
+    target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
+        unknown_fields(), target);
+  }
+  return target;
+}
+
+int PreparedStatement::ByteSize() const {
+  int total_size = 0;
+
+  if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) {
+    // optional .exec.user.PreparedStatementHandle server_handle = 2;
+    if (has_server_handle()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->server_handle());
+    }
+
+  }
+  // repeated .exec.user.ResultColumnMetadata columns = 1;
+  total_size += 1 * this->columns_size();
+  for (int i = 0; i < this->columns_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->columns(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void PreparedStatement::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.PreparedStatement)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const PreparedStatement* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const PreparedStatement>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const PreparedStatement*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.PreparedStatement)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.PreparedStatement)
     MergeFrom(*source);
   }
 }
 
 void PreparedStatement::MergeFrom(const PreparedStatement& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.PreparedStatement)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   columns_.MergeFrom(from.columns_);
-  if (from.has_server_handle()) {
-    mutable_server_handle()->::exec::user::PreparedStatementHandle::MergeFrom(from.server_handle());
+  if (from._has_bits_[1 / 32] & (0xffu << (1 % 32))) {
+    if (from.has_server_handle()) {
+      mutable_server_handle()->::exec::user::PreparedStatementHandle::MergeFrom(from.server_handle());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void PreparedStatement::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.PreparedStatement)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void PreparedStatement::CopyFrom(const PreparedStatement& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.PreparedStatement)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool PreparedStatement::IsInitialized() const {
+
   return true;
 }
 
 void PreparedStatement::Swap(PreparedStatement* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void PreparedStatement::InternalSwap(PreparedStatement* other) {
-  using std::swap;
-  CastToBase(&columns_)->InternalSwap(CastToBase(&other->columns_));
-  swap(server_handle_, other->server_handle_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    columns_.Swap(&other->columns_);
+    std::swap(server_handle_, other->server_handle_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata PreparedStatement::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = PreparedStatement_descriptor_;
+  metadata.reflection = PreparedStatement_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void CreatePreparedStatementResp::InitAsDefaultInstance() {
-  ::exec::user::_CreatePreparedStatementResp_default_instance_._instance.get_mutable()->prepared_statement_ = const_cast< ::exec::user::PreparedStatement*>(
-      ::exec::user::PreparedStatement::internal_default_instance());
-  ::exec::user::_CreatePreparedStatementResp_default_instance_._instance.get_mutable()->error_ = const_cast< ::exec::shared::DrillPBError*>(
-      ::exec::shared::DrillPBError::internal_default_instance());
-}
-void CreatePreparedStatementResp::clear_error() {
-  if (error_ != NULL) error_->Clear();
-  clear_has_error();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int CreatePreparedStatementResp::kStatusFieldNumber;
 const int CreatePreparedStatementResp::kPreparedStatementFieldNumber;
 const int CreatePreparedStatementResp::kErrorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 CreatePreparedStatementResp::CreatePreparedStatementResp()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_CreatePreparedStatementResp.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.CreatePreparedStatementResp)
 }
+
+void CreatePreparedStatementResp::InitAsDefaultInstance() {
+  prepared_statement_ = const_cast< ::exec::user::PreparedStatement*>(&::exec::user::PreparedStatement::default_instance());
+  error_ = const_cast< ::exec::shared::DrillPBError*>(&::exec::shared::DrillPBError::default_instance());
+}
+
 CreatePreparedStatementResp::CreatePreparedStatementResp(const CreatePreparedStatementResp& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_prepared_statement()) {
-    prepared_statement_ = new ::exec::user::PreparedStatement(*from.prepared_statement_);
-  } else {
-    prepared_statement_ = NULL;
-  }
-  if (from.has_error()) {
-    error_ = new ::exec::shared::DrillPBError(*from.error_);
-  } else {
-    error_ = NULL;
-  }
-  status_ = from.status_;
-  // @@protoc_insertion_point(copy_constructor:exec.user.CreatePreparedStatementResp)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void CreatePreparedStatementResp::SharedCtor() {
-  ::memset(&prepared_statement_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&status_) -
-      reinterpret_cast<char*>(&prepared_statement_)) + sizeof(status_));
+  _cached_size_ = 0;
+  status_ = 0;
+  prepared_statement_ = NULL;
+  error_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 CreatePreparedStatementResp::~CreatePreparedStatementResp() {
-  // @@protoc_insertion_point(destructor:exec.user.CreatePreparedStatementResp)
   SharedDtor();
 }
 
 void CreatePreparedStatementResp::SharedDtor() {
-  if (this != internal_default_instance()) delete prepared_statement_;
-  if (this != internal_default_instance()) delete error_;
+  if (this != default_instance_) {
+    delete prepared_statement_;
+    delete error_;
+  }
 }
 
 void CreatePreparedStatementResp::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* CreatePreparedStatementResp::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return CreatePreparedStatementResp_descriptor_;
 }
 
 const CreatePreparedStatementResp& CreatePreparedStatementResp::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_CreatePreparedStatementResp.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+CreatePreparedStatementResp* CreatePreparedStatementResp::default_instance_ = NULL;
+
+CreatePreparedStatementResp* CreatePreparedStatementResp::New() const {
+  return new CreatePreparedStatementResp;
+}
 
 void CreatePreparedStatementResp::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.CreatePreparedStatementResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(prepared_statement_ != NULL);
-      prepared_statement_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    status_ = 0;
+    if (has_prepared_statement()) {
+      if (prepared_statement_ != NULL) prepared_statement_->::exec::user::PreparedStatement::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(error_ != NULL);
-      error_->Clear();
+    if (has_error()) {
+      if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
     }
   }
-  status_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool CreatePreparedStatementResp::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.CreatePreparedStatementResp)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.RequestStatus status = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -12568,504 +11302,448 @@
           if (::exec::user::RequestStatus_IsValid(value)) {
             set_status(static_cast< ::exec::user::RequestStatus >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_prepared_statement;
         break;
       }
 
       // optional .exec.user.PreparedStatement prepared_statement = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_prepared_statement:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_prepared_statement()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_error;
         break;
       }
 
       // optional .exec.shared.DrillPBError error = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.CreatePreparedStatementResp)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.CreatePreparedStatementResp)
-  return false;
 #undef DO_
 }
 
 void CreatePreparedStatementResp::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.CreatePreparedStatementResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_status()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->status(), output);
   }
 
   // optional .exec.user.PreparedStatement prepared_statement = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_prepared_statement()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_prepared_statement(), output);
+      2, this->prepared_statement(), output);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_error()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_error(), output);
+      3, this->error(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.CreatePreparedStatementResp)
 }
 
-::google::protobuf::uint8* CreatePreparedStatementResp::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.CreatePreparedStatementResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* CreatePreparedStatementResp::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_status()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->status(), target);
   }
 
   // optional .exec.user.PreparedStatement prepared_statement = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_prepared_statement()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_prepared_statement(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->prepared_statement(), target);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_error()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_error(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->error(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.CreatePreparedStatementResp)
   return target;
 }
 
-size_t CreatePreparedStatementResp::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.CreatePreparedStatementResp)
-  size_t total_size = 0;
+int CreatePreparedStatementResp::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
-    // optional .exec.user.PreparedStatement prepared_statement = 2;
-    if (has_prepared_statement()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *prepared_statement_);
-    }
-
-    // optional .exec.shared.DrillPBError error = 3;
-    if (has_error()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *error_);
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.RequestStatus status = 1;
     if (has_status()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
     }
 
+    // optional .exec.user.PreparedStatement prepared_statement = 2;
+    if (has_prepared_statement()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->prepared_statement());
+    }
+
+    // optional .exec.shared.DrillPBError error = 3;
+    if (has_error()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->error());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void CreatePreparedStatementResp::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.CreatePreparedStatementResp)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const CreatePreparedStatementResp* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const CreatePreparedStatementResp>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const CreatePreparedStatementResp*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.CreatePreparedStatementResp)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.CreatePreparedStatementResp)
     MergeFrom(*source);
   }
 }
 
 void CreatePreparedStatementResp::MergeFrom(const CreatePreparedStatementResp& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.CreatePreparedStatementResp)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_status()) {
+      set_status(from.status());
+    }
+    if (from.has_prepared_statement()) {
       mutable_prepared_statement()->::exec::user::PreparedStatement::MergeFrom(from.prepared_statement());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_error()) {
       mutable_error()->::exec::shared::DrillPBError::MergeFrom(from.error());
     }
-    if (cached_has_bits & 0x00000004u) {
-      status_ = from.status_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void CreatePreparedStatementResp::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.CreatePreparedStatementResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void CreatePreparedStatementResp::CopyFrom(const CreatePreparedStatementResp& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.CreatePreparedStatementResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool CreatePreparedStatementResp::IsInitialized() const {
+
   return true;
 }
 
 void CreatePreparedStatementResp::Swap(CreatePreparedStatementResp* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void CreatePreparedStatementResp::InternalSwap(CreatePreparedStatementResp* other) {
-  using std::swap;
-  swap(prepared_statement_, other->prepared_statement_);
-  swap(error_, other->error_);
-  swap(status_, other->status_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(status_, other->status_);
+    std::swap(prepared_statement_, other->prepared_statement_);
+    std::swap(error_, other->error_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata CreatePreparedStatementResp::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = CreatePreparedStatementResp_descriptor_;
+  metadata.reflection = CreatePreparedStatementResp_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetServerMetaReq::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
+#endif  // !_MSC_VER
 
 GetServerMetaReq::GetServerMetaReq()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetServerMetaReq.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetServerMetaReq)
 }
+
+void GetServerMetaReq::InitAsDefaultInstance() {
+}
+
 GetServerMetaReq::GetServerMetaReq(const GetServerMetaReq& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetServerMetaReq)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetServerMetaReq::SharedCtor() {
+  _cached_size_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetServerMetaReq::~GetServerMetaReq() {
-  // @@protoc_insertion_point(destructor:exec.user.GetServerMetaReq)
   SharedDtor();
 }
 
 void GetServerMetaReq::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void GetServerMetaReq::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetServerMetaReq::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetServerMetaReq_descriptor_;
 }
 
 const GetServerMetaReq& GetServerMetaReq::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetServerMetaReq.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetServerMetaReq* GetServerMetaReq::default_instance_ = NULL;
+
+GetServerMetaReq* GetServerMetaReq::New() const {
+  return new GetServerMetaReq;
+}
 
 void GetServerMetaReq::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetServerMetaReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetServerMetaReq::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetServerMetaReq)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
-  handle_unusual:
-    if (tag == 0) {
-      goto success;
+  while ((tag = input->ReadTag()) != 0) {
+    if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+        ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+      return true;
     }
     DO_(::google::protobuf::internal::WireFormat::SkipField(
-          input, tag, _internal_metadata_.mutable_unknown_fields()));
+          input, tag, mutable_unknown_fields()));
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetServerMetaReq)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetServerMetaReq)
-  return false;
 #undef DO_
 }
 
 void GetServerMetaReq::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetServerMetaReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetServerMetaReq)
 }
 
-::google::protobuf::uint8* GetServerMetaReq::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetServerMetaReq)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  if (_internal_metadata_.have_unknown_fields()) {
+::google::protobuf::uint8* GetServerMetaReq::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetServerMetaReq)
   return target;
 }
 
-size_t GetServerMetaReq::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetServerMetaReq)
-  size_t total_size = 0;
+int GetServerMetaReq::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetServerMetaReq::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetServerMetaReq)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetServerMetaReq* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetServerMetaReq>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetServerMetaReq*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetServerMetaReq)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetServerMetaReq)
     MergeFrom(*source);
   }
 }
 
 void GetServerMetaReq::MergeFrom(const GetServerMetaReq& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetServerMetaReq)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetServerMetaReq::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetServerMetaReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetServerMetaReq::CopyFrom(const GetServerMetaReq& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetServerMetaReq)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetServerMetaReq::IsInitialized() const {
+
   return true;
 }
 
 void GetServerMetaReq::Swap(GetServerMetaReq* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetServerMetaReq::InternalSwap(GetServerMetaReq* other) {
-  using std::swap;
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetServerMetaReq::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetServerMetaReq_descriptor_;
+  metadata.reflection = GetServerMetaReq_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void ConvertSupport::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int ConvertSupport::kFromFieldNumber;
 const int ConvertSupport::kToFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 ConvertSupport::ConvertSupport()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_ConvertSupport.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.ConvertSupport)
 }
+
+void ConvertSupport::InitAsDefaultInstance() {
+}
+
 ConvertSupport::ConvertSupport(const ConvertSupport& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&from_, &from.from_,
-    static_cast<size_t>(reinterpret_cast<char*>(&to_) -
-    reinterpret_cast<char*>(&from_)) + sizeof(to_));
-  // @@protoc_insertion_point(copy_constructor:exec.user.ConvertSupport)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void ConvertSupport::SharedCtor() {
-  ::memset(&from_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&to_) -
-      reinterpret_cast<char*>(&from_)) + sizeof(to_));
+  _cached_size_ = 0;
+  from_ = 0;
+  to_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 ConvertSupport::~ConvertSupport() {
-  // @@protoc_insertion_point(destructor:exec.user.ConvertSupport)
   SharedDtor();
 }
 
 void ConvertSupport::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void ConvertSupport::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* ConvertSupport::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return ConvertSupport_descriptor_;
 }
 
 const ConvertSupport& ConvertSupport::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_ConvertSupport.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+ConvertSupport* ConvertSupport::default_instance_ = NULL;
+
+ConvertSupport* ConvertSupport::New() const {
+  return new ConvertSupport;
+}
 
 void ConvertSupport::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.ConvertSupport)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    ::memset(&from_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&to_) -
-        reinterpret_cast<char*>(&from_)) + sizeof(to_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    from_ = 0;
+    to_ = 0;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool ConvertSupport::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.ConvertSupport)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // required .common.MinorType from = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -13073,19 +11751,20 @@
           if (::common::MinorType_IsValid(value)) {
             set_from(static_cast< ::common::MinorType >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_to;
         break;
       }
 
       // required .common.MinorType to = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_to:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -13093,176 +11772,132 @@
           if (::common::MinorType_IsValid(value)) {
             set_to(static_cast< ::common::MinorType >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                2, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(2, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.ConvertSupport)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.ConvertSupport)
-  return false;
 #undef DO_
 }
 
 void ConvertSupport::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.ConvertSupport)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // required .common.MinorType from = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_from()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->from(), output);
   }
 
   // required .common.MinorType to = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_to()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       2, this->to(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.ConvertSupport)
 }
 
-::google::protobuf::uint8* ConvertSupport::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.ConvertSupport)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* ConvertSupport::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // required .common.MinorType from = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_from()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->from(), target);
   }
 
   // required .common.MinorType to = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_to()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       2, this->to(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.ConvertSupport)
   return target;
 }
 
-size_t ConvertSupport::RequiredFieldsByteSizeFallback() const {
-// @@protoc_insertion_point(required_fields_byte_size_fallback_start:exec.user.ConvertSupport)
-  size_t total_size = 0;
+int ConvertSupport::ByteSize() const {
+  int total_size = 0;
 
-  if (has_from()) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // required .common.MinorType from = 1;
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::EnumSize(this->from());
-  }
+    if (has_from()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->from());
+    }
 
-  if (has_to()) {
     // required .common.MinorType to = 2;
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::EnumSize(this->to());
+    if (has_to()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->to());
+    }
+
   }
-
-  return total_size;
-}
-size_t ConvertSupport::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.ConvertSupport)
-  size_t total_size = 0;
-
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  if (((_has_bits_[0] & 0x00000003) ^ 0x00000003) == 0) {  // All required fields are present.
-    // required .common.MinorType from = 1;
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::EnumSize(this->from());
-
-    // required .common.MinorType to = 2;
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::EnumSize(this->to());
-
-  } else {
-    total_size += RequiredFieldsByteSizeFallback();
-  }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void ConvertSupport::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.ConvertSupport)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const ConvertSupport* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const ConvertSupport>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const ConvertSupport*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.ConvertSupport)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.ConvertSupport)
     MergeFrom(*source);
   }
 }
 
 void ConvertSupport::MergeFrom(const ConvertSupport& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.ConvertSupport)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      from_ = from.from_;
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_from()) {
+      set_from(from.from());
     }
-    if (cached_has_bits & 0x00000002u) {
-      to_ = from.to_;
+    if (from.has_to()) {
+      set_to(from.to());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void ConvertSupport::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.ConvertSupport)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void ConvertSupport::CopyFrom(const ConvertSupport& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.ConvertSupport)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
@@ -13270,137 +11905,117 @@
 
 bool ConvertSupport::IsInitialized() const {
   if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false;
+
   return true;
 }
 
 void ConvertSupport::Swap(ConvertSupport* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void ConvertSupport::InternalSwap(ConvertSupport* other) {
-  using std::swap;
-  swap(from_, other->from_);
-  swap(to_, other->to_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(from_, other->from_);
+    std::swap(to_, other->to_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata ConvertSupport::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = ConvertSupport_descriptor_;
+  metadata.reflection = ConvertSupport_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void GetServerMetaResp::InitAsDefaultInstance() {
-  ::exec::user::_GetServerMetaResp_default_instance_._instance.get_mutable()->server_meta_ = const_cast< ::exec::user::ServerMeta*>(
-      ::exec::user::ServerMeta::internal_default_instance());
-  ::exec::user::_GetServerMetaResp_default_instance_._instance.get_mutable()->error_ = const_cast< ::exec::shared::DrillPBError*>(
-      ::exec::shared::DrillPBError::internal_default_instance());
-}
-void GetServerMetaResp::clear_error() {
-  if (error_ != NULL) error_->Clear();
-  clear_has_error();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int GetServerMetaResp::kStatusFieldNumber;
 const int GetServerMetaResp::kServerMetaFieldNumber;
 const int GetServerMetaResp::kErrorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 GetServerMetaResp::GetServerMetaResp()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_GetServerMetaResp.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.GetServerMetaResp)
 }
+
+void GetServerMetaResp::InitAsDefaultInstance() {
+  server_meta_ = const_cast< ::exec::user::ServerMeta*>(&::exec::user::ServerMeta::default_instance());
+  error_ = const_cast< ::exec::shared::DrillPBError*>(&::exec::shared::DrillPBError::default_instance());
+}
+
 GetServerMetaResp::GetServerMetaResp(const GetServerMetaResp& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_server_meta()) {
-    server_meta_ = new ::exec::user::ServerMeta(*from.server_meta_);
-  } else {
-    server_meta_ = NULL;
-  }
-  if (from.has_error()) {
-    error_ = new ::exec::shared::DrillPBError(*from.error_);
-  } else {
-    error_ = NULL;
-  }
-  status_ = from.status_;
-  // @@protoc_insertion_point(copy_constructor:exec.user.GetServerMetaResp)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void GetServerMetaResp::SharedCtor() {
-  ::memset(&server_meta_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&status_) -
-      reinterpret_cast<char*>(&server_meta_)) + sizeof(status_));
+  _cached_size_ = 0;
+  status_ = 0;
+  server_meta_ = NULL;
+  error_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 GetServerMetaResp::~GetServerMetaResp() {
-  // @@protoc_insertion_point(destructor:exec.user.GetServerMetaResp)
   SharedDtor();
 }
 
 void GetServerMetaResp::SharedDtor() {
-  if (this != internal_default_instance()) delete server_meta_;
-  if (this != internal_default_instance()) delete error_;
+  if (this != default_instance_) {
+    delete server_meta_;
+    delete error_;
+  }
 }
 
 void GetServerMetaResp::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* GetServerMetaResp::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return GetServerMetaResp_descriptor_;
 }
 
 const GetServerMetaResp& GetServerMetaResp::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_GetServerMetaResp.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+GetServerMetaResp* GetServerMetaResp::default_instance_ = NULL;
+
+GetServerMetaResp* GetServerMetaResp::New() const {
+  return new GetServerMetaResp;
+}
 
 void GetServerMetaResp::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.GetServerMetaResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(server_meta_ != NULL);
-      server_meta_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    status_ = 0;
+    if (has_server_meta()) {
+      if (server_meta_ != NULL) server_meta_->::exec::user::ServerMeta::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(error_ != NULL);
-      error_->Clear();
+    if (has_error()) {
+      if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
     }
   }
-  status_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool GetServerMetaResp::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.GetServerMetaResp)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.RequestStatus status = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -13408,245 +12023,221 @@
           if (::exec::user::RequestStatus_IsValid(value)) {
             set_status(static_cast< ::exec::user::RequestStatus >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_server_meta;
         break;
       }
 
       // optional .exec.user.ServerMeta server_meta = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_server_meta:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_server_meta()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_error;
         break;
       }
 
       // optional .exec.shared.DrillPBError error = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.GetServerMetaResp)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.GetServerMetaResp)
-  return false;
 #undef DO_
 }
 
 void GetServerMetaResp::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.GetServerMetaResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_status()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->status(), output);
   }
 
   // optional .exec.user.ServerMeta server_meta = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_server_meta()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_server_meta(), output);
+      2, this->server_meta(), output);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_error()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_error(), output);
+      3, this->error(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.GetServerMetaResp)
 }
 
-::google::protobuf::uint8* GetServerMetaResp::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.GetServerMetaResp)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* GetServerMetaResp::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.RequestStatus status = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_status()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->status(), target);
   }
 
   // optional .exec.user.ServerMeta server_meta = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_server_meta()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_server_meta(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->server_meta(), target);
   }
 
   // optional .exec.shared.DrillPBError error = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_error()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_error(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->error(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.GetServerMetaResp)
   return target;
 }
 
-size_t GetServerMetaResp::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.GetServerMetaResp)
-  size_t total_size = 0;
+int GetServerMetaResp::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
-    // optional .exec.user.ServerMeta server_meta = 2;
-    if (has_server_meta()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *server_meta_);
-    }
-
-    // optional .exec.shared.DrillPBError error = 3;
-    if (has_error()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *error_);
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.RequestStatus status = 1;
     if (has_status()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->status());
     }
 
+    // optional .exec.user.ServerMeta server_meta = 2;
+    if (has_server_meta()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->server_meta());
+    }
+
+    // optional .exec.shared.DrillPBError error = 3;
+    if (has_error()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->error());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void GetServerMetaResp::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.GetServerMetaResp)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const GetServerMetaResp* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const GetServerMetaResp>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const GetServerMetaResp*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.GetServerMetaResp)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.GetServerMetaResp)
     MergeFrom(*source);
   }
 }
 
 void GetServerMetaResp::MergeFrom(const GetServerMetaResp& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.GetServerMetaResp)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_status()) {
+      set_status(from.status());
+    }
+    if (from.has_server_meta()) {
       mutable_server_meta()->::exec::user::ServerMeta::MergeFrom(from.server_meta());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_error()) {
       mutable_error()->::exec::shared::DrillPBError::MergeFrom(from.error());
     }
-    if (cached_has_bits & 0x00000004u) {
-      status_ = from.status_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void GetServerMetaResp::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.GetServerMetaResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void GetServerMetaResp::CopyFrom(const GetServerMetaResp& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.GetServerMetaResp)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool GetServerMetaResp::IsInitialized() const {
+
   if (has_server_meta()) {
-    if (!this->server_meta_->IsInitialized()) return false;
+    if (!this->server_meta().IsInitialized()) return false;
   }
   return true;
 }
 
 void GetServerMetaResp::Swap(GetServerMetaResp* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void GetServerMetaResp::InternalSwap(GetServerMetaResp* other) {
-  using std::swap;
-  swap(server_meta_, other->server_meta_);
-  swap(error_, other->error_);
-  swap(status_, other->status_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(status_, other->status_);
+    std::swap(server_meta_, other->server_meta_);
+    std::swap(error_, other->error_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata GetServerMetaResp::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = GetServerMetaResp_descriptor_;
+  metadata.reflection = GetServerMetaResp_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void ServerMeta::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int ServerMeta::kAllTablesSelectableFieldNumber;
 const int ServerMeta::kBlobIncludedInMaxRowSizeFieldNumber;
 const int ServerMeta::kCatalogAtStartFieldNumber;
@@ -13697,122 +12288,204 @@
 const int ServerMeta::kTransactionSupportedFieldNumber;
 const int ServerMeta::kUnionSupportFieldNumber;
 const int ServerMeta::kCurrentSchemaFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 ServerMeta::ServerMeta()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_ServerMeta.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.ServerMeta)
 }
+
+void ServerMeta::InitAsDefaultInstance() {
+}
+
 ServerMeta::ServerMeta(const ServerMeta& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      collate_support_(from.collate_support_),
-      convert_support_(from.convert_support_),
-      date_time_functions_(from.date_time_functions_),
-      date_time_literals_support_(from.date_time_literals_support_),
-      numeric_functions_(from.numeric_functions_),
-      order_by_support_(from.order_by_support_),
-      outer_join_support_(from.outer_join_support_),
-      sql_keywords_(from.sql_keywords_),
-      string_functions_(from.string_functions_),
-      subquery_support_(from.subquery_support_),
-      system_functions_(from.system_functions_),
-      union_support_(from.union_support_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  catalog_separator_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_catalog_separator()) {
-    catalog_separator_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_separator_);
-  }
-  catalog_term_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_catalog_term()) {
-    catalog_term_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_term_);
-  }
-  identifier_quote_string_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_identifier_quote_string()) {
-    identifier_quote_string_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.identifier_quote_string_);
-  }
-  schema_term_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_schema_term()) {
-    schema_term_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_term_);
-  }
-  search_escape_string_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_search_escape_string()) {
-    search_escape_string_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.search_escape_string_);
-  }
-  special_characters_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_special_characters()) {
-    special_characters_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.special_characters_);
-  }
-  table_term_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_table_term()) {
-    table_term_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.table_term_);
-  }
-  current_schema_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_current_schema()) {
-    current_schema_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.current_schema_);
-  }
-  ::memcpy(&all_tables_selectable_, &from.all_tables_selectable_,
-    static_cast<size_t>(reinterpret_cast<char*>(&group_by_support_) -
-    reinterpret_cast<char*>(&all_tables_selectable_)) + sizeof(group_by_support_));
-  // @@protoc_insertion_point(copy_constructor:exec.user.ServerMeta)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void ServerMeta::SharedCtor() {
-  catalog_separator_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  catalog_term_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  identifier_quote_string_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_term_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  search_escape_string_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  special_characters_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  table_term_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  current_schema_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&all_tables_selectable_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&transaction_supported_) -
-      reinterpret_cast<char*>(&all_tables_selectable_)) + sizeof(transaction_supported_));
+  _cached_size_ = 0;
+  all_tables_selectable_ = false;
+  blob_included_in_max_row_size_ = false;
+  catalog_at_start_ = false;
+  catalog_separator_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  catalog_term_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  column_aliasing_supported_ = false;
   correlation_names_support_ = 1;
   group_by_support_ = 1;
+  identifier_casing_ = 0;
+  identifier_quote_string_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  like_escape_clause_supported_ = false;
+  max_binary_literal_length_ = 0u;
+  max_catalog_name_length_ = 0u;
+  max_char_literal_length_ = 0u;
+  max_column_name_length_ = 0u;
+  max_columns_in_group_by_ = 0u;
+  max_columns_in_order_by_ = 0u;
+  max_columns_in_select_ = 0u;
+  max_cursor_name_length_ = 0u;
+  max_logical_lob_size_ = 0u;
+  max_row_size_ = 0u;
+  max_schema_name_length_ = 0u;
+  max_statement_length_ = 0u;
+  max_statements_ = 0u;
+  max_table_name_length_ = 0u;
+  max_tables_in_select_ = 0u;
+  max_user_name_length_ = 0u;
+  null_collation_ = 0;
+  null_plus_non_null_equals_null_ = false;
+  quoted_identifier_casing_ = 0;
+  read_only_ = false;
+  schema_term_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  search_escape_string_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  select_for_update_supported_ = false;
+  special_characters_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  table_term_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  transaction_supported_ = false;
+  current_schema_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 ServerMeta::~ServerMeta() {
-  // @@protoc_insertion_point(destructor:exec.user.ServerMeta)
   SharedDtor();
 }
 
 void ServerMeta::SharedDtor() {
-  catalog_separator_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  catalog_term_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  identifier_quote_string_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  schema_term_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  search_escape_string_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  special_characters_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  table_term_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  current_schema_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_separator_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_separator_;
+  }
+  if (catalog_term_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_term_;
+  }
+  if (identifier_quote_string_ != &::google::protobuf::internal::kEmptyString) {
+    delete identifier_quote_string_;
+  }
+  if (schema_term_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_term_;
+  }
+  if (search_escape_string_ != &::google::protobuf::internal::kEmptyString) {
+    delete search_escape_string_;
+  }
+  if (special_characters_ != &::google::protobuf::internal::kEmptyString) {
+    delete special_characters_;
+  }
+  if (table_term_ != &::google::protobuf::internal::kEmptyString) {
+    delete table_term_;
+  }
+  if (current_schema_ != &::google::protobuf::internal::kEmptyString) {
+    delete current_schema_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void ServerMeta::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* ServerMeta::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return ServerMeta_descriptor_;
 }
 
 const ServerMeta& ServerMeta::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_ServerMeta.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+ServerMeta* ServerMeta::default_instance_ = NULL;
+
+ServerMeta* ServerMeta::New() const {
+  return new ServerMeta;
+}
 
 void ServerMeta::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.ServerMeta)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    all_tables_selectable_ = false;
+    blob_included_in_max_row_size_ = false;
+    catalog_at_start_ = false;
+    if (has_catalog_separator()) {
+      if (catalog_separator_ != &::google::protobuf::internal::kEmptyString) {
+        catalog_separator_->clear();
+      }
+    }
+    if (has_catalog_term()) {
+      if (catalog_term_ != &::google::protobuf::internal::kEmptyString) {
+        catalog_term_->clear();
+      }
+    }
+    column_aliasing_supported_ = false;
+  }
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    correlation_names_support_ = 1;
+    group_by_support_ = 1;
+    identifier_casing_ = 0;
+    if (has_identifier_quote_string()) {
+      if (identifier_quote_string_ != &::google::protobuf::internal::kEmptyString) {
+        identifier_quote_string_->clear();
+      }
+    }
+    like_escape_clause_supported_ = false;
+    max_binary_literal_length_ = 0u;
+  }
+  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
+    max_catalog_name_length_ = 0u;
+    max_char_literal_length_ = 0u;
+    max_column_name_length_ = 0u;
+    max_columns_in_group_by_ = 0u;
+    max_columns_in_order_by_ = 0u;
+    max_columns_in_select_ = 0u;
+    max_cursor_name_length_ = 0u;
+    max_logical_lob_size_ = 0u;
+  }
+  if (_has_bits_[24 / 32] & (0xffu << (24 % 32))) {
+    max_row_size_ = 0u;
+    max_schema_name_length_ = 0u;
+    max_statement_length_ = 0u;
+    max_statements_ = 0u;
+    max_table_name_length_ = 0u;
+    max_tables_in_select_ = 0u;
+    max_user_name_length_ = 0u;
+    null_collation_ = 0;
+  }
+  if (_has_bits_[32 / 32] & (0xffu << (32 % 32))) {
+    null_plus_non_null_equals_null_ = false;
+    quoted_identifier_casing_ = 0;
+    read_only_ = false;
+    if (has_schema_term()) {
+      if (schema_term_ != &::google::protobuf::internal::kEmptyString) {
+        schema_term_->clear();
+      }
+    }
+    if (has_search_escape_string()) {
+      if (search_escape_string_ != &::google::protobuf::internal::kEmptyString) {
+        search_escape_string_->clear();
+      }
+    }
+  }
+  if (_has_bits_[40 / 32] & (0xffu << (40 % 32))) {
+    select_for_update_supported_ = false;
+    if (has_special_characters()) {
+      if (special_characters_ != &::google::protobuf::internal::kEmptyString) {
+        special_characters_->clear();
+      }
+    }
+    if (has_table_term()) {
+      if (table_term_ != &::google::protobuf::internal::kEmptyString) {
+        table_term_->clear();
+      }
+    }
+    transaction_supported_ = false;
+  }
+  if (_has_bits_[49 / 32] & (0xffu << (49 % 32))) {
+    if (has_current_schema()) {
+      if (current_schema_ != &::google::protobuf::internal::kEmptyString) {
+        current_schema_->clear();
+      }
+    }
+  }
   collate_support_.Clear();
   convert_support_.Clear();
   date_time_functions_.Clear();
@@ -13825,148 +12498,102 @@
   subquery_support_.Clear();
   system_functions_.Clear();
   union_support_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      catalog_separator_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000002u) {
-      catalog_term_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000004u) {
-      identifier_quote_string_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000008u) {
-      schema_term_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000010u) {
-      search_escape_string_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000020u) {
-      special_characters_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000040u) {
-      table_term_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000080u) {
-      current_schema_.ClearNonDefaultToEmptyNoArena();
-    }
-  }
-  if (cached_has_bits & 65280u) {
-    ::memset(&all_tables_selectable_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&max_char_literal_length_) -
-        reinterpret_cast<char*>(&all_tables_selectable_)) + sizeof(max_char_literal_length_));
-  }
-  if (cached_has_bits & 16711680u) {
-    ::memset(&max_column_name_length_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&max_schema_name_length_) -
-        reinterpret_cast<char*>(&max_column_name_length_)) + sizeof(max_schema_name_length_));
-  }
-  if (cached_has_bits & 4278190080u) {
-    ::memset(&max_statement_length_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&read_only_) -
-        reinterpret_cast<char*>(&max_statement_length_)) + sizeof(read_only_));
-  }
-  cached_has_bits = _has_bits_[1];
-  if (cached_has_bits & 63u) {
-    ::memset(&select_for_update_supported_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&transaction_supported_) -
-        reinterpret_cast<char*>(&select_for_update_supported_)) + sizeof(transaction_supported_));
-    correlation_names_support_ = 1;
-    group_by_support_ = 1;
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool ServerMeta::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.ServerMeta)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(16383u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional bool all_tables_selectable = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_all_tables_selectable();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &all_tables_selectable_)));
+          set_has_all_tables_selectable();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_blob_included_in_max_row_size;
         break;
       }
 
       // optional bool blob_included_in_max_row_size = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_blob_included_in_max_row_size();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_blob_included_in_max_row_size:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &blob_included_in_max_row_size_)));
+          set_has_blob_included_in_max_row_size();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_catalog_at_start;
         break;
       }
 
       // optional bool catalog_at_start = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_catalog_at_start();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_catalog_at_start:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &catalog_at_start_)));
+          set_has_catalog_at_start();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_catalog_separator;
         break;
       }
 
       // optional string catalog_separator = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_catalog_separator:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_catalog_separator()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->catalog_separator().data(), static_cast<int>(this->catalog_separator().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.catalog_separator");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->catalog_separator().data(), this->catalog_separator().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(42)) goto parse_catalog_term;
         break;
       }
 
       // optional string catalog_term = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_catalog_term:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_catalog_term()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->catalog_term().data(), static_cast<int>(this->catalog_term().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.catalog_term");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->catalog_term().data(), this->catalog_term().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(48)) goto parse_collate_support;
         break;
       }
 
       // repeated .exec.user.CollateSupport collate_support = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(48u /* 48 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_collate_support:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -13974,54 +12601,59 @@
           if (::exec::user::CollateSupport_IsValid(value)) {
             add_collate_support(static_cast< ::exec::user::CollateSupport >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                6, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(6, value);
           }
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
-          DO_((::google::protobuf::internal::WireFormat::ReadPackedEnumPreserveUnknowns(
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
+          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
                  input,
-                 6,
-                 ::exec::user::CollateSupport_IsValid,
-                 mutable_unknown_fields(),
+                 &::exec::user::CollateSupport_IsValid,
                  this->mutable_collate_support())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(48)) goto parse_collate_support;
+        if (input->ExpectTag(56)) goto parse_column_aliasing_supported;
         break;
       }
 
       // optional bool column_aliasing_supported = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_column_aliasing_supported();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_column_aliasing_supported:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &column_aliasing_supported_)));
+          set_has_column_aliasing_supported();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(66)) goto parse_convert_support;
         break;
       }
 
       // repeated .exec.user.ConvertSupport convert_support = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(66u /* 66 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_convert_support:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_convert_support()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(66)) goto parse_convert_support;
+        if (input->ExpectTag(72)) goto parse_correlation_names_support;
         break;
       }
 
       // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
       case 9: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(72u /* 72 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_correlation_names_support:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14029,36 +12661,39 @@
           if (::exec::user::CorrelationNamesSupport_IsValid(value)) {
             set_correlation_names_support(static_cast< ::exec::user::CorrelationNamesSupport >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                9, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(9, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(82)) goto parse_date_time_functions;
         break;
       }
 
       // repeated string date_time_functions = 10;
       case 10: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(82u /* 82 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_date_time_functions:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_date_time_functions()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->date_time_functions(this->date_time_functions_size() - 1).data(),
-            static_cast<int>(this->date_time_functions(this->date_time_functions_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.date_time_functions");
+            this->date_time_functions(this->date_time_functions_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(82)) goto parse_date_time_functions;
+        if (input->ExpectTag(88)) goto parse_date_time_literals_support;
         break;
       }
 
       // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
       case 11: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(88u /* 88 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_date_time_literals_support:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14066,28 +12701,28 @@
           if (::exec::user::DateTimeLiteralsSupport_IsValid(value)) {
             add_date_time_literals_support(static_cast< ::exec::user::DateTimeLiteralsSupport >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                11, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(11, value);
           }
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(90u /* 90 & 0xFF */)) {
-          DO_((::google::protobuf::internal::WireFormat::ReadPackedEnumPreserveUnknowns(
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
+          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
                  input,
-                 11,
-                 ::exec::user::DateTimeLiteralsSupport_IsValid,
-                 mutable_unknown_fields(),
+                 &::exec::user::DateTimeLiteralsSupport_IsValid,
                  this->mutable_date_time_literals_support())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(88)) goto parse_date_time_literals_support;
+        if (input->ExpectTag(96)) goto parse_group_by_support;
         break;
       }
 
       // optional .exec.user.GroupBySupport group_by_support = 12;
       case 12: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(96u /* 96 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_group_by_support:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14095,19 +12730,20 @@
           if (::exec::user::GroupBySupport_IsValid(value)) {
             set_group_by_support(static_cast< ::exec::user::GroupBySupport >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                12, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(12, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(104)) goto parse_identifier_casing;
         break;
       }
 
       // optional .exec.user.IdentifierCasing identifier_casing = 13;
       case 13: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(104u /* 104 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_identifier_casing:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14115,273 +12751,309 @@
           if (::exec::user::IdentifierCasing_IsValid(value)) {
             set_identifier_casing(static_cast< ::exec::user::IdentifierCasing >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                13, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(13, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(114)) goto parse_identifier_quote_string;
         break;
       }
 
       // optional string identifier_quote_string = 14;
       case 14: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(114u /* 114 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_identifier_quote_string:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_identifier_quote_string()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->identifier_quote_string().data(), static_cast<int>(this->identifier_quote_string().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.identifier_quote_string");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->identifier_quote_string().data(), this->identifier_quote_string().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(120)) goto parse_like_escape_clause_supported;
         break;
       }
 
       // optional bool like_escape_clause_supported = 15;
       case 15: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(120u /* 120 & 0xFF */)) {
-          set_has_like_escape_clause_supported();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_like_escape_clause_supported:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &like_escape_clause_supported_)));
+          set_has_like_escape_clause_supported();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(128)) goto parse_max_binary_literal_length;
         break;
       }
 
       // optional uint32 max_binary_literal_length = 16;
       case 16: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(128u /* 128 & 0xFF */)) {
-          set_has_max_binary_literal_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_binary_literal_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_binary_literal_length_)));
+          set_has_max_binary_literal_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(136)) goto parse_max_catalog_name_length;
         break;
       }
 
       // optional uint32 max_catalog_name_length = 17;
       case 17: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(136u /* 136 & 0xFF */)) {
-          set_has_max_catalog_name_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_catalog_name_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_catalog_name_length_)));
+          set_has_max_catalog_name_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(144)) goto parse_max_char_literal_length;
         break;
       }
 
       // optional uint32 max_char_literal_length = 18;
       case 18: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(144u /* 144 & 0xFF */)) {
-          set_has_max_char_literal_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_char_literal_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_char_literal_length_)));
+          set_has_max_char_literal_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(152)) goto parse_max_column_name_length;
         break;
       }
 
       // optional uint32 max_column_name_length = 19;
       case 19: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(152u /* 152 & 0xFF */)) {
-          set_has_max_column_name_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_column_name_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_column_name_length_)));
+          set_has_max_column_name_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(160)) goto parse_max_columns_in_group_by;
         break;
       }
 
       // optional uint32 max_columns_in_group_by = 20;
       case 20: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(160u /* 160 & 0xFF */)) {
-          set_has_max_columns_in_group_by();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_columns_in_group_by:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_columns_in_group_by_)));
+          set_has_max_columns_in_group_by();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(168)) goto parse_max_columns_in_order_by;
         break;
       }
 
       // optional uint32 max_columns_in_order_by = 21;
       case 21: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(168u /* 168 & 0xFF */)) {
-          set_has_max_columns_in_order_by();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_columns_in_order_by:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_columns_in_order_by_)));
+          set_has_max_columns_in_order_by();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(176)) goto parse_max_columns_in_select;
         break;
       }
 
       // optional uint32 max_columns_in_select = 22;
       case 22: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(176u /* 176 & 0xFF */)) {
-          set_has_max_columns_in_select();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_columns_in_select:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_columns_in_select_)));
+          set_has_max_columns_in_select();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(184)) goto parse_max_cursor_name_length;
         break;
       }
 
       // optional uint32 max_cursor_name_length = 23;
       case 23: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(184u /* 184 & 0xFF */)) {
-          set_has_max_cursor_name_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_cursor_name_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_cursor_name_length_)));
+          set_has_max_cursor_name_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(192)) goto parse_max_logical_lob_size;
         break;
       }
 
       // optional uint32 max_logical_lob_size = 24;
       case 24: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(192u /* 192 & 0xFF */)) {
-          set_has_max_logical_lob_size();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_logical_lob_size:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_logical_lob_size_)));
+          set_has_max_logical_lob_size();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(200)) goto parse_max_row_size;
         break;
       }
 
       // optional uint32 max_row_size = 25;
       case 25: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(200u /* 200 & 0xFF */)) {
-          set_has_max_row_size();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_row_size:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_row_size_)));
+          set_has_max_row_size();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(208)) goto parse_max_schema_name_length;
         break;
       }
 
       // optional uint32 max_schema_name_length = 26;
       case 26: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(208u /* 208 & 0xFF */)) {
-          set_has_max_schema_name_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_schema_name_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_schema_name_length_)));
+          set_has_max_schema_name_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(216)) goto parse_max_statement_length;
         break;
       }
 
       // optional uint32 max_statement_length = 27;
       case 27: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(216u /* 216 & 0xFF */)) {
-          set_has_max_statement_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_statement_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_statement_length_)));
+          set_has_max_statement_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(224)) goto parse_max_statements;
         break;
       }
 
       // optional uint32 max_statements = 28;
       case 28: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(224u /* 224 & 0xFF */)) {
-          set_has_max_statements();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_statements:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_statements_)));
+          set_has_max_statements();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(232)) goto parse_max_table_name_length;
         break;
       }
 
       // optional uint32 max_table_name_length = 29;
       case 29: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(232u /* 232 & 0xFF */)) {
-          set_has_max_table_name_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_table_name_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_table_name_length_)));
+          set_has_max_table_name_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(240)) goto parse_max_tables_in_select;
         break;
       }
 
       // optional uint32 max_tables_in_select = 30;
       case 30: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(240u /* 240 & 0xFF */)) {
-          set_has_max_tables_in_select();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_tables_in_select:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_tables_in_select_)));
+          set_has_max_tables_in_select();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(248)) goto parse_max_user_name_length;
         break;
       }
 
       // optional uint32 max_user_name_length = 31;
       case 31: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(248u /* 248 & 0xFF */)) {
-          set_has_max_user_name_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_user_name_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
                  input, &max_user_name_length_)));
+          set_has_max_user_name_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(256)) goto parse_null_collation;
         break;
       }
 
       // optional .exec.user.NullCollation null_collation = 32;
       case 32: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(0u /* 256 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_null_collation:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14389,50 +13061,55 @@
           if (::exec::user::NullCollation_IsValid(value)) {
             set_null_collation(static_cast< ::exec::user::NullCollation >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                32, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(32, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(264)) goto parse_null_plus_non_null_equals_null;
         break;
       }
 
       // optional bool null_plus_non_null_equals_null = 33;
       case 33: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 264 & 0xFF */)) {
-          set_has_null_plus_non_null_equals_null();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_null_plus_non_null_equals_null:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &null_plus_non_null_equals_null_)));
+          set_has_null_plus_non_null_equals_null();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(274)) goto parse_numeric_functions;
         break;
       }
 
       // repeated string numeric_functions = 34;
       case 34: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 274 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_numeric_functions:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_numeric_functions()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->numeric_functions(this->numeric_functions_size() - 1).data(),
-            static_cast<int>(this->numeric_functions(this->numeric_functions_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.numeric_functions");
+            this->numeric_functions(this->numeric_functions_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(274)) goto parse_numeric_functions;
+        if (input->ExpectTag(280)) goto parse_order_by_support;
         break;
       }
 
       // repeated .exec.user.OrderBySupport order_by_support = 35;
       case 35: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 280 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_order_by_support:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14440,28 +13117,28 @@
           if (::exec::user::OrderBySupport_IsValid(value)) {
             add_order_by_support(static_cast< ::exec::user::OrderBySupport >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                35, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(35, value);
           }
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 282 & 0xFF */)) {
-          DO_((::google::protobuf::internal::WireFormat::ReadPackedEnumPreserveUnknowns(
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
+          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
                  input,
-                 35,
-                 ::exec::user::OrderBySupport_IsValid,
-                 mutable_unknown_fields(),
+                 &::exec::user::OrderBySupport_IsValid,
                  this->mutable_order_by_support())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(280)) goto parse_order_by_support;
+        if (input->ExpectTag(288)) goto parse_outer_join_support;
         break;
       }
 
       // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
       case 36: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 288 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_outer_join_support:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14469,28 +13146,28 @@
           if (::exec::user::OuterJoinSupport_IsValid(value)) {
             add_outer_join_support(static_cast< ::exec::user::OuterJoinSupport >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                36, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(36, value);
           }
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 290 & 0xFF */)) {
-          DO_((::google::protobuf::internal::WireFormat::ReadPackedEnumPreserveUnknowns(
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
+          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
                  input,
-                 36,
-                 ::exec::user::OuterJoinSupport_IsValid,
-                 mutable_unknown_fields(),
+                 &::exec::user::OuterJoinSupport_IsValid,
                  this->mutable_outer_join_support())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(288)) goto parse_outer_join_support;
+        if (input->ExpectTag(296)) goto parse_quoted_identifier_casing;
         break;
       }
 
       // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
       case 37: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 296 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_quoted_identifier_casing:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14498,129 +13175,141 @@
           if (::exec::user::IdentifierCasing_IsValid(value)) {
             set_quoted_identifier_casing(static_cast< ::exec::user::IdentifierCasing >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                37, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(37, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(304)) goto parse_read_only;
         break;
       }
 
       // optional bool read_only = 38;
       case 38: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(48u /* 304 & 0xFF */)) {
-          set_has_read_only();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_read_only:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &read_only_)));
+          set_has_read_only();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(314)) goto parse_schema_term;
         break;
       }
 
       // optional string schema_term = 39;
       case 39: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(58u /* 314 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_schema_term:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_schema_term()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->schema_term().data(), static_cast<int>(this->schema_term().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.schema_term");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->schema_term().data(), this->schema_term().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(322)) goto parse_search_escape_string;
         break;
       }
 
       // optional string search_escape_string = 40;
       case 40: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(66u /* 322 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_search_escape_string:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_search_escape_string()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->search_escape_string().data(), static_cast<int>(this->search_escape_string().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.search_escape_string");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->search_escape_string().data(), this->search_escape_string().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(328)) goto parse_select_for_update_supported;
         break;
       }
 
       // optional bool select_for_update_supported = 41;
       case 41: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(72u /* 328 & 0xFF */)) {
-          set_has_select_for_update_supported();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_select_for_update_supported:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &select_for_update_supported_)));
+          set_has_select_for_update_supported();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(338)) goto parse_special_characters;
         break;
       }
 
       // optional string special_characters = 42;
       case 42: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(82u /* 338 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_special_characters:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_special_characters()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->special_characters().data(), static_cast<int>(this->special_characters().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.special_characters");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->special_characters().data(), this->special_characters().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(346)) goto parse_sql_keywords;
         break;
       }
 
       // repeated string sql_keywords = 43;
       case 43: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(90u /* 346 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_sql_keywords:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_sql_keywords()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->sql_keywords(this->sql_keywords_size() - 1).data(),
-            static_cast<int>(this->sql_keywords(this->sql_keywords_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.sql_keywords");
+            this->sql_keywords(this->sql_keywords_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(346)) goto parse_sql_keywords;
+        if (input->ExpectTag(354)) goto parse_string_functions;
         break;
       }
 
       // repeated string string_functions = 44;
       case 44: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(98u /* 354 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_string_functions:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_string_functions()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->string_functions(this->string_functions_size() - 1).data(),
-            static_cast<int>(this->string_functions(this->string_functions_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.string_functions");
+            this->string_functions(this->string_functions_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(354)) goto parse_string_functions;
+        if (input->ExpectTag(360)) goto parse_subquery_support;
         break;
       }
 
       // repeated .exec.user.SubQuerySupport subquery_support = 45;
       case 45: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(104u /* 360 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_subquery_support:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14628,75 +13317,80 @@
           if (::exec::user::SubQuerySupport_IsValid(value)) {
             add_subquery_support(static_cast< ::exec::user::SubQuerySupport >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                45, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(45, value);
           }
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(106u /* 362 & 0xFF */)) {
-          DO_((::google::protobuf::internal::WireFormat::ReadPackedEnumPreserveUnknowns(
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
+          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
                  input,
-                 45,
-                 ::exec::user::SubQuerySupport_IsValid,
-                 mutable_unknown_fields(),
+                 &::exec::user::SubQuerySupport_IsValid,
                  this->mutable_subquery_support())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(360)) goto parse_subquery_support;
+        if (input->ExpectTag(370)) goto parse_system_functions;
         break;
       }
 
       // repeated string system_functions = 46;
       case 46: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(114u /* 370 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_system_functions:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_system_functions()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->system_functions(this->system_functions_size() - 1).data(),
-            static_cast<int>(this->system_functions(this->system_functions_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.system_functions");
+            this->system_functions(this->system_functions_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(370)) goto parse_system_functions;
+        if (input->ExpectTag(378)) goto parse_table_term;
         break;
       }
 
       // optional string table_term = 47;
       case 47: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(122u /* 378 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_table_term:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_table_term()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->table_term().data(), static_cast<int>(this->table_term().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.table_term");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->table_term().data(), this->table_term().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(384)) goto parse_transaction_supported;
         break;
       }
 
       // optional bool transaction_supported = 48;
       case 48: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(128u /* 384 & 0xFF */)) {
-          set_has_transaction_supported();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_transaction_supported:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &transaction_supported_)));
+          set_has_transaction_supported();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(392)) goto parse_union_support;
         break;
       }
 
       // repeated .exec.user.UnionSupport union_support = 49;
       case 49: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(136u /* 392 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_union_support:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -14704,944 +13398,714 @@
           if (::exec::user::UnionSupport_IsValid(value)) {
             add_union_support(static_cast< ::exec::user::UnionSupport >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                49, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(49, value);
           }
-        } else if (
-            static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(138u /* 394 & 0xFF */)) {
-          DO_((::google::protobuf::internal::WireFormat::ReadPackedEnumPreserveUnknowns(
+        } else if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag)
+                   == ::google::protobuf::internal::WireFormatLite::
+                      WIRETYPE_LENGTH_DELIMITED) {
+          DO_((::google::protobuf::internal::WireFormatLite::ReadPackedEnumNoInline(
                  input,
-                 49,
-                 ::exec::user::UnionSupport_IsValid,
-                 mutable_unknown_fields(),
+                 &::exec::user::UnionSupport_IsValid,
                  this->mutable_union_support())));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(392)) goto parse_union_support;
+        if (input->ExpectTag(402)) goto parse_current_schema;
         break;
       }
 
       // optional string current_schema = 50;
       case 50: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(146u /* 402 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_current_schema:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_current_schema()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->current_schema().data(), static_cast<int>(this->current_schema().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.ServerMeta.current_schema");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->current_schema().data(), this->current_schema().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.ServerMeta)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.ServerMeta)
-  return false;
 #undef DO_
 }
 
 void ServerMeta::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.ServerMeta)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional bool all_tables_selectable = 1;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_all_tables_selectable()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(1, this->all_tables_selectable(), output);
   }
 
   // optional bool blob_included_in_max_row_size = 2;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_blob_included_in_max_row_size()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->blob_included_in_max_row_size(), output);
   }
 
   // optional bool catalog_at_start = 3;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_catalog_at_start()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->catalog_at_start(), output);
   }
 
   // optional string catalog_separator = 4;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_separator().data(), static_cast<int>(this->catalog_separator().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.catalog_separator");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_catalog_separator()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_separator().data(), this->catalog_separator().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->catalog_separator(), output);
   }
 
   // optional string catalog_term = 5;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_term().data(), static_cast<int>(this->catalog_term().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.catalog_term");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_catalog_term()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_term().data(), this->catalog_term().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       5, this->catalog_term(), output);
   }
 
   // repeated .exec.user.CollateSupport collate_support = 6;
-  for (int i = 0, n = this->collate_support_size(); i < n; i++) {
+  for (int i = 0; i < this->collate_support_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       6, this->collate_support(i), output);
   }
 
   // optional bool column_aliasing_supported = 7;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_column_aliasing_supported()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(7, this->column_aliasing_supported(), output);
   }
 
   // repeated .exec.user.ConvertSupport convert_support = 8;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->convert_support_size()); i < n; i++) {
+  for (int i = 0; i < this->convert_support_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      8,
-      this->convert_support(static_cast<int>(i)),
-      output);
+      8, this->convert_support(i), output);
   }
 
-  cached_has_bits = _has_bits_[1];
   // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_correlation_names_support()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       9, this->correlation_names_support(), output);
   }
 
   // repeated string date_time_functions = 10;
-  for (int i = 0, n = this->date_time_functions_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->date_time_functions(i).data(), static_cast<int>(this->date_time_functions(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.date_time_functions");
+  for (int i = 0; i < this->date_time_functions_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->date_time_functions(i).data(), this->date_time_functions(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       10, this->date_time_functions(i), output);
   }
 
   // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
-  for (int i = 0, n = this->date_time_literals_support_size(); i < n; i++) {
+  for (int i = 0; i < this->date_time_literals_support_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       11, this->date_time_literals_support(i), output);
   }
 
   // optional .exec.user.GroupBySupport group_by_support = 12;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_group_by_support()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       12, this->group_by_support(), output);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.IdentifierCasing identifier_casing = 13;
-  if (cached_has_bits & 0x00001000u) {
+  if (has_identifier_casing()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       13, this->identifier_casing(), output);
   }
 
   // optional string identifier_quote_string = 14;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->identifier_quote_string().data(), static_cast<int>(this->identifier_quote_string().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.identifier_quote_string");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_identifier_quote_string()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->identifier_quote_string().data(), this->identifier_quote_string().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       14, this->identifier_quote_string(), output);
   }
 
   // optional bool like_escape_clause_supported = 15;
-  if (cached_has_bits & 0x20000000u) {
+  if (has_like_escape_clause_supported()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(15, this->like_escape_clause_supported(), output);
   }
 
   // optional uint32 max_binary_literal_length = 16;
-  if (cached_has_bits & 0x00002000u) {
+  if (has_max_binary_literal_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(16, this->max_binary_literal_length(), output);
   }
 
   // optional uint32 max_catalog_name_length = 17;
-  if (cached_has_bits & 0x00004000u) {
+  if (has_max_catalog_name_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(17, this->max_catalog_name_length(), output);
   }
 
   // optional uint32 max_char_literal_length = 18;
-  if (cached_has_bits & 0x00008000u) {
+  if (has_max_char_literal_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(18, this->max_char_literal_length(), output);
   }
 
   // optional uint32 max_column_name_length = 19;
-  if (cached_has_bits & 0x00010000u) {
+  if (has_max_column_name_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(19, this->max_column_name_length(), output);
   }
 
   // optional uint32 max_columns_in_group_by = 20;
-  if (cached_has_bits & 0x00020000u) {
+  if (has_max_columns_in_group_by()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(20, this->max_columns_in_group_by(), output);
   }
 
   // optional uint32 max_columns_in_order_by = 21;
-  if (cached_has_bits & 0x00040000u) {
+  if (has_max_columns_in_order_by()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(21, this->max_columns_in_order_by(), output);
   }
 
   // optional uint32 max_columns_in_select = 22;
-  if (cached_has_bits & 0x00080000u) {
+  if (has_max_columns_in_select()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(22, this->max_columns_in_select(), output);
   }
 
   // optional uint32 max_cursor_name_length = 23;
-  if (cached_has_bits & 0x00100000u) {
+  if (has_max_cursor_name_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(23, this->max_cursor_name_length(), output);
   }
 
   // optional uint32 max_logical_lob_size = 24;
-  if (cached_has_bits & 0x00200000u) {
+  if (has_max_logical_lob_size()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(24, this->max_logical_lob_size(), output);
   }
 
   // optional uint32 max_row_size = 25;
-  if (cached_has_bits & 0x00400000u) {
+  if (has_max_row_size()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(25, this->max_row_size(), output);
   }
 
   // optional uint32 max_schema_name_length = 26;
-  if (cached_has_bits & 0x00800000u) {
+  if (has_max_schema_name_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(26, this->max_schema_name_length(), output);
   }
 
   // optional uint32 max_statement_length = 27;
-  if (cached_has_bits & 0x01000000u) {
+  if (has_max_statement_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(27, this->max_statement_length(), output);
   }
 
   // optional uint32 max_statements = 28;
-  if (cached_has_bits & 0x02000000u) {
+  if (has_max_statements()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(28, this->max_statements(), output);
   }
 
   // optional uint32 max_table_name_length = 29;
-  if (cached_has_bits & 0x04000000u) {
+  if (has_max_table_name_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(29, this->max_table_name_length(), output);
   }
 
   // optional uint32 max_tables_in_select = 30;
-  if (cached_has_bits & 0x08000000u) {
+  if (has_max_tables_in_select()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(30, this->max_tables_in_select(), output);
   }
 
   // optional uint32 max_user_name_length = 31;
-  if (cached_has_bits & 0x10000000u) {
+  if (has_max_user_name_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteUInt32(31, this->max_user_name_length(), output);
   }
 
-  cached_has_bits = _has_bits_[1];
   // optional .exec.user.NullCollation null_collation = 32;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_null_collation()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       32, this->null_collation(), output);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional bool null_plus_non_null_equals_null = 33;
-  if (cached_has_bits & 0x40000000u) {
+  if (has_null_plus_non_null_equals_null()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(33, this->null_plus_non_null_equals_null(), output);
   }
 
   // repeated string numeric_functions = 34;
-  for (int i = 0, n = this->numeric_functions_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->numeric_functions(i).data(), static_cast<int>(this->numeric_functions(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.numeric_functions");
+  for (int i = 0; i < this->numeric_functions_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->numeric_functions(i).data(), this->numeric_functions(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       34, this->numeric_functions(i), output);
   }
 
   // repeated .exec.user.OrderBySupport order_by_support = 35;
-  for (int i = 0, n = this->order_by_support_size(); i < n; i++) {
+  for (int i = 0; i < this->order_by_support_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       35, this->order_by_support(i), output);
   }
 
   // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
-  for (int i = 0, n = this->outer_join_support_size(); i < n; i++) {
+  for (int i = 0; i < this->outer_join_support_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       36, this->outer_join_support(i), output);
   }
 
-  cached_has_bits = _has_bits_[1];
   // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_quoted_identifier_casing()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       37, this->quoted_identifier_casing(), output);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional bool read_only = 38;
-  if (cached_has_bits & 0x80000000u) {
+  if (has_read_only()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(38, this->read_only(), output);
   }
 
   // optional string schema_term = 39;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_term().data(), static_cast<int>(this->schema_term().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.schema_term");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_schema_term()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_term().data(), this->schema_term().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       39, this->schema_term(), output);
   }
 
   // optional string search_escape_string = 40;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->search_escape_string().data(), static_cast<int>(this->search_escape_string().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.search_escape_string");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_search_escape_string()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->search_escape_string().data(), this->search_escape_string().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       40, this->search_escape_string(), output);
   }
 
-  cached_has_bits = _has_bits_[1];
   // optional bool select_for_update_supported = 41;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_select_for_update_supported()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(41, this->select_for_update_supported(), output);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional string special_characters = 42;
-  if (cached_has_bits & 0x00000020u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->special_characters().data(), static_cast<int>(this->special_characters().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.special_characters");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_special_characters()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->special_characters().data(), this->special_characters().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       42, this->special_characters(), output);
   }
 
   // repeated string sql_keywords = 43;
-  for (int i = 0, n = this->sql_keywords_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->sql_keywords(i).data(), static_cast<int>(this->sql_keywords(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.sql_keywords");
+  for (int i = 0; i < this->sql_keywords_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->sql_keywords(i).data(), this->sql_keywords(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       43, this->sql_keywords(i), output);
   }
 
   // repeated string string_functions = 44;
-  for (int i = 0, n = this->string_functions_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->string_functions(i).data(), static_cast<int>(this->string_functions(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.string_functions");
+  for (int i = 0; i < this->string_functions_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->string_functions(i).data(), this->string_functions(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       44, this->string_functions(i), output);
   }
 
   // repeated .exec.user.SubQuerySupport subquery_support = 45;
-  for (int i = 0, n = this->subquery_support_size(); i < n; i++) {
+  for (int i = 0; i < this->subquery_support_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       45, this->subquery_support(i), output);
   }
 
   // repeated string system_functions = 46;
-  for (int i = 0, n = this->system_functions_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->system_functions(i).data(), static_cast<int>(this->system_functions(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.system_functions");
+  for (int i = 0; i < this->system_functions_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->system_functions(i).data(), this->system_functions(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       46, this->system_functions(i), output);
   }
 
   // optional string table_term = 47;
-  if (cached_has_bits & 0x00000040u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_term().data(), static_cast<int>(this->table_term().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.table_term");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_table_term()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->table_term().data(), this->table_term().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       47, this->table_term(), output);
   }
 
-  cached_has_bits = _has_bits_[1];
   // optional bool transaction_supported = 48;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_transaction_supported()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(48, this->transaction_supported(), output);
   }
 
   // repeated .exec.user.UnionSupport union_support = 49;
-  for (int i = 0, n = this->union_support_size(); i < n; i++) {
+  for (int i = 0; i < this->union_support_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       49, this->union_support(i), output);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional string current_schema = 50;
-  if (cached_has_bits & 0x00000080u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->current_schema().data(), static_cast<int>(this->current_schema().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.current_schema");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_current_schema()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->current_schema().data(), this->current_schema().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       50, this->current_schema(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.ServerMeta)
 }
 
-::google::protobuf::uint8* ServerMeta::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.ServerMeta)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* ServerMeta::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional bool all_tables_selectable = 1;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_all_tables_selectable()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(1, this->all_tables_selectable(), target);
   }
 
   // optional bool blob_included_in_max_row_size = 2;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_blob_included_in_max_row_size()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(2, this->blob_included_in_max_row_size(), target);
   }
 
   // optional bool catalog_at_start = 3;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_catalog_at_start()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->catalog_at_start(), target);
   }
 
   // optional string catalog_separator = 4;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_separator().data(), static_cast<int>(this->catalog_separator().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.catalog_separator");
+  if (has_catalog_separator()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_separator().data(), this->catalog_separator().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->catalog_separator(), target);
   }
 
   // optional string catalog_term = 5;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->catalog_term().data(), static_cast<int>(this->catalog_term().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.catalog_term");
+  if (has_catalog_term()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->catalog_term().data(), this->catalog_term().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         5, this->catalog_term(), target);
   }
 
   // repeated .exec.user.CollateSupport collate_support = 6;
-  target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
-    6, this->collate_support_, target);
+  for (int i = 0; i < this->collate_support_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
+      6, this->collate_support(i), target);
+  }
 
   // optional bool column_aliasing_supported = 7;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_column_aliasing_supported()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(7, this->column_aliasing_supported(), target);
   }
 
   // repeated .exec.user.ConvertSupport convert_support = 8;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->convert_support_size()); i < n; i++) {
+  for (int i = 0; i < this->convert_support_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        8, this->convert_support(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        8, this->convert_support(i), target);
   }
 
-  cached_has_bits = _has_bits_[1];
   // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_correlation_names_support()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       9, this->correlation_names_support(), target);
   }
 
   // repeated string date_time_functions = 10;
-  for (int i = 0, n = this->date_time_functions_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->date_time_functions(i).data(), static_cast<int>(this->date_time_functions(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.date_time_functions");
+  for (int i = 0; i < this->date_time_functions_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->date_time_functions(i).data(), this->date_time_functions(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(10, this->date_time_functions(i), target);
   }
 
   // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
-  target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
-    11, this->date_time_literals_support_, target);
+  for (int i = 0; i < this->date_time_literals_support_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
+      11, this->date_time_literals_support(i), target);
+  }
 
   // optional .exec.user.GroupBySupport group_by_support = 12;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_group_by_support()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       12, this->group_by_support(), target);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.IdentifierCasing identifier_casing = 13;
-  if (cached_has_bits & 0x00001000u) {
+  if (has_identifier_casing()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       13, this->identifier_casing(), target);
   }
 
   // optional string identifier_quote_string = 14;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->identifier_quote_string().data(), static_cast<int>(this->identifier_quote_string().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.identifier_quote_string");
+  if (has_identifier_quote_string()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->identifier_quote_string().data(), this->identifier_quote_string().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         14, this->identifier_quote_string(), target);
   }
 
   // optional bool like_escape_clause_supported = 15;
-  if (cached_has_bits & 0x20000000u) {
+  if (has_like_escape_clause_supported()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(15, this->like_escape_clause_supported(), target);
   }
 
   // optional uint32 max_binary_literal_length = 16;
-  if (cached_has_bits & 0x00002000u) {
+  if (has_max_binary_literal_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(16, this->max_binary_literal_length(), target);
   }
 
   // optional uint32 max_catalog_name_length = 17;
-  if (cached_has_bits & 0x00004000u) {
+  if (has_max_catalog_name_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(17, this->max_catalog_name_length(), target);
   }
 
   // optional uint32 max_char_literal_length = 18;
-  if (cached_has_bits & 0x00008000u) {
+  if (has_max_char_literal_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(18, this->max_char_literal_length(), target);
   }
 
   // optional uint32 max_column_name_length = 19;
-  if (cached_has_bits & 0x00010000u) {
+  if (has_max_column_name_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(19, this->max_column_name_length(), target);
   }
 
   // optional uint32 max_columns_in_group_by = 20;
-  if (cached_has_bits & 0x00020000u) {
+  if (has_max_columns_in_group_by()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(20, this->max_columns_in_group_by(), target);
   }
 
   // optional uint32 max_columns_in_order_by = 21;
-  if (cached_has_bits & 0x00040000u) {
+  if (has_max_columns_in_order_by()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(21, this->max_columns_in_order_by(), target);
   }
 
   // optional uint32 max_columns_in_select = 22;
-  if (cached_has_bits & 0x00080000u) {
+  if (has_max_columns_in_select()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(22, this->max_columns_in_select(), target);
   }
 
   // optional uint32 max_cursor_name_length = 23;
-  if (cached_has_bits & 0x00100000u) {
+  if (has_max_cursor_name_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(23, this->max_cursor_name_length(), target);
   }
 
   // optional uint32 max_logical_lob_size = 24;
-  if (cached_has_bits & 0x00200000u) {
+  if (has_max_logical_lob_size()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(24, this->max_logical_lob_size(), target);
   }
 
   // optional uint32 max_row_size = 25;
-  if (cached_has_bits & 0x00400000u) {
+  if (has_max_row_size()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(25, this->max_row_size(), target);
   }
 
   // optional uint32 max_schema_name_length = 26;
-  if (cached_has_bits & 0x00800000u) {
+  if (has_max_schema_name_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(26, this->max_schema_name_length(), target);
   }
 
   // optional uint32 max_statement_length = 27;
-  if (cached_has_bits & 0x01000000u) {
+  if (has_max_statement_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(27, this->max_statement_length(), target);
   }
 
   // optional uint32 max_statements = 28;
-  if (cached_has_bits & 0x02000000u) {
+  if (has_max_statements()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(28, this->max_statements(), target);
   }
 
   // optional uint32 max_table_name_length = 29;
-  if (cached_has_bits & 0x04000000u) {
+  if (has_max_table_name_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(29, this->max_table_name_length(), target);
   }
 
   // optional uint32 max_tables_in_select = 30;
-  if (cached_has_bits & 0x08000000u) {
+  if (has_max_tables_in_select()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(30, this->max_tables_in_select(), target);
   }
 
   // optional uint32 max_user_name_length = 31;
-  if (cached_has_bits & 0x10000000u) {
+  if (has_max_user_name_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(31, this->max_user_name_length(), target);
   }
 
-  cached_has_bits = _has_bits_[1];
   // optional .exec.user.NullCollation null_collation = 32;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_null_collation()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       32, this->null_collation(), target);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional bool null_plus_non_null_equals_null = 33;
-  if (cached_has_bits & 0x40000000u) {
+  if (has_null_plus_non_null_equals_null()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(33, this->null_plus_non_null_equals_null(), target);
   }
 
   // repeated string numeric_functions = 34;
-  for (int i = 0, n = this->numeric_functions_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->numeric_functions(i).data(), static_cast<int>(this->numeric_functions(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.numeric_functions");
+  for (int i = 0; i < this->numeric_functions_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->numeric_functions(i).data(), this->numeric_functions(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(34, this->numeric_functions(i), target);
   }
 
   // repeated .exec.user.OrderBySupport order_by_support = 35;
-  target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
-    35, this->order_by_support_, target);
+  for (int i = 0; i < this->order_by_support_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
+      35, this->order_by_support(i), target);
+  }
 
   // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
-  target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
-    36, this->outer_join_support_, target);
+  for (int i = 0; i < this->outer_join_support_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
+      36, this->outer_join_support(i), target);
+  }
 
-  cached_has_bits = _has_bits_[1];
   // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_quoted_identifier_casing()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       37, this->quoted_identifier_casing(), target);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional bool read_only = 38;
-  if (cached_has_bits & 0x80000000u) {
+  if (has_read_only()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(38, this->read_only(), target);
   }
 
   // optional string schema_term = 39;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->schema_term().data(), static_cast<int>(this->schema_term().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.schema_term");
+  if (has_schema_term()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->schema_term().data(), this->schema_term().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         39, this->schema_term(), target);
   }
 
   // optional string search_escape_string = 40;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->search_escape_string().data(), static_cast<int>(this->search_escape_string().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.search_escape_string");
+  if (has_search_escape_string()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->search_escape_string().data(), this->search_escape_string().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         40, this->search_escape_string(), target);
   }
 
-  cached_has_bits = _has_bits_[1];
   // optional bool select_for_update_supported = 41;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_select_for_update_supported()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(41, this->select_for_update_supported(), target);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional string special_characters = 42;
-  if (cached_has_bits & 0x00000020u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->special_characters().data(), static_cast<int>(this->special_characters().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.special_characters");
+  if (has_special_characters()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->special_characters().data(), this->special_characters().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         42, this->special_characters(), target);
   }
 
   // repeated string sql_keywords = 43;
-  for (int i = 0, n = this->sql_keywords_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->sql_keywords(i).data(), static_cast<int>(this->sql_keywords(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.sql_keywords");
+  for (int i = 0; i < this->sql_keywords_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->sql_keywords(i).data(), this->sql_keywords(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(43, this->sql_keywords(i), target);
   }
 
   // repeated string string_functions = 44;
-  for (int i = 0, n = this->string_functions_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->string_functions(i).data(), static_cast<int>(this->string_functions(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.string_functions");
+  for (int i = 0; i < this->string_functions_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->string_functions(i).data(), this->string_functions(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(44, this->string_functions(i), target);
   }
 
   // repeated .exec.user.SubQuerySupport subquery_support = 45;
-  target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
-    45, this->subquery_support_, target);
+  for (int i = 0; i < this->subquery_support_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
+      45, this->subquery_support(i), target);
+  }
 
   // repeated string system_functions = 46;
-  for (int i = 0, n = this->system_functions_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->system_functions(i).data(), static_cast<int>(this->system_functions(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.system_functions");
+  for (int i = 0; i < this->system_functions_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->system_functions(i).data(), this->system_functions(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(46, this->system_functions(i), target);
   }
 
   // optional string table_term = 47;
-  if (cached_has_bits & 0x00000040u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->table_term().data(), static_cast<int>(this->table_term().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.table_term");
+  if (has_table_term()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->table_term().data(), this->table_term().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         47, this->table_term(), target);
   }
 
-  cached_has_bits = _has_bits_[1];
   // optional bool transaction_supported = 48;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_transaction_supported()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(48, this->transaction_supported(), target);
   }
 
   // repeated .exec.user.UnionSupport union_support = 49;
-  target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
-    49, this->union_support_, target);
+  for (int i = 0; i < this->union_support_size(); i++) {
+    target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
+      49, this->union_support(i), target);
+  }
 
-  cached_has_bits = _has_bits_[0];
   // optional string current_schema = 50;
-  if (cached_has_bits & 0x00000080u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->current_schema().data(), static_cast<int>(this->current_schema().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.ServerMeta.current_schema");
+  if (has_current_schema()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->current_schema().data(), this->current_schema().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         50, this->current_schema(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.ServerMeta)
   return target;
 }
 
-size_t ServerMeta::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.ServerMeta)
-  size_t total_size = 0;
+int ServerMeta::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.user.CollateSupport collate_support = 6;
-  {
-    size_t data_size = 0;
-    unsigned int count = static_cast<unsigned int>(this->collate_support_size());for (unsigned int i = 0; i < count; i++) {
-      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
-        this->collate_support(static_cast<int>(i)));
-    }
-    total_size += (1UL * count) + data_size;
-  }
-
-  // repeated .exec.user.ConvertSupport convert_support = 8;
-  {
-    unsigned int count = static_cast<unsigned int>(this->convert_support_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->convert_support(static_cast<int>(i)));
-    }
-  }
-
-  // repeated string date_time_functions = 10;
-  total_size += 1 *
-      ::google::protobuf::internal::FromIntSize(this->date_time_functions_size());
-  for (int i = 0, n = this->date_time_functions_size(); i < n; i++) {
-    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
-      this->date_time_functions(i));
-  }
-
-  // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
-  {
-    size_t data_size = 0;
-    unsigned int count = static_cast<unsigned int>(this->date_time_literals_support_size());for (unsigned int i = 0; i < count; i++) {
-      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
-        this->date_time_literals_support(static_cast<int>(i)));
-    }
-    total_size += (1UL * count) + data_size;
-  }
-
-  // repeated string numeric_functions = 34;
-  total_size += 2 *
-      ::google::protobuf::internal::FromIntSize(this->numeric_functions_size());
-  for (int i = 0, n = this->numeric_functions_size(); i < n; i++) {
-    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
-      this->numeric_functions(i));
-  }
-
-  // repeated .exec.user.OrderBySupport order_by_support = 35;
-  {
-    size_t data_size = 0;
-    unsigned int count = static_cast<unsigned int>(this->order_by_support_size());for (unsigned int i = 0; i < count; i++) {
-      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
-        this->order_by_support(static_cast<int>(i)));
-    }
-    total_size += (2UL * count) + data_size;
-  }
-
-  // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
-  {
-    size_t data_size = 0;
-    unsigned int count = static_cast<unsigned int>(this->outer_join_support_size());for (unsigned int i = 0; i < count; i++) {
-      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
-        this->outer_join_support(static_cast<int>(i)));
-    }
-    total_size += (2UL * count) + data_size;
-  }
-
-  // repeated string sql_keywords = 43;
-  total_size += 2 *
-      ::google::protobuf::internal::FromIntSize(this->sql_keywords_size());
-  for (int i = 0, n = this->sql_keywords_size(); i < n; i++) {
-    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
-      this->sql_keywords(i));
-  }
-
-  // repeated string string_functions = 44;
-  total_size += 2 *
-      ::google::protobuf::internal::FromIntSize(this->string_functions_size());
-  for (int i = 0, n = this->string_functions_size(); i < n; i++) {
-    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
-      this->string_functions(i));
-  }
-
-  // repeated .exec.user.SubQuerySupport subquery_support = 45;
-  {
-    size_t data_size = 0;
-    unsigned int count = static_cast<unsigned int>(this->subquery_support_size());for (unsigned int i = 0; i < count; i++) {
-      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
-        this->subquery_support(static_cast<int>(i)));
-    }
-    total_size += (2UL * count) + data_size;
-  }
-
-  // repeated string system_functions = 46;
-  total_size += 2 *
-      ::google::protobuf::internal::FromIntSize(this->system_functions_size());
-  for (int i = 0, n = this->system_functions_size(); i < n; i++) {
-    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
-      this->system_functions(i));
-  }
-
-  // repeated .exec.user.UnionSupport union_support = 49;
-  {
-    size_t data_size = 0;
-    unsigned int count = static_cast<unsigned int>(this->union_support_size());for (unsigned int i = 0; i < count; i++) {
-      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
-        this->union_support(static_cast<int>(i)));
-    }
-    total_size += (2UL * count) + data_size;
-  }
-
-  if (_has_bits_[0 / 32] & 255u) {
-    // optional string catalog_separator = 4;
-    if (has_catalog_separator()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->catalog_separator());
-    }
-
-    // optional string catalog_term = 5;
-    if (has_catalog_term()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->catalog_term());
-    }
-
-    // optional string identifier_quote_string = 14;
-    if (has_identifier_quote_string()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->identifier_quote_string());
-    }
-
-    // optional string schema_term = 39;
-    if (has_schema_term()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->schema_term());
-    }
-
-    // optional string search_escape_string = 40;
-    if (has_search_escape_string()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->search_escape_string());
-    }
-
-    // optional string special_characters = 42;
-    if (has_special_characters()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->special_characters());
-    }
-
-    // optional string table_term = 47;
-    if (has_table_term()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->table_term());
-    }
-
-    // optional string current_schema = 50;
-    if (has_current_schema()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->current_schema());
-    }
-
-  }
-  if (_has_bits_[8 / 32] & 65280u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional bool all_tables_selectable = 1;
     if (has_all_tables_selectable()) {
       total_size += 1 + 1;
@@ -15657,17 +14121,57 @@
       total_size += 1 + 1;
     }
 
+    // optional string catalog_separator = 4;
+    if (has_catalog_separator()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->catalog_separator());
+    }
+
+    // optional string catalog_term = 5;
+    if (has_catalog_term()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->catalog_term());
+    }
+
     // optional bool column_aliasing_supported = 7;
     if (has_column_aliasing_supported()) {
       total_size += 1 + 1;
     }
 
+  }
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
+    if (has_correlation_names_support()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->correlation_names_support());
+    }
+
+    // optional .exec.user.GroupBySupport group_by_support = 12;
+    if (has_group_by_support()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->group_by_support());
+    }
+
     // optional .exec.user.IdentifierCasing identifier_casing = 13;
     if (has_identifier_casing()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->identifier_casing());
     }
 
+    // optional string identifier_quote_string = 14;
+    if (has_identifier_quote_string()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->identifier_quote_string());
+    }
+
+    // optional bool like_escape_clause_supported = 15;
+    if (has_like_escape_clause_supported()) {
+      total_size += 1 + 1;
+    }
+
     // optional uint32 max_binary_literal_length = 16;
     if (has_max_binary_literal_length()) {
       total_size += 2 +
@@ -15675,6 +14179,8 @@
           this->max_binary_literal_length());
     }
 
+  }
+  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
     // optional uint32 max_catalog_name_length = 17;
     if (has_max_catalog_name_length()) {
       total_size += 2 +
@@ -15689,8 +14195,6 @@
           this->max_char_literal_length());
     }
 
-  }
-  if (_has_bits_[16 / 32] & 16711680u) {
     // optional uint32 max_column_name_length = 19;
     if (has_max_column_name_length()) {
       total_size += 2 +
@@ -15733,6 +14237,8 @@
           this->max_logical_lob_size());
     }
 
+  }
+  if (_has_bits_[24 / 32] & (0xffu << (24 % 32))) {
     // optional uint32 max_row_size = 25;
     if (has_max_row_size()) {
       total_size += 2 +
@@ -15747,8 +14253,6 @@
           this->max_schema_name_length());
     }
 
-  }
-  if (_has_bits_[24 / 32] & 4278190080u) {
     // optional uint32 max_statement_length = 27;
     if (has_max_statement_length()) {
       total_size += 2 +
@@ -15784,85 +14288,208 @@
           this->max_user_name_length());
     }
 
-    // optional bool like_escape_clause_supported = 15;
-    if (has_like_escape_clause_supported()) {
-      total_size += 1 + 1;
-    }
-
-    // optional bool null_plus_non_null_equals_null = 33;
-    if (has_null_plus_non_null_equals_null()) {
-      total_size += 2 + 1;
-    }
-
-    // optional bool read_only = 38;
-    if (has_read_only()) {
-      total_size += 2 + 1;
-    }
-
-  }
-  if (_has_bits_[32 / 32] & 63u) {
-    // optional bool select_for_update_supported = 41;
-    if (has_select_for_update_supported()) {
-      total_size += 2 + 1;
-    }
-
     // optional .exec.user.NullCollation null_collation = 32;
     if (has_null_collation()) {
       total_size += 2 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->null_collation());
     }
 
+  }
+  if (_has_bits_[32 / 32] & (0xffu << (32 % 32))) {
+    // optional bool null_plus_non_null_equals_null = 33;
+    if (has_null_plus_non_null_equals_null()) {
+      total_size += 2 + 1;
+    }
+
     // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
     if (has_quoted_identifier_casing()) {
       total_size += 2 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->quoted_identifier_casing());
     }
 
+    // optional bool read_only = 38;
+    if (has_read_only()) {
+      total_size += 2 + 1;
+    }
+
+    // optional string schema_term = 39;
+    if (has_schema_term()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->schema_term());
+    }
+
+    // optional string search_escape_string = 40;
+    if (has_search_escape_string()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->search_escape_string());
+    }
+
+  }
+  if (_has_bits_[40 / 32] & (0xffu << (40 % 32))) {
+    // optional bool select_for_update_supported = 41;
+    if (has_select_for_update_supported()) {
+      total_size += 2 + 1;
+    }
+
+    // optional string special_characters = 42;
+    if (has_special_characters()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->special_characters());
+    }
+
+    // optional string table_term = 47;
+    if (has_table_term()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->table_term());
+    }
+
     // optional bool transaction_supported = 48;
     if (has_transaction_supported()) {
       total_size += 2 + 1;
     }
 
-    // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
-    if (has_correlation_names_support()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::EnumSize(this->correlation_names_support());
-    }
-
-    // optional .exec.user.GroupBySupport group_by_support = 12;
-    if (has_group_by_support()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::EnumSize(this->group_by_support());
+  }
+  if (_has_bits_[49 / 32] & (0xffu << (49 % 32))) {
+    // optional string current_schema = 50;
+    if (has_current_schema()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->current_schema());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.user.CollateSupport collate_support = 6;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->collate_support_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
+        this->collate_support(i));
+    }
+    total_size += 1 * this->collate_support_size() + data_size;
+  }
+
+  // repeated .exec.user.ConvertSupport convert_support = 8;
+  total_size += 1 * this->convert_support_size();
+  for (int i = 0; i < this->convert_support_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->convert_support(i));
+  }
+
+  // repeated string date_time_functions = 10;
+  total_size += 1 * this->date_time_functions_size();
+  for (int i = 0; i < this->date_time_functions_size(); i++) {
+    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
+      this->date_time_functions(i));
+  }
+
+  // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->date_time_literals_support_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
+        this->date_time_literals_support(i));
+    }
+    total_size += 1 * this->date_time_literals_support_size() + data_size;
+  }
+
+  // repeated string numeric_functions = 34;
+  total_size += 2 * this->numeric_functions_size();
+  for (int i = 0; i < this->numeric_functions_size(); i++) {
+    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
+      this->numeric_functions(i));
+  }
+
+  // repeated .exec.user.OrderBySupport order_by_support = 35;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->order_by_support_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
+        this->order_by_support(i));
+    }
+    total_size += 2 * this->order_by_support_size() + data_size;
+  }
+
+  // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->outer_join_support_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
+        this->outer_join_support(i));
+    }
+    total_size += 2 * this->outer_join_support_size() + data_size;
+  }
+
+  // repeated string sql_keywords = 43;
+  total_size += 2 * this->sql_keywords_size();
+  for (int i = 0; i < this->sql_keywords_size(); i++) {
+    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
+      this->sql_keywords(i));
+  }
+
+  // repeated string string_functions = 44;
+  total_size += 2 * this->string_functions_size();
+  for (int i = 0; i < this->string_functions_size(); i++) {
+    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
+      this->string_functions(i));
+  }
+
+  // repeated .exec.user.SubQuerySupport subquery_support = 45;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->subquery_support_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
+        this->subquery_support(i));
+    }
+    total_size += 2 * this->subquery_support_size() + data_size;
+  }
+
+  // repeated string system_functions = 46;
+  total_size += 2 * this->system_functions_size();
+  for (int i = 0; i < this->system_functions_size(); i++) {
+    total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
+      this->system_functions(i));
+  }
+
+  // repeated .exec.user.UnionSupport union_support = 49;
+  {
+    int data_size = 0;
+    for (int i = 0; i < this->union_support_size(); i++) {
+      data_size += ::google::protobuf::internal::WireFormatLite::EnumSize(
+        this->union_support(i));
+    }
+    total_size += 2 * this->union_support_size() + data_size;
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void ServerMeta::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.ServerMeta)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const ServerMeta* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const ServerMeta>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const ServerMeta*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.ServerMeta)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.ServerMeta)
     MergeFrom(*source);
   }
 }
 
 void ServerMeta::MergeFrom(const ServerMeta& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.ServerMeta)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   collate_support_.MergeFrom(from.collate_support_);
   convert_support_.MergeFrom(from.convert_support_);
   date_time_functions_.MergeFrom(from.date_time_functions_);
@@ -15875,359 +14502,324 @@
   subquery_support_.MergeFrom(from.subquery_support_);
   system_functions_.MergeFrom(from.system_functions_);
   union_support_.MergeFrom(from.union_support_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_catalog_separator();
-      catalog_separator_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_separator_);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_all_tables_selectable()) {
+      set_all_tables_selectable(from.all_tables_selectable());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_catalog_term();
-      catalog_term_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.catalog_term_);
+    if (from.has_blob_included_in_max_row_size()) {
+      set_blob_included_in_max_row_size(from.blob_included_in_max_row_size());
     }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_identifier_quote_string();
-      identifier_quote_string_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.identifier_quote_string_);
+    if (from.has_catalog_at_start()) {
+      set_catalog_at_start(from.catalog_at_start());
     }
-    if (cached_has_bits & 0x00000008u) {
-      set_has_schema_term();
-      schema_term_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.schema_term_);
+    if (from.has_catalog_separator()) {
+      set_catalog_separator(from.catalog_separator());
     }
-    if (cached_has_bits & 0x00000010u) {
-      set_has_search_escape_string();
-      search_escape_string_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.search_escape_string_);
+    if (from.has_catalog_term()) {
+      set_catalog_term(from.catalog_term());
     }
-    if (cached_has_bits & 0x00000020u) {
-      set_has_special_characters();
-      special_characters_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.special_characters_);
-    }
-    if (cached_has_bits & 0x00000040u) {
-      set_has_table_term();
-      table_term_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.table_term_);
-    }
-    if (cached_has_bits & 0x00000080u) {
-      set_has_current_schema();
-      current_schema_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.current_schema_);
+    if (from.has_column_aliasing_supported()) {
+      set_column_aliasing_supported(from.column_aliasing_supported());
     }
   }
-  if (cached_has_bits & 65280u) {
-    if (cached_has_bits & 0x00000100u) {
-      all_tables_selectable_ = from.all_tables_selectable_;
+  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (from.has_correlation_names_support()) {
+      set_correlation_names_support(from.correlation_names_support());
     }
-    if (cached_has_bits & 0x00000200u) {
-      blob_included_in_max_row_size_ = from.blob_included_in_max_row_size_;
+    if (from.has_group_by_support()) {
+      set_group_by_support(from.group_by_support());
     }
-    if (cached_has_bits & 0x00000400u) {
-      catalog_at_start_ = from.catalog_at_start_;
+    if (from.has_identifier_casing()) {
+      set_identifier_casing(from.identifier_casing());
     }
-    if (cached_has_bits & 0x00000800u) {
-      column_aliasing_supported_ = from.column_aliasing_supported_;
+    if (from.has_identifier_quote_string()) {
+      set_identifier_quote_string(from.identifier_quote_string());
     }
-    if (cached_has_bits & 0x00001000u) {
-      identifier_casing_ = from.identifier_casing_;
+    if (from.has_like_escape_clause_supported()) {
+      set_like_escape_clause_supported(from.like_escape_clause_supported());
     }
-    if (cached_has_bits & 0x00002000u) {
-      max_binary_literal_length_ = from.max_binary_literal_length_;
+    if (from.has_max_binary_literal_length()) {
+      set_max_binary_literal_length(from.max_binary_literal_length());
     }
-    if (cached_has_bits & 0x00004000u) {
-      max_catalog_name_length_ = from.max_catalog_name_length_;
-    }
-    if (cached_has_bits & 0x00008000u) {
-      max_char_literal_length_ = from.max_char_literal_length_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 16711680u) {
-    if (cached_has_bits & 0x00010000u) {
-      max_column_name_length_ = from.max_column_name_length_;
+  if (from._has_bits_[16 / 32] & (0xffu << (16 % 32))) {
+    if (from.has_max_catalog_name_length()) {
+      set_max_catalog_name_length(from.max_catalog_name_length());
     }
-    if (cached_has_bits & 0x00020000u) {
-      max_columns_in_group_by_ = from.max_columns_in_group_by_;
+    if (from.has_max_char_literal_length()) {
+      set_max_char_literal_length(from.max_char_literal_length());
     }
-    if (cached_has_bits & 0x00040000u) {
-      max_columns_in_order_by_ = from.max_columns_in_order_by_;
+    if (from.has_max_column_name_length()) {
+      set_max_column_name_length(from.max_column_name_length());
     }
-    if (cached_has_bits & 0x00080000u) {
-      max_columns_in_select_ = from.max_columns_in_select_;
+    if (from.has_max_columns_in_group_by()) {
+      set_max_columns_in_group_by(from.max_columns_in_group_by());
     }
-    if (cached_has_bits & 0x00100000u) {
-      max_cursor_name_length_ = from.max_cursor_name_length_;
+    if (from.has_max_columns_in_order_by()) {
+      set_max_columns_in_order_by(from.max_columns_in_order_by());
     }
-    if (cached_has_bits & 0x00200000u) {
-      max_logical_lob_size_ = from.max_logical_lob_size_;
+    if (from.has_max_columns_in_select()) {
+      set_max_columns_in_select(from.max_columns_in_select());
     }
-    if (cached_has_bits & 0x00400000u) {
-      max_row_size_ = from.max_row_size_;
+    if (from.has_max_cursor_name_length()) {
+      set_max_cursor_name_length(from.max_cursor_name_length());
     }
-    if (cached_has_bits & 0x00800000u) {
-      max_schema_name_length_ = from.max_schema_name_length_;
+    if (from.has_max_logical_lob_size()) {
+      set_max_logical_lob_size(from.max_logical_lob_size());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 4278190080u) {
-    if (cached_has_bits & 0x01000000u) {
-      max_statement_length_ = from.max_statement_length_;
+  if (from._has_bits_[24 / 32] & (0xffu << (24 % 32))) {
+    if (from.has_max_row_size()) {
+      set_max_row_size(from.max_row_size());
     }
-    if (cached_has_bits & 0x02000000u) {
-      max_statements_ = from.max_statements_;
+    if (from.has_max_schema_name_length()) {
+      set_max_schema_name_length(from.max_schema_name_length());
     }
-    if (cached_has_bits & 0x04000000u) {
-      max_table_name_length_ = from.max_table_name_length_;
+    if (from.has_max_statement_length()) {
+      set_max_statement_length(from.max_statement_length());
     }
-    if (cached_has_bits & 0x08000000u) {
-      max_tables_in_select_ = from.max_tables_in_select_;
+    if (from.has_max_statements()) {
+      set_max_statements(from.max_statements());
     }
-    if (cached_has_bits & 0x10000000u) {
-      max_user_name_length_ = from.max_user_name_length_;
+    if (from.has_max_table_name_length()) {
+      set_max_table_name_length(from.max_table_name_length());
     }
-    if (cached_has_bits & 0x20000000u) {
-      like_escape_clause_supported_ = from.like_escape_clause_supported_;
+    if (from.has_max_tables_in_select()) {
+      set_max_tables_in_select(from.max_tables_in_select());
     }
-    if (cached_has_bits & 0x40000000u) {
-      null_plus_non_null_equals_null_ = from.null_plus_non_null_equals_null_;
+    if (from.has_max_user_name_length()) {
+      set_max_user_name_length(from.max_user_name_length());
     }
-    if (cached_has_bits & 0x80000000u) {
-      read_only_ = from.read_only_;
+    if (from.has_null_collation()) {
+      set_null_collation(from.null_collation());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
-  cached_has_bits = from._has_bits_[1];
-  if (cached_has_bits & 63u) {
-    if (cached_has_bits & 0x00000001u) {
-      select_for_update_supported_ = from.select_for_update_supported_;
+  if (from._has_bits_[32 / 32] & (0xffu << (32 % 32))) {
+    if (from.has_null_plus_non_null_equals_null()) {
+      set_null_plus_non_null_equals_null(from.null_plus_non_null_equals_null());
     }
-    if (cached_has_bits & 0x00000002u) {
-      null_collation_ = from.null_collation_;
+    if (from.has_quoted_identifier_casing()) {
+      set_quoted_identifier_casing(from.quoted_identifier_casing());
     }
-    if (cached_has_bits & 0x00000004u) {
-      quoted_identifier_casing_ = from.quoted_identifier_casing_;
+    if (from.has_read_only()) {
+      set_read_only(from.read_only());
     }
-    if (cached_has_bits & 0x00000008u) {
-      transaction_supported_ = from.transaction_supported_;
+    if (from.has_schema_term()) {
+      set_schema_term(from.schema_term());
     }
-    if (cached_has_bits & 0x00000010u) {
-      correlation_names_support_ = from.correlation_names_support_;
+    if (from.has_search_escape_string()) {
+      set_search_escape_string(from.search_escape_string());
     }
-    if (cached_has_bits & 0x00000020u) {
-      group_by_support_ = from.group_by_support_;
-    }
-    _has_bits_[1] |= cached_has_bits;
   }
+  if (from._has_bits_[40 / 32] & (0xffu << (40 % 32))) {
+    if (from.has_select_for_update_supported()) {
+      set_select_for_update_supported(from.select_for_update_supported());
+    }
+    if (from.has_special_characters()) {
+      set_special_characters(from.special_characters());
+    }
+    if (from.has_table_term()) {
+      set_table_term(from.table_term());
+    }
+    if (from.has_transaction_supported()) {
+      set_transaction_supported(from.transaction_supported());
+    }
+  }
+  if (from._has_bits_[49 / 32] & (0xffu << (49 % 32))) {
+    if (from.has_current_schema()) {
+      set_current_schema(from.current_schema());
+    }
+  }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void ServerMeta::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.ServerMeta)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void ServerMeta::CopyFrom(const ServerMeta& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.ServerMeta)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool ServerMeta::IsInitialized() const {
-  if (!::google::protobuf::internal::AllAreInitialized(this->convert_support())) return false;
+
+  for (int i = 0; i < convert_support_size(); i++) {
+    if (!this->convert_support(i).IsInitialized()) return false;
+  }
   return true;
 }
 
 void ServerMeta::Swap(ServerMeta* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void ServerMeta::InternalSwap(ServerMeta* other) {
-  using std::swap;
-  collate_support_.InternalSwap(&other->collate_support_);
-  CastToBase(&convert_support_)->InternalSwap(CastToBase(&other->convert_support_));
-  date_time_functions_.InternalSwap(CastToBase(&other->date_time_functions_));
-  date_time_literals_support_.InternalSwap(&other->date_time_literals_support_);
-  numeric_functions_.InternalSwap(CastToBase(&other->numeric_functions_));
-  order_by_support_.InternalSwap(&other->order_by_support_);
-  outer_join_support_.InternalSwap(&other->outer_join_support_);
-  sql_keywords_.InternalSwap(CastToBase(&other->sql_keywords_));
-  string_functions_.InternalSwap(CastToBase(&other->string_functions_));
-  subquery_support_.InternalSwap(&other->subquery_support_);
-  system_functions_.InternalSwap(CastToBase(&other->system_functions_));
-  union_support_.InternalSwap(&other->union_support_);
-  catalog_separator_.Swap(&other->catalog_separator_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  catalog_term_.Swap(&other->catalog_term_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  identifier_quote_string_.Swap(&other->identifier_quote_string_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  schema_term_.Swap(&other->schema_term_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  search_escape_string_.Swap(&other->search_escape_string_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  special_characters_.Swap(&other->special_characters_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  table_term_.Swap(&other->table_term_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  current_schema_.Swap(&other->current_schema_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(all_tables_selectable_, other->all_tables_selectable_);
-  swap(blob_included_in_max_row_size_, other->blob_included_in_max_row_size_);
-  swap(catalog_at_start_, other->catalog_at_start_);
-  swap(column_aliasing_supported_, other->column_aliasing_supported_);
-  swap(identifier_casing_, other->identifier_casing_);
-  swap(max_binary_literal_length_, other->max_binary_literal_length_);
-  swap(max_catalog_name_length_, other->max_catalog_name_length_);
-  swap(max_char_literal_length_, other->max_char_literal_length_);
-  swap(max_column_name_length_, other->max_column_name_length_);
-  swap(max_columns_in_group_by_, other->max_columns_in_group_by_);
-  swap(max_columns_in_order_by_, other->max_columns_in_order_by_);
-  swap(max_columns_in_select_, other->max_columns_in_select_);
-  swap(max_cursor_name_length_, other->max_cursor_name_length_);
-  swap(max_logical_lob_size_, other->max_logical_lob_size_);
-  swap(max_row_size_, other->max_row_size_);
-  swap(max_schema_name_length_, other->max_schema_name_length_);
-  swap(max_statement_length_, other->max_statement_length_);
-  swap(max_statements_, other->max_statements_);
-  swap(max_table_name_length_, other->max_table_name_length_);
-  swap(max_tables_in_select_, other->max_tables_in_select_);
-  swap(max_user_name_length_, other->max_user_name_length_);
-  swap(like_escape_clause_supported_, other->like_escape_clause_supported_);
-  swap(null_plus_non_null_equals_null_, other->null_plus_non_null_equals_null_);
-  swap(read_only_, other->read_only_);
-  swap(select_for_update_supported_, other->select_for_update_supported_);
-  swap(null_collation_, other->null_collation_);
-  swap(quoted_identifier_casing_, other->quoted_identifier_casing_);
-  swap(transaction_supported_, other->transaction_supported_);
-  swap(correlation_names_support_, other->correlation_names_support_);
-  swap(group_by_support_, other->group_by_support_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  swap(_has_bits_[1], other->_has_bits_[1]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(all_tables_selectable_, other->all_tables_selectable_);
+    std::swap(blob_included_in_max_row_size_, other->blob_included_in_max_row_size_);
+    std::swap(catalog_at_start_, other->catalog_at_start_);
+    std::swap(catalog_separator_, other->catalog_separator_);
+    std::swap(catalog_term_, other->catalog_term_);
+    collate_support_.Swap(&other->collate_support_);
+    std::swap(column_aliasing_supported_, other->column_aliasing_supported_);
+    convert_support_.Swap(&other->convert_support_);
+    std::swap(correlation_names_support_, other->correlation_names_support_);
+    date_time_functions_.Swap(&other->date_time_functions_);
+    date_time_literals_support_.Swap(&other->date_time_literals_support_);
+    std::swap(group_by_support_, other->group_by_support_);
+    std::swap(identifier_casing_, other->identifier_casing_);
+    std::swap(identifier_quote_string_, other->identifier_quote_string_);
+    std::swap(like_escape_clause_supported_, other->like_escape_clause_supported_);
+    std::swap(max_binary_literal_length_, other->max_binary_literal_length_);
+    std::swap(max_catalog_name_length_, other->max_catalog_name_length_);
+    std::swap(max_char_literal_length_, other->max_char_literal_length_);
+    std::swap(max_column_name_length_, other->max_column_name_length_);
+    std::swap(max_columns_in_group_by_, other->max_columns_in_group_by_);
+    std::swap(max_columns_in_order_by_, other->max_columns_in_order_by_);
+    std::swap(max_columns_in_select_, other->max_columns_in_select_);
+    std::swap(max_cursor_name_length_, other->max_cursor_name_length_);
+    std::swap(max_logical_lob_size_, other->max_logical_lob_size_);
+    std::swap(max_row_size_, other->max_row_size_);
+    std::swap(max_schema_name_length_, other->max_schema_name_length_);
+    std::swap(max_statement_length_, other->max_statement_length_);
+    std::swap(max_statements_, other->max_statements_);
+    std::swap(max_table_name_length_, other->max_table_name_length_);
+    std::swap(max_tables_in_select_, other->max_tables_in_select_);
+    std::swap(max_user_name_length_, other->max_user_name_length_);
+    std::swap(null_collation_, other->null_collation_);
+    std::swap(null_plus_non_null_equals_null_, other->null_plus_non_null_equals_null_);
+    numeric_functions_.Swap(&other->numeric_functions_);
+    order_by_support_.Swap(&other->order_by_support_);
+    outer_join_support_.Swap(&other->outer_join_support_);
+    std::swap(quoted_identifier_casing_, other->quoted_identifier_casing_);
+    std::swap(read_only_, other->read_only_);
+    std::swap(schema_term_, other->schema_term_);
+    std::swap(search_escape_string_, other->search_escape_string_);
+    std::swap(select_for_update_supported_, other->select_for_update_supported_);
+    std::swap(special_characters_, other->special_characters_);
+    sql_keywords_.Swap(&other->sql_keywords_);
+    string_functions_.Swap(&other->string_functions_);
+    subquery_support_.Swap(&other->subquery_support_);
+    system_functions_.Swap(&other->system_functions_);
+    std::swap(table_term_, other->table_term_);
+    std::swap(transaction_supported_, other->transaction_supported_);
+    union_support_.Swap(&other->union_support_);
+    std::swap(current_schema_, other->current_schema_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    std::swap(_has_bits_[1], other->_has_bits_[1]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata ServerMeta::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = ServerMeta_descriptor_;
+  metadata.reflection = ServerMeta_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void RunQuery::InitAsDefaultInstance() {
-  ::exec::user::_RunQuery_default_instance_._instance.get_mutable()->prepared_statement_handle_ = const_cast< ::exec::user::PreparedStatementHandle*>(
-      ::exec::user::PreparedStatementHandle::internal_default_instance());
-}
-void RunQuery::clear_fragments() {
-  fragments_.Clear();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int RunQuery::kResultsModeFieldNumber;
 const int RunQuery::kTypeFieldNumber;
 const int RunQuery::kPlanFieldNumber;
 const int RunQuery::kFragmentsFieldNumber;
 const int RunQuery::kPreparedStatementHandleFieldNumber;
 const int RunQuery::kAutolimitRowcountFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 RunQuery::RunQuery()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_User_2eproto::scc_info_RunQuery.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.user.RunQuery)
 }
+
+void RunQuery::InitAsDefaultInstance() {
+  prepared_statement_handle_ = const_cast< ::exec::user::PreparedStatementHandle*>(&::exec::user::PreparedStatementHandle::default_instance());
+}
+
 RunQuery::RunQuery(const RunQuery& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      fragments_(from.fragments_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  plan_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_plan()) {
-    plan_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.plan_);
-  }
-  if (from.has_prepared_statement_handle()) {
-    prepared_statement_handle_ = new ::exec::user::PreparedStatementHandle(*from.prepared_statement_handle_);
-  } else {
-    prepared_statement_handle_ = NULL;
-  }
-  ::memcpy(&autolimit_rowcount_, &from.autolimit_rowcount_,
-    static_cast<size_t>(reinterpret_cast<char*>(&type_) -
-    reinterpret_cast<char*>(&autolimit_rowcount_)) + sizeof(type_));
-  // @@protoc_insertion_point(copy_constructor:exec.user.RunQuery)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void RunQuery::SharedCtor() {
-  plan_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&prepared_statement_handle_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&autolimit_rowcount_) -
-      reinterpret_cast<char*>(&prepared_statement_handle_)) + sizeof(autolimit_rowcount_));
+  _cached_size_ = 0;
   results_mode_ = 1;
   type_ = 1;
+  plan_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  prepared_statement_handle_ = NULL;
+  autolimit_rowcount_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 RunQuery::~RunQuery() {
-  // @@protoc_insertion_point(destructor:exec.user.RunQuery)
   SharedDtor();
 }
 
 void RunQuery::SharedDtor() {
-  plan_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete prepared_statement_handle_;
+  if (plan_ != &::google::protobuf::internal::kEmptyString) {
+    delete plan_;
+  }
+  if (this != default_instance_) {
+    delete prepared_statement_handle_;
+  }
 }
 
 void RunQuery::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* RunQuery::descriptor() {
-  ::protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return RunQuery_descriptor_;
 }
 
 const RunQuery& RunQuery::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_User_2eproto::scc_info_RunQuery.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_User_2eproto();
+  return *default_instance_;
 }
 
+RunQuery* RunQuery::default_instance_ = NULL;
+
+RunQuery* RunQuery::New() const {
+  return new RunQuery;
+}
 
 void RunQuery::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.user.RunQuery)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  fragments_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      plan_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(prepared_statement_handle_ != NULL);
-      prepared_statement_handle_->Clear();
-    }
-  }
-  if (cached_has_bits & 28u) {
-    autolimit_rowcount_ = 0;
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     results_mode_ = 1;
     type_ = 1;
+    if (has_plan()) {
+      if (plan_ != &::google::protobuf::internal::kEmptyString) {
+        plan_->clear();
+      }
+    }
+    if (has_prepared_statement_handle()) {
+      if (prepared_statement_handle_ != NULL) prepared_statement_handle_->::exec::user::PreparedStatementHandle::Clear();
+    }
+    autolimit_rowcount_ = 0;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  fragments_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool RunQuery::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.user.RunQuery)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.user.QueryResultsMode results_mode = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -16235,19 +14827,20 @@
           if (::exec::user::QueryResultsMode_IsValid(value)) {
             set_results_mode(static_cast< ::exec::user::QueryResultsMode >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_type;
         break;
       }
 
       // optional .exec.shared.QueryType type = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_type:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -16255,246 +14848,193 @@
           if (::exec::shared::QueryType_IsValid(value)) {
             set_type(static_cast< ::exec::shared::QueryType >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                2, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(2, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_plan;
         break;
       }
 
       // optional string plan = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_plan:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_plan()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->plan().data(), static_cast<int>(this->plan().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.user.RunQuery.plan");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->plan().data(), this->plan().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_fragments;
         break;
       }
 
       // repeated .exec.bit.control.PlanFragment fragments = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_fragments:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_fragments()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_fragments;
+        if (input->ExpectTag(42)) goto parse_prepared_statement_handle;
         break;
       }
 
       // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_prepared_statement_handle:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_prepared_statement_handle()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(48)) goto parse_autolimit_rowcount;
         break;
       }
 
       // optional int32 autolimit_rowcount = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(48u /* 48 & 0xFF */)) {
-          set_has_autolimit_rowcount();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_autolimit_rowcount:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &autolimit_rowcount_)));
+          set_has_autolimit_rowcount();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.user.RunQuery)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.user.RunQuery)
-  return false;
 #undef DO_
 }
 
 void RunQuery::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.user.RunQuery)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.user.QueryResultsMode results_mode = 1;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_results_mode()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->results_mode(), output);
   }
 
   // optional .exec.shared.QueryType type = 2;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       2, this->type(), output);
   }
 
   // optional string plan = 3;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->plan().data(), static_cast<int>(this->plan().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RunQuery.plan");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_plan()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->plan().data(), this->plan().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       3, this->plan(), output);
   }
 
   // repeated .exec.bit.control.PlanFragment fragments = 4;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragments_size()); i < n; i++) {
+  for (int i = 0; i < this->fragments_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      4,
-      this->fragments(static_cast<int>(i)),
-      output);
+      4, this->fragments(i), output);
   }
 
   // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_prepared_statement_handle()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      5, this->_internal_prepared_statement_handle(), output);
+      5, this->prepared_statement_handle(), output);
   }
 
   // optional int32 autolimit_rowcount = 6;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_autolimit_rowcount()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(6, this->autolimit_rowcount(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.user.RunQuery)
 }
 
-::google::protobuf::uint8* RunQuery::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.user.RunQuery)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* RunQuery::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.user.QueryResultsMode results_mode = 1;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_results_mode()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->results_mode(), target);
   }
 
   // optional .exec.shared.QueryType type = 2;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_type()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       2, this->type(), target);
   }
 
   // optional string plan = 3;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->plan().data(), static_cast<int>(this->plan().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.user.RunQuery.plan");
+  if (has_plan()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->plan().data(), this->plan().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         3, this->plan(), target);
   }
 
   // repeated .exec.bit.control.PlanFragment fragments = 4;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragments_size()); i < n; i++) {
+  for (int i = 0; i < this->fragments_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        4, this->fragments(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        4, this->fragments(i), target);
   }
 
   // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_prepared_statement_handle()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        5, this->_internal_prepared_statement_handle(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        5, this->prepared_statement_handle(), target);
   }
 
   // optional int32 autolimit_rowcount = 6;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_autolimit_rowcount()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(6, this->autolimit_rowcount(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.user.RunQuery)
   return target;
 }
 
-size_t RunQuery::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.user.RunQuery)
-  size_t total_size = 0;
+int RunQuery::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.bit.control.PlanFragment fragments = 4;
-  {
-    unsigned int count = static_cast<unsigned int>(this->fragments_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->fragments(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 31u) {
-    // optional string plan = 3;
-    if (has_plan()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->plan());
-    }
-
-    // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
-    if (has_prepared_statement_handle()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *prepared_statement_handle_);
-    }
-
-    // optional int32 autolimit_rowcount = 6;
-    if (has_autolimit_rowcount()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int32Size(
-          this->autolimit_rowcount());
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.user.QueryResultsMode results_mode = 1;
     if (has_results_mode()) {
       total_size += 1 +
@@ -16507,197 +15047,125 @@
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
     }
 
+    // optional string plan = 3;
+    if (has_plan()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->plan());
+    }
+
+    // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
+    if (has_prepared_statement_handle()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->prepared_statement_handle());
+    }
+
+    // optional int32 autolimit_rowcount = 6;
+    if (has_autolimit_rowcount()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->autolimit_rowcount());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.bit.control.PlanFragment fragments = 4;
+  total_size += 1 * this->fragments_size();
+  for (int i = 0; i < this->fragments_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->fragments(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void RunQuery::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.user.RunQuery)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const RunQuery* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const RunQuery>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const RunQuery*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.user.RunQuery)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.user.RunQuery)
     MergeFrom(*source);
   }
 }
 
 void RunQuery::MergeFrom(const RunQuery& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.user.RunQuery)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   fragments_.MergeFrom(from.fragments_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 31u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_plan();
-      plan_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.plan_);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_results_mode()) {
+      set_results_mode(from.results_mode());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_type()) {
+      set_type(from.type());
+    }
+    if (from.has_plan()) {
+      set_plan(from.plan());
+    }
+    if (from.has_prepared_statement_handle()) {
       mutable_prepared_statement_handle()->::exec::user::PreparedStatementHandle::MergeFrom(from.prepared_statement_handle());
     }
-    if (cached_has_bits & 0x00000004u) {
-      autolimit_rowcount_ = from.autolimit_rowcount_;
+    if (from.has_autolimit_rowcount()) {
+      set_autolimit_rowcount(from.autolimit_rowcount());
     }
-    if (cached_has_bits & 0x00000008u) {
-      results_mode_ = from.results_mode_;
-    }
-    if (cached_has_bits & 0x00000010u) {
-      type_ = from.type_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void RunQuery::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.user.RunQuery)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void RunQuery::CopyFrom(const RunQuery& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.user.RunQuery)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool RunQuery::IsInitialized() const {
+
   return true;
 }
 
 void RunQuery::Swap(RunQuery* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void RunQuery::InternalSwap(RunQuery* other) {
-  using std::swap;
-  CastToBase(&fragments_)->InternalSwap(CastToBase(&other->fragments_));
-  plan_.Swap(&other->plan_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(prepared_statement_handle_, other->prepared_statement_handle_);
-  swap(autolimit_rowcount_, other->autolimit_rowcount_);
-  swap(results_mode_, other->results_mode_);
-  swap(type_, other->type_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(results_mode_, other->results_mode_);
+    std::swap(type_, other->type_);
+    std::swap(plan_, other->plan_);
+    fragments_.Swap(&other->fragments_);
+    std::swap(prepared_statement_handle_, other->prepared_statement_handle_);
+    std::swap(autolimit_rowcount_, other->autolimit_rowcount_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata RunQuery::GetMetadata() const {
-  protobuf_User_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_User_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = RunQuery_descriptor_;
+  metadata.reflection = RunQuery_reflection_;
+  return metadata;
 }
 
 
 // @@protoc_insertion_point(namespace_scope)
+
 }  // namespace user
 }  // namespace exec
-namespace google {
-namespace protobuf {
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::Property* Arena::CreateMaybeMessage< ::exec::user::Property >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::Property >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::UserProperties* Arena::CreateMaybeMessage< ::exec::user::UserProperties >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::UserProperties >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::RpcEndpointInfos* Arena::CreateMaybeMessage< ::exec::user::RpcEndpointInfos >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::RpcEndpointInfos >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::UserToBitHandshake* Arena::CreateMaybeMessage< ::exec::user::UserToBitHandshake >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::UserToBitHandshake >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::RequestResults* Arena::CreateMaybeMessage< ::exec::user::RequestResults >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::RequestResults >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetQueryPlanFragments* Arena::CreateMaybeMessage< ::exec::user::GetQueryPlanFragments >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetQueryPlanFragments >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::QueryPlanFragments* Arena::CreateMaybeMessage< ::exec::user::QueryPlanFragments >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::QueryPlanFragments >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::BitToUserHandshake* Arena::CreateMaybeMessage< ::exec::user::BitToUserHandshake >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::BitToUserHandshake >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::LikeFilter* Arena::CreateMaybeMessage< ::exec::user::LikeFilter >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::LikeFilter >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetCatalogsReq* Arena::CreateMaybeMessage< ::exec::user::GetCatalogsReq >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetCatalogsReq >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::CatalogMetadata* Arena::CreateMaybeMessage< ::exec::user::CatalogMetadata >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::CatalogMetadata >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetCatalogsResp* Arena::CreateMaybeMessage< ::exec::user::GetCatalogsResp >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetCatalogsResp >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetSchemasReq* Arena::CreateMaybeMessage< ::exec::user::GetSchemasReq >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetSchemasReq >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::SchemaMetadata* Arena::CreateMaybeMessage< ::exec::user::SchemaMetadata >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::SchemaMetadata >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetSchemasResp* Arena::CreateMaybeMessage< ::exec::user::GetSchemasResp >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetSchemasResp >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetTablesReq* Arena::CreateMaybeMessage< ::exec::user::GetTablesReq >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetTablesReq >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::TableMetadata* Arena::CreateMaybeMessage< ::exec::user::TableMetadata >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::TableMetadata >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetTablesResp* Arena::CreateMaybeMessage< ::exec::user::GetTablesResp >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetTablesResp >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetColumnsReq* Arena::CreateMaybeMessage< ::exec::user::GetColumnsReq >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetColumnsReq >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::ColumnMetadata* Arena::CreateMaybeMessage< ::exec::user::ColumnMetadata >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::ColumnMetadata >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetColumnsResp* Arena::CreateMaybeMessage< ::exec::user::GetColumnsResp >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetColumnsResp >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::CreatePreparedStatementReq* Arena::CreateMaybeMessage< ::exec::user::CreatePreparedStatementReq >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::CreatePreparedStatementReq >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::ResultColumnMetadata* Arena::CreateMaybeMessage< ::exec::user::ResultColumnMetadata >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::ResultColumnMetadata >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::PreparedStatementHandle* Arena::CreateMaybeMessage< ::exec::user::PreparedStatementHandle >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::PreparedStatementHandle >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::PreparedStatement* Arena::CreateMaybeMessage< ::exec::user::PreparedStatement >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::PreparedStatement >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::CreatePreparedStatementResp* Arena::CreateMaybeMessage< ::exec::user::CreatePreparedStatementResp >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::CreatePreparedStatementResp >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetServerMetaReq* Arena::CreateMaybeMessage< ::exec::user::GetServerMetaReq >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetServerMetaReq >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::ConvertSupport* Arena::CreateMaybeMessage< ::exec::user::ConvertSupport >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::ConvertSupport >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::GetServerMetaResp* Arena::CreateMaybeMessage< ::exec::user::GetServerMetaResp >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::GetServerMetaResp >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::ServerMeta* Arena::CreateMaybeMessage< ::exec::user::ServerMeta >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::ServerMeta >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::user::RunQuery* Arena::CreateMaybeMessage< ::exec::user::RunQuery >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::user::RunQuery >(arena);
-}
-}  // namespace protobuf
-}  // namespace google
 
 // @@protoc_insertion_point(global_scope)
diff --git a/contrib/native/client/src/protobuf/User.pb.h b/contrib/native/client/src/protobuf/User.pb.h
index 164c3d8..81fa643 100644
--- a/contrib/native/client/src/protobuf/User.pb.h
+++ b/contrib/native/client/src/protobuf/User.pb.h
@@ -1,34 +1,28 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: User.proto
 
-#ifndef PROTOBUF_INCLUDED_User_2eproto
-#define PROTOBUF_INCLUDED_User_2eproto
+#ifndef PROTOBUF_User_2eproto__INCLUDED
+#define PROTOBUF_User_2eproto__INCLUDED
 
 #include <string>
 
 #include <google/protobuf/stubs/common.h>
 
-#if GOOGLE_PROTOBUF_VERSION < 3006001
+#if GOOGLE_PROTOBUF_VERSION < 2005000
 #error This file was generated by a newer version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please update
 #error your headers.
 #endif
-#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
+#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
 #error This file was generated by an older version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please
 #error regenerate this file with a newer version of protoc.
 #endif
 
-#include <google/protobuf/io/coded_stream.h>
-#include <google/protobuf/arena.h>
-#include <google/protobuf/arenastring.h>
-#include <google/protobuf/generated_message_table_driven.h>
 #include <google/protobuf/generated_message_util.h>
-#include <google/protobuf/inlined_string_field.h>
-#include <google/protobuf/metadata.h>
 #include <google/protobuf/message.h>
-#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
-#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/repeated_field.h>
+#include <google/protobuf/extension_set.h>
 #include <google/protobuf/generated_enum_reflection.h>
 #include <google/protobuf/unknown_field_set.h>
 #include "SchemaDef.pb.h"
@@ -38,154 +32,46 @@
 #include "BitControl.pb.h"
 #include "ExecutionProtos.pb.h"
 // @@protoc_insertion_point(includes)
-#define PROTOBUF_INTERNAL_EXPORT_protobuf_User_2eproto 
 
-namespace protobuf_User_2eproto {
-// Internal implementation detail -- do not use these members.
-struct TableStruct {
-  static const ::google::protobuf::internal::ParseTableField entries[];
-  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
-  static const ::google::protobuf::internal::ParseTable schema[31];
-  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
-  static const ::google::protobuf::internal::SerializationTable serialization_table[];
-  static const ::google::protobuf::uint32 offsets[];
-};
-void AddDescriptors();
-}  // namespace protobuf_User_2eproto
 namespace exec {
 namespace user {
-class BitToUserHandshake;
-class BitToUserHandshakeDefaultTypeInternal;
-extern BitToUserHandshakeDefaultTypeInternal _BitToUserHandshake_default_instance_;
-class CatalogMetadata;
-class CatalogMetadataDefaultTypeInternal;
-extern CatalogMetadataDefaultTypeInternal _CatalogMetadata_default_instance_;
-class ColumnMetadata;
-class ColumnMetadataDefaultTypeInternal;
-extern ColumnMetadataDefaultTypeInternal _ColumnMetadata_default_instance_;
-class ConvertSupport;
-class ConvertSupportDefaultTypeInternal;
-extern ConvertSupportDefaultTypeInternal _ConvertSupport_default_instance_;
-class CreatePreparedStatementReq;
-class CreatePreparedStatementReqDefaultTypeInternal;
-extern CreatePreparedStatementReqDefaultTypeInternal _CreatePreparedStatementReq_default_instance_;
-class CreatePreparedStatementResp;
-class CreatePreparedStatementRespDefaultTypeInternal;
-extern CreatePreparedStatementRespDefaultTypeInternal _CreatePreparedStatementResp_default_instance_;
-class GetCatalogsReq;
-class GetCatalogsReqDefaultTypeInternal;
-extern GetCatalogsReqDefaultTypeInternal _GetCatalogsReq_default_instance_;
-class GetCatalogsResp;
-class GetCatalogsRespDefaultTypeInternal;
-extern GetCatalogsRespDefaultTypeInternal _GetCatalogsResp_default_instance_;
-class GetColumnsReq;
-class GetColumnsReqDefaultTypeInternal;
-extern GetColumnsReqDefaultTypeInternal _GetColumnsReq_default_instance_;
-class GetColumnsResp;
-class GetColumnsRespDefaultTypeInternal;
-extern GetColumnsRespDefaultTypeInternal _GetColumnsResp_default_instance_;
-class GetQueryPlanFragments;
-class GetQueryPlanFragmentsDefaultTypeInternal;
-extern GetQueryPlanFragmentsDefaultTypeInternal _GetQueryPlanFragments_default_instance_;
-class GetSchemasReq;
-class GetSchemasReqDefaultTypeInternal;
-extern GetSchemasReqDefaultTypeInternal _GetSchemasReq_default_instance_;
-class GetSchemasResp;
-class GetSchemasRespDefaultTypeInternal;
-extern GetSchemasRespDefaultTypeInternal _GetSchemasResp_default_instance_;
-class GetServerMetaReq;
-class GetServerMetaReqDefaultTypeInternal;
-extern GetServerMetaReqDefaultTypeInternal _GetServerMetaReq_default_instance_;
-class GetServerMetaResp;
-class GetServerMetaRespDefaultTypeInternal;
-extern GetServerMetaRespDefaultTypeInternal _GetServerMetaResp_default_instance_;
-class GetTablesReq;
-class GetTablesReqDefaultTypeInternal;
-extern GetTablesReqDefaultTypeInternal _GetTablesReq_default_instance_;
-class GetTablesResp;
-class GetTablesRespDefaultTypeInternal;
-extern GetTablesRespDefaultTypeInternal _GetTablesResp_default_instance_;
-class LikeFilter;
-class LikeFilterDefaultTypeInternal;
-extern LikeFilterDefaultTypeInternal _LikeFilter_default_instance_;
-class PreparedStatement;
-class PreparedStatementDefaultTypeInternal;
-extern PreparedStatementDefaultTypeInternal _PreparedStatement_default_instance_;
-class PreparedStatementHandle;
-class PreparedStatementHandleDefaultTypeInternal;
-extern PreparedStatementHandleDefaultTypeInternal _PreparedStatementHandle_default_instance_;
+
+// Internal implementation detail -- do not call these.
+void  protobuf_AddDesc_User_2eproto();
+void protobuf_AssignDesc_User_2eproto();
+void protobuf_ShutdownFile_User_2eproto();
+
 class Property;
-class PropertyDefaultTypeInternal;
-extern PropertyDefaultTypeInternal _Property_default_instance_;
-class QueryPlanFragments;
-class QueryPlanFragmentsDefaultTypeInternal;
-extern QueryPlanFragmentsDefaultTypeInternal _QueryPlanFragments_default_instance_;
-class RequestResults;
-class RequestResultsDefaultTypeInternal;
-extern RequestResultsDefaultTypeInternal _RequestResults_default_instance_;
-class ResultColumnMetadata;
-class ResultColumnMetadataDefaultTypeInternal;
-extern ResultColumnMetadataDefaultTypeInternal _ResultColumnMetadata_default_instance_;
-class RpcEndpointInfos;
-class RpcEndpointInfosDefaultTypeInternal;
-extern RpcEndpointInfosDefaultTypeInternal _RpcEndpointInfos_default_instance_;
-class RunQuery;
-class RunQueryDefaultTypeInternal;
-extern RunQueryDefaultTypeInternal _RunQuery_default_instance_;
-class SchemaMetadata;
-class SchemaMetadataDefaultTypeInternal;
-extern SchemaMetadataDefaultTypeInternal _SchemaMetadata_default_instance_;
-class ServerMeta;
-class ServerMetaDefaultTypeInternal;
-extern ServerMetaDefaultTypeInternal _ServerMeta_default_instance_;
-class TableMetadata;
-class TableMetadataDefaultTypeInternal;
-extern TableMetadataDefaultTypeInternal _TableMetadata_default_instance_;
 class UserProperties;
-class UserPropertiesDefaultTypeInternal;
-extern UserPropertiesDefaultTypeInternal _UserProperties_default_instance_;
+class RpcEndpointInfos;
 class UserToBitHandshake;
-class UserToBitHandshakeDefaultTypeInternal;
-extern UserToBitHandshakeDefaultTypeInternal _UserToBitHandshake_default_instance_;
-}  // namespace user
-}  // namespace exec
-namespace google {
-namespace protobuf {
-template<> ::exec::user::BitToUserHandshake* Arena::CreateMaybeMessage<::exec::user::BitToUserHandshake>(Arena*);
-template<> ::exec::user::CatalogMetadata* Arena::CreateMaybeMessage<::exec::user::CatalogMetadata>(Arena*);
-template<> ::exec::user::ColumnMetadata* Arena::CreateMaybeMessage<::exec::user::ColumnMetadata>(Arena*);
-template<> ::exec::user::ConvertSupport* Arena::CreateMaybeMessage<::exec::user::ConvertSupport>(Arena*);
-template<> ::exec::user::CreatePreparedStatementReq* Arena::CreateMaybeMessage<::exec::user::CreatePreparedStatementReq>(Arena*);
-template<> ::exec::user::CreatePreparedStatementResp* Arena::CreateMaybeMessage<::exec::user::CreatePreparedStatementResp>(Arena*);
-template<> ::exec::user::GetCatalogsReq* Arena::CreateMaybeMessage<::exec::user::GetCatalogsReq>(Arena*);
-template<> ::exec::user::GetCatalogsResp* Arena::CreateMaybeMessage<::exec::user::GetCatalogsResp>(Arena*);
-template<> ::exec::user::GetColumnsReq* Arena::CreateMaybeMessage<::exec::user::GetColumnsReq>(Arena*);
-template<> ::exec::user::GetColumnsResp* Arena::CreateMaybeMessage<::exec::user::GetColumnsResp>(Arena*);
-template<> ::exec::user::GetQueryPlanFragments* Arena::CreateMaybeMessage<::exec::user::GetQueryPlanFragments>(Arena*);
-template<> ::exec::user::GetSchemasReq* Arena::CreateMaybeMessage<::exec::user::GetSchemasReq>(Arena*);
-template<> ::exec::user::GetSchemasResp* Arena::CreateMaybeMessage<::exec::user::GetSchemasResp>(Arena*);
-template<> ::exec::user::GetServerMetaReq* Arena::CreateMaybeMessage<::exec::user::GetServerMetaReq>(Arena*);
-template<> ::exec::user::GetServerMetaResp* Arena::CreateMaybeMessage<::exec::user::GetServerMetaResp>(Arena*);
-template<> ::exec::user::GetTablesReq* Arena::CreateMaybeMessage<::exec::user::GetTablesReq>(Arena*);
-template<> ::exec::user::GetTablesResp* Arena::CreateMaybeMessage<::exec::user::GetTablesResp>(Arena*);
-template<> ::exec::user::LikeFilter* Arena::CreateMaybeMessage<::exec::user::LikeFilter>(Arena*);
-template<> ::exec::user::PreparedStatement* Arena::CreateMaybeMessage<::exec::user::PreparedStatement>(Arena*);
-template<> ::exec::user::PreparedStatementHandle* Arena::CreateMaybeMessage<::exec::user::PreparedStatementHandle>(Arena*);
-template<> ::exec::user::Property* Arena::CreateMaybeMessage<::exec::user::Property>(Arena*);
-template<> ::exec::user::QueryPlanFragments* Arena::CreateMaybeMessage<::exec::user::QueryPlanFragments>(Arena*);
-template<> ::exec::user::RequestResults* Arena::CreateMaybeMessage<::exec::user::RequestResults>(Arena*);
-template<> ::exec::user::ResultColumnMetadata* Arena::CreateMaybeMessage<::exec::user::ResultColumnMetadata>(Arena*);
-template<> ::exec::user::RpcEndpointInfos* Arena::CreateMaybeMessage<::exec::user::RpcEndpointInfos>(Arena*);
-template<> ::exec::user::RunQuery* Arena::CreateMaybeMessage<::exec::user::RunQuery>(Arena*);
-template<> ::exec::user::SchemaMetadata* Arena::CreateMaybeMessage<::exec::user::SchemaMetadata>(Arena*);
-template<> ::exec::user::ServerMeta* Arena::CreateMaybeMessage<::exec::user::ServerMeta>(Arena*);
-template<> ::exec::user::TableMetadata* Arena::CreateMaybeMessage<::exec::user::TableMetadata>(Arena*);
-template<> ::exec::user::UserProperties* Arena::CreateMaybeMessage<::exec::user::UserProperties>(Arena*);
-template<> ::exec::user::UserToBitHandshake* Arena::CreateMaybeMessage<::exec::user::UserToBitHandshake>(Arena*);
-}  // namespace protobuf
-}  // namespace google
-namespace exec {
-namespace user {
+class RequestResults;
+class GetQueryPlanFragments;
+class QueryPlanFragments;
+class BitToUserHandshake;
+class LikeFilter;
+class GetCatalogsReq;
+class CatalogMetadata;
+class GetCatalogsResp;
+class GetSchemasReq;
+class SchemaMetadata;
+class GetSchemasResp;
+class GetTablesReq;
+class TableMetadata;
+class GetTablesResp;
+class GetColumnsReq;
+class ColumnMetadata;
+class GetColumnsResp;
+class CreatePreparedStatementReq;
+class ResultColumnMetadata;
+class PreparedStatementHandle;
+class PreparedStatement;
+class CreatePreparedStatementResp;
+class GetServerMetaReq;
+class ConvertSupport;
+class GetServerMetaResp;
+class ServerMeta;
+class RunQuery;
 
 enum RpcType {
   HANDSHAKE = 0,
@@ -580,7 +466,7 @@
 }
 // ===================================================================
 
-class Property : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.Property) */ {
+class Property : public ::google::protobuf::Message {
  public:
   Property();
   virtual ~Property();
@@ -591,139 +477,98 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  Property(Property&& from) noexcept
-    : Property() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline Property& operator=(Property&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const Property& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const Property* internal_default_instance() {
-    return reinterpret_cast<const Property*>(
-               &_Property_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    0;
-
   void Swap(Property* other);
-  friend void swap(Property& a, Property& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline Property* New() const final {
-    return CreateMaybeMessage<Property>(NULL);
-  }
-
-  Property* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<Property>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  Property* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const Property& from);
   void MergeFrom(const Property& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(Property* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // required string key = 1;
-  bool has_key() const;
-  void clear_key();
+  inline bool has_key() const;
+  inline void clear_key();
   static const int kKeyFieldNumber = 1;
-  const ::std::string& key() const;
-  void set_key(const ::std::string& value);
-  #if LANG_CXX11
-  void set_key(::std::string&& value);
-  #endif
-  void set_key(const char* value);
-  void set_key(const char* value, size_t size);
-  ::std::string* mutable_key();
-  ::std::string* release_key();
-  void set_allocated_key(::std::string* key);
+  inline const ::std::string& key() const;
+  inline void set_key(const ::std::string& value);
+  inline void set_key(const char* value);
+  inline void set_key(const char* value, size_t size);
+  inline ::std::string* mutable_key();
+  inline ::std::string* release_key();
+  inline void set_allocated_key(::std::string* key);
 
   // required string value = 2;
-  bool has_value() const;
-  void clear_value();
+  inline bool has_value() const;
+  inline void clear_value();
   static const int kValueFieldNumber = 2;
-  const ::std::string& value() const;
-  void set_value(const ::std::string& value);
-  #if LANG_CXX11
-  void set_value(::std::string&& value);
-  #endif
-  void set_value(const char* value);
-  void set_value(const char* value, size_t size);
-  ::std::string* mutable_value();
-  ::std::string* release_value();
-  void set_allocated_value(::std::string* value);
+  inline const ::std::string& value() const;
+  inline void set_value(const ::std::string& value);
+  inline void set_value(const char* value);
+  inline void set_value(const char* value, size_t size);
+  inline ::std::string* mutable_value();
+  inline ::std::string* release_value();
+  inline void set_allocated_value(::std::string* value);
 
   // @@protoc_insertion_point(class_scope:exec.user.Property)
  private:
-  void set_has_key();
-  void clear_has_key();
-  void set_has_value();
-  void clear_has_value();
+  inline void set_has_key();
+  inline void clear_has_key();
+  inline void set_has_value();
+  inline void clear_has_value();
 
-  // helper for ByteSizeLong()
-  size_t RequiredFieldsByteSizeFallback() const;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr key_;
-  ::google::protobuf::internal::ArenaStringPtr value_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::std::string* key_;
+  ::std::string* value_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static Property* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class UserProperties : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.UserProperties) */ {
+class UserProperties : public ::google::protobuf::Message {
  public:
   UserProperties();
   virtual ~UserProperties();
@@ -734,113 +579,81 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  UserProperties(UserProperties&& from) noexcept
-    : UserProperties() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline UserProperties& operator=(UserProperties&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const UserProperties& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const UserProperties* internal_default_instance() {
-    return reinterpret_cast<const UserProperties*>(
-               &_UserProperties_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    1;
-
   void Swap(UserProperties* other);
-  friend void swap(UserProperties& a, UserProperties& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline UserProperties* New() const final {
-    return CreateMaybeMessage<UserProperties>(NULL);
-  }
-
-  UserProperties* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<UserProperties>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  UserProperties* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const UserProperties& from);
   void MergeFrom(const UserProperties& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(UserProperties* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // repeated .exec.user.Property properties = 1;
-  int properties_size() const;
-  void clear_properties();
+  inline int properties_size() const;
+  inline void clear_properties();
   static const int kPropertiesFieldNumber = 1;
-  ::exec::user::Property* mutable_properties(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::user::Property >*
-      mutable_properties();
-  const ::exec::user::Property& properties(int index) const;
-  ::exec::user::Property* add_properties();
-  const ::google::protobuf::RepeatedPtrField< ::exec::user::Property >&
+  inline const ::exec::user::Property& properties(int index) const;
+  inline ::exec::user::Property* mutable_properties(int index);
+  inline ::exec::user::Property* add_properties();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::user::Property >&
       properties() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::user::Property >*
+      mutable_properties();
 
   // @@protoc_insertion_point(class_scope:exec.user.UserProperties)
  private:
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::user::Property > properties_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static UserProperties* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class RpcEndpointInfos : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.RpcEndpointInfos) */ {
+class RpcEndpointInfos : public ::google::protobuf::Message {
  public:
   RpcEndpointInfos();
   virtual ~RpcEndpointInfos();
@@ -851,212 +664,168 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  RpcEndpointInfos(RpcEndpointInfos&& from) noexcept
-    : RpcEndpointInfos() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline RpcEndpointInfos& operator=(RpcEndpointInfos&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const RpcEndpointInfos& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const RpcEndpointInfos* internal_default_instance() {
-    return reinterpret_cast<const RpcEndpointInfos*>(
-               &_RpcEndpointInfos_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    2;
-
   void Swap(RpcEndpointInfos* other);
-  friend void swap(RpcEndpointInfos& a, RpcEndpointInfos& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline RpcEndpointInfos* New() const final {
-    return CreateMaybeMessage<RpcEndpointInfos>(NULL);
-  }
-
-  RpcEndpointInfos* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<RpcEndpointInfos>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  RpcEndpointInfos* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const RpcEndpointInfos& from);
   void MergeFrom(const RpcEndpointInfos& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(RpcEndpointInfos* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string name = 1;
-  bool has_name() const;
-  void clear_name();
+  inline bool has_name() const;
+  inline void clear_name();
   static const int kNameFieldNumber = 1;
-  const ::std::string& name() const;
-  void set_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_name(::std::string&& value);
-  #endif
-  void set_name(const char* value);
-  void set_name(const char* value, size_t size);
-  ::std::string* mutable_name();
-  ::std::string* release_name();
-  void set_allocated_name(::std::string* name);
+  inline const ::std::string& name() const;
+  inline void set_name(const ::std::string& value);
+  inline void set_name(const char* value);
+  inline void set_name(const char* value, size_t size);
+  inline ::std::string* mutable_name();
+  inline ::std::string* release_name();
+  inline void set_allocated_name(::std::string* name);
 
   // optional string version = 2;
-  bool has_version() const;
-  void clear_version();
+  inline bool has_version() const;
+  inline void clear_version();
   static const int kVersionFieldNumber = 2;
-  const ::std::string& version() const;
-  void set_version(const ::std::string& value);
-  #if LANG_CXX11
-  void set_version(::std::string&& value);
-  #endif
-  void set_version(const char* value);
-  void set_version(const char* value, size_t size);
-  ::std::string* mutable_version();
-  ::std::string* release_version();
-  void set_allocated_version(::std::string* version);
-
-  // optional string application = 6;
-  bool has_application() const;
-  void clear_application();
-  static const int kApplicationFieldNumber = 6;
-  const ::std::string& application() const;
-  void set_application(const ::std::string& value);
-  #if LANG_CXX11
-  void set_application(::std::string&& value);
-  #endif
-  void set_application(const char* value);
-  void set_application(const char* value, size_t size);
-  ::std::string* mutable_application();
-  ::std::string* release_application();
-  void set_allocated_application(::std::string* application);
-
-  // optional string versionQualifier = 8;
-  bool has_versionqualifier() const;
-  void clear_versionqualifier();
-  static const int kVersionQualifierFieldNumber = 8;
-  const ::std::string& versionqualifier() const;
-  void set_versionqualifier(const ::std::string& value);
-  #if LANG_CXX11
-  void set_versionqualifier(::std::string&& value);
-  #endif
-  void set_versionqualifier(const char* value);
-  void set_versionqualifier(const char* value, size_t size);
-  ::std::string* mutable_versionqualifier();
-  ::std::string* release_versionqualifier();
-  void set_allocated_versionqualifier(::std::string* versionqualifier);
+  inline const ::std::string& version() const;
+  inline void set_version(const ::std::string& value);
+  inline void set_version(const char* value);
+  inline void set_version(const char* value, size_t size);
+  inline ::std::string* mutable_version();
+  inline ::std::string* release_version();
+  inline void set_allocated_version(::std::string* version);
 
   // optional uint32 majorVersion = 3;
-  bool has_majorversion() const;
-  void clear_majorversion();
+  inline bool has_majorversion() const;
+  inline void clear_majorversion();
   static const int kMajorVersionFieldNumber = 3;
-  ::google::protobuf::uint32 majorversion() const;
-  void set_majorversion(::google::protobuf::uint32 value);
+  inline ::google::protobuf::uint32 majorversion() const;
+  inline void set_majorversion(::google::protobuf::uint32 value);
 
   // optional uint32 minorVersion = 4;
-  bool has_minorversion() const;
-  void clear_minorversion();
+  inline bool has_minorversion() const;
+  inline void clear_minorversion();
   static const int kMinorVersionFieldNumber = 4;
-  ::google::protobuf::uint32 minorversion() const;
-  void set_minorversion(::google::protobuf::uint32 value);
+  inline ::google::protobuf::uint32 minorversion() const;
+  inline void set_minorversion(::google::protobuf::uint32 value);
 
   // optional uint32 patchVersion = 5;
-  bool has_patchversion() const;
-  void clear_patchversion();
+  inline bool has_patchversion() const;
+  inline void clear_patchversion();
   static const int kPatchVersionFieldNumber = 5;
-  ::google::protobuf::uint32 patchversion() const;
-  void set_patchversion(::google::protobuf::uint32 value);
+  inline ::google::protobuf::uint32 patchversion() const;
+  inline void set_patchversion(::google::protobuf::uint32 value);
+
+  // optional string application = 6;
+  inline bool has_application() const;
+  inline void clear_application();
+  static const int kApplicationFieldNumber = 6;
+  inline const ::std::string& application() const;
+  inline void set_application(const ::std::string& value);
+  inline void set_application(const char* value);
+  inline void set_application(const char* value, size_t size);
+  inline ::std::string* mutable_application();
+  inline ::std::string* release_application();
+  inline void set_allocated_application(::std::string* application);
 
   // optional uint32 buildNumber = 7;
-  bool has_buildnumber() const;
-  void clear_buildnumber();
+  inline bool has_buildnumber() const;
+  inline void clear_buildnumber();
   static const int kBuildNumberFieldNumber = 7;
-  ::google::protobuf::uint32 buildnumber() const;
-  void set_buildnumber(::google::protobuf::uint32 value);
+  inline ::google::protobuf::uint32 buildnumber() const;
+  inline void set_buildnumber(::google::protobuf::uint32 value);
+
+  // optional string versionQualifier = 8;
+  inline bool has_versionqualifier() const;
+  inline void clear_versionqualifier();
+  static const int kVersionQualifierFieldNumber = 8;
+  inline const ::std::string& versionqualifier() const;
+  inline void set_versionqualifier(const ::std::string& value);
+  inline void set_versionqualifier(const char* value);
+  inline void set_versionqualifier(const char* value, size_t size);
+  inline ::std::string* mutable_versionqualifier();
+  inline ::std::string* release_versionqualifier();
+  inline void set_allocated_versionqualifier(::std::string* versionqualifier);
 
   // @@protoc_insertion_point(class_scope:exec.user.RpcEndpointInfos)
  private:
-  void set_has_name();
-  void clear_has_name();
-  void set_has_version();
-  void clear_has_version();
-  void set_has_majorversion();
-  void clear_has_majorversion();
-  void set_has_minorversion();
-  void clear_has_minorversion();
-  void set_has_patchversion();
-  void clear_has_patchversion();
-  void set_has_application();
-  void clear_has_application();
-  void set_has_buildnumber();
-  void clear_has_buildnumber();
-  void set_has_versionqualifier();
-  void clear_has_versionqualifier();
+  inline void set_has_name();
+  inline void clear_has_name();
+  inline void set_has_version();
+  inline void clear_has_version();
+  inline void set_has_majorversion();
+  inline void clear_has_majorversion();
+  inline void set_has_minorversion();
+  inline void clear_has_minorversion();
+  inline void set_has_patchversion();
+  inline void clear_has_patchversion();
+  inline void set_has_application();
+  inline void clear_has_application();
+  inline void set_has_buildnumber();
+  inline void clear_has_buildnumber();
+  inline void set_has_versionqualifier();
+  inline void clear_has_versionqualifier();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr name_;
-  ::google::protobuf::internal::ArenaStringPtr version_;
-  ::google::protobuf::internal::ArenaStringPtr application_;
-  ::google::protobuf::internal::ArenaStringPtr versionqualifier_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* name_;
+  ::std::string* version_;
   ::google::protobuf::uint32 majorversion_;
   ::google::protobuf::uint32 minorversion_;
+  ::std::string* application_;
   ::google::protobuf::uint32 patchversion_;
   ::google::protobuf::uint32 buildnumber_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::std::string* versionqualifier_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(8 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static RpcEndpointInfos* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class UserToBitHandshake : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.UserToBitHandshake) */ {
+class UserToBitHandshake : public ::google::protobuf::Message {
  public:
   UserToBitHandshake();
   virtual ~UserToBitHandshake();
@@ -1067,205 +836,164 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  UserToBitHandshake(UserToBitHandshake&& from) noexcept
-    : UserToBitHandshake() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline UserToBitHandshake& operator=(UserToBitHandshake&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const UserToBitHandshake& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const UserToBitHandshake* internal_default_instance() {
-    return reinterpret_cast<const UserToBitHandshake*>(
-               &_UserToBitHandshake_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    3;
-
   void Swap(UserToBitHandshake* other);
-  friend void swap(UserToBitHandshake& a, UserToBitHandshake& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline UserToBitHandshake* New() const final {
-    return CreateMaybeMessage<UserToBitHandshake>(NULL);
-  }
-
-  UserToBitHandshake* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<UserToBitHandshake>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  UserToBitHandshake* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const UserToBitHandshake& from);
   void MergeFrom(const UserToBitHandshake& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(UserToBitHandshake* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // optional .exec.shared.UserCredentials credentials = 4;
-  bool has_credentials() const;
-  void clear_credentials();
-  static const int kCredentialsFieldNumber = 4;
-  private:
-  const ::exec::shared::UserCredentials& _internal_credentials() const;
-  public:
-  const ::exec::shared::UserCredentials& credentials() const;
-  ::exec::shared::UserCredentials* release_credentials();
-  ::exec::shared::UserCredentials* mutable_credentials();
-  void set_allocated_credentials(::exec::shared::UserCredentials* credentials);
-
-  // optional .exec.user.UserProperties properties = 5;
-  bool has_properties() const;
-  void clear_properties();
-  static const int kPropertiesFieldNumber = 5;
-  private:
-  const ::exec::user::UserProperties& _internal_properties() const;
-  public:
-  const ::exec::user::UserProperties& properties() const;
-  ::exec::user::UserProperties* release_properties();
-  ::exec::user::UserProperties* mutable_properties();
-  void set_allocated_properties(::exec::user::UserProperties* properties);
-
-  // optional .exec.user.RpcEndpointInfos client_infos = 8;
-  bool has_client_infos() const;
-  void clear_client_infos();
-  static const int kClientInfosFieldNumber = 8;
-  private:
-  const ::exec::user::RpcEndpointInfos& _internal_client_infos() const;
-  public:
-  const ::exec::user::RpcEndpointInfos& client_infos() const;
-  ::exec::user::RpcEndpointInfos* release_client_infos();
-  ::exec::user::RpcEndpointInfos* mutable_client_infos();
-  void set_allocated_client_infos(::exec::user::RpcEndpointInfos* client_infos);
-
-  // optional int32 rpc_version = 3;
-  bool has_rpc_version() const;
-  void clear_rpc_version();
-  static const int kRpcVersionFieldNumber = 3;
-  ::google::protobuf::int32 rpc_version() const;
-  void set_rpc_version(::google::protobuf::int32 value);
+  // optional .exec.shared.RpcChannel channel = 1 [default = USER];
+  inline bool has_channel() const;
+  inline void clear_channel();
+  static const int kChannelFieldNumber = 1;
+  inline ::exec::shared::RpcChannel channel() const;
+  inline void set_channel(::exec::shared::RpcChannel value);
 
   // optional bool support_listening = 2;
-  bool has_support_listening() const;
-  void clear_support_listening();
+  inline bool has_support_listening() const;
+  inline void clear_support_listening();
   static const int kSupportListeningFieldNumber = 2;
-  bool support_listening() const;
-  void set_support_listening(bool value);
+  inline bool support_listening() const;
+  inline void set_support_listening(bool value);
+
+  // optional int32 rpc_version = 3;
+  inline bool has_rpc_version() const;
+  inline void clear_rpc_version();
+  static const int kRpcVersionFieldNumber = 3;
+  inline ::google::protobuf::int32 rpc_version() const;
+  inline void set_rpc_version(::google::protobuf::int32 value);
+
+  // optional .exec.shared.UserCredentials credentials = 4;
+  inline bool has_credentials() const;
+  inline void clear_credentials();
+  static const int kCredentialsFieldNumber = 4;
+  inline const ::exec::shared::UserCredentials& credentials() const;
+  inline ::exec::shared::UserCredentials* mutable_credentials();
+  inline ::exec::shared::UserCredentials* release_credentials();
+  inline void set_allocated_credentials(::exec::shared::UserCredentials* credentials);
+
+  // optional .exec.user.UserProperties properties = 5;
+  inline bool has_properties() const;
+  inline void clear_properties();
+  static const int kPropertiesFieldNumber = 5;
+  inline const ::exec::user::UserProperties& properties() const;
+  inline ::exec::user::UserProperties* mutable_properties();
+  inline ::exec::user::UserProperties* release_properties();
+  inline void set_allocated_properties(::exec::user::UserProperties* properties);
 
   // optional bool support_complex_types = 6 [default = false];
-  bool has_support_complex_types() const;
-  void clear_support_complex_types();
+  inline bool has_support_complex_types() const;
+  inline void clear_support_complex_types();
   static const int kSupportComplexTypesFieldNumber = 6;
-  bool support_complex_types() const;
-  void set_support_complex_types(bool value);
+  inline bool support_complex_types() const;
+  inline void set_support_complex_types(bool value);
 
   // optional bool support_timeout = 7 [default = false];
-  bool has_support_timeout() const;
-  void clear_support_timeout();
+  inline bool has_support_timeout() const;
+  inline void clear_support_timeout();
   static const int kSupportTimeoutFieldNumber = 7;
-  bool support_timeout() const;
-  void set_support_timeout(bool value);
+  inline bool support_timeout() const;
+  inline void set_support_timeout(bool value);
+
+  // optional .exec.user.RpcEndpointInfos client_infos = 8;
+  inline bool has_client_infos() const;
+  inline void clear_client_infos();
+  static const int kClientInfosFieldNumber = 8;
+  inline const ::exec::user::RpcEndpointInfos& client_infos() const;
+  inline ::exec::user::RpcEndpointInfos* mutable_client_infos();
+  inline ::exec::user::RpcEndpointInfos* release_client_infos();
+  inline void set_allocated_client_infos(::exec::user::RpcEndpointInfos* client_infos);
 
   // optional .exec.user.SaslSupport sasl_support = 9;
-  bool has_sasl_support() const;
-  void clear_sasl_support();
+  inline bool has_sasl_support() const;
+  inline void clear_sasl_support();
   static const int kSaslSupportFieldNumber = 9;
-  ::exec::user::SaslSupport sasl_support() const;
-  void set_sasl_support(::exec::user::SaslSupport value);
-
-  // optional .exec.shared.RpcChannel channel = 1 [default = USER];
-  bool has_channel() const;
-  void clear_channel();
-  static const int kChannelFieldNumber = 1;
-  ::exec::shared::RpcChannel channel() const;
-  void set_channel(::exec::shared::RpcChannel value);
+  inline ::exec::user::SaslSupport sasl_support() const;
+  inline void set_sasl_support(::exec::user::SaslSupport value);
 
   // @@protoc_insertion_point(class_scope:exec.user.UserToBitHandshake)
  private:
-  void set_has_channel();
-  void clear_has_channel();
-  void set_has_support_listening();
-  void clear_has_support_listening();
-  void set_has_rpc_version();
-  void clear_has_rpc_version();
-  void set_has_credentials();
-  void clear_has_credentials();
-  void set_has_properties();
-  void clear_has_properties();
-  void set_has_support_complex_types();
-  void clear_has_support_complex_types();
-  void set_has_support_timeout();
-  void clear_has_support_timeout();
-  void set_has_client_infos();
-  void clear_has_client_infos();
-  void set_has_sasl_support();
-  void clear_has_sasl_support();
+  inline void set_has_channel();
+  inline void clear_has_channel();
+  inline void set_has_support_listening();
+  inline void clear_has_support_listening();
+  inline void set_has_rpc_version();
+  inline void clear_has_rpc_version();
+  inline void set_has_credentials();
+  inline void clear_has_credentials();
+  inline void set_has_properties();
+  inline void clear_has_properties();
+  inline void set_has_support_complex_types();
+  inline void clear_has_support_complex_types();
+  inline void set_has_support_timeout();
+  inline void clear_has_support_timeout();
+  inline void set_has_client_infos();
+  inline void clear_has_client_infos();
+  inline void set_has_sasl_support();
+  inline void clear_has_sasl_support();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  int channel_;
+  ::google::protobuf::int32 rpc_version_;
   ::exec::shared::UserCredentials* credentials_;
   ::exec::user::UserProperties* properties_;
-  ::exec::user::RpcEndpointInfos* client_infos_;
-  ::google::protobuf::int32 rpc_version_;
   bool support_listening_;
   bool support_complex_types_;
   bool support_timeout_;
   int sasl_support_;
-  int channel_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::exec::user::RpcEndpointInfos* client_infos_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(9 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static UserToBitHandshake* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class RequestResults : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.RequestResults) */ {
+class RequestResults : public ::google::protobuf::Message {
  public:
   RequestResults();
   virtual ~RequestResults();
@@ -1276,125 +1004,90 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  RequestResults(RequestResults&& from) noexcept
-    : RequestResults() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline RequestResults& operator=(RequestResults&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const RequestResults& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const RequestResults* internal_default_instance() {
-    return reinterpret_cast<const RequestResults*>(
-               &_RequestResults_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    4;
-
   void Swap(RequestResults* other);
-  friend void swap(RequestResults& a, RequestResults& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline RequestResults* New() const final {
-    return CreateMaybeMessage<RequestResults>(NULL);
-  }
-
-  RequestResults* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<RequestResults>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  RequestResults* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const RequestResults& from);
   void MergeFrom(const RequestResults& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(RequestResults* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.shared.QueryId query_id = 1;
-  bool has_query_id() const;
-  void clear_query_id();
+  inline bool has_query_id() const;
+  inline void clear_query_id();
   static const int kQueryIdFieldNumber = 1;
-  private:
-  const ::exec::shared::QueryId& _internal_query_id() const;
-  public:
-  const ::exec::shared::QueryId& query_id() const;
-  ::exec::shared::QueryId* release_query_id();
-  ::exec::shared::QueryId* mutable_query_id();
-  void set_allocated_query_id(::exec::shared::QueryId* query_id);
+  inline const ::exec::shared::QueryId& query_id() const;
+  inline ::exec::shared::QueryId* mutable_query_id();
+  inline ::exec::shared::QueryId* release_query_id();
+  inline void set_allocated_query_id(::exec::shared::QueryId* query_id);
 
   // optional int32 maximum_responses = 2;
-  bool has_maximum_responses() const;
-  void clear_maximum_responses();
+  inline bool has_maximum_responses() const;
+  inline void clear_maximum_responses();
   static const int kMaximumResponsesFieldNumber = 2;
-  ::google::protobuf::int32 maximum_responses() const;
-  void set_maximum_responses(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 maximum_responses() const;
+  inline void set_maximum_responses(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.user.RequestResults)
  private:
-  void set_has_query_id();
-  void clear_has_query_id();
-  void set_has_maximum_responses();
-  void clear_has_maximum_responses();
+  inline void set_has_query_id();
+  inline void clear_has_query_id();
+  inline void set_has_maximum_responses();
+  inline void clear_has_maximum_responses();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::QueryId* query_id_;
   ::google::protobuf::int32 maximum_responses_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static RequestResults* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetQueryPlanFragments : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetQueryPlanFragments) */ {
+class GetQueryPlanFragments : public ::google::protobuf::Message {
  public:
   GetQueryPlanFragments();
   virtual ~GetQueryPlanFragments();
@@ -1405,138 +1098,103 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetQueryPlanFragments(GetQueryPlanFragments&& from) noexcept
-    : GetQueryPlanFragments() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetQueryPlanFragments& operator=(GetQueryPlanFragments&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetQueryPlanFragments& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetQueryPlanFragments* internal_default_instance() {
-    return reinterpret_cast<const GetQueryPlanFragments*>(
-               &_GetQueryPlanFragments_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    5;
-
   void Swap(GetQueryPlanFragments* other);
-  friend void swap(GetQueryPlanFragments& a, GetQueryPlanFragments& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetQueryPlanFragments* New() const final {
-    return CreateMaybeMessage<GetQueryPlanFragments>(NULL);
-  }
-
-  GetQueryPlanFragments* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetQueryPlanFragments>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetQueryPlanFragments* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetQueryPlanFragments& from);
   void MergeFrom(const GetQueryPlanFragments& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetQueryPlanFragments* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // required string query = 1;
-  bool has_query() const;
-  void clear_query();
+  inline bool has_query() const;
+  inline void clear_query();
   static const int kQueryFieldNumber = 1;
-  const ::std::string& query() const;
-  void set_query(const ::std::string& value);
-  #if LANG_CXX11
-  void set_query(::std::string&& value);
-  #endif
-  void set_query(const char* value);
-  void set_query(const char* value, size_t size);
-  ::std::string* mutable_query();
-  ::std::string* release_query();
-  void set_allocated_query(::std::string* query);
-
-  // optional bool split_plan = 3 [default = false];
-  bool has_split_plan() const;
-  void clear_split_plan();
-  static const int kSplitPlanFieldNumber = 3;
-  bool split_plan() const;
-  void set_split_plan(bool value);
+  inline const ::std::string& query() const;
+  inline void set_query(const ::std::string& value);
+  inline void set_query(const char* value);
+  inline void set_query(const char* value, size_t size);
+  inline ::std::string* mutable_query();
+  inline ::std::string* release_query();
+  inline void set_allocated_query(::std::string* query);
 
   // optional .exec.shared.QueryType type = 2;
-  bool has_type() const;
-  void clear_type();
+  inline bool has_type() const;
+  inline void clear_type();
   static const int kTypeFieldNumber = 2;
-  ::exec::shared::QueryType type() const;
-  void set_type(::exec::shared::QueryType value);
+  inline ::exec::shared::QueryType type() const;
+  inline void set_type(::exec::shared::QueryType value);
+
+  // optional bool split_plan = 3 [default = false];
+  inline bool has_split_plan() const;
+  inline void clear_split_plan();
+  static const int kSplitPlanFieldNumber = 3;
+  inline bool split_plan() const;
+  inline void set_split_plan(bool value);
 
   // @@protoc_insertion_point(class_scope:exec.user.GetQueryPlanFragments)
  private:
-  void set_has_query();
-  void clear_has_query();
-  void set_has_type();
-  void clear_has_type();
-  void set_has_split_plan();
-  void clear_has_split_plan();
+  inline void set_has_query();
+  inline void clear_has_query();
+  inline void set_has_type();
+  inline void clear_has_type();
+  inline void set_has_split_plan();
+  inline void clear_has_split_plan();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr query_;
-  bool split_plan_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* query_;
   int type_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  bool split_plan_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetQueryPlanFragments* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class QueryPlanFragments : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.QueryPlanFragments) */ {
+class QueryPlanFragments : public ::google::protobuf::Message {
  public:
   QueryPlanFragments();
   virtual ~QueryPlanFragments();
@@ -1547,153 +1205,115 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  QueryPlanFragments(QueryPlanFragments&& from) noexcept
-    : QueryPlanFragments() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline QueryPlanFragments& operator=(QueryPlanFragments&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const QueryPlanFragments& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const QueryPlanFragments* internal_default_instance() {
-    return reinterpret_cast<const QueryPlanFragments*>(
-               &_QueryPlanFragments_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    6;
-
   void Swap(QueryPlanFragments* other);
-  friend void swap(QueryPlanFragments& a, QueryPlanFragments& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline QueryPlanFragments* New() const final {
-    return CreateMaybeMessage<QueryPlanFragments>(NULL);
-  }
-
-  QueryPlanFragments* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<QueryPlanFragments>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  QueryPlanFragments* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const QueryPlanFragments& from);
   void MergeFrom(const QueryPlanFragments& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(QueryPlanFragments* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.bit.control.PlanFragment fragments = 3;
-  int fragments_size() const;
-  void clear_fragments();
-  static const int kFragmentsFieldNumber = 3;
-  ::exec::bit::control::PlanFragment* mutable_fragments(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
-      mutable_fragments();
-  const ::exec::bit::control::PlanFragment& fragments(int index) const;
-  ::exec::bit::control::PlanFragment* add_fragments();
-  const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >&
-      fragments() const;
+  // required .exec.shared.QueryResult.QueryState status = 1;
+  inline bool has_status() const;
+  inline void clear_status();
+  static const int kStatusFieldNumber = 1;
+  inline ::exec::shared::QueryResult_QueryState status() const;
+  inline void set_status(::exec::shared::QueryResult_QueryState value);
 
   // optional .exec.shared.QueryId query_id = 2;
-  bool has_query_id() const;
-  void clear_query_id();
+  inline bool has_query_id() const;
+  inline void clear_query_id();
   static const int kQueryIdFieldNumber = 2;
-  private:
-  const ::exec::shared::QueryId& _internal_query_id() const;
-  public:
-  const ::exec::shared::QueryId& query_id() const;
-  ::exec::shared::QueryId* release_query_id();
-  ::exec::shared::QueryId* mutable_query_id();
-  void set_allocated_query_id(::exec::shared::QueryId* query_id);
+  inline const ::exec::shared::QueryId& query_id() const;
+  inline ::exec::shared::QueryId* mutable_query_id();
+  inline ::exec::shared::QueryId* release_query_id();
+  inline void set_allocated_query_id(::exec::shared::QueryId* query_id);
+
+  // repeated .exec.bit.control.PlanFragment fragments = 3;
+  inline int fragments_size() const;
+  inline void clear_fragments();
+  static const int kFragmentsFieldNumber = 3;
+  inline const ::exec::bit::control::PlanFragment& fragments(int index) const;
+  inline ::exec::bit::control::PlanFragment* mutable_fragments(int index);
+  inline ::exec::bit::control::PlanFragment* add_fragments();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >&
+      fragments() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
+      mutable_fragments();
 
   // optional .exec.shared.DrillPBError error = 4;
-  bool has_error() const;
-  void clear_error();
+  inline bool has_error() const;
+  inline void clear_error();
   static const int kErrorFieldNumber = 4;
-  private:
-  const ::exec::shared::DrillPBError& _internal_error() const;
-  public:
-  const ::exec::shared::DrillPBError& error() const;
-  ::exec::shared::DrillPBError* release_error();
-  ::exec::shared::DrillPBError* mutable_error();
-  void set_allocated_error(::exec::shared::DrillPBError* error);
-
-  // required .exec.shared.QueryResult.QueryState status = 1;
-  bool has_status() const;
-  void clear_status();
-  static const int kStatusFieldNumber = 1;
-  ::exec::shared::QueryResult_QueryState status() const;
-  void set_status(::exec::shared::QueryResult_QueryState value);
+  inline const ::exec::shared::DrillPBError& error() const;
+  inline ::exec::shared::DrillPBError* mutable_error();
+  inline ::exec::shared::DrillPBError* release_error();
+  inline void set_allocated_error(::exec::shared::DrillPBError* error);
 
   // @@protoc_insertion_point(class_scope:exec.user.QueryPlanFragments)
  private:
-  void set_has_status();
-  void clear_has_status();
-  void set_has_query_id();
-  void clear_has_query_id();
-  void set_has_error();
-  void clear_has_error();
+  inline void set_has_status();
+  inline void clear_has_status();
+  inline void set_has_query_id();
+  inline void clear_has_query_id();
+  inline void set_has_error();
+  inline void clear_has_error();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment > fragments_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::QueryId* query_id_;
+  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment > fragments_;
   ::exec::shared::DrillPBError* error_;
   int status_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static QueryPlanFragments* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class BitToUserHandshake : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.BitToUserHandshake) */ {
+class BitToUserHandshake : public ::google::protobuf::Message {
  public:
   BitToUserHandshake();
   virtual ~BitToUserHandshake();
@@ -1704,225 +1324,178 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  BitToUserHandshake(BitToUserHandshake&& from) noexcept
-    : BitToUserHandshake() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline BitToUserHandshake& operator=(BitToUserHandshake&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const BitToUserHandshake& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const BitToUserHandshake* internal_default_instance() {
-    return reinterpret_cast<const BitToUserHandshake*>(
-               &_BitToUserHandshake_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    7;
-
   void Swap(BitToUserHandshake* other);
-  friend void swap(BitToUserHandshake& a, BitToUserHandshake& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline BitToUserHandshake* New() const final {
-    return CreateMaybeMessage<BitToUserHandshake>(NULL);
-  }
-
-  BitToUserHandshake* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<BitToUserHandshake>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  BitToUserHandshake* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const BitToUserHandshake& from);
   void MergeFrom(const BitToUserHandshake& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(BitToUserHandshake* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated string authenticationMechanisms = 7;
-  int authenticationmechanisms_size() const;
-  void clear_authenticationmechanisms();
-  static const int kAuthenticationMechanismsFieldNumber = 7;
-  const ::std::string& authenticationmechanisms(int index) const;
-  ::std::string* mutable_authenticationmechanisms(int index);
-  void set_authenticationmechanisms(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_authenticationmechanisms(int index, ::std::string&& value);
-  #endif
-  void set_authenticationmechanisms(int index, const char* value);
-  void set_authenticationmechanisms(int index, const char* value, size_t size);
-  ::std::string* add_authenticationmechanisms();
-  void add_authenticationmechanisms(const ::std::string& value);
-  #if LANG_CXX11
-  void add_authenticationmechanisms(::std::string&& value);
-  #endif
-  void add_authenticationmechanisms(const char* value);
-  void add_authenticationmechanisms(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& authenticationmechanisms() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_authenticationmechanisms();
-
-  // repeated .exec.user.RpcType supported_methods = 8;
-  int supported_methods_size() const;
-  void clear_supported_methods();
-  static const int kSupportedMethodsFieldNumber = 8;
-  ::exec::user::RpcType supported_methods(int index) const;
-  void set_supported_methods(int index, ::exec::user::RpcType value);
-  void add_supported_methods(::exec::user::RpcType value);
-  const ::google::protobuf::RepeatedField<int>& supported_methods() const;
-  ::google::protobuf::RepeatedField<int>* mutable_supported_methods();
-
-  // optional string errorId = 4;
-  bool has_errorid() const;
-  void clear_errorid();
-  static const int kErrorIdFieldNumber = 4;
-  const ::std::string& errorid() const;
-  void set_errorid(const ::std::string& value);
-  #if LANG_CXX11
-  void set_errorid(::std::string&& value);
-  #endif
-  void set_errorid(const char* value);
-  void set_errorid(const char* value, size_t size);
-  ::std::string* mutable_errorid();
-  ::std::string* release_errorid();
-  void set_allocated_errorid(::std::string* errorid);
-
-  // optional string errorMessage = 5;
-  bool has_errormessage() const;
-  void clear_errormessage();
-  static const int kErrorMessageFieldNumber = 5;
-  const ::std::string& errormessage() const;
-  void set_errormessage(const ::std::string& value);
-  #if LANG_CXX11
-  void set_errormessage(::std::string&& value);
-  #endif
-  void set_errormessage(const char* value);
-  void set_errormessage(const char* value, size_t size);
-  ::std::string* mutable_errormessage();
-  ::std::string* release_errormessage();
-  void set_allocated_errormessage(::std::string* errormessage);
-
-  // optional .exec.user.RpcEndpointInfos server_infos = 6;
-  bool has_server_infos() const;
-  void clear_server_infos();
-  static const int kServerInfosFieldNumber = 6;
-  private:
-  const ::exec::user::RpcEndpointInfos& _internal_server_infos() const;
-  public:
-  const ::exec::user::RpcEndpointInfos& server_infos() const;
-  ::exec::user::RpcEndpointInfos* release_server_infos();
-  ::exec::user::RpcEndpointInfos* mutable_server_infos();
-  void set_allocated_server_infos(::exec::user::RpcEndpointInfos* server_infos);
-
   // optional int32 rpc_version = 2;
-  bool has_rpc_version() const;
-  void clear_rpc_version();
+  inline bool has_rpc_version() const;
+  inline void clear_rpc_version();
   static const int kRpcVersionFieldNumber = 2;
-  ::google::protobuf::int32 rpc_version() const;
-  void set_rpc_version(::google::protobuf::int32 value);
-
-  // optional bool encrypted = 9;
-  bool has_encrypted() const;
-  void clear_encrypted();
-  static const int kEncryptedFieldNumber = 9;
-  bool encrypted() const;
-  void set_encrypted(bool value);
-
-  // optional int32 maxWrappedSize = 10;
-  bool has_maxwrappedsize() const;
-  void clear_maxwrappedsize();
-  static const int kMaxWrappedSizeFieldNumber = 10;
-  ::google::protobuf::int32 maxwrappedsize() const;
-  void set_maxwrappedsize(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 rpc_version() const;
+  inline void set_rpc_version(::google::protobuf::int32 value);
 
   // optional .exec.user.HandshakeStatus status = 3;
-  bool has_status() const;
-  void clear_status();
+  inline bool has_status() const;
+  inline void clear_status();
   static const int kStatusFieldNumber = 3;
-  ::exec::user::HandshakeStatus status() const;
-  void set_status(::exec::user::HandshakeStatus value);
+  inline ::exec::user::HandshakeStatus status() const;
+  inline void set_status(::exec::user::HandshakeStatus value);
+
+  // optional string errorId = 4;
+  inline bool has_errorid() const;
+  inline void clear_errorid();
+  static const int kErrorIdFieldNumber = 4;
+  inline const ::std::string& errorid() const;
+  inline void set_errorid(const ::std::string& value);
+  inline void set_errorid(const char* value);
+  inline void set_errorid(const char* value, size_t size);
+  inline ::std::string* mutable_errorid();
+  inline ::std::string* release_errorid();
+  inline void set_allocated_errorid(::std::string* errorid);
+
+  // optional string errorMessage = 5;
+  inline bool has_errormessage() const;
+  inline void clear_errormessage();
+  static const int kErrorMessageFieldNumber = 5;
+  inline const ::std::string& errormessage() const;
+  inline void set_errormessage(const ::std::string& value);
+  inline void set_errormessage(const char* value);
+  inline void set_errormessage(const char* value, size_t size);
+  inline ::std::string* mutable_errormessage();
+  inline ::std::string* release_errormessage();
+  inline void set_allocated_errormessage(::std::string* errormessage);
+
+  // optional .exec.user.RpcEndpointInfos server_infos = 6;
+  inline bool has_server_infos() const;
+  inline void clear_server_infos();
+  static const int kServerInfosFieldNumber = 6;
+  inline const ::exec::user::RpcEndpointInfos& server_infos() const;
+  inline ::exec::user::RpcEndpointInfos* mutable_server_infos();
+  inline ::exec::user::RpcEndpointInfos* release_server_infos();
+  inline void set_allocated_server_infos(::exec::user::RpcEndpointInfos* server_infos);
+
+  // repeated string authenticationMechanisms = 7;
+  inline int authenticationmechanisms_size() const;
+  inline void clear_authenticationmechanisms();
+  static const int kAuthenticationMechanismsFieldNumber = 7;
+  inline const ::std::string& authenticationmechanisms(int index) const;
+  inline ::std::string* mutable_authenticationmechanisms(int index);
+  inline void set_authenticationmechanisms(int index, const ::std::string& value);
+  inline void set_authenticationmechanisms(int index, const char* value);
+  inline void set_authenticationmechanisms(int index, const char* value, size_t size);
+  inline ::std::string* add_authenticationmechanisms();
+  inline void add_authenticationmechanisms(const ::std::string& value);
+  inline void add_authenticationmechanisms(const char* value);
+  inline void add_authenticationmechanisms(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& authenticationmechanisms() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_authenticationmechanisms();
+
+  // repeated .exec.user.RpcType supported_methods = 8;
+  inline int supported_methods_size() const;
+  inline void clear_supported_methods();
+  static const int kSupportedMethodsFieldNumber = 8;
+  inline ::exec::user::RpcType supported_methods(int index) const;
+  inline void set_supported_methods(int index, ::exec::user::RpcType value);
+  inline void add_supported_methods(::exec::user::RpcType value);
+  inline const ::google::protobuf::RepeatedField<int>& supported_methods() const;
+  inline ::google::protobuf::RepeatedField<int>* mutable_supported_methods();
+
+  // optional bool encrypted = 9;
+  inline bool has_encrypted() const;
+  inline void clear_encrypted();
+  static const int kEncryptedFieldNumber = 9;
+  inline bool encrypted() const;
+  inline void set_encrypted(bool value);
+
+  // optional int32 maxWrappedSize = 10;
+  inline bool has_maxwrappedsize() const;
+  inline void clear_maxwrappedsize();
+  static const int kMaxWrappedSizeFieldNumber = 10;
+  inline ::google::protobuf::int32 maxwrappedsize() const;
+  inline void set_maxwrappedsize(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.user.BitToUserHandshake)
  private:
-  void set_has_rpc_version();
-  void clear_has_rpc_version();
-  void set_has_status();
-  void clear_has_status();
-  void set_has_errorid();
-  void clear_has_errorid();
-  void set_has_errormessage();
-  void clear_has_errormessage();
-  void set_has_server_infos();
-  void clear_has_server_infos();
-  void set_has_encrypted();
-  void clear_has_encrypted();
-  void set_has_maxwrappedsize();
-  void clear_has_maxwrappedsize();
+  inline void set_has_rpc_version();
+  inline void clear_has_rpc_version();
+  inline void set_has_status();
+  inline void clear_has_status();
+  inline void set_has_errorid();
+  inline void clear_has_errorid();
+  inline void set_has_errormessage();
+  inline void clear_has_errormessage();
+  inline void set_has_server_infos();
+  inline void clear_has_server_infos();
+  inline void set_has_encrypted();
+  inline void clear_has_encrypted();
+  inline void set_has_maxwrappedsize();
+  inline void clear_has_maxwrappedsize();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::google::protobuf::int32 rpc_version_;
+  int status_;
+  ::std::string* errorid_;
+  ::std::string* errormessage_;
+  ::exec::user::RpcEndpointInfos* server_infos_;
   ::google::protobuf::RepeatedPtrField< ::std::string> authenticationmechanisms_;
   ::google::protobuf::RepeatedField<int> supported_methods_;
-  ::google::protobuf::internal::ArenaStringPtr errorid_;
-  ::google::protobuf::internal::ArenaStringPtr errormessage_;
-  ::exec::user::RpcEndpointInfos* server_infos_;
-  ::google::protobuf::int32 rpc_version_;
   bool encrypted_;
   ::google::protobuf::int32 maxwrappedsize_;
-  int status_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(9 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static BitToUserHandshake* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class LikeFilter : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.LikeFilter) */ {
+class LikeFilter : public ::google::protobuf::Message {
  public:
   LikeFilter();
   virtual ~LikeFilter();
@@ -1933,136 +1506,98 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  LikeFilter(LikeFilter&& from) noexcept
-    : LikeFilter() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline LikeFilter& operator=(LikeFilter&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const LikeFilter& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const LikeFilter* internal_default_instance() {
-    return reinterpret_cast<const LikeFilter*>(
-               &_LikeFilter_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    8;
-
   void Swap(LikeFilter* other);
-  friend void swap(LikeFilter& a, LikeFilter& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline LikeFilter* New() const final {
-    return CreateMaybeMessage<LikeFilter>(NULL);
-  }
-
-  LikeFilter* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<LikeFilter>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  LikeFilter* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const LikeFilter& from);
   void MergeFrom(const LikeFilter& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(LikeFilter* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string pattern = 1;
-  bool has_pattern() const;
-  void clear_pattern();
+  inline bool has_pattern() const;
+  inline void clear_pattern();
   static const int kPatternFieldNumber = 1;
-  const ::std::string& pattern() const;
-  void set_pattern(const ::std::string& value);
-  #if LANG_CXX11
-  void set_pattern(::std::string&& value);
-  #endif
-  void set_pattern(const char* value);
-  void set_pattern(const char* value, size_t size);
-  ::std::string* mutable_pattern();
-  ::std::string* release_pattern();
-  void set_allocated_pattern(::std::string* pattern);
+  inline const ::std::string& pattern() const;
+  inline void set_pattern(const ::std::string& value);
+  inline void set_pattern(const char* value);
+  inline void set_pattern(const char* value, size_t size);
+  inline ::std::string* mutable_pattern();
+  inline ::std::string* release_pattern();
+  inline void set_allocated_pattern(::std::string* pattern);
 
   // optional string escape = 2;
-  bool has_escape() const;
-  void clear_escape();
+  inline bool has_escape() const;
+  inline void clear_escape();
   static const int kEscapeFieldNumber = 2;
-  const ::std::string& escape() const;
-  void set_escape(const ::std::string& value);
-  #if LANG_CXX11
-  void set_escape(::std::string&& value);
-  #endif
-  void set_escape(const char* value);
-  void set_escape(const char* value, size_t size);
-  ::std::string* mutable_escape();
-  ::std::string* release_escape();
-  void set_allocated_escape(::std::string* escape);
+  inline const ::std::string& escape() const;
+  inline void set_escape(const ::std::string& value);
+  inline void set_escape(const char* value);
+  inline void set_escape(const char* value, size_t size);
+  inline ::std::string* mutable_escape();
+  inline ::std::string* release_escape();
+  inline void set_allocated_escape(::std::string* escape);
 
   // @@protoc_insertion_point(class_scope:exec.user.LikeFilter)
  private:
-  void set_has_pattern();
-  void clear_has_pattern();
-  void set_has_escape();
-  void clear_has_escape();
+  inline void set_has_pattern();
+  inline void clear_has_pattern();
+  inline void set_has_escape();
+  inline void clear_has_escape();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr pattern_;
-  ::google::protobuf::internal::ArenaStringPtr escape_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* pattern_;
+  ::std::string* escape_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static LikeFilter* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetCatalogsReq : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetCatalogsReq) */ {
+class GetCatalogsReq : public ::google::protobuf::Message {
  public:
   GetCatalogsReq();
   virtual ~GetCatalogsReq();
@@ -2073,115 +1608,80 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetCatalogsReq(GetCatalogsReq&& from) noexcept
-    : GetCatalogsReq() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetCatalogsReq& operator=(GetCatalogsReq&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetCatalogsReq& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetCatalogsReq* internal_default_instance() {
-    return reinterpret_cast<const GetCatalogsReq*>(
-               &_GetCatalogsReq_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    9;
-
   void Swap(GetCatalogsReq* other);
-  friend void swap(GetCatalogsReq& a, GetCatalogsReq& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetCatalogsReq* New() const final {
-    return CreateMaybeMessage<GetCatalogsReq>(NULL);
-  }
-
-  GetCatalogsReq* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetCatalogsReq>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetCatalogsReq* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetCatalogsReq& from);
   void MergeFrom(const GetCatalogsReq& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetCatalogsReq* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  bool has_catalog_name_filter() const;
-  void clear_catalog_name_filter();
+  inline bool has_catalog_name_filter() const;
+  inline void clear_catalog_name_filter();
   static const int kCatalogNameFilterFieldNumber = 1;
-  private:
-  const ::exec::user::LikeFilter& _internal_catalog_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& catalog_name_filter() const;
-  ::exec::user::LikeFilter* release_catalog_name_filter();
-  ::exec::user::LikeFilter* mutable_catalog_name_filter();
-  void set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter);
+  inline const ::exec::user::LikeFilter& catalog_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_catalog_name_filter();
+  inline ::exec::user::LikeFilter* release_catalog_name_filter();
+  inline void set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter);
 
   // @@protoc_insertion_point(class_scope:exec.user.GetCatalogsReq)
  private:
-  void set_has_catalog_name_filter();
-  void clear_has_catalog_name_filter();
+  inline void set_has_catalog_name_filter();
+  inline void clear_has_catalog_name_filter();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::user::LikeFilter* catalog_name_filter_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetCatalogsReq* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class CatalogMetadata : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.CatalogMetadata) */ {
+class CatalogMetadata : public ::google::protobuf::Message {
  public:
   CatalogMetadata();
   virtual ~CatalogMetadata();
@@ -2192,154 +1692,113 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  CatalogMetadata(CatalogMetadata&& from) noexcept
-    : CatalogMetadata() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline CatalogMetadata& operator=(CatalogMetadata&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const CatalogMetadata& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const CatalogMetadata* internal_default_instance() {
-    return reinterpret_cast<const CatalogMetadata*>(
-               &_CatalogMetadata_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    10;
-
   void Swap(CatalogMetadata* other);
-  friend void swap(CatalogMetadata& a, CatalogMetadata& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline CatalogMetadata* New() const final {
-    return CreateMaybeMessage<CatalogMetadata>(NULL);
-  }
-
-  CatalogMetadata* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<CatalogMetadata>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  CatalogMetadata* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const CatalogMetadata& from);
   void MergeFrom(const CatalogMetadata& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(CatalogMetadata* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string catalog_name = 1;
-  bool has_catalog_name() const;
-  void clear_catalog_name();
+  inline bool has_catalog_name() const;
+  inline void clear_catalog_name();
   static const int kCatalogNameFieldNumber = 1;
-  const ::std::string& catalog_name() const;
-  void set_catalog_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_catalog_name(::std::string&& value);
-  #endif
-  void set_catalog_name(const char* value);
-  void set_catalog_name(const char* value, size_t size);
-  ::std::string* mutable_catalog_name();
-  ::std::string* release_catalog_name();
-  void set_allocated_catalog_name(::std::string* catalog_name);
+  inline const ::std::string& catalog_name() const;
+  inline void set_catalog_name(const ::std::string& value);
+  inline void set_catalog_name(const char* value);
+  inline void set_catalog_name(const char* value, size_t size);
+  inline ::std::string* mutable_catalog_name();
+  inline ::std::string* release_catalog_name();
+  inline void set_allocated_catalog_name(::std::string* catalog_name);
 
   // optional string description = 2;
-  bool has_description() const;
-  void clear_description();
+  inline bool has_description() const;
+  inline void clear_description();
   static const int kDescriptionFieldNumber = 2;
-  const ::std::string& description() const;
-  void set_description(const ::std::string& value);
-  #if LANG_CXX11
-  void set_description(::std::string&& value);
-  #endif
-  void set_description(const char* value);
-  void set_description(const char* value, size_t size);
-  ::std::string* mutable_description();
-  ::std::string* release_description();
-  void set_allocated_description(::std::string* description);
+  inline const ::std::string& description() const;
+  inline void set_description(const ::std::string& value);
+  inline void set_description(const char* value);
+  inline void set_description(const char* value, size_t size);
+  inline ::std::string* mutable_description();
+  inline ::std::string* release_description();
+  inline void set_allocated_description(::std::string* description);
 
   // optional string connect = 3;
-  bool has_connect() const;
-  void clear_connect();
+  inline bool has_connect() const;
+  inline void clear_connect();
   static const int kConnectFieldNumber = 3;
-  const ::std::string& connect() const;
-  void set_connect(const ::std::string& value);
-  #if LANG_CXX11
-  void set_connect(::std::string&& value);
-  #endif
-  void set_connect(const char* value);
-  void set_connect(const char* value, size_t size);
-  ::std::string* mutable_connect();
-  ::std::string* release_connect();
-  void set_allocated_connect(::std::string* connect);
+  inline const ::std::string& connect() const;
+  inline void set_connect(const ::std::string& value);
+  inline void set_connect(const char* value);
+  inline void set_connect(const char* value, size_t size);
+  inline ::std::string* mutable_connect();
+  inline ::std::string* release_connect();
+  inline void set_allocated_connect(::std::string* connect);
 
   // @@protoc_insertion_point(class_scope:exec.user.CatalogMetadata)
  private:
-  void set_has_catalog_name();
-  void clear_has_catalog_name();
-  void set_has_description();
-  void clear_has_description();
-  void set_has_connect();
-  void clear_has_connect();
+  inline void set_has_catalog_name();
+  inline void clear_has_catalog_name();
+  inline void set_has_description();
+  inline void clear_has_description();
+  inline void set_has_connect();
+  inline void clear_has_connect();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr catalog_name_;
-  ::google::protobuf::internal::ArenaStringPtr description_;
-  ::google::protobuf::internal::ArenaStringPtr connect_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* catalog_name_;
+  ::std::string* description_;
+  ::std::string* connect_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static CatalogMetadata* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetCatalogsResp : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetCatalogsResp) */ {
+class GetCatalogsResp : public ::google::protobuf::Message {
  public:
   GetCatalogsResp();
   virtual ~GetCatalogsResp();
@@ -2350,138 +1809,103 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetCatalogsResp(GetCatalogsResp&& from) noexcept
-    : GetCatalogsResp() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetCatalogsResp& operator=(GetCatalogsResp&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetCatalogsResp& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetCatalogsResp* internal_default_instance() {
-    return reinterpret_cast<const GetCatalogsResp*>(
-               &_GetCatalogsResp_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    11;
-
   void Swap(GetCatalogsResp* other);
-  friend void swap(GetCatalogsResp& a, GetCatalogsResp& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetCatalogsResp* New() const final {
-    return CreateMaybeMessage<GetCatalogsResp>(NULL);
-  }
-
-  GetCatalogsResp* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetCatalogsResp>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetCatalogsResp* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetCatalogsResp& from);
   void MergeFrom(const GetCatalogsResp& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetCatalogsResp* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional .exec.user.RequestStatus status = 1;
+  inline bool has_status() const;
+  inline void clear_status();
+  static const int kStatusFieldNumber = 1;
+  inline ::exec::user::RequestStatus status() const;
+  inline void set_status(::exec::user::RequestStatus value);
+
   // repeated .exec.user.CatalogMetadata catalogs = 2;
-  int catalogs_size() const;
-  void clear_catalogs();
+  inline int catalogs_size() const;
+  inline void clear_catalogs();
   static const int kCatalogsFieldNumber = 2;
-  ::exec::user::CatalogMetadata* mutable_catalogs(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::user::CatalogMetadata >*
-      mutable_catalogs();
-  const ::exec::user::CatalogMetadata& catalogs(int index) const;
-  ::exec::user::CatalogMetadata* add_catalogs();
-  const ::google::protobuf::RepeatedPtrField< ::exec::user::CatalogMetadata >&
+  inline const ::exec::user::CatalogMetadata& catalogs(int index) const;
+  inline ::exec::user::CatalogMetadata* mutable_catalogs(int index);
+  inline ::exec::user::CatalogMetadata* add_catalogs();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::user::CatalogMetadata >&
       catalogs() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::user::CatalogMetadata >*
+      mutable_catalogs();
 
   // optional .exec.shared.DrillPBError error = 3;
-  bool has_error() const;
-  void clear_error();
+  inline bool has_error() const;
+  inline void clear_error();
   static const int kErrorFieldNumber = 3;
-  private:
-  const ::exec::shared::DrillPBError& _internal_error() const;
-  public:
-  const ::exec::shared::DrillPBError& error() const;
-  ::exec::shared::DrillPBError* release_error();
-  ::exec::shared::DrillPBError* mutable_error();
-  void set_allocated_error(::exec::shared::DrillPBError* error);
-
-  // optional .exec.user.RequestStatus status = 1;
-  bool has_status() const;
-  void clear_status();
-  static const int kStatusFieldNumber = 1;
-  ::exec::user::RequestStatus status() const;
-  void set_status(::exec::user::RequestStatus value);
+  inline const ::exec::shared::DrillPBError& error() const;
+  inline ::exec::shared::DrillPBError* mutable_error();
+  inline ::exec::shared::DrillPBError* release_error();
+  inline void set_allocated_error(::exec::shared::DrillPBError* error);
 
   // @@protoc_insertion_point(class_scope:exec.user.GetCatalogsResp)
  private:
-  void set_has_status();
-  void clear_has_status();
-  void set_has_error();
-  void clear_has_error();
+  inline void set_has_status();
+  inline void clear_has_status();
+  inline void set_has_error();
+  inline void clear_has_error();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::user::CatalogMetadata > catalogs_;
   ::exec::shared::DrillPBError* error_;
   int status_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetCatalogsResp* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetSchemasReq : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetSchemasReq) */ {
+class GetSchemasReq : public ::google::protobuf::Message {
  public:
   GetSchemasReq();
   virtual ~GetSchemasReq();
@@ -2492,130 +1916,92 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetSchemasReq(GetSchemasReq&& from) noexcept
-    : GetSchemasReq() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetSchemasReq& operator=(GetSchemasReq&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetSchemasReq& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetSchemasReq* internal_default_instance() {
-    return reinterpret_cast<const GetSchemasReq*>(
-               &_GetSchemasReq_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    12;
-
   void Swap(GetSchemasReq* other);
-  friend void swap(GetSchemasReq& a, GetSchemasReq& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetSchemasReq* New() const final {
-    return CreateMaybeMessage<GetSchemasReq>(NULL);
-  }
-
-  GetSchemasReq* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetSchemasReq>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetSchemasReq* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetSchemasReq& from);
   void MergeFrom(const GetSchemasReq& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetSchemasReq* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  bool has_catalog_name_filter() const;
-  void clear_catalog_name_filter();
+  inline bool has_catalog_name_filter() const;
+  inline void clear_catalog_name_filter();
   static const int kCatalogNameFilterFieldNumber = 1;
-  private:
-  const ::exec::user::LikeFilter& _internal_catalog_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& catalog_name_filter() const;
-  ::exec::user::LikeFilter* release_catalog_name_filter();
-  ::exec::user::LikeFilter* mutable_catalog_name_filter();
-  void set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter);
+  inline const ::exec::user::LikeFilter& catalog_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_catalog_name_filter();
+  inline ::exec::user::LikeFilter* release_catalog_name_filter();
+  inline void set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter);
 
   // optional .exec.user.LikeFilter schema_name_filter = 2;
-  bool has_schema_name_filter() const;
-  void clear_schema_name_filter();
+  inline bool has_schema_name_filter() const;
+  inline void clear_schema_name_filter();
   static const int kSchemaNameFilterFieldNumber = 2;
-  private:
-  const ::exec::user::LikeFilter& _internal_schema_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& schema_name_filter() const;
-  ::exec::user::LikeFilter* release_schema_name_filter();
-  ::exec::user::LikeFilter* mutable_schema_name_filter();
-  void set_allocated_schema_name_filter(::exec::user::LikeFilter* schema_name_filter);
+  inline const ::exec::user::LikeFilter& schema_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_schema_name_filter();
+  inline ::exec::user::LikeFilter* release_schema_name_filter();
+  inline void set_allocated_schema_name_filter(::exec::user::LikeFilter* schema_name_filter);
 
   // @@protoc_insertion_point(class_scope:exec.user.GetSchemasReq)
  private:
-  void set_has_catalog_name_filter();
-  void clear_has_catalog_name_filter();
-  void set_has_schema_name_filter();
-  void clear_has_schema_name_filter();
+  inline void set_has_catalog_name_filter();
+  inline void clear_has_catalog_name_filter();
+  inline void set_has_schema_name_filter();
+  inline void clear_has_schema_name_filter();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::user::LikeFilter* catalog_name_filter_;
   ::exec::user::LikeFilter* schema_name_filter_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetSchemasReq* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class SchemaMetadata : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.SchemaMetadata) */ {
+class SchemaMetadata : public ::google::protobuf::Message {
  public:
   SchemaMetadata();
   virtual ~SchemaMetadata();
@@ -2626,190 +2012,143 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  SchemaMetadata(SchemaMetadata&& from) noexcept
-    : SchemaMetadata() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline SchemaMetadata& operator=(SchemaMetadata&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const SchemaMetadata& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const SchemaMetadata* internal_default_instance() {
-    return reinterpret_cast<const SchemaMetadata*>(
-               &_SchemaMetadata_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    13;
-
   void Swap(SchemaMetadata* other);
-  friend void swap(SchemaMetadata& a, SchemaMetadata& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline SchemaMetadata* New() const final {
-    return CreateMaybeMessage<SchemaMetadata>(NULL);
-  }
-
-  SchemaMetadata* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<SchemaMetadata>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  SchemaMetadata* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const SchemaMetadata& from);
   void MergeFrom(const SchemaMetadata& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(SchemaMetadata* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string catalog_name = 1;
-  bool has_catalog_name() const;
-  void clear_catalog_name();
+  inline bool has_catalog_name() const;
+  inline void clear_catalog_name();
   static const int kCatalogNameFieldNumber = 1;
-  const ::std::string& catalog_name() const;
-  void set_catalog_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_catalog_name(::std::string&& value);
-  #endif
-  void set_catalog_name(const char* value);
-  void set_catalog_name(const char* value, size_t size);
-  ::std::string* mutable_catalog_name();
-  ::std::string* release_catalog_name();
-  void set_allocated_catalog_name(::std::string* catalog_name);
+  inline const ::std::string& catalog_name() const;
+  inline void set_catalog_name(const ::std::string& value);
+  inline void set_catalog_name(const char* value);
+  inline void set_catalog_name(const char* value, size_t size);
+  inline ::std::string* mutable_catalog_name();
+  inline ::std::string* release_catalog_name();
+  inline void set_allocated_catalog_name(::std::string* catalog_name);
 
   // optional string schema_name = 2;
-  bool has_schema_name() const;
-  void clear_schema_name();
+  inline bool has_schema_name() const;
+  inline void clear_schema_name();
   static const int kSchemaNameFieldNumber = 2;
-  const ::std::string& schema_name() const;
-  void set_schema_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_schema_name(::std::string&& value);
-  #endif
-  void set_schema_name(const char* value);
-  void set_schema_name(const char* value, size_t size);
-  ::std::string* mutable_schema_name();
-  ::std::string* release_schema_name();
-  void set_allocated_schema_name(::std::string* schema_name);
+  inline const ::std::string& schema_name() const;
+  inline void set_schema_name(const ::std::string& value);
+  inline void set_schema_name(const char* value);
+  inline void set_schema_name(const char* value, size_t size);
+  inline ::std::string* mutable_schema_name();
+  inline ::std::string* release_schema_name();
+  inline void set_allocated_schema_name(::std::string* schema_name);
 
   // optional string owner = 3;
-  bool has_owner() const;
-  void clear_owner();
+  inline bool has_owner() const;
+  inline void clear_owner();
   static const int kOwnerFieldNumber = 3;
-  const ::std::string& owner() const;
-  void set_owner(const ::std::string& value);
-  #if LANG_CXX11
-  void set_owner(::std::string&& value);
-  #endif
-  void set_owner(const char* value);
-  void set_owner(const char* value, size_t size);
-  ::std::string* mutable_owner();
-  ::std::string* release_owner();
-  void set_allocated_owner(::std::string* owner);
+  inline const ::std::string& owner() const;
+  inline void set_owner(const ::std::string& value);
+  inline void set_owner(const char* value);
+  inline void set_owner(const char* value, size_t size);
+  inline ::std::string* mutable_owner();
+  inline ::std::string* release_owner();
+  inline void set_allocated_owner(::std::string* owner);
 
   // optional string type = 4;
-  bool has_type() const;
-  void clear_type();
+  inline bool has_type() const;
+  inline void clear_type();
   static const int kTypeFieldNumber = 4;
-  const ::std::string& type() const;
-  void set_type(const ::std::string& value);
-  #if LANG_CXX11
-  void set_type(::std::string&& value);
-  #endif
-  void set_type(const char* value);
-  void set_type(const char* value, size_t size);
-  ::std::string* mutable_type();
-  ::std::string* release_type();
-  void set_allocated_type(::std::string* type);
+  inline const ::std::string& type() const;
+  inline void set_type(const ::std::string& value);
+  inline void set_type(const char* value);
+  inline void set_type(const char* value, size_t size);
+  inline ::std::string* mutable_type();
+  inline ::std::string* release_type();
+  inline void set_allocated_type(::std::string* type);
 
   // optional string mutable = 5;
-  bool has_mutable_() const;
-  void clear_mutable_();
+  inline bool has_mutable_() const;
+  inline void clear_mutable_();
   static const int kMutableFieldNumber = 5;
-  const ::std::string& mutable_() const;
-  void set_mutable_(const ::std::string& value);
-  #if LANG_CXX11
-  void set_mutable_(::std::string&& value);
-  #endif
-  void set_mutable_(const char* value);
-  void set_mutable_(const char* value, size_t size);
-  ::std::string* mutable_mutable_();
-  ::std::string* release_mutable_();
-  void set_allocated_mutable_(::std::string* mutable_);
+  inline const ::std::string& mutable_() const;
+  inline void set_mutable_(const ::std::string& value);
+  inline void set_mutable_(const char* value);
+  inline void set_mutable_(const char* value, size_t size);
+  inline ::std::string* mutable_mutable_();
+  inline ::std::string* release_mutable_();
+  inline void set_allocated_mutable_(::std::string* mutable_);
 
   // @@protoc_insertion_point(class_scope:exec.user.SchemaMetadata)
  private:
-  void set_has_catalog_name();
-  void clear_has_catalog_name();
-  void set_has_schema_name();
-  void clear_has_schema_name();
-  void set_has_owner();
-  void clear_has_owner();
-  void set_has_type();
-  void clear_has_type();
-  void set_has_mutable_();
-  void clear_has_mutable_();
+  inline void set_has_catalog_name();
+  inline void clear_has_catalog_name();
+  inline void set_has_schema_name();
+  inline void clear_has_schema_name();
+  inline void set_has_owner();
+  inline void clear_has_owner();
+  inline void set_has_type();
+  inline void clear_has_type();
+  inline void set_has_mutable_();
+  inline void clear_has_mutable_();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr catalog_name_;
-  ::google::protobuf::internal::ArenaStringPtr schema_name_;
-  ::google::protobuf::internal::ArenaStringPtr owner_;
-  ::google::protobuf::internal::ArenaStringPtr type_;
-  ::google::protobuf::internal::ArenaStringPtr mutable__;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* catalog_name_;
+  ::std::string* schema_name_;
+  ::std::string* owner_;
+  ::std::string* type_;
+  ::std::string* mutable__;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(5 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static SchemaMetadata* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetSchemasResp : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetSchemasResp) */ {
+class GetSchemasResp : public ::google::protobuf::Message {
  public:
   GetSchemasResp();
   virtual ~GetSchemasResp();
@@ -2820,138 +2159,103 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetSchemasResp(GetSchemasResp&& from) noexcept
-    : GetSchemasResp() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetSchemasResp& operator=(GetSchemasResp&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetSchemasResp& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetSchemasResp* internal_default_instance() {
-    return reinterpret_cast<const GetSchemasResp*>(
-               &_GetSchemasResp_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    14;
-
   void Swap(GetSchemasResp* other);
-  friend void swap(GetSchemasResp& a, GetSchemasResp& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetSchemasResp* New() const final {
-    return CreateMaybeMessage<GetSchemasResp>(NULL);
-  }
-
-  GetSchemasResp* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetSchemasResp>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetSchemasResp* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetSchemasResp& from);
   void MergeFrom(const GetSchemasResp& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetSchemasResp* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional .exec.user.RequestStatus status = 1;
+  inline bool has_status() const;
+  inline void clear_status();
+  static const int kStatusFieldNumber = 1;
+  inline ::exec::user::RequestStatus status() const;
+  inline void set_status(::exec::user::RequestStatus value);
+
   // repeated .exec.user.SchemaMetadata schemas = 2;
-  int schemas_size() const;
-  void clear_schemas();
+  inline int schemas_size() const;
+  inline void clear_schemas();
   static const int kSchemasFieldNumber = 2;
-  ::exec::user::SchemaMetadata* mutable_schemas(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::user::SchemaMetadata >*
-      mutable_schemas();
-  const ::exec::user::SchemaMetadata& schemas(int index) const;
-  ::exec::user::SchemaMetadata* add_schemas();
-  const ::google::protobuf::RepeatedPtrField< ::exec::user::SchemaMetadata >&
+  inline const ::exec::user::SchemaMetadata& schemas(int index) const;
+  inline ::exec::user::SchemaMetadata* mutable_schemas(int index);
+  inline ::exec::user::SchemaMetadata* add_schemas();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::user::SchemaMetadata >&
       schemas() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::user::SchemaMetadata >*
+      mutable_schemas();
 
   // optional .exec.shared.DrillPBError error = 3;
-  bool has_error() const;
-  void clear_error();
+  inline bool has_error() const;
+  inline void clear_error();
   static const int kErrorFieldNumber = 3;
-  private:
-  const ::exec::shared::DrillPBError& _internal_error() const;
-  public:
-  const ::exec::shared::DrillPBError& error() const;
-  ::exec::shared::DrillPBError* release_error();
-  ::exec::shared::DrillPBError* mutable_error();
-  void set_allocated_error(::exec::shared::DrillPBError* error);
-
-  // optional .exec.user.RequestStatus status = 1;
-  bool has_status() const;
-  void clear_status();
-  static const int kStatusFieldNumber = 1;
-  ::exec::user::RequestStatus status() const;
-  void set_status(::exec::user::RequestStatus value);
+  inline const ::exec::shared::DrillPBError& error() const;
+  inline ::exec::shared::DrillPBError* mutable_error();
+  inline ::exec::shared::DrillPBError* release_error();
+  inline void set_allocated_error(::exec::shared::DrillPBError* error);
 
   // @@protoc_insertion_point(class_scope:exec.user.GetSchemasResp)
  private:
-  void set_has_status();
-  void clear_has_status();
-  void set_has_error();
-  void clear_has_error();
+  inline void set_has_status();
+  inline void clear_has_status();
+  inline void set_has_error();
+  inline void clear_has_error();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::user::SchemaMetadata > schemas_;
   ::exec::shared::DrillPBError* error_;
   int status_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetSchemasResp* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetTablesReq : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetTablesReq) */ {
+class GetTablesReq : public ::google::protobuf::Message {
  public:
   GetTablesReq();
   virtual ~GetTablesReq();
@@ -2962,168 +2266,121 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetTablesReq(GetTablesReq&& from) noexcept
-    : GetTablesReq() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetTablesReq& operator=(GetTablesReq&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetTablesReq& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetTablesReq* internal_default_instance() {
-    return reinterpret_cast<const GetTablesReq*>(
-               &_GetTablesReq_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    15;
-
   void Swap(GetTablesReq* other);
-  friend void swap(GetTablesReq& a, GetTablesReq& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetTablesReq* New() const final {
-    return CreateMaybeMessage<GetTablesReq>(NULL);
-  }
-
-  GetTablesReq* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetTablesReq>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetTablesReq* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetTablesReq& from);
   void MergeFrom(const GetTablesReq& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetTablesReq* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated string table_type_filter = 4;
-  int table_type_filter_size() const;
-  void clear_table_type_filter();
-  static const int kTableTypeFilterFieldNumber = 4;
-  const ::std::string& table_type_filter(int index) const;
-  ::std::string* mutable_table_type_filter(int index);
-  void set_table_type_filter(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_table_type_filter(int index, ::std::string&& value);
-  #endif
-  void set_table_type_filter(int index, const char* value);
-  void set_table_type_filter(int index, const char* value, size_t size);
-  ::std::string* add_table_type_filter();
-  void add_table_type_filter(const ::std::string& value);
-  #if LANG_CXX11
-  void add_table_type_filter(::std::string&& value);
-  #endif
-  void add_table_type_filter(const char* value);
-  void add_table_type_filter(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& table_type_filter() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_table_type_filter();
-
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  bool has_catalog_name_filter() const;
-  void clear_catalog_name_filter();
+  inline bool has_catalog_name_filter() const;
+  inline void clear_catalog_name_filter();
   static const int kCatalogNameFilterFieldNumber = 1;
-  private:
-  const ::exec::user::LikeFilter& _internal_catalog_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& catalog_name_filter() const;
-  ::exec::user::LikeFilter* release_catalog_name_filter();
-  ::exec::user::LikeFilter* mutable_catalog_name_filter();
-  void set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter);
+  inline const ::exec::user::LikeFilter& catalog_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_catalog_name_filter();
+  inline ::exec::user::LikeFilter* release_catalog_name_filter();
+  inline void set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter);
 
   // optional .exec.user.LikeFilter schema_name_filter = 2;
-  bool has_schema_name_filter() const;
-  void clear_schema_name_filter();
+  inline bool has_schema_name_filter() const;
+  inline void clear_schema_name_filter();
   static const int kSchemaNameFilterFieldNumber = 2;
-  private:
-  const ::exec::user::LikeFilter& _internal_schema_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& schema_name_filter() const;
-  ::exec::user::LikeFilter* release_schema_name_filter();
-  ::exec::user::LikeFilter* mutable_schema_name_filter();
-  void set_allocated_schema_name_filter(::exec::user::LikeFilter* schema_name_filter);
+  inline const ::exec::user::LikeFilter& schema_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_schema_name_filter();
+  inline ::exec::user::LikeFilter* release_schema_name_filter();
+  inline void set_allocated_schema_name_filter(::exec::user::LikeFilter* schema_name_filter);
 
   // optional .exec.user.LikeFilter table_name_filter = 3;
-  bool has_table_name_filter() const;
-  void clear_table_name_filter();
+  inline bool has_table_name_filter() const;
+  inline void clear_table_name_filter();
   static const int kTableNameFilterFieldNumber = 3;
-  private:
-  const ::exec::user::LikeFilter& _internal_table_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& table_name_filter() const;
-  ::exec::user::LikeFilter* release_table_name_filter();
-  ::exec::user::LikeFilter* mutable_table_name_filter();
-  void set_allocated_table_name_filter(::exec::user::LikeFilter* table_name_filter);
+  inline const ::exec::user::LikeFilter& table_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_table_name_filter();
+  inline ::exec::user::LikeFilter* release_table_name_filter();
+  inline void set_allocated_table_name_filter(::exec::user::LikeFilter* table_name_filter);
+
+  // repeated string table_type_filter = 4;
+  inline int table_type_filter_size() const;
+  inline void clear_table_type_filter();
+  static const int kTableTypeFilterFieldNumber = 4;
+  inline const ::std::string& table_type_filter(int index) const;
+  inline ::std::string* mutable_table_type_filter(int index);
+  inline void set_table_type_filter(int index, const ::std::string& value);
+  inline void set_table_type_filter(int index, const char* value);
+  inline void set_table_type_filter(int index, const char* value, size_t size);
+  inline ::std::string* add_table_type_filter();
+  inline void add_table_type_filter(const ::std::string& value);
+  inline void add_table_type_filter(const char* value);
+  inline void add_table_type_filter(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& table_type_filter() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_table_type_filter();
 
   // @@protoc_insertion_point(class_scope:exec.user.GetTablesReq)
  private:
-  void set_has_catalog_name_filter();
-  void clear_has_catalog_name_filter();
-  void set_has_schema_name_filter();
-  void clear_has_schema_name_filter();
-  void set_has_table_name_filter();
-  void clear_has_table_name_filter();
+  inline void set_has_catalog_name_filter();
+  inline void clear_has_catalog_name_filter();
+  inline void set_has_schema_name_filter();
+  inline void clear_has_schema_name_filter();
+  inline void set_has_table_name_filter();
+  inline void clear_has_table_name_filter();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::std::string> table_type_filter_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::user::LikeFilter* catalog_name_filter_;
   ::exec::user::LikeFilter* schema_name_filter_;
   ::exec::user::LikeFilter* table_name_filter_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::google::protobuf::RepeatedPtrField< ::std::string> table_type_filter_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetTablesReq* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class TableMetadata : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.TableMetadata) */ {
+class TableMetadata : public ::google::protobuf::Message {
  public:
   TableMetadata();
   virtual ~TableMetadata();
@@ -3134,172 +2391,128 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  TableMetadata(TableMetadata&& from) noexcept
-    : TableMetadata() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline TableMetadata& operator=(TableMetadata&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const TableMetadata& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const TableMetadata* internal_default_instance() {
-    return reinterpret_cast<const TableMetadata*>(
-               &_TableMetadata_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    16;
-
   void Swap(TableMetadata* other);
-  friend void swap(TableMetadata& a, TableMetadata& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline TableMetadata* New() const final {
-    return CreateMaybeMessage<TableMetadata>(NULL);
-  }
-
-  TableMetadata* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<TableMetadata>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  TableMetadata* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const TableMetadata& from);
   void MergeFrom(const TableMetadata& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(TableMetadata* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string catalog_name = 1;
-  bool has_catalog_name() const;
-  void clear_catalog_name();
+  inline bool has_catalog_name() const;
+  inline void clear_catalog_name();
   static const int kCatalogNameFieldNumber = 1;
-  const ::std::string& catalog_name() const;
-  void set_catalog_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_catalog_name(::std::string&& value);
-  #endif
-  void set_catalog_name(const char* value);
-  void set_catalog_name(const char* value, size_t size);
-  ::std::string* mutable_catalog_name();
-  ::std::string* release_catalog_name();
-  void set_allocated_catalog_name(::std::string* catalog_name);
+  inline const ::std::string& catalog_name() const;
+  inline void set_catalog_name(const ::std::string& value);
+  inline void set_catalog_name(const char* value);
+  inline void set_catalog_name(const char* value, size_t size);
+  inline ::std::string* mutable_catalog_name();
+  inline ::std::string* release_catalog_name();
+  inline void set_allocated_catalog_name(::std::string* catalog_name);
 
   // optional string schema_name = 2;
-  bool has_schema_name() const;
-  void clear_schema_name();
+  inline bool has_schema_name() const;
+  inline void clear_schema_name();
   static const int kSchemaNameFieldNumber = 2;
-  const ::std::string& schema_name() const;
-  void set_schema_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_schema_name(::std::string&& value);
-  #endif
-  void set_schema_name(const char* value);
-  void set_schema_name(const char* value, size_t size);
-  ::std::string* mutable_schema_name();
-  ::std::string* release_schema_name();
-  void set_allocated_schema_name(::std::string* schema_name);
+  inline const ::std::string& schema_name() const;
+  inline void set_schema_name(const ::std::string& value);
+  inline void set_schema_name(const char* value);
+  inline void set_schema_name(const char* value, size_t size);
+  inline ::std::string* mutable_schema_name();
+  inline ::std::string* release_schema_name();
+  inline void set_allocated_schema_name(::std::string* schema_name);
 
   // optional string table_name = 3;
-  bool has_table_name() const;
-  void clear_table_name();
+  inline bool has_table_name() const;
+  inline void clear_table_name();
   static const int kTableNameFieldNumber = 3;
-  const ::std::string& table_name() const;
-  void set_table_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_table_name(::std::string&& value);
-  #endif
-  void set_table_name(const char* value);
-  void set_table_name(const char* value, size_t size);
-  ::std::string* mutable_table_name();
-  ::std::string* release_table_name();
-  void set_allocated_table_name(::std::string* table_name);
+  inline const ::std::string& table_name() const;
+  inline void set_table_name(const ::std::string& value);
+  inline void set_table_name(const char* value);
+  inline void set_table_name(const char* value, size_t size);
+  inline ::std::string* mutable_table_name();
+  inline ::std::string* release_table_name();
+  inline void set_allocated_table_name(::std::string* table_name);
 
   // optional string type = 4;
-  bool has_type() const;
-  void clear_type();
+  inline bool has_type() const;
+  inline void clear_type();
   static const int kTypeFieldNumber = 4;
-  const ::std::string& type() const;
-  void set_type(const ::std::string& value);
-  #if LANG_CXX11
-  void set_type(::std::string&& value);
-  #endif
-  void set_type(const char* value);
-  void set_type(const char* value, size_t size);
-  ::std::string* mutable_type();
-  ::std::string* release_type();
-  void set_allocated_type(::std::string* type);
+  inline const ::std::string& type() const;
+  inline void set_type(const ::std::string& value);
+  inline void set_type(const char* value);
+  inline void set_type(const char* value, size_t size);
+  inline ::std::string* mutable_type();
+  inline ::std::string* release_type();
+  inline void set_allocated_type(::std::string* type);
 
   // @@protoc_insertion_point(class_scope:exec.user.TableMetadata)
  private:
-  void set_has_catalog_name();
-  void clear_has_catalog_name();
-  void set_has_schema_name();
-  void clear_has_schema_name();
-  void set_has_table_name();
-  void clear_has_table_name();
-  void set_has_type();
-  void clear_has_type();
+  inline void set_has_catalog_name();
+  inline void clear_has_catalog_name();
+  inline void set_has_schema_name();
+  inline void clear_has_schema_name();
+  inline void set_has_table_name();
+  inline void clear_has_table_name();
+  inline void set_has_type();
+  inline void clear_has_type();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr catalog_name_;
-  ::google::protobuf::internal::ArenaStringPtr schema_name_;
-  ::google::protobuf::internal::ArenaStringPtr table_name_;
-  ::google::protobuf::internal::ArenaStringPtr type_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* catalog_name_;
+  ::std::string* schema_name_;
+  ::std::string* table_name_;
+  ::std::string* type_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static TableMetadata* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetTablesResp : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetTablesResp) */ {
+class GetTablesResp : public ::google::protobuf::Message {
  public:
   GetTablesResp();
   virtual ~GetTablesResp();
@@ -3310,138 +2523,103 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetTablesResp(GetTablesResp&& from) noexcept
-    : GetTablesResp() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetTablesResp& operator=(GetTablesResp&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetTablesResp& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetTablesResp* internal_default_instance() {
-    return reinterpret_cast<const GetTablesResp*>(
-               &_GetTablesResp_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    17;
-
   void Swap(GetTablesResp* other);
-  friend void swap(GetTablesResp& a, GetTablesResp& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetTablesResp* New() const final {
-    return CreateMaybeMessage<GetTablesResp>(NULL);
-  }
-
-  GetTablesResp* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetTablesResp>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetTablesResp* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetTablesResp& from);
   void MergeFrom(const GetTablesResp& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetTablesResp* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional .exec.user.RequestStatus status = 1;
+  inline bool has_status() const;
+  inline void clear_status();
+  static const int kStatusFieldNumber = 1;
+  inline ::exec::user::RequestStatus status() const;
+  inline void set_status(::exec::user::RequestStatus value);
+
   // repeated .exec.user.TableMetadata tables = 2;
-  int tables_size() const;
-  void clear_tables();
+  inline int tables_size() const;
+  inline void clear_tables();
   static const int kTablesFieldNumber = 2;
-  ::exec::user::TableMetadata* mutable_tables(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::user::TableMetadata >*
-      mutable_tables();
-  const ::exec::user::TableMetadata& tables(int index) const;
-  ::exec::user::TableMetadata* add_tables();
-  const ::google::protobuf::RepeatedPtrField< ::exec::user::TableMetadata >&
+  inline const ::exec::user::TableMetadata& tables(int index) const;
+  inline ::exec::user::TableMetadata* mutable_tables(int index);
+  inline ::exec::user::TableMetadata* add_tables();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::user::TableMetadata >&
       tables() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::user::TableMetadata >*
+      mutable_tables();
 
   // optional .exec.shared.DrillPBError error = 3;
-  bool has_error() const;
-  void clear_error();
+  inline bool has_error() const;
+  inline void clear_error();
   static const int kErrorFieldNumber = 3;
-  private:
-  const ::exec::shared::DrillPBError& _internal_error() const;
-  public:
-  const ::exec::shared::DrillPBError& error() const;
-  ::exec::shared::DrillPBError* release_error();
-  ::exec::shared::DrillPBError* mutable_error();
-  void set_allocated_error(::exec::shared::DrillPBError* error);
-
-  // optional .exec.user.RequestStatus status = 1;
-  bool has_status() const;
-  void clear_status();
-  static const int kStatusFieldNumber = 1;
-  ::exec::user::RequestStatus status() const;
-  void set_status(::exec::user::RequestStatus value);
+  inline const ::exec::shared::DrillPBError& error() const;
+  inline ::exec::shared::DrillPBError* mutable_error();
+  inline ::exec::shared::DrillPBError* release_error();
+  inline void set_allocated_error(::exec::shared::DrillPBError* error);
 
   // @@protoc_insertion_point(class_scope:exec.user.GetTablesResp)
  private:
-  void set_has_status();
-  void clear_has_status();
-  void set_has_error();
-  void clear_has_error();
+  inline void set_has_status();
+  inline void clear_has_status();
+  inline void set_has_error();
+  inline void clear_has_error();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::user::TableMetadata > tables_;
   ::exec::shared::DrillPBError* error_;
   int status_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetTablesResp* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetColumnsReq : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetColumnsReq) */ {
+class GetColumnsReq : public ::google::protobuf::Message {
  public:
   GetColumnsReq();
   virtual ~GetColumnsReq();
@@ -3452,160 +2630,116 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetColumnsReq(GetColumnsReq&& from) noexcept
-    : GetColumnsReq() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetColumnsReq& operator=(GetColumnsReq&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetColumnsReq& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetColumnsReq* internal_default_instance() {
-    return reinterpret_cast<const GetColumnsReq*>(
-               &_GetColumnsReq_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    18;
-
   void Swap(GetColumnsReq* other);
-  friend void swap(GetColumnsReq& a, GetColumnsReq& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetColumnsReq* New() const final {
-    return CreateMaybeMessage<GetColumnsReq>(NULL);
-  }
-
-  GetColumnsReq* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetColumnsReq>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetColumnsReq* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetColumnsReq& from);
   void MergeFrom(const GetColumnsReq& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetColumnsReq* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.user.LikeFilter catalog_name_filter = 1;
-  bool has_catalog_name_filter() const;
-  void clear_catalog_name_filter();
+  inline bool has_catalog_name_filter() const;
+  inline void clear_catalog_name_filter();
   static const int kCatalogNameFilterFieldNumber = 1;
-  private:
-  const ::exec::user::LikeFilter& _internal_catalog_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& catalog_name_filter() const;
-  ::exec::user::LikeFilter* release_catalog_name_filter();
-  ::exec::user::LikeFilter* mutable_catalog_name_filter();
-  void set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter);
+  inline const ::exec::user::LikeFilter& catalog_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_catalog_name_filter();
+  inline ::exec::user::LikeFilter* release_catalog_name_filter();
+  inline void set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter);
 
   // optional .exec.user.LikeFilter schema_name_filter = 2;
-  bool has_schema_name_filter() const;
-  void clear_schema_name_filter();
+  inline bool has_schema_name_filter() const;
+  inline void clear_schema_name_filter();
   static const int kSchemaNameFilterFieldNumber = 2;
-  private:
-  const ::exec::user::LikeFilter& _internal_schema_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& schema_name_filter() const;
-  ::exec::user::LikeFilter* release_schema_name_filter();
-  ::exec::user::LikeFilter* mutable_schema_name_filter();
-  void set_allocated_schema_name_filter(::exec::user::LikeFilter* schema_name_filter);
+  inline const ::exec::user::LikeFilter& schema_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_schema_name_filter();
+  inline ::exec::user::LikeFilter* release_schema_name_filter();
+  inline void set_allocated_schema_name_filter(::exec::user::LikeFilter* schema_name_filter);
 
   // optional .exec.user.LikeFilter table_name_filter = 3;
-  bool has_table_name_filter() const;
-  void clear_table_name_filter();
+  inline bool has_table_name_filter() const;
+  inline void clear_table_name_filter();
   static const int kTableNameFilterFieldNumber = 3;
-  private:
-  const ::exec::user::LikeFilter& _internal_table_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& table_name_filter() const;
-  ::exec::user::LikeFilter* release_table_name_filter();
-  ::exec::user::LikeFilter* mutable_table_name_filter();
-  void set_allocated_table_name_filter(::exec::user::LikeFilter* table_name_filter);
+  inline const ::exec::user::LikeFilter& table_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_table_name_filter();
+  inline ::exec::user::LikeFilter* release_table_name_filter();
+  inline void set_allocated_table_name_filter(::exec::user::LikeFilter* table_name_filter);
 
   // optional .exec.user.LikeFilter column_name_filter = 4;
-  bool has_column_name_filter() const;
-  void clear_column_name_filter();
+  inline bool has_column_name_filter() const;
+  inline void clear_column_name_filter();
   static const int kColumnNameFilterFieldNumber = 4;
-  private:
-  const ::exec::user::LikeFilter& _internal_column_name_filter() const;
-  public:
-  const ::exec::user::LikeFilter& column_name_filter() const;
-  ::exec::user::LikeFilter* release_column_name_filter();
-  ::exec::user::LikeFilter* mutable_column_name_filter();
-  void set_allocated_column_name_filter(::exec::user::LikeFilter* column_name_filter);
+  inline const ::exec::user::LikeFilter& column_name_filter() const;
+  inline ::exec::user::LikeFilter* mutable_column_name_filter();
+  inline ::exec::user::LikeFilter* release_column_name_filter();
+  inline void set_allocated_column_name_filter(::exec::user::LikeFilter* column_name_filter);
 
   // @@protoc_insertion_point(class_scope:exec.user.GetColumnsReq)
  private:
-  void set_has_catalog_name_filter();
-  void clear_has_catalog_name_filter();
-  void set_has_schema_name_filter();
-  void clear_has_schema_name_filter();
-  void set_has_table_name_filter();
-  void clear_has_table_name_filter();
-  void set_has_column_name_filter();
-  void clear_has_column_name_filter();
+  inline void set_has_catalog_name_filter();
+  inline void clear_has_catalog_name_filter();
+  inline void set_has_schema_name_filter();
+  inline void clear_has_schema_name_filter();
+  inline void set_has_table_name_filter();
+  inline void clear_has_table_name_filter();
+  inline void set_has_column_name_filter();
+  inline void clear_has_column_name_filter();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::user::LikeFilter* catalog_name_filter_;
   ::exec::user::LikeFilter* schema_name_filter_;
   ::exec::user::LikeFilter* table_name_filter_;
   ::exec::user::LikeFilter* column_name_filter_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetColumnsReq* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class ColumnMetadata : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.ColumnMetadata) */ {
+class ColumnMetadata : public ::google::protobuf::Message {
  public:
   ColumnMetadata();
   virtual ~ColumnMetadata();
@@ -3616,326 +2750,273 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  ColumnMetadata(ColumnMetadata&& from) noexcept
-    : ColumnMetadata() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline ColumnMetadata& operator=(ColumnMetadata&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const ColumnMetadata& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const ColumnMetadata* internal_default_instance() {
-    return reinterpret_cast<const ColumnMetadata*>(
-               &_ColumnMetadata_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    19;
-
   void Swap(ColumnMetadata* other);
-  friend void swap(ColumnMetadata& a, ColumnMetadata& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline ColumnMetadata* New() const final {
-    return CreateMaybeMessage<ColumnMetadata>(NULL);
-  }
-
-  ColumnMetadata* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<ColumnMetadata>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  ColumnMetadata* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const ColumnMetadata& from);
   void MergeFrom(const ColumnMetadata& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(ColumnMetadata* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string catalog_name = 1;
-  bool has_catalog_name() const;
-  void clear_catalog_name();
+  inline bool has_catalog_name() const;
+  inline void clear_catalog_name();
   static const int kCatalogNameFieldNumber = 1;
-  const ::std::string& catalog_name() const;
-  void set_catalog_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_catalog_name(::std::string&& value);
-  #endif
-  void set_catalog_name(const char* value);
-  void set_catalog_name(const char* value, size_t size);
-  ::std::string* mutable_catalog_name();
-  ::std::string* release_catalog_name();
-  void set_allocated_catalog_name(::std::string* catalog_name);
+  inline const ::std::string& catalog_name() const;
+  inline void set_catalog_name(const ::std::string& value);
+  inline void set_catalog_name(const char* value);
+  inline void set_catalog_name(const char* value, size_t size);
+  inline ::std::string* mutable_catalog_name();
+  inline ::std::string* release_catalog_name();
+  inline void set_allocated_catalog_name(::std::string* catalog_name);
 
   // optional string schema_name = 2;
-  bool has_schema_name() const;
-  void clear_schema_name();
+  inline bool has_schema_name() const;
+  inline void clear_schema_name();
   static const int kSchemaNameFieldNumber = 2;
-  const ::std::string& schema_name() const;
-  void set_schema_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_schema_name(::std::string&& value);
-  #endif
-  void set_schema_name(const char* value);
-  void set_schema_name(const char* value, size_t size);
-  ::std::string* mutable_schema_name();
-  ::std::string* release_schema_name();
-  void set_allocated_schema_name(::std::string* schema_name);
+  inline const ::std::string& schema_name() const;
+  inline void set_schema_name(const ::std::string& value);
+  inline void set_schema_name(const char* value);
+  inline void set_schema_name(const char* value, size_t size);
+  inline ::std::string* mutable_schema_name();
+  inline ::std::string* release_schema_name();
+  inline void set_allocated_schema_name(::std::string* schema_name);
 
   // optional string table_name = 3;
-  bool has_table_name() const;
-  void clear_table_name();
+  inline bool has_table_name() const;
+  inline void clear_table_name();
   static const int kTableNameFieldNumber = 3;
-  const ::std::string& table_name() const;
-  void set_table_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_table_name(::std::string&& value);
-  #endif
-  void set_table_name(const char* value);
-  void set_table_name(const char* value, size_t size);
-  ::std::string* mutable_table_name();
-  ::std::string* release_table_name();
-  void set_allocated_table_name(::std::string* table_name);
+  inline const ::std::string& table_name() const;
+  inline void set_table_name(const ::std::string& value);
+  inline void set_table_name(const char* value);
+  inline void set_table_name(const char* value, size_t size);
+  inline ::std::string* mutable_table_name();
+  inline ::std::string* release_table_name();
+  inline void set_allocated_table_name(::std::string* table_name);
 
   // optional string column_name = 4;
-  bool has_column_name() const;
-  void clear_column_name();
+  inline bool has_column_name() const;
+  inline void clear_column_name();
   static const int kColumnNameFieldNumber = 4;
-  const ::std::string& column_name() const;
-  void set_column_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_column_name(::std::string&& value);
-  #endif
-  void set_column_name(const char* value);
-  void set_column_name(const char* value, size_t size);
-  ::std::string* mutable_column_name();
-  ::std::string* release_column_name();
-  void set_allocated_column_name(::std::string* column_name);
-
-  // optional string default_value = 6;
-  bool has_default_value() const;
-  void clear_default_value();
-  static const int kDefaultValueFieldNumber = 6;
-  const ::std::string& default_value() const;
-  void set_default_value(const ::std::string& value);
-  #if LANG_CXX11
-  void set_default_value(::std::string&& value);
-  #endif
-  void set_default_value(const char* value);
-  void set_default_value(const char* value, size_t size);
-  ::std::string* mutable_default_value();
-  ::std::string* release_default_value();
-  void set_allocated_default_value(::std::string* default_value);
-
-  // optional string data_type = 8;
-  bool has_data_type() const;
-  void clear_data_type();
-  static const int kDataTypeFieldNumber = 8;
-  const ::std::string& data_type() const;
-  void set_data_type(const ::std::string& value);
-  #if LANG_CXX11
-  void set_data_type(::std::string&& value);
-  #endif
-  void set_data_type(const char* value);
-  void set_data_type(const char* value, size_t size);
-  ::std::string* mutable_data_type();
-  ::std::string* release_data_type();
-  void set_allocated_data_type(::std::string* data_type);
-
-  // optional string interval_type = 15;
-  bool has_interval_type() const;
-  void clear_interval_type();
-  static const int kIntervalTypeFieldNumber = 15;
-  const ::std::string& interval_type() const;
-  void set_interval_type(const ::std::string& value);
-  #if LANG_CXX11
-  void set_interval_type(::std::string&& value);
-  #endif
-  void set_interval_type(const char* value);
-  void set_interval_type(const char* value, size_t size);
-  ::std::string* mutable_interval_type();
-  ::std::string* release_interval_type();
-  void set_allocated_interval_type(::std::string* interval_type);
+  inline const ::std::string& column_name() const;
+  inline void set_column_name(const ::std::string& value);
+  inline void set_column_name(const char* value);
+  inline void set_column_name(const char* value, size_t size);
+  inline ::std::string* mutable_column_name();
+  inline ::std::string* release_column_name();
+  inline void set_allocated_column_name(::std::string* column_name);
 
   // optional int32 ordinal_position = 5;
-  bool has_ordinal_position() const;
-  void clear_ordinal_position();
+  inline bool has_ordinal_position() const;
+  inline void clear_ordinal_position();
   static const int kOrdinalPositionFieldNumber = 5;
-  ::google::protobuf::int32 ordinal_position() const;
-  void set_ordinal_position(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 ordinal_position() const;
+  inline void set_ordinal_position(::google::protobuf::int32 value);
+
+  // optional string default_value = 6;
+  inline bool has_default_value() const;
+  inline void clear_default_value();
+  static const int kDefaultValueFieldNumber = 6;
+  inline const ::std::string& default_value() const;
+  inline void set_default_value(const ::std::string& value);
+  inline void set_default_value(const char* value);
+  inline void set_default_value(const char* value, size_t size);
+  inline ::std::string* mutable_default_value();
+  inline ::std::string* release_default_value();
+  inline void set_allocated_default_value(::std::string* default_value);
 
   // optional bool is_nullable = 7;
-  bool has_is_nullable() const;
-  void clear_is_nullable();
+  inline bool has_is_nullable() const;
+  inline void clear_is_nullable();
   static const int kIsNullableFieldNumber = 7;
-  bool is_nullable() const;
-  void set_is_nullable(bool value);
+  inline bool is_nullable() const;
+  inline void set_is_nullable(bool value);
+
+  // optional string data_type = 8;
+  inline bool has_data_type() const;
+  inline void clear_data_type();
+  static const int kDataTypeFieldNumber = 8;
+  inline const ::std::string& data_type() const;
+  inline void set_data_type(const ::std::string& value);
+  inline void set_data_type(const char* value);
+  inline void set_data_type(const char* value, size_t size);
+  inline ::std::string* mutable_data_type();
+  inline ::std::string* release_data_type();
+  inline void set_allocated_data_type(::std::string* data_type);
 
   // optional int32 char_max_length = 9;
-  bool has_char_max_length() const;
-  void clear_char_max_length();
+  inline bool has_char_max_length() const;
+  inline void clear_char_max_length();
   static const int kCharMaxLengthFieldNumber = 9;
-  ::google::protobuf::int32 char_max_length() const;
-  void set_char_max_length(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 char_max_length() const;
+  inline void set_char_max_length(::google::protobuf::int32 value);
 
   // optional int32 char_octet_length = 10;
-  bool has_char_octet_length() const;
-  void clear_char_octet_length();
+  inline bool has_char_octet_length() const;
+  inline void clear_char_octet_length();
   static const int kCharOctetLengthFieldNumber = 10;
-  ::google::protobuf::int32 char_octet_length() const;
-  void set_char_octet_length(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 char_octet_length() const;
+  inline void set_char_octet_length(::google::protobuf::int32 value);
 
   // optional int32 numeric_precision = 11;
-  bool has_numeric_precision() const;
-  void clear_numeric_precision();
+  inline bool has_numeric_precision() const;
+  inline void clear_numeric_precision();
   static const int kNumericPrecisionFieldNumber = 11;
-  ::google::protobuf::int32 numeric_precision() const;
-  void set_numeric_precision(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 numeric_precision() const;
+  inline void set_numeric_precision(::google::protobuf::int32 value);
 
   // optional int32 numeric_precision_radix = 12;
-  bool has_numeric_precision_radix() const;
-  void clear_numeric_precision_radix();
+  inline bool has_numeric_precision_radix() const;
+  inline void clear_numeric_precision_radix();
   static const int kNumericPrecisionRadixFieldNumber = 12;
-  ::google::protobuf::int32 numeric_precision_radix() const;
-  void set_numeric_precision_radix(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 numeric_precision_radix() const;
+  inline void set_numeric_precision_radix(::google::protobuf::int32 value);
 
   // optional int32 numeric_scale = 13;
-  bool has_numeric_scale() const;
-  void clear_numeric_scale();
+  inline bool has_numeric_scale() const;
+  inline void clear_numeric_scale();
   static const int kNumericScaleFieldNumber = 13;
-  ::google::protobuf::int32 numeric_scale() const;
-  void set_numeric_scale(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 numeric_scale() const;
+  inline void set_numeric_scale(::google::protobuf::int32 value);
 
   // optional int32 date_time_precision = 14;
-  bool has_date_time_precision() const;
-  void clear_date_time_precision();
+  inline bool has_date_time_precision() const;
+  inline void clear_date_time_precision();
   static const int kDateTimePrecisionFieldNumber = 14;
-  ::google::protobuf::int32 date_time_precision() const;
-  void set_date_time_precision(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 date_time_precision() const;
+  inline void set_date_time_precision(::google::protobuf::int32 value);
+
+  // optional string interval_type = 15;
+  inline bool has_interval_type() const;
+  inline void clear_interval_type();
+  static const int kIntervalTypeFieldNumber = 15;
+  inline const ::std::string& interval_type() const;
+  inline void set_interval_type(const ::std::string& value);
+  inline void set_interval_type(const char* value);
+  inline void set_interval_type(const char* value, size_t size);
+  inline ::std::string* mutable_interval_type();
+  inline ::std::string* release_interval_type();
+  inline void set_allocated_interval_type(::std::string* interval_type);
 
   // optional int32 interval_precision = 16;
-  bool has_interval_precision() const;
-  void clear_interval_precision();
+  inline bool has_interval_precision() const;
+  inline void clear_interval_precision();
   static const int kIntervalPrecisionFieldNumber = 16;
-  ::google::protobuf::int32 interval_precision() const;
-  void set_interval_precision(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 interval_precision() const;
+  inline void set_interval_precision(::google::protobuf::int32 value);
 
   // optional int32 column_size = 17;
-  bool has_column_size() const;
-  void clear_column_size();
+  inline bool has_column_size() const;
+  inline void clear_column_size();
   static const int kColumnSizeFieldNumber = 17;
-  ::google::protobuf::int32 column_size() const;
-  void set_column_size(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 column_size() const;
+  inline void set_column_size(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.user.ColumnMetadata)
  private:
-  void set_has_catalog_name();
-  void clear_has_catalog_name();
-  void set_has_schema_name();
-  void clear_has_schema_name();
-  void set_has_table_name();
-  void clear_has_table_name();
-  void set_has_column_name();
-  void clear_has_column_name();
-  void set_has_ordinal_position();
-  void clear_has_ordinal_position();
-  void set_has_default_value();
-  void clear_has_default_value();
-  void set_has_is_nullable();
-  void clear_has_is_nullable();
-  void set_has_data_type();
-  void clear_has_data_type();
-  void set_has_char_max_length();
-  void clear_has_char_max_length();
-  void set_has_char_octet_length();
-  void clear_has_char_octet_length();
-  void set_has_numeric_precision();
-  void clear_has_numeric_precision();
-  void set_has_numeric_precision_radix();
-  void clear_has_numeric_precision_radix();
-  void set_has_numeric_scale();
-  void clear_has_numeric_scale();
-  void set_has_date_time_precision();
-  void clear_has_date_time_precision();
-  void set_has_interval_type();
-  void clear_has_interval_type();
-  void set_has_interval_precision();
-  void clear_has_interval_precision();
-  void set_has_column_size();
-  void clear_has_column_size();
+  inline void set_has_catalog_name();
+  inline void clear_has_catalog_name();
+  inline void set_has_schema_name();
+  inline void clear_has_schema_name();
+  inline void set_has_table_name();
+  inline void clear_has_table_name();
+  inline void set_has_column_name();
+  inline void clear_has_column_name();
+  inline void set_has_ordinal_position();
+  inline void clear_has_ordinal_position();
+  inline void set_has_default_value();
+  inline void clear_has_default_value();
+  inline void set_has_is_nullable();
+  inline void clear_has_is_nullable();
+  inline void set_has_data_type();
+  inline void clear_has_data_type();
+  inline void set_has_char_max_length();
+  inline void clear_has_char_max_length();
+  inline void set_has_char_octet_length();
+  inline void clear_has_char_octet_length();
+  inline void set_has_numeric_precision();
+  inline void clear_has_numeric_precision();
+  inline void set_has_numeric_precision_radix();
+  inline void clear_has_numeric_precision_radix();
+  inline void set_has_numeric_scale();
+  inline void clear_has_numeric_scale();
+  inline void set_has_date_time_precision();
+  inline void clear_has_date_time_precision();
+  inline void set_has_interval_type();
+  inline void clear_has_interval_type();
+  inline void set_has_interval_precision();
+  inline void clear_has_interval_precision();
+  inline void set_has_column_size();
+  inline void clear_has_column_size();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr catalog_name_;
-  ::google::protobuf::internal::ArenaStringPtr schema_name_;
-  ::google::protobuf::internal::ArenaStringPtr table_name_;
-  ::google::protobuf::internal::ArenaStringPtr column_name_;
-  ::google::protobuf::internal::ArenaStringPtr default_value_;
-  ::google::protobuf::internal::ArenaStringPtr data_type_;
-  ::google::protobuf::internal::ArenaStringPtr interval_type_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* catalog_name_;
+  ::std::string* schema_name_;
+  ::std::string* table_name_;
+  ::std::string* column_name_;
+  ::std::string* default_value_;
   ::google::protobuf::int32 ordinal_position_;
   bool is_nullable_;
+  ::std::string* data_type_;
   ::google::protobuf::int32 char_max_length_;
   ::google::protobuf::int32 char_octet_length_;
   ::google::protobuf::int32 numeric_precision_;
   ::google::protobuf::int32 numeric_precision_radix_;
   ::google::protobuf::int32 numeric_scale_;
   ::google::protobuf::int32 date_time_precision_;
+  ::std::string* interval_type_;
   ::google::protobuf::int32 interval_precision_;
   ::google::protobuf::int32 column_size_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(17 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static ColumnMetadata* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetColumnsResp : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetColumnsResp) */ {
+class GetColumnsResp : public ::google::protobuf::Message {
  public:
   GetColumnsResp();
   virtual ~GetColumnsResp();
@@ -3946,138 +3027,103 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetColumnsResp(GetColumnsResp&& from) noexcept
-    : GetColumnsResp() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetColumnsResp& operator=(GetColumnsResp&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetColumnsResp& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetColumnsResp* internal_default_instance() {
-    return reinterpret_cast<const GetColumnsResp*>(
-               &_GetColumnsResp_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    20;
-
   void Swap(GetColumnsResp* other);
-  friend void swap(GetColumnsResp& a, GetColumnsResp& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetColumnsResp* New() const final {
-    return CreateMaybeMessage<GetColumnsResp>(NULL);
-  }
-
-  GetColumnsResp* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetColumnsResp>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetColumnsResp* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetColumnsResp& from);
   void MergeFrom(const GetColumnsResp& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetColumnsResp* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional .exec.user.RequestStatus status = 1;
+  inline bool has_status() const;
+  inline void clear_status();
+  static const int kStatusFieldNumber = 1;
+  inline ::exec::user::RequestStatus status() const;
+  inline void set_status(::exec::user::RequestStatus value);
+
   // repeated .exec.user.ColumnMetadata columns = 2;
-  int columns_size() const;
-  void clear_columns();
+  inline int columns_size() const;
+  inline void clear_columns();
   static const int kColumnsFieldNumber = 2;
-  ::exec::user::ColumnMetadata* mutable_columns(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::user::ColumnMetadata >*
-      mutable_columns();
-  const ::exec::user::ColumnMetadata& columns(int index) const;
-  ::exec::user::ColumnMetadata* add_columns();
-  const ::google::protobuf::RepeatedPtrField< ::exec::user::ColumnMetadata >&
+  inline const ::exec::user::ColumnMetadata& columns(int index) const;
+  inline ::exec::user::ColumnMetadata* mutable_columns(int index);
+  inline ::exec::user::ColumnMetadata* add_columns();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::user::ColumnMetadata >&
       columns() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::user::ColumnMetadata >*
+      mutable_columns();
 
   // optional .exec.shared.DrillPBError error = 3;
-  bool has_error() const;
-  void clear_error();
+  inline bool has_error() const;
+  inline void clear_error();
   static const int kErrorFieldNumber = 3;
-  private:
-  const ::exec::shared::DrillPBError& _internal_error() const;
-  public:
-  const ::exec::shared::DrillPBError& error() const;
-  ::exec::shared::DrillPBError* release_error();
-  ::exec::shared::DrillPBError* mutable_error();
-  void set_allocated_error(::exec::shared::DrillPBError* error);
-
-  // optional .exec.user.RequestStatus status = 1;
-  bool has_status() const;
-  void clear_status();
-  static const int kStatusFieldNumber = 1;
-  ::exec::user::RequestStatus status() const;
-  void set_status(::exec::user::RequestStatus value);
+  inline const ::exec::shared::DrillPBError& error() const;
+  inline ::exec::shared::DrillPBError* mutable_error();
+  inline ::exec::shared::DrillPBError* release_error();
+  inline void set_allocated_error(::exec::shared::DrillPBError* error);
 
   // @@protoc_insertion_point(class_scope:exec.user.GetColumnsResp)
  private:
-  void set_has_status();
-  void clear_has_status();
-  void set_has_error();
-  void clear_has_error();
+  inline void set_has_status();
+  inline void clear_has_status();
+  inline void set_has_error();
+  inline void clear_has_error();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::user::ColumnMetadata > columns_;
   ::exec::shared::DrillPBError* error_;
   int status_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetColumnsResp* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class CreatePreparedStatementReq : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.CreatePreparedStatementReq) */ {
+class CreatePreparedStatementReq : public ::google::protobuf::Message {
  public:
   CreatePreparedStatementReq();
   virtual ~CreatePreparedStatementReq();
@@ -4088,118 +3134,83 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  CreatePreparedStatementReq(CreatePreparedStatementReq&& from) noexcept
-    : CreatePreparedStatementReq() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline CreatePreparedStatementReq& operator=(CreatePreparedStatementReq&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const CreatePreparedStatementReq& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const CreatePreparedStatementReq* internal_default_instance() {
-    return reinterpret_cast<const CreatePreparedStatementReq*>(
-               &_CreatePreparedStatementReq_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    21;
-
   void Swap(CreatePreparedStatementReq* other);
-  friend void swap(CreatePreparedStatementReq& a, CreatePreparedStatementReq& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline CreatePreparedStatementReq* New() const final {
-    return CreateMaybeMessage<CreatePreparedStatementReq>(NULL);
-  }
-
-  CreatePreparedStatementReq* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<CreatePreparedStatementReq>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  CreatePreparedStatementReq* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const CreatePreparedStatementReq& from);
   void MergeFrom(const CreatePreparedStatementReq& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(CreatePreparedStatementReq* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string sql_query = 1;
-  bool has_sql_query() const;
-  void clear_sql_query();
+  inline bool has_sql_query() const;
+  inline void clear_sql_query();
   static const int kSqlQueryFieldNumber = 1;
-  const ::std::string& sql_query() const;
-  void set_sql_query(const ::std::string& value);
-  #if LANG_CXX11
-  void set_sql_query(::std::string&& value);
-  #endif
-  void set_sql_query(const char* value);
-  void set_sql_query(const char* value, size_t size);
-  ::std::string* mutable_sql_query();
-  ::std::string* release_sql_query();
-  void set_allocated_sql_query(::std::string* sql_query);
+  inline const ::std::string& sql_query() const;
+  inline void set_sql_query(const ::std::string& value);
+  inline void set_sql_query(const char* value);
+  inline void set_sql_query(const char* value, size_t size);
+  inline ::std::string* mutable_sql_query();
+  inline ::std::string* release_sql_query();
+  inline void set_allocated_sql_query(::std::string* sql_query);
 
   // @@protoc_insertion_point(class_scope:exec.user.CreatePreparedStatementReq)
  private:
-  void set_has_sql_query();
-  void clear_has_sql_query();
+  inline void set_has_sql_query();
+  inline void clear_has_sql_query();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr sql_query_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* sql_query_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static CreatePreparedStatementReq* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class ResultColumnMetadata : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.ResultColumnMetadata) */ {
+class ResultColumnMetadata : public ::google::protobuf::Message {
  public:
   ResultColumnMetadata();
   virtual ~ResultColumnMetadata();
@@ -4210,329 +3221,266 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  ResultColumnMetadata(ResultColumnMetadata&& from) noexcept
-    : ResultColumnMetadata() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline ResultColumnMetadata& operator=(ResultColumnMetadata&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const ResultColumnMetadata& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const ResultColumnMetadata* internal_default_instance() {
-    return reinterpret_cast<const ResultColumnMetadata*>(
-               &_ResultColumnMetadata_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    22;
-
   void Swap(ResultColumnMetadata* other);
-  friend void swap(ResultColumnMetadata& a, ResultColumnMetadata& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline ResultColumnMetadata* New() const final {
-    return CreateMaybeMessage<ResultColumnMetadata>(NULL);
-  }
-
-  ResultColumnMetadata* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<ResultColumnMetadata>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  ResultColumnMetadata* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const ResultColumnMetadata& from);
   void MergeFrom(const ResultColumnMetadata& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(ResultColumnMetadata* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string catalog_name = 1;
-  bool has_catalog_name() const;
-  void clear_catalog_name();
+  inline bool has_catalog_name() const;
+  inline void clear_catalog_name();
   static const int kCatalogNameFieldNumber = 1;
-  const ::std::string& catalog_name() const;
-  void set_catalog_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_catalog_name(::std::string&& value);
-  #endif
-  void set_catalog_name(const char* value);
-  void set_catalog_name(const char* value, size_t size);
-  ::std::string* mutable_catalog_name();
-  ::std::string* release_catalog_name();
-  void set_allocated_catalog_name(::std::string* catalog_name);
+  inline const ::std::string& catalog_name() const;
+  inline void set_catalog_name(const ::std::string& value);
+  inline void set_catalog_name(const char* value);
+  inline void set_catalog_name(const char* value, size_t size);
+  inline ::std::string* mutable_catalog_name();
+  inline ::std::string* release_catalog_name();
+  inline void set_allocated_catalog_name(::std::string* catalog_name);
 
   // optional string schema_name = 2;
-  bool has_schema_name() const;
-  void clear_schema_name();
+  inline bool has_schema_name() const;
+  inline void clear_schema_name();
   static const int kSchemaNameFieldNumber = 2;
-  const ::std::string& schema_name() const;
-  void set_schema_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_schema_name(::std::string&& value);
-  #endif
-  void set_schema_name(const char* value);
-  void set_schema_name(const char* value, size_t size);
-  ::std::string* mutable_schema_name();
-  ::std::string* release_schema_name();
-  void set_allocated_schema_name(::std::string* schema_name);
+  inline const ::std::string& schema_name() const;
+  inline void set_schema_name(const ::std::string& value);
+  inline void set_schema_name(const char* value);
+  inline void set_schema_name(const char* value, size_t size);
+  inline ::std::string* mutable_schema_name();
+  inline ::std::string* release_schema_name();
+  inline void set_allocated_schema_name(::std::string* schema_name);
 
   // optional string table_name = 3;
-  bool has_table_name() const;
-  void clear_table_name();
+  inline bool has_table_name() const;
+  inline void clear_table_name();
   static const int kTableNameFieldNumber = 3;
-  const ::std::string& table_name() const;
-  void set_table_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_table_name(::std::string&& value);
-  #endif
-  void set_table_name(const char* value);
-  void set_table_name(const char* value, size_t size);
-  ::std::string* mutable_table_name();
-  ::std::string* release_table_name();
-  void set_allocated_table_name(::std::string* table_name);
+  inline const ::std::string& table_name() const;
+  inline void set_table_name(const ::std::string& value);
+  inline void set_table_name(const char* value);
+  inline void set_table_name(const char* value, size_t size);
+  inline ::std::string* mutable_table_name();
+  inline ::std::string* release_table_name();
+  inline void set_allocated_table_name(::std::string* table_name);
 
   // optional string column_name = 4;
-  bool has_column_name() const;
-  void clear_column_name();
+  inline bool has_column_name() const;
+  inline void clear_column_name();
   static const int kColumnNameFieldNumber = 4;
-  const ::std::string& column_name() const;
-  void set_column_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_column_name(::std::string&& value);
-  #endif
-  void set_column_name(const char* value);
-  void set_column_name(const char* value, size_t size);
-  ::std::string* mutable_column_name();
-  ::std::string* release_column_name();
-  void set_allocated_column_name(::std::string* column_name);
+  inline const ::std::string& column_name() const;
+  inline void set_column_name(const ::std::string& value);
+  inline void set_column_name(const char* value);
+  inline void set_column_name(const char* value, size_t size);
+  inline ::std::string* mutable_column_name();
+  inline ::std::string* release_column_name();
+  inline void set_allocated_column_name(::std::string* column_name);
 
   // optional string label = 5;
-  bool has_label() const;
-  void clear_label();
+  inline bool has_label() const;
+  inline void clear_label();
   static const int kLabelFieldNumber = 5;
-  const ::std::string& label() const;
-  void set_label(const ::std::string& value);
-  #if LANG_CXX11
-  void set_label(::std::string&& value);
-  #endif
-  void set_label(const char* value);
-  void set_label(const char* value, size_t size);
-  ::std::string* mutable_label();
-  ::std::string* release_label();
-  void set_allocated_label(::std::string* label);
+  inline const ::std::string& label() const;
+  inline void set_label(const ::std::string& value);
+  inline void set_label(const char* value);
+  inline void set_label(const char* value, size_t size);
+  inline ::std::string* mutable_label();
+  inline ::std::string* release_label();
+  inline void set_allocated_label(::std::string* label);
 
   // optional string data_type = 6;
-  bool has_data_type() const;
-  void clear_data_type();
+  inline bool has_data_type() const;
+  inline void clear_data_type();
   static const int kDataTypeFieldNumber = 6;
-  const ::std::string& data_type() const;
-  void set_data_type(const ::std::string& value);
-  #if LANG_CXX11
-  void set_data_type(::std::string&& value);
-  #endif
-  void set_data_type(const char* value);
-  void set_data_type(const char* value, size_t size);
-  ::std::string* mutable_data_type();
-  ::std::string* release_data_type();
-  void set_allocated_data_type(::std::string* data_type);
-
-  // optional string class_name = 18;
-  bool has_class_name() const;
-  void clear_class_name();
-  static const int kClassNameFieldNumber = 18;
-  const ::std::string& class_name() const;
-  void set_class_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_class_name(::std::string&& value);
-  #endif
-  void set_class_name(const char* value);
-  void set_class_name(const char* value, size_t size);
-  ::std::string* mutable_class_name();
-  ::std::string* release_class_name();
-  void set_allocated_class_name(::std::string* class_name);
-
-  // optional int32 precision = 8;
-  bool has_precision() const;
-  void clear_precision();
-  static const int kPrecisionFieldNumber = 8;
-  ::google::protobuf::int32 precision() const;
-  void set_precision(::google::protobuf::int32 value);
-
-  // optional int32 scale = 9;
-  bool has_scale() const;
-  void clear_scale();
-  static const int kScaleFieldNumber = 9;
-  ::google::protobuf::int32 scale() const;
-  void set_scale(::google::protobuf::int32 value);
-
-  // optional int32 display_size = 11;
-  bool has_display_size() const;
-  void clear_display_size();
-  static const int kDisplaySizeFieldNumber = 11;
-  ::google::protobuf::int32 display_size() const;
-  void set_display_size(::google::protobuf::int32 value);
+  inline const ::std::string& data_type() const;
+  inline void set_data_type(const ::std::string& value);
+  inline void set_data_type(const char* value);
+  inline void set_data_type(const char* value, size_t size);
+  inline ::std::string* mutable_data_type();
+  inline ::std::string* release_data_type();
+  inline void set_allocated_data_type(::std::string* data_type);
 
   // optional bool is_nullable = 7;
-  bool has_is_nullable() const;
-  void clear_is_nullable();
+  inline bool has_is_nullable() const;
+  inline void clear_is_nullable();
   static const int kIsNullableFieldNumber = 7;
-  bool is_nullable() const;
-  void set_is_nullable(bool value);
+  inline bool is_nullable() const;
+  inline void set_is_nullable(bool value);
+
+  // optional int32 precision = 8;
+  inline bool has_precision() const;
+  inline void clear_precision();
+  static const int kPrecisionFieldNumber = 8;
+  inline ::google::protobuf::int32 precision() const;
+  inline void set_precision(::google::protobuf::int32 value);
+
+  // optional int32 scale = 9;
+  inline bool has_scale() const;
+  inline void clear_scale();
+  static const int kScaleFieldNumber = 9;
+  inline ::google::protobuf::int32 scale() const;
+  inline void set_scale(::google::protobuf::int32 value);
 
   // optional bool signed = 10;
-  bool has_signed_() const;
-  void clear_signed_();
+  inline bool has_signed_() const;
+  inline void clear_signed_();
   static const int kSignedFieldNumber = 10;
-  bool signed_() const;
-  void set_signed_(bool value);
+  inline bool signed_() const;
+  inline void set_signed_(bool value);
+
+  // optional int32 display_size = 11;
+  inline bool has_display_size() const;
+  inline void clear_display_size();
+  static const int kDisplaySizeFieldNumber = 11;
+  inline ::google::protobuf::int32 display_size() const;
+  inline void set_display_size(::google::protobuf::int32 value);
 
   // optional bool is_aliased = 12;
-  bool has_is_aliased() const;
-  void clear_is_aliased();
+  inline bool has_is_aliased() const;
+  inline void clear_is_aliased();
   static const int kIsAliasedFieldNumber = 12;
-  bool is_aliased() const;
-  void set_is_aliased(bool value);
-
-  // optional bool auto_increment = 15;
-  bool has_auto_increment() const;
-  void clear_auto_increment();
-  static const int kAutoIncrementFieldNumber = 15;
-  bool auto_increment() const;
-  void set_auto_increment(bool value);
+  inline bool is_aliased() const;
+  inline void set_is_aliased(bool value);
 
   // optional .exec.user.ColumnSearchability searchability = 13;
-  bool has_searchability() const;
-  void clear_searchability();
+  inline bool has_searchability() const;
+  inline void clear_searchability();
   static const int kSearchabilityFieldNumber = 13;
-  ::exec::user::ColumnSearchability searchability() const;
-  void set_searchability(::exec::user::ColumnSearchability value);
+  inline ::exec::user::ColumnSearchability searchability() const;
+  inline void set_searchability(::exec::user::ColumnSearchability value);
 
   // optional .exec.user.ColumnUpdatability updatability = 14;
-  bool has_updatability() const;
-  void clear_updatability();
+  inline bool has_updatability() const;
+  inline void clear_updatability();
   static const int kUpdatabilityFieldNumber = 14;
-  ::exec::user::ColumnUpdatability updatability() const;
-  void set_updatability(::exec::user::ColumnUpdatability value);
+  inline ::exec::user::ColumnUpdatability updatability() const;
+  inline void set_updatability(::exec::user::ColumnUpdatability value);
+
+  // optional bool auto_increment = 15;
+  inline bool has_auto_increment() const;
+  inline void clear_auto_increment();
+  static const int kAutoIncrementFieldNumber = 15;
+  inline bool auto_increment() const;
+  inline void set_auto_increment(bool value);
 
   // optional bool case_sensitivity = 16;
-  bool has_case_sensitivity() const;
-  void clear_case_sensitivity();
+  inline bool has_case_sensitivity() const;
+  inline void clear_case_sensitivity();
   static const int kCaseSensitivityFieldNumber = 16;
-  bool case_sensitivity() const;
-  void set_case_sensitivity(bool value);
+  inline bool case_sensitivity() const;
+  inline void set_case_sensitivity(bool value);
 
   // optional bool sortable = 17;
-  bool has_sortable() const;
-  void clear_sortable();
+  inline bool has_sortable() const;
+  inline void clear_sortable();
   static const int kSortableFieldNumber = 17;
-  bool sortable() const;
-  void set_sortable(bool value);
+  inline bool sortable() const;
+  inline void set_sortable(bool value);
+
+  // optional string class_name = 18;
+  inline bool has_class_name() const;
+  inline void clear_class_name();
+  static const int kClassNameFieldNumber = 18;
+  inline const ::std::string& class_name() const;
+  inline void set_class_name(const ::std::string& value);
+  inline void set_class_name(const char* value);
+  inline void set_class_name(const char* value, size_t size);
+  inline ::std::string* mutable_class_name();
+  inline ::std::string* release_class_name();
+  inline void set_allocated_class_name(::std::string* class_name);
 
   // optional bool is_currency = 20;
-  bool has_is_currency() const;
-  void clear_is_currency();
+  inline bool has_is_currency() const;
+  inline void clear_is_currency();
   static const int kIsCurrencyFieldNumber = 20;
-  bool is_currency() const;
-  void set_is_currency(bool value);
+  inline bool is_currency() const;
+  inline void set_is_currency(bool value);
 
   // @@protoc_insertion_point(class_scope:exec.user.ResultColumnMetadata)
  private:
-  void set_has_catalog_name();
-  void clear_has_catalog_name();
-  void set_has_schema_name();
-  void clear_has_schema_name();
-  void set_has_table_name();
-  void clear_has_table_name();
-  void set_has_column_name();
-  void clear_has_column_name();
-  void set_has_label();
-  void clear_has_label();
-  void set_has_data_type();
-  void clear_has_data_type();
-  void set_has_is_nullable();
-  void clear_has_is_nullable();
-  void set_has_precision();
-  void clear_has_precision();
-  void set_has_scale();
-  void clear_has_scale();
-  void set_has_signed_();
-  void clear_has_signed_();
-  void set_has_display_size();
-  void clear_has_display_size();
-  void set_has_is_aliased();
-  void clear_has_is_aliased();
-  void set_has_searchability();
-  void clear_has_searchability();
-  void set_has_updatability();
-  void clear_has_updatability();
-  void set_has_auto_increment();
-  void clear_has_auto_increment();
-  void set_has_case_sensitivity();
-  void clear_has_case_sensitivity();
-  void set_has_sortable();
-  void clear_has_sortable();
-  void set_has_class_name();
-  void clear_has_class_name();
-  void set_has_is_currency();
-  void clear_has_is_currency();
+  inline void set_has_catalog_name();
+  inline void clear_has_catalog_name();
+  inline void set_has_schema_name();
+  inline void clear_has_schema_name();
+  inline void set_has_table_name();
+  inline void clear_has_table_name();
+  inline void set_has_column_name();
+  inline void clear_has_column_name();
+  inline void set_has_label();
+  inline void clear_has_label();
+  inline void set_has_data_type();
+  inline void clear_has_data_type();
+  inline void set_has_is_nullable();
+  inline void clear_has_is_nullable();
+  inline void set_has_precision();
+  inline void clear_has_precision();
+  inline void set_has_scale();
+  inline void clear_has_scale();
+  inline void set_has_signed_();
+  inline void clear_has_signed_();
+  inline void set_has_display_size();
+  inline void clear_has_display_size();
+  inline void set_has_is_aliased();
+  inline void clear_has_is_aliased();
+  inline void set_has_searchability();
+  inline void clear_has_searchability();
+  inline void set_has_updatability();
+  inline void clear_has_updatability();
+  inline void set_has_auto_increment();
+  inline void clear_has_auto_increment();
+  inline void set_has_case_sensitivity();
+  inline void clear_has_case_sensitivity();
+  inline void set_has_sortable();
+  inline void clear_has_sortable();
+  inline void set_has_class_name();
+  inline void clear_has_class_name();
+  inline void set_has_is_currency();
+  inline void clear_has_is_currency();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr catalog_name_;
-  ::google::protobuf::internal::ArenaStringPtr schema_name_;
-  ::google::protobuf::internal::ArenaStringPtr table_name_;
-  ::google::protobuf::internal::ArenaStringPtr column_name_;
-  ::google::protobuf::internal::ArenaStringPtr label_;
-  ::google::protobuf::internal::ArenaStringPtr data_type_;
-  ::google::protobuf::internal::ArenaStringPtr class_name_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* catalog_name_;
+  ::std::string* schema_name_;
+  ::std::string* table_name_;
+  ::std::string* column_name_;
+  ::std::string* label_;
+  ::std::string* data_type_;
   ::google::protobuf::int32 precision_;
   ::google::protobuf::int32 scale_;
   ::google::protobuf::int32 display_size_;
@@ -4542,14 +3490,24 @@
   bool auto_increment_;
   int searchability_;
   int updatability_;
+  ::std::string* class_name_;
   bool case_sensitivity_;
   bool sortable_;
   bool is_currency_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(19 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static ResultColumnMetadata* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class PreparedStatementHandle : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.PreparedStatementHandle) */ {
+class PreparedStatementHandle : public ::google::protobuf::Message {
  public:
   PreparedStatementHandle();
   virtual ~PreparedStatementHandle();
@@ -4560,118 +3518,83 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  PreparedStatementHandle(PreparedStatementHandle&& from) noexcept
-    : PreparedStatementHandle() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline PreparedStatementHandle& operator=(PreparedStatementHandle&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const PreparedStatementHandle& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const PreparedStatementHandle* internal_default_instance() {
-    return reinterpret_cast<const PreparedStatementHandle*>(
-               &_PreparedStatementHandle_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    23;
-
   void Swap(PreparedStatementHandle* other);
-  friend void swap(PreparedStatementHandle& a, PreparedStatementHandle& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline PreparedStatementHandle* New() const final {
-    return CreateMaybeMessage<PreparedStatementHandle>(NULL);
-  }
-
-  PreparedStatementHandle* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<PreparedStatementHandle>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  PreparedStatementHandle* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const PreparedStatementHandle& from);
   void MergeFrom(const PreparedStatementHandle& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(PreparedStatementHandle* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional bytes server_info = 1;
-  bool has_server_info() const;
-  void clear_server_info();
+  inline bool has_server_info() const;
+  inline void clear_server_info();
   static const int kServerInfoFieldNumber = 1;
-  const ::std::string& server_info() const;
-  void set_server_info(const ::std::string& value);
-  #if LANG_CXX11
-  void set_server_info(::std::string&& value);
-  #endif
-  void set_server_info(const char* value);
-  void set_server_info(const void* value, size_t size);
-  ::std::string* mutable_server_info();
-  ::std::string* release_server_info();
-  void set_allocated_server_info(::std::string* server_info);
+  inline const ::std::string& server_info() const;
+  inline void set_server_info(const ::std::string& value);
+  inline void set_server_info(const char* value);
+  inline void set_server_info(const void* value, size_t size);
+  inline ::std::string* mutable_server_info();
+  inline ::std::string* release_server_info();
+  inline void set_allocated_server_info(::std::string* server_info);
 
   // @@protoc_insertion_point(class_scope:exec.user.PreparedStatementHandle)
  private:
-  void set_has_server_info();
-  void clear_has_server_info();
+  inline void set_has_server_info();
+  inline void clear_has_server_info();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr server_info_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* server_info_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static PreparedStatementHandle* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class PreparedStatement : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.PreparedStatement) */ {
+class PreparedStatement : public ::google::protobuf::Message {
  public:
   PreparedStatement();
   virtual ~PreparedStatement();
@@ -4682,128 +3605,93 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  PreparedStatement(PreparedStatement&& from) noexcept
-    : PreparedStatement() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline PreparedStatement& operator=(PreparedStatement&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const PreparedStatement& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const PreparedStatement* internal_default_instance() {
-    return reinterpret_cast<const PreparedStatement*>(
-               &_PreparedStatement_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    24;
-
   void Swap(PreparedStatement* other);
-  friend void swap(PreparedStatement& a, PreparedStatement& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline PreparedStatement* New() const final {
-    return CreateMaybeMessage<PreparedStatement>(NULL);
-  }
-
-  PreparedStatement* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<PreparedStatement>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  PreparedStatement* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const PreparedStatement& from);
   void MergeFrom(const PreparedStatement& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(PreparedStatement* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // repeated .exec.user.ResultColumnMetadata columns = 1;
-  int columns_size() const;
-  void clear_columns();
+  inline int columns_size() const;
+  inline void clear_columns();
   static const int kColumnsFieldNumber = 1;
-  ::exec::user::ResultColumnMetadata* mutable_columns(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::user::ResultColumnMetadata >*
-      mutable_columns();
-  const ::exec::user::ResultColumnMetadata& columns(int index) const;
-  ::exec::user::ResultColumnMetadata* add_columns();
-  const ::google::protobuf::RepeatedPtrField< ::exec::user::ResultColumnMetadata >&
+  inline const ::exec::user::ResultColumnMetadata& columns(int index) const;
+  inline ::exec::user::ResultColumnMetadata* mutable_columns(int index);
+  inline ::exec::user::ResultColumnMetadata* add_columns();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::user::ResultColumnMetadata >&
       columns() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::user::ResultColumnMetadata >*
+      mutable_columns();
 
   // optional .exec.user.PreparedStatementHandle server_handle = 2;
-  bool has_server_handle() const;
-  void clear_server_handle();
+  inline bool has_server_handle() const;
+  inline void clear_server_handle();
   static const int kServerHandleFieldNumber = 2;
-  private:
-  const ::exec::user::PreparedStatementHandle& _internal_server_handle() const;
-  public:
-  const ::exec::user::PreparedStatementHandle& server_handle() const;
-  ::exec::user::PreparedStatementHandle* release_server_handle();
-  ::exec::user::PreparedStatementHandle* mutable_server_handle();
-  void set_allocated_server_handle(::exec::user::PreparedStatementHandle* server_handle);
+  inline const ::exec::user::PreparedStatementHandle& server_handle() const;
+  inline ::exec::user::PreparedStatementHandle* mutable_server_handle();
+  inline ::exec::user::PreparedStatementHandle* release_server_handle();
+  inline void set_allocated_server_handle(::exec::user::PreparedStatementHandle* server_handle);
 
   // @@protoc_insertion_point(class_scope:exec.user.PreparedStatement)
  private:
-  void set_has_server_handle();
-  void clear_has_server_handle();
+  inline void set_has_server_handle();
+  inline void clear_has_server_handle();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::user::ResultColumnMetadata > columns_;
   ::exec::user::PreparedStatementHandle* server_handle_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static PreparedStatement* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class CreatePreparedStatementResp : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.CreatePreparedStatementResp) */ {
+class CreatePreparedStatementResp : public ::google::protobuf::Message {
  public:
   CreatePreparedStatementResp();
   virtual ~CreatePreparedStatementResp();
@@ -4814,140 +3702,102 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  CreatePreparedStatementResp(CreatePreparedStatementResp&& from) noexcept
-    : CreatePreparedStatementResp() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline CreatePreparedStatementResp& operator=(CreatePreparedStatementResp&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const CreatePreparedStatementResp& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const CreatePreparedStatementResp* internal_default_instance() {
-    return reinterpret_cast<const CreatePreparedStatementResp*>(
-               &_CreatePreparedStatementResp_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    25;
-
   void Swap(CreatePreparedStatementResp* other);
-  friend void swap(CreatePreparedStatementResp& a, CreatePreparedStatementResp& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline CreatePreparedStatementResp* New() const final {
-    return CreateMaybeMessage<CreatePreparedStatementResp>(NULL);
-  }
-
-  CreatePreparedStatementResp* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<CreatePreparedStatementResp>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  CreatePreparedStatementResp* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const CreatePreparedStatementResp& from);
   void MergeFrom(const CreatePreparedStatementResp& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(CreatePreparedStatementResp* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional .exec.user.RequestStatus status = 1;
+  inline bool has_status() const;
+  inline void clear_status();
+  static const int kStatusFieldNumber = 1;
+  inline ::exec::user::RequestStatus status() const;
+  inline void set_status(::exec::user::RequestStatus value);
+
   // optional .exec.user.PreparedStatement prepared_statement = 2;
-  bool has_prepared_statement() const;
-  void clear_prepared_statement();
+  inline bool has_prepared_statement() const;
+  inline void clear_prepared_statement();
   static const int kPreparedStatementFieldNumber = 2;
-  private:
-  const ::exec::user::PreparedStatement& _internal_prepared_statement() const;
-  public:
-  const ::exec::user::PreparedStatement& prepared_statement() const;
-  ::exec::user::PreparedStatement* release_prepared_statement();
-  ::exec::user::PreparedStatement* mutable_prepared_statement();
-  void set_allocated_prepared_statement(::exec::user::PreparedStatement* prepared_statement);
+  inline const ::exec::user::PreparedStatement& prepared_statement() const;
+  inline ::exec::user::PreparedStatement* mutable_prepared_statement();
+  inline ::exec::user::PreparedStatement* release_prepared_statement();
+  inline void set_allocated_prepared_statement(::exec::user::PreparedStatement* prepared_statement);
 
   // optional .exec.shared.DrillPBError error = 3;
-  bool has_error() const;
-  void clear_error();
+  inline bool has_error() const;
+  inline void clear_error();
   static const int kErrorFieldNumber = 3;
-  private:
-  const ::exec::shared::DrillPBError& _internal_error() const;
-  public:
-  const ::exec::shared::DrillPBError& error() const;
-  ::exec::shared::DrillPBError* release_error();
-  ::exec::shared::DrillPBError* mutable_error();
-  void set_allocated_error(::exec::shared::DrillPBError* error);
-
-  // optional .exec.user.RequestStatus status = 1;
-  bool has_status() const;
-  void clear_status();
-  static const int kStatusFieldNumber = 1;
-  ::exec::user::RequestStatus status() const;
-  void set_status(::exec::user::RequestStatus value);
+  inline const ::exec::shared::DrillPBError& error() const;
+  inline ::exec::shared::DrillPBError* mutable_error();
+  inline ::exec::shared::DrillPBError* release_error();
+  inline void set_allocated_error(::exec::shared::DrillPBError* error);
 
   // @@protoc_insertion_point(class_scope:exec.user.CreatePreparedStatementResp)
  private:
-  void set_has_status();
-  void clear_has_status();
-  void set_has_prepared_statement();
-  void clear_has_prepared_statement();
-  void set_has_error();
-  void clear_has_error();
+  inline void set_has_status();
+  inline void clear_has_status();
+  inline void set_has_prepared_statement();
+  inline void clear_has_prepared_statement();
+  inline void set_has_error();
+  inline void clear_has_error();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::user::PreparedStatement* prepared_statement_;
   ::exec::shared::DrillPBError* error_;
   int status_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static CreatePreparedStatementResp* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetServerMetaReq : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetServerMetaReq) */ {
+class GetServerMetaReq : public ::google::protobuf::Message {
  public:
   GetServerMetaReq();
   virtual ~GetServerMetaReq();
@@ -4958,84 +3808,44 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetServerMetaReq(GetServerMetaReq&& from) noexcept
-    : GetServerMetaReq() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetServerMetaReq& operator=(GetServerMetaReq&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetServerMetaReq& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetServerMetaReq* internal_default_instance() {
-    return reinterpret_cast<const GetServerMetaReq*>(
-               &_GetServerMetaReq_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    26;
-
   void Swap(GetServerMetaReq* other);
-  friend void swap(GetServerMetaReq& a, GetServerMetaReq& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetServerMetaReq* New() const final {
-    return CreateMaybeMessage<GetServerMetaReq>(NULL);
-  }
-
-  GetServerMetaReq* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetServerMetaReq>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetServerMetaReq* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetServerMetaReq& from);
   void MergeFrom(const GetServerMetaReq& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetServerMetaReq* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
@@ -5044,14 +3854,22 @@
   // @@protoc_insertion_point(class_scope:exec.user.GetServerMetaReq)
  private:
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[1];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetServerMetaReq* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class ConvertSupport : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.ConvertSupport) */ {
+class ConvertSupport : public ::google::protobuf::Message {
  public:
   ConvertSupport();
   virtual ~ConvertSupport();
@@ -5062,123 +3880,88 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  ConvertSupport(ConvertSupport&& from) noexcept
-    : ConvertSupport() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline ConvertSupport& operator=(ConvertSupport&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const ConvertSupport& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const ConvertSupport* internal_default_instance() {
-    return reinterpret_cast<const ConvertSupport*>(
-               &_ConvertSupport_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    27;
-
   void Swap(ConvertSupport* other);
-  friend void swap(ConvertSupport& a, ConvertSupport& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline ConvertSupport* New() const final {
-    return CreateMaybeMessage<ConvertSupport>(NULL);
-  }
-
-  ConvertSupport* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<ConvertSupport>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  ConvertSupport* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const ConvertSupport& from);
   void MergeFrom(const ConvertSupport& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(ConvertSupport* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // required .common.MinorType from = 1;
-  bool has_from() const;
-  void clear_from();
+  inline bool has_from() const;
+  inline void clear_from();
   static const int kFromFieldNumber = 1;
-  ::common::MinorType from() const;
-  void set_from(::common::MinorType value);
+  inline ::common::MinorType from() const;
+  inline void set_from(::common::MinorType value);
 
   // required .common.MinorType to = 2;
-  bool has_to() const;
-  void clear_to();
+  inline bool has_to() const;
+  inline void clear_to();
   static const int kToFieldNumber = 2;
-  ::common::MinorType to() const;
-  void set_to(::common::MinorType value);
+  inline ::common::MinorType to() const;
+  inline void set_to(::common::MinorType value);
 
   // @@protoc_insertion_point(class_scope:exec.user.ConvertSupport)
  private:
-  void set_has_from();
-  void clear_has_from();
-  void set_has_to();
-  void clear_has_to();
+  inline void set_has_from();
+  inline void clear_has_from();
+  inline void set_has_to();
+  inline void clear_has_to();
 
-  // helper for ByteSizeLong()
-  size_t RequiredFieldsByteSizeFallback() const;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
   int from_;
   int to_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static ConvertSupport* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class GetServerMetaResp : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.GetServerMetaResp) */ {
+class GetServerMetaResp : public ::google::protobuf::Message {
  public:
   GetServerMetaResp();
   virtual ~GetServerMetaResp();
@@ -5189,140 +3972,102 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  GetServerMetaResp(GetServerMetaResp&& from) noexcept
-    : GetServerMetaResp() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline GetServerMetaResp& operator=(GetServerMetaResp&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const GetServerMetaResp& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const GetServerMetaResp* internal_default_instance() {
-    return reinterpret_cast<const GetServerMetaResp*>(
-               &_GetServerMetaResp_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    28;
-
   void Swap(GetServerMetaResp* other);
-  friend void swap(GetServerMetaResp& a, GetServerMetaResp& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline GetServerMetaResp* New() const final {
-    return CreateMaybeMessage<GetServerMetaResp>(NULL);
-  }
-
-  GetServerMetaResp* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<GetServerMetaResp>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  GetServerMetaResp* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const GetServerMetaResp& from);
   void MergeFrom(const GetServerMetaResp& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(GetServerMetaResp* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional .exec.user.RequestStatus status = 1;
+  inline bool has_status() const;
+  inline void clear_status();
+  static const int kStatusFieldNumber = 1;
+  inline ::exec::user::RequestStatus status() const;
+  inline void set_status(::exec::user::RequestStatus value);
+
   // optional .exec.user.ServerMeta server_meta = 2;
-  bool has_server_meta() const;
-  void clear_server_meta();
+  inline bool has_server_meta() const;
+  inline void clear_server_meta();
   static const int kServerMetaFieldNumber = 2;
-  private:
-  const ::exec::user::ServerMeta& _internal_server_meta() const;
-  public:
-  const ::exec::user::ServerMeta& server_meta() const;
-  ::exec::user::ServerMeta* release_server_meta();
-  ::exec::user::ServerMeta* mutable_server_meta();
-  void set_allocated_server_meta(::exec::user::ServerMeta* server_meta);
+  inline const ::exec::user::ServerMeta& server_meta() const;
+  inline ::exec::user::ServerMeta* mutable_server_meta();
+  inline ::exec::user::ServerMeta* release_server_meta();
+  inline void set_allocated_server_meta(::exec::user::ServerMeta* server_meta);
 
   // optional .exec.shared.DrillPBError error = 3;
-  bool has_error() const;
-  void clear_error();
+  inline bool has_error() const;
+  inline void clear_error();
   static const int kErrorFieldNumber = 3;
-  private:
-  const ::exec::shared::DrillPBError& _internal_error() const;
-  public:
-  const ::exec::shared::DrillPBError& error() const;
-  ::exec::shared::DrillPBError* release_error();
-  ::exec::shared::DrillPBError* mutable_error();
-  void set_allocated_error(::exec::shared::DrillPBError* error);
-
-  // optional .exec.user.RequestStatus status = 1;
-  bool has_status() const;
-  void clear_status();
-  static const int kStatusFieldNumber = 1;
-  ::exec::user::RequestStatus status() const;
-  void set_status(::exec::user::RequestStatus value);
+  inline const ::exec::shared::DrillPBError& error() const;
+  inline ::exec::shared::DrillPBError* mutable_error();
+  inline ::exec::shared::DrillPBError* release_error();
+  inline void set_allocated_error(::exec::shared::DrillPBError* error);
 
   // @@protoc_insertion_point(class_scope:exec.user.GetServerMetaResp)
  private:
-  void set_has_status();
-  void clear_has_status();
-  void set_has_server_meta();
-  void clear_has_server_meta();
-  void set_has_error();
-  void clear_has_error();
+  inline void set_has_status();
+  inline void clear_has_status();
+  inline void set_has_server_meta();
+  inline void clear_has_server_meta();
+  inline void set_has_error();
+  inline void clear_has_error();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::user::ServerMeta* server_meta_;
   ::exec::shared::DrillPBError* error_;
   int status_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static GetServerMetaResp* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class ServerMeta : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.ServerMeta) */ {
+class ServerMeta : public ::google::protobuf::Message {
  public:
   ServerMeta();
   virtual ~ServerMeta();
@@ -5333,707 +4078,602 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  ServerMeta(ServerMeta&& from) noexcept
-    : ServerMeta() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline ServerMeta& operator=(ServerMeta&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const ServerMeta& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const ServerMeta* internal_default_instance() {
-    return reinterpret_cast<const ServerMeta*>(
-               &_ServerMeta_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    29;
-
   void Swap(ServerMeta* other);
-  friend void swap(ServerMeta& a, ServerMeta& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline ServerMeta* New() const final {
-    return CreateMaybeMessage<ServerMeta>(NULL);
-  }
-
-  ServerMeta* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<ServerMeta>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  ServerMeta* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const ServerMeta& from);
   void MergeFrom(const ServerMeta& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(ServerMeta* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.user.CollateSupport collate_support = 6;
-  int collate_support_size() const;
-  void clear_collate_support();
-  static const int kCollateSupportFieldNumber = 6;
-  ::exec::user::CollateSupport collate_support(int index) const;
-  void set_collate_support(int index, ::exec::user::CollateSupport value);
-  void add_collate_support(::exec::user::CollateSupport value);
-  const ::google::protobuf::RepeatedField<int>& collate_support() const;
-  ::google::protobuf::RepeatedField<int>* mutable_collate_support();
-
-  // repeated .exec.user.ConvertSupport convert_support = 8;
-  int convert_support_size() const;
-  void clear_convert_support();
-  static const int kConvertSupportFieldNumber = 8;
-  ::exec::user::ConvertSupport* mutable_convert_support(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::user::ConvertSupport >*
-      mutable_convert_support();
-  const ::exec::user::ConvertSupport& convert_support(int index) const;
-  ::exec::user::ConvertSupport* add_convert_support();
-  const ::google::protobuf::RepeatedPtrField< ::exec::user::ConvertSupport >&
-      convert_support() const;
-
-  // repeated string date_time_functions = 10;
-  int date_time_functions_size() const;
-  void clear_date_time_functions();
-  static const int kDateTimeFunctionsFieldNumber = 10;
-  const ::std::string& date_time_functions(int index) const;
-  ::std::string* mutable_date_time_functions(int index);
-  void set_date_time_functions(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_date_time_functions(int index, ::std::string&& value);
-  #endif
-  void set_date_time_functions(int index, const char* value);
-  void set_date_time_functions(int index, const char* value, size_t size);
-  ::std::string* add_date_time_functions();
-  void add_date_time_functions(const ::std::string& value);
-  #if LANG_CXX11
-  void add_date_time_functions(::std::string&& value);
-  #endif
-  void add_date_time_functions(const char* value);
-  void add_date_time_functions(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& date_time_functions() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_date_time_functions();
-
-  // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
-  int date_time_literals_support_size() const;
-  void clear_date_time_literals_support();
-  static const int kDateTimeLiteralsSupportFieldNumber = 11;
-  ::exec::user::DateTimeLiteralsSupport date_time_literals_support(int index) const;
-  void set_date_time_literals_support(int index, ::exec::user::DateTimeLiteralsSupport value);
-  void add_date_time_literals_support(::exec::user::DateTimeLiteralsSupport value);
-  const ::google::protobuf::RepeatedField<int>& date_time_literals_support() const;
-  ::google::protobuf::RepeatedField<int>* mutable_date_time_literals_support();
-
-  // repeated string numeric_functions = 34;
-  int numeric_functions_size() const;
-  void clear_numeric_functions();
-  static const int kNumericFunctionsFieldNumber = 34;
-  const ::std::string& numeric_functions(int index) const;
-  ::std::string* mutable_numeric_functions(int index);
-  void set_numeric_functions(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_numeric_functions(int index, ::std::string&& value);
-  #endif
-  void set_numeric_functions(int index, const char* value);
-  void set_numeric_functions(int index, const char* value, size_t size);
-  ::std::string* add_numeric_functions();
-  void add_numeric_functions(const ::std::string& value);
-  #if LANG_CXX11
-  void add_numeric_functions(::std::string&& value);
-  #endif
-  void add_numeric_functions(const char* value);
-  void add_numeric_functions(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& numeric_functions() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_numeric_functions();
-
-  // repeated .exec.user.OrderBySupport order_by_support = 35;
-  int order_by_support_size() const;
-  void clear_order_by_support();
-  static const int kOrderBySupportFieldNumber = 35;
-  ::exec::user::OrderBySupport order_by_support(int index) const;
-  void set_order_by_support(int index, ::exec::user::OrderBySupport value);
-  void add_order_by_support(::exec::user::OrderBySupport value);
-  const ::google::protobuf::RepeatedField<int>& order_by_support() const;
-  ::google::protobuf::RepeatedField<int>* mutable_order_by_support();
-
-  // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
-  int outer_join_support_size() const;
-  void clear_outer_join_support();
-  static const int kOuterJoinSupportFieldNumber = 36;
-  ::exec::user::OuterJoinSupport outer_join_support(int index) const;
-  void set_outer_join_support(int index, ::exec::user::OuterJoinSupport value);
-  void add_outer_join_support(::exec::user::OuterJoinSupport value);
-  const ::google::protobuf::RepeatedField<int>& outer_join_support() const;
-  ::google::protobuf::RepeatedField<int>* mutable_outer_join_support();
-
-  // repeated string sql_keywords = 43;
-  int sql_keywords_size() const;
-  void clear_sql_keywords();
-  static const int kSqlKeywordsFieldNumber = 43;
-  const ::std::string& sql_keywords(int index) const;
-  ::std::string* mutable_sql_keywords(int index);
-  void set_sql_keywords(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_sql_keywords(int index, ::std::string&& value);
-  #endif
-  void set_sql_keywords(int index, const char* value);
-  void set_sql_keywords(int index, const char* value, size_t size);
-  ::std::string* add_sql_keywords();
-  void add_sql_keywords(const ::std::string& value);
-  #if LANG_CXX11
-  void add_sql_keywords(::std::string&& value);
-  #endif
-  void add_sql_keywords(const char* value);
-  void add_sql_keywords(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& sql_keywords() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_sql_keywords();
-
-  // repeated string string_functions = 44;
-  int string_functions_size() const;
-  void clear_string_functions();
-  static const int kStringFunctionsFieldNumber = 44;
-  const ::std::string& string_functions(int index) const;
-  ::std::string* mutable_string_functions(int index);
-  void set_string_functions(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_string_functions(int index, ::std::string&& value);
-  #endif
-  void set_string_functions(int index, const char* value);
-  void set_string_functions(int index, const char* value, size_t size);
-  ::std::string* add_string_functions();
-  void add_string_functions(const ::std::string& value);
-  #if LANG_CXX11
-  void add_string_functions(::std::string&& value);
-  #endif
-  void add_string_functions(const char* value);
-  void add_string_functions(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& string_functions() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_string_functions();
-
-  // repeated .exec.user.SubQuerySupport subquery_support = 45;
-  int subquery_support_size() const;
-  void clear_subquery_support();
-  static const int kSubquerySupportFieldNumber = 45;
-  ::exec::user::SubQuerySupport subquery_support(int index) const;
-  void set_subquery_support(int index, ::exec::user::SubQuerySupport value);
-  void add_subquery_support(::exec::user::SubQuerySupport value);
-  const ::google::protobuf::RepeatedField<int>& subquery_support() const;
-  ::google::protobuf::RepeatedField<int>* mutable_subquery_support();
-
-  // repeated string system_functions = 46;
-  int system_functions_size() const;
-  void clear_system_functions();
-  static const int kSystemFunctionsFieldNumber = 46;
-  const ::std::string& system_functions(int index) const;
-  ::std::string* mutable_system_functions(int index);
-  void set_system_functions(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_system_functions(int index, ::std::string&& value);
-  #endif
-  void set_system_functions(int index, const char* value);
-  void set_system_functions(int index, const char* value, size_t size);
-  ::std::string* add_system_functions();
-  void add_system_functions(const ::std::string& value);
-  #if LANG_CXX11
-  void add_system_functions(::std::string&& value);
-  #endif
-  void add_system_functions(const char* value);
-  void add_system_functions(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& system_functions() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_system_functions();
-
-  // repeated .exec.user.UnionSupport union_support = 49;
-  int union_support_size() const;
-  void clear_union_support();
-  static const int kUnionSupportFieldNumber = 49;
-  ::exec::user::UnionSupport union_support(int index) const;
-  void set_union_support(int index, ::exec::user::UnionSupport value);
-  void add_union_support(::exec::user::UnionSupport value);
-  const ::google::protobuf::RepeatedField<int>& union_support() const;
-  ::google::protobuf::RepeatedField<int>* mutable_union_support();
-
-  // optional string catalog_separator = 4;
-  bool has_catalog_separator() const;
-  void clear_catalog_separator();
-  static const int kCatalogSeparatorFieldNumber = 4;
-  const ::std::string& catalog_separator() const;
-  void set_catalog_separator(const ::std::string& value);
-  #if LANG_CXX11
-  void set_catalog_separator(::std::string&& value);
-  #endif
-  void set_catalog_separator(const char* value);
-  void set_catalog_separator(const char* value, size_t size);
-  ::std::string* mutable_catalog_separator();
-  ::std::string* release_catalog_separator();
-  void set_allocated_catalog_separator(::std::string* catalog_separator);
-
-  // optional string catalog_term = 5;
-  bool has_catalog_term() const;
-  void clear_catalog_term();
-  static const int kCatalogTermFieldNumber = 5;
-  const ::std::string& catalog_term() const;
-  void set_catalog_term(const ::std::string& value);
-  #if LANG_CXX11
-  void set_catalog_term(::std::string&& value);
-  #endif
-  void set_catalog_term(const char* value);
-  void set_catalog_term(const char* value, size_t size);
-  ::std::string* mutable_catalog_term();
-  ::std::string* release_catalog_term();
-  void set_allocated_catalog_term(::std::string* catalog_term);
-
-  // optional string identifier_quote_string = 14;
-  bool has_identifier_quote_string() const;
-  void clear_identifier_quote_string();
-  static const int kIdentifierQuoteStringFieldNumber = 14;
-  const ::std::string& identifier_quote_string() const;
-  void set_identifier_quote_string(const ::std::string& value);
-  #if LANG_CXX11
-  void set_identifier_quote_string(::std::string&& value);
-  #endif
-  void set_identifier_quote_string(const char* value);
-  void set_identifier_quote_string(const char* value, size_t size);
-  ::std::string* mutable_identifier_quote_string();
-  ::std::string* release_identifier_quote_string();
-  void set_allocated_identifier_quote_string(::std::string* identifier_quote_string);
-
-  // optional string schema_term = 39;
-  bool has_schema_term() const;
-  void clear_schema_term();
-  static const int kSchemaTermFieldNumber = 39;
-  const ::std::string& schema_term() const;
-  void set_schema_term(const ::std::string& value);
-  #if LANG_CXX11
-  void set_schema_term(::std::string&& value);
-  #endif
-  void set_schema_term(const char* value);
-  void set_schema_term(const char* value, size_t size);
-  ::std::string* mutable_schema_term();
-  ::std::string* release_schema_term();
-  void set_allocated_schema_term(::std::string* schema_term);
-
-  // optional string search_escape_string = 40;
-  bool has_search_escape_string() const;
-  void clear_search_escape_string();
-  static const int kSearchEscapeStringFieldNumber = 40;
-  const ::std::string& search_escape_string() const;
-  void set_search_escape_string(const ::std::string& value);
-  #if LANG_CXX11
-  void set_search_escape_string(::std::string&& value);
-  #endif
-  void set_search_escape_string(const char* value);
-  void set_search_escape_string(const char* value, size_t size);
-  ::std::string* mutable_search_escape_string();
-  ::std::string* release_search_escape_string();
-  void set_allocated_search_escape_string(::std::string* search_escape_string);
-
-  // optional string special_characters = 42;
-  bool has_special_characters() const;
-  void clear_special_characters();
-  static const int kSpecialCharactersFieldNumber = 42;
-  const ::std::string& special_characters() const;
-  void set_special_characters(const ::std::string& value);
-  #if LANG_CXX11
-  void set_special_characters(::std::string&& value);
-  #endif
-  void set_special_characters(const char* value);
-  void set_special_characters(const char* value, size_t size);
-  ::std::string* mutable_special_characters();
-  ::std::string* release_special_characters();
-  void set_allocated_special_characters(::std::string* special_characters);
-
-  // optional string table_term = 47;
-  bool has_table_term() const;
-  void clear_table_term();
-  static const int kTableTermFieldNumber = 47;
-  const ::std::string& table_term() const;
-  void set_table_term(const ::std::string& value);
-  #if LANG_CXX11
-  void set_table_term(::std::string&& value);
-  #endif
-  void set_table_term(const char* value);
-  void set_table_term(const char* value, size_t size);
-  ::std::string* mutable_table_term();
-  ::std::string* release_table_term();
-  void set_allocated_table_term(::std::string* table_term);
-
-  // optional string current_schema = 50;
-  bool has_current_schema() const;
-  void clear_current_schema();
-  static const int kCurrentSchemaFieldNumber = 50;
-  const ::std::string& current_schema() const;
-  void set_current_schema(const ::std::string& value);
-  #if LANG_CXX11
-  void set_current_schema(::std::string&& value);
-  #endif
-  void set_current_schema(const char* value);
-  void set_current_schema(const char* value, size_t size);
-  ::std::string* mutable_current_schema();
-  ::std::string* release_current_schema();
-  void set_allocated_current_schema(::std::string* current_schema);
-
   // optional bool all_tables_selectable = 1;
-  bool has_all_tables_selectable() const;
-  void clear_all_tables_selectable();
+  inline bool has_all_tables_selectable() const;
+  inline void clear_all_tables_selectable();
   static const int kAllTablesSelectableFieldNumber = 1;
-  bool all_tables_selectable() const;
-  void set_all_tables_selectable(bool value);
+  inline bool all_tables_selectable() const;
+  inline void set_all_tables_selectable(bool value);
 
   // optional bool blob_included_in_max_row_size = 2;
-  bool has_blob_included_in_max_row_size() const;
-  void clear_blob_included_in_max_row_size();
+  inline bool has_blob_included_in_max_row_size() const;
+  inline void clear_blob_included_in_max_row_size();
   static const int kBlobIncludedInMaxRowSizeFieldNumber = 2;
-  bool blob_included_in_max_row_size() const;
-  void set_blob_included_in_max_row_size(bool value);
+  inline bool blob_included_in_max_row_size() const;
+  inline void set_blob_included_in_max_row_size(bool value);
 
   // optional bool catalog_at_start = 3;
-  bool has_catalog_at_start() const;
-  void clear_catalog_at_start();
+  inline bool has_catalog_at_start() const;
+  inline void clear_catalog_at_start();
   static const int kCatalogAtStartFieldNumber = 3;
-  bool catalog_at_start() const;
-  void set_catalog_at_start(bool value);
+  inline bool catalog_at_start() const;
+  inline void set_catalog_at_start(bool value);
+
+  // optional string catalog_separator = 4;
+  inline bool has_catalog_separator() const;
+  inline void clear_catalog_separator();
+  static const int kCatalogSeparatorFieldNumber = 4;
+  inline const ::std::string& catalog_separator() const;
+  inline void set_catalog_separator(const ::std::string& value);
+  inline void set_catalog_separator(const char* value);
+  inline void set_catalog_separator(const char* value, size_t size);
+  inline ::std::string* mutable_catalog_separator();
+  inline ::std::string* release_catalog_separator();
+  inline void set_allocated_catalog_separator(::std::string* catalog_separator);
+
+  // optional string catalog_term = 5;
+  inline bool has_catalog_term() const;
+  inline void clear_catalog_term();
+  static const int kCatalogTermFieldNumber = 5;
+  inline const ::std::string& catalog_term() const;
+  inline void set_catalog_term(const ::std::string& value);
+  inline void set_catalog_term(const char* value);
+  inline void set_catalog_term(const char* value, size_t size);
+  inline ::std::string* mutable_catalog_term();
+  inline ::std::string* release_catalog_term();
+  inline void set_allocated_catalog_term(::std::string* catalog_term);
+
+  // repeated .exec.user.CollateSupport collate_support = 6;
+  inline int collate_support_size() const;
+  inline void clear_collate_support();
+  static const int kCollateSupportFieldNumber = 6;
+  inline ::exec::user::CollateSupport collate_support(int index) const;
+  inline void set_collate_support(int index, ::exec::user::CollateSupport value);
+  inline void add_collate_support(::exec::user::CollateSupport value);
+  inline const ::google::protobuf::RepeatedField<int>& collate_support() const;
+  inline ::google::protobuf::RepeatedField<int>* mutable_collate_support();
 
   // optional bool column_aliasing_supported = 7;
-  bool has_column_aliasing_supported() const;
-  void clear_column_aliasing_supported();
+  inline bool has_column_aliasing_supported() const;
+  inline void clear_column_aliasing_supported();
   static const int kColumnAliasingSupportedFieldNumber = 7;
-  bool column_aliasing_supported() const;
-  void set_column_aliasing_supported(bool value);
+  inline bool column_aliasing_supported() const;
+  inline void set_column_aliasing_supported(bool value);
 
-  // optional .exec.user.IdentifierCasing identifier_casing = 13;
-  bool has_identifier_casing() const;
-  void clear_identifier_casing();
-  static const int kIdentifierCasingFieldNumber = 13;
-  ::exec::user::IdentifierCasing identifier_casing() const;
-  void set_identifier_casing(::exec::user::IdentifierCasing value);
-
-  // optional uint32 max_binary_literal_length = 16;
-  bool has_max_binary_literal_length() const;
-  void clear_max_binary_literal_length();
-  static const int kMaxBinaryLiteralLengthFieldNumber = 16;
-  ::google::protobuf::uint32 max_binary_literal_length() const;
-  void set_max_binary_literal_length(::google::protobuf::uint32 value);
-
-  // optional uint32 max_catalog_name_length = 17;
-  bool has_max_catalog_name_length() const;
-  void clear_max_catalog_name_length();
-  static const int kMaxCatalogNameLengthFieldNumber = 17;
-  ::google::protobuf::uint32 max_catalog_name_length() const;
-  void set_max_catalog_name_length(::google::protobuf::uint32 value);
-
-  // optional uint32 max_char_literal_length = 18;
-  bool has_max_char_literal_length() const;
-  void clear_max_char_literal_length();
-  static const int kMaxCharLiteralLengthFieldNumber = 18;
-  ::google::protobuf::uint32 max_char_literal_length() const;
-  void set_max_char_literal_length(::google::protobuf::uint32 value);
-
-  // optional uint32 max_column_name_length = 19;
-  bool has_max_column_name_length() const;
-  void clear_max_column_name_length();
-  static const int kMaxColumnNameLengthFieldNumber = 19;
-  ::google::protobuf::uint32 max_column_name_length() const;
-  void set_max_column_name_length(::google::protobuf::uint32 value);
-
-  // optional uint32 max_columns_in_group_by = 20;
-  bool has_max_columns_in_group_by() const;
-  void clear_max_columns_in_group_by();
-  static const int kMaxColumnsInGroupByFieldNumber = 20;
-  ::google::protobuf::uint32 max_columns_in_group_by() const;
-  void set_max_columns_in_group_by(::google::protobuf::uint32 value);
-
-  // optional uint32 max_columns_in_order_by = 21;
-  bool has_max_columns_in_order_by() const;
-  void clear_max_columns_in_order_by();
-  static const int kMaxColumnsInOrderByFieldNumber = 21;
-  ::google::protobuf::uint32 max_columns_in_order_by() const;
-  void set_max_columns_in_order_by(::google::protobuf::uint32 value);
-
-  // optional uint32 max_columns_in_select = 22;
-  bool has_max_columns_in_select() const;
-  void clear_max_columns_in_select();
-  static const int kMaxColumnsInSelectFieldNumber = 22;
-  ::google::protobuf::uint32 max_columns_in_select() const;
-  void set_max_columns_in_select(::google::protobuf::uint32 value);
-
-  // optional uint32 max_cursor_name_length = 23;
-  bool has_max_cursor_name_length() const;
-  void clear_max_cursor_name_length();
-  static const int kMaxCursorNameLengthFieldNumber = 23;
-  ::google::protobuf::uint32 max_cursor_name_length() const;
-  void set_max_cursor_name_length(::google::protobuf::uint32 value);
-
-  // optional uint32 max_logical_lob_size = 24;
-  bool has_max_logical_lob_size() const;
-  void clear_max_logical_lob_size();
-  static const int kMaxLogicalLobSizeFieldNumber = 24;
-  ::google::protobuf::uint32 max_logical_lob_size() const;
-  void set_max_logical_lob_size(::google::protobuf::uint32 value);
-
-  // optional uint32 max_row_size = 25;
-  bool has_max_row_size() const;
-  void clear_max_row_size();
-  static const int kMaxRowSizeFieldNumber = 25;
-  ::google::protobuf::uint32 max_row_size() const;
-  void set_max_row_size(::google::protobuf::uint32 value);
-
-  // optional uint32 max_schema_name_length = 26;
-  bool has_max_schema_name_length() const;
-  void clear_max_schema_name_length();
-  static const int kMaxSchemaNameLengthFieldNumber = 26;
-  ::google::protobuf::uint32 max_schema_name_length() const;
-  void set_max_schema_name_length(::google::protobuf::uint32 value);
-
-  // optional uint32 max_statement_length = 27;
-  bool has_max_statement_length() const;
-  void clear_max_statement_length();
-  static const int kMaxStatementLengthFieldNumber = 27;
-  ::google::protobuf::uint32 max_statement_length() const;
-  void set_max_statement_length(::google::protobuf::uint32 value);
-
-  // optional uint32 max_statements = 28;
-  bool has_max_statements() const;
-  void clear_max_statements();
-  static const int kMaxStatementsFieldNumber = 28;
-  ::google::protobuf::uint32 max_statements() const;
-  void set_max_statements(::google::protobuf::uint32 value);
-
-  // optional uint32 max_table_name_length = 29;
-  bool has_max_table_name_length() const;
-  void clear_max_table_name_length();
-  static const int kMaxTableNameLengthFieldNumber = 29;
-  ::google::protobuf::uint32 max_table_name_length() const;
-  void set_max_table_name_length(::google::protobuf::uint32 value);
-
-  // optional uint32 max_tables_in_select = 30;
-  bool has_max_tables_in_select() const;
-  void clear_max_tables_in_select();
-  static const int kMaxTablesInSelectFieldNumber = 30;
-  ::google::protobuf::uint32 max_tables_in_select() const;
-  void set_max_tables_in_select(::google::protobuf::uint32 value);
-
-  // optional uint32 max_user_name_length = 31;
-  bool has_max_user_name_length() const;
-  void clear_max_user_name_length();
-  static const int kMaxUserNameLengthFieldNumber = 31;
-  ::google::protobuf::uint32 max_user_name_length() const;
-  void set_max_user_name_length(::google::protobuf::uint32 value);
-
-  // optional bool like_escape_clause_supported = 15;
-  bool has_like_escape_clause_supported() const;
-  void clear_like_escape_clause_supported();
-  static const int kLikeEscapeClauseSupportedFieldNumber = 15;
-  bool like_escape_clause_supported() const;
-  void set_like_escape_clause_supported(bool value);
-
-  // optional bool null_plus_non_null_equals_null = 33;
-  bool has_null_plus_non_null_equals_null() const;
-  void clear_null_plus_non_null_equals_null();
-  static const int kNullPlusNonNullEqualsNullFieldNumber = 33;
-  bool null_plus_non_null_equals_null() const;
-  void set_null_plus_non_null_equals_null(bool value);
-
-  // optional bool read_only = 38;
-  bool has_read_only() const;
-  void clear_read_only();
-  static const int kReadOnlyFieldNumber = 38;
-  bool read_only() const;
-  void set_read_only(bool value);
-
-  // optional bool select_for_update_supported = 41;
-  bool has_select_for_update_supported() const;
-  void clear_select_for_update_supported();
-  static const int kSelectForUpdateSupportedFieldNumber = 41;
-  bool select_for_update_supported() const;
-  void set_select_for_update_supported(bool value);
-
-  // optional .exec.user.NullCollation null_collation = 32;
-  bool has_null_collation() const;
-  void clear_null_collation();
-  static const int kNullCollationFieldNumber = 32;
-  ::exec::user::NullCollation null_collation() const;
-  void set_null_collation(::exec::user::NullCollation value);
-
-  // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
-  bool has_quoted_identifier_casing() const;
-  void clear_quoted_identifier_casing();
-  static const int kQuotedIdentifierCasingFieldNumber = 37;
-  ::exec::user::IdentifierCasing quoted_identifier_casing() const;
-  void set_quoted_identifier_casing(::exec::user::IdentifierCasing value);
-
-  // optional bool transaction_supported = 48;
-  bool has_transaction_supported() const;
-  void clear_transaction_supported();
-  static const int kTransactionSupportedFieldNumber = 48;
-  bool transaction_supported() const;
-  void set_transaction_supported(bool value);
+  // repeated .exec.user.ConvertSupport convert_support = 8;
+  inline int convert_support_size() const;
+  inline void clear_convert_support();
+  static const int kConvertSupportFieldNumber = 8;
+  inline const ::exec::user::ConvertSupport& convert_support(int index) const;
+  inline ::exec::user::ConvertSupport* mutable_convert_support(int index);
+  inline ::exec::user::ConvertSupport* add_convert_support();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::user::ConvertSupport >&
+      convert_support() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::user::ConvertSupport >*
+      mutable_convert_support();
 
   // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
-  bool has_correlation_names_support() const;
-  void clear_correlation_names_support();
+  inline bool has_correlation_names_support() const;
+  inline void clear_correlation_names_support();
   static const int kCorrelationNamesSupportFieldNumber = 9;
-  ::exec::user::CorrelationNamesSupport correlation_names_support() const;
-  void set_correlation_names_support(::exec::user::CorrelationNamesSupport value);
+  inline ::exec::user::CorrelationNamesSupport correlation_names_support() const;
+  inline void set_correlation_names_support(::exec::user::CorrelationNamesSupport value);
+
+  // repeated string date_time_functions = 10;
+  inline int date_time_functions_size() const;
+  inline void clear_date_time_functions();
+  static const int kDateTimeFunctionsFieldNumber = 10;
+  inline const ::std::string& date_time_functions(int index) const;
+  inline ::std::string* mutable_date_time_functions(int index);
+  inline void set_date_time_functions(int index, const ::std::string& value);
+  inline void set_date_time_functions(int index, const char* value);
+  inline void set_date_time_functions(int index, const char* value, size_t size);
+  inline ::std::string* add_date_time_functions();
+  inline void add_date_time_functions(const ::std::string& value);
+  inline void add_date_time_functions(const char* value);
+  inline void add_date_time_functions(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& date_time_functions() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_date_time_functions();
+
+  // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
+  inline int date_time_literals_support_size() const;
+  inline void clear_date_time_literals_support();
+  static const int kDateTimeLiteralsSupportFieldNumber = 11;
+  inline ::exec::user::DateTimeLiteralsSupport date_time_literals_support(int index) const;
+  inline void set_date_time_literals_support(int index, ::exec::user::DateTimeLiteralsSupport value);
+  inline void add_date_time_literals_support(::exec::user::DateTimeLiteralsSupport value);
+  inline const ::google::protobuf::RepeatedField<int>& date_time_literals_support() const;
+  inline ::google::protobuf::RepeatedField<int>* mutable_date_time_literals_support();
 
   // optional .exec.user.GroupBySupport group_by_support = 12;
-  bool has_group_by_support() const;
-  void clear_group_by_support();
+  inline bool has_group_by_support() const;
+  inline void clear_group_by_support();
   static const int kGroupBySupportFieldNumber = 12;
-  ::exec::user::GroupBySupport group_by_support() const;
-  void set_group_by_support(::exec::user::GroupBySupport value);
+  inline ::exec::user::GroupBySupport group_by_support() const;
+  inline void set_group_by_support(::exec::user::GroupBySupport value);
+
+  // optional .exec.user.IdentifierCasing identifier_casing = 13;
+  inline bool has_identifier_casing() const;
+  inline void clear_identifier_casing();
+  static const int kIdentifierCasingFieldNumber = 13;
+  inline ::exec::user::IdentifierCasing identifier_casing() const;
+  inline void set_identifier_casing(::exec::user::IdentifierCasing value);
+
+  // optional string identifier_quote_string = 14;
+  inline bool has_identifier_quote_string() const;
+  inline void clear_identifier_quote_string();
+  static const int kIdentifierQuoteStringFieldNumber = 14;
+  inline const ::std::string& identifier_quote_string() const;
+  inline void set_identifier_quote_string(const ::std::string& value);
+  inline void set_identifier_quote_string(const char* value);
+  inline void set_identifier_quote_string(const char* value, size_t size);
+  inline ::std::string* mutable_identifier_quote_string();
+  inline ::std::string* release_identifier_quote_string();
+  inline void set_allocated_identifier_quote_string(::std::string* identifier_quote_string);
+
+  // optional bool like_escape_clause_supported = 15;
+  inline bool has_like_escape_clause_supported() const;
+  inline void clear_like_escape_clause_supported();
+  static const int kLikeEscapeClauseSupportedFieldNumber = 15;
+  inline bool like_escape_clause_supported() const;
+  inline void set_like_escape_clause_supported(bool value);
+
+  // optional uint32 max_binary_literal_length = 16;
+  inline bool has_max_binary_literal_length() const;
+  inline void clear_max_binary_literal_length();
+  static const int kMaxBinaryLiteralLengthFieldNumber = 16;
+  inline ::google::protobuf::uint32 max_binary_literal_length() const;
+  inline void set_max_binary_literal_length(::google::protobuf::uint32 value);
+
+  // optional uint32 max_catalog_name_length = 17;
+  inline bool has_max_catalog_name_length() const;
+  inline void clear_max_catalog_name_length();
+  static const int kMaxCatalogNameLengthFieldNumber = 17;
+  inline ::google::protobuf::uint32 max_catalog_name_length() const;
+  inline void set_max_catalog_name_length(::google::protobuf::uint32 value);
+
+  // optional uint32 max_char_literal_length = 18;
+  inline bool has_max_char_literal_length() const;
+  inline void clear_max_char_literal_length();
+  static const int kMaxCharLiteralLengthFieldNumber = 18;
+  inline ::google::protobuf::uint32 max_char_literal_length() const;
+  inline void set_max_char_literal_length(::google::protobuf::uint32 value);
+
+  // optional uint32 max_column_name_length = 19;
+  inline bool has_max_column_name_length() const;
+  inline void clear_max_column_name_length();
+  static const int kMaxColumnNameLengthFieldNumber = 19;
+  inline ::google::protobuf::uint32 max_column_name_length() const;
+  inline void set_max_column_name_length(::google::protobuf::uint32 value);
+
+  // optional uint32 max_columns_in_group_by = 20;
+  inline bool has_max_columns_in_group_by() const;
+  inline void clear_max_columns_in_group_by();
+  static const int kMaxColumnsInGroupByFieldNumber = 20;
+  inline ::google::protobuf::uint32 max_columns_in_group_by() const;
+  inline void set_max_columns_in_group_by(::google::protobuf::uint32 value);
+
+  // optional uint32 max_columns_in_order_by = 21;
+  inline bool has_max_columns_in_order_by() const;
+  inline void clear_max_columns_in_order_by();
+  static const int kMaxColumnsInOrderByFieldNumber = 21;
+  inline ::google::protobuf::uint32 max_columns_in_order_by() const;
+  inline void set_max_columns_in_order_by(::google::protobuf::uint32 value);
+
+  // optional uint32 max_columns_in_select = 22;
+  inline bool has_max_columns_in_select() const;
+  inline void clear_max_columns_in_select();
+  static const int kMaxColumnsInSelectFieldNumber = 22;
+  inline ::google::protobuf::uint32 max_columns_in_select() const;
+  inline void set_max_columns_in_select(::google::protobuf::uint32 value);
+
+  // optional uint32 max_cursor_name_length = 23;
+  inline bool has_max_cursor_name_length() const;
+  inline void clear_max_cursor_name_length();
+  static const int kMaxCursorNameLengthFieldNumber = 23;
+  inline ::google::protobuf::uint32 max_cursor_name_length() const;
+  inline void set_max_cursor_name_length(::google::protobuf::uint32 value);
+
+  // optional uint32 max_logical_lob_size = 24;
+  inline bool has_max_logical_lob_size() const;
+  inline void clear_max_logical_lob_size();
+  static const int kMaxLogicalLobSizeFieldNumber = 24;
+  inline ::google::protobuf::uint32 max_logical_lob_size() const;
+  inline void set_max_logical_lob_size(::google::protobuf::uint32 value);
+
+  // optional uint32 max_row_size = 25;
+  inline bool has_max_row_size() const;
+  inline void clear_max_row_size();
+  static const int kMaxRowSizeFieldNumber = 25;
+  inline ::google::protobuf::uint32 max_row_size() const;
+  inline void set_max_row_size(::google::protobuf::uint32 value);
+
+  // optional uint32 max_schema_name_length = 26;
+  inline bool has_max_schema_name_length() const;
+  inline void clear_max_schema_name_length();
+  static const int kMaxSchemaNameLengthFieldNumber = 26;
+  inline ::google::protobuf::uint32 max_schema_name_length() const;
+  inline void set_max_schema_name_length(::google::protobuf::uint32 value);
+
+  // optional uint32 max_statement_length = 27;
+  inline bool has_max_statement_length() const;
+  inline void clear_max_statement_length();
+  static const int kMaxStatementLengthFieldNumber = 27;
+  inline ::google::protobuf::uint32 max_statement_length() const;
+  inline void set_max_statement_length(::google::protobuf::uint32 value);
+
+  // optional uint32 max_statements = 28;
+  inline bool has_max_statements() const;
+  inline void clear_max_statements();
+  static const int kMaxStatementsFieldNumber = 28;
+  inline ::google::protobuf::uint32 max_statements() const;
+  inline void set_max_statements(::google::protobuf::uint32 value);
+
+  // optional uint32 max_table_name_length = 29;
+  inline bool has_max_table_name_length() const;
+  inline void clear_max_table_name_length();
+  static const int kMaxTableNameLengthFieldNumber = 29;
+  inline ::google::protobuf::uint32 max_table_name_length() const;
+  inline void set_max_table_name_length(::google::protobuf::uint32 value);
+
+  // optional uint32 max_tables_in_select = 30;
+  inline bool has_max_tables_in_select() const;
+  inline void clear_max_tables_in_select();
+  static const int kMaxTablesInSelectFieldNumber = 30;
+  inline ::google::protobuf::uint32 max_tables_in_select() const;
+  inline void set_max_tables_in_select(::google::protobuf::uint32 value);
+
+  // optional uint32 max_user_name_length = 31;
+  inline bool has_max_user_name_length() const;
+  inline void clear_max_user_name_length();
+  static const int kMaxUserNameLengthFieldNumber = 31;
+  inline ::google::protobuf::uint32 max_user_name_length() const;
+  inline void set_max_user_name_length(::google::protobuf::uint32 value);
+
+  // optional .exec.user.NullCollation null_collation = 32;
+  inline bool has_null_collation() const;
+  inline void clear_null_collation();
+  static const int kNullCollationFieldNumber = 32;
+  inline ::exec::user::NullCollation null_collation() const;
+  inline void set_null_collation(::exec::user::NullCollation value);
+
+  // optional bool null_plus_non_null_equals_null = 33;
+  inline bool has_null_plus_non_null_equals_null() const;
+  inline void clear_null_plus_non_null_equals_null();
+  static const int kNullPlusNonNullEqualsNullFieldNumber = 33;
+  inline bool null_plus_non_null_equals_null() const;
+  inline void set_null_plus_non_null_equals_null(bool value);
+
+  // repeated string numeric_functions = 34;
+  inline int numeric_functions_size() const;
+  inline void clear_numeric_functions();
+  static const int kNumericFunctionsFieldNumber = 34;
+  inline const ::std::string& numeric_functions(int index) const;
+  inline ::std::string* mutable_numeric_functions(int index);
+  inline void set_numeric_functions(int index, const ::std::string& value);
+  inline void set_numeric_functions(int index, const char* value);
+  inline void set_numeric_functions(int index, const char* value, size_t size);
+  inline ::std::string* add_numeric_functions();
+  inline void add_numeric_functions(const ::std::string& value);
+  inline void add_numeric_functions(const char* value);
+  inline void add_numeric_functions(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& numeric_functions() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_numeric_functions();
+
+  // repeated .exec.user.OrderBySupport order_by_support = 35;
+  inline int order_by_support_size() const;
+  inline void clear_order_by_support();
+  static const int kOrderBySupportFieldNumber = 35;
+  inline ::exec::user::OrderBySupport order_by_support(int index) const;
+  inline void set_order_by_support(int index, ::exec::user::OrderBySupport value);
+  inline void add_order_by_support(::exec::user::OrderBySupport value);
+  inline const ::google::protobuf::RepeatedField<int>& order_by_support() const;
+  inline ::google::protobuf::RepeatedField<int>* mutable_order_by_support();
+
+  // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
+  inline int outer_join_support_size() const;
+  inline void clear_outer_join_support();
+  static const int kOuterJoinSupportFieldNumber = 36;
+  inline ::exec::user::OuterJoinSupport outer_join_support(int index) const;
+  inline void set_outer_join_support(int index, ::exec::user::OuterJoinSupport value);
+  inline void add_outer_join_support(::exec::user::OuterJoinSupport value);
+  inline const ::google::protobuf::RepeatedField<int>& outer_join_support() const;
+  inline ::google::protobuf::RepeatedField<int>* mutable_outer_join_support();
+
+  // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
+  inline bool has_quoted_identifier_casing() const;
+  inline void clear_quoted_identifier_casing();
+  static const int kQuotedIdentifierCasingFieldNumber = 37;
+  inline ::exec::user::IdentifierCasing quoted_identifier_casing() const;
+  inline void set_quoted_identifier_casing(::exec::user::IdentifierCasing value);
+
+  // optional bool read_only = 38;
+  inline bool has_read_only() const;
+  inline void clear_read_only();
+  static const int kReadOnlyFieldNumber = 38;
+  inline bool read_only() const;
+  inline void set_read_only(bool value);
+
+  // optional string schema_term = 39;
+  inline bool has_schema_term() const;
+  inline void clear_schema_term();
+  static const int kSchemaTermFieldNumber = 39;
+  inline const ::std::string& schema_term() const;
+  inline void set_schema_term(const ::std::string& value);
+  inline void set_schema_term(const char* value);
+  inline void set_schema_term(const char* value, size_t size);
+  inline ::std::string* mutable_schema_term();
+  inline ::std::string* release_schema_term();
+  inline void set_allocated_schema_term(::std::string* schema_term);
+
+  // optional string search_escape_string = 40;
+  inline bool has_search_escape_string() const;
+  inline void clear_search_escape_string();
+  static const int kSearchEscapeStringFieldNumber = 40;
+  inline const ::std::string& search_escape_string() const;
+  inline void set_search_escape_string(const ::std::string& value);
+  inline void set_search_escape_string(const char* value);
+  inline void set_search_escape_string(const char* value, size_t size);
+  inline ::std::string* mutable_search_escape_string();
+  inline ::std::string* release_search_escape_string();
+  inline void set_allocated_search_escape_string(::std::string* search_escape_string);
+
+  // optional bool select_for_update_supported = 41;
+  inline bool has_select_for_update_supported() const;
+  inline void clear_select_for_update_supported();
+  static const int kSelectForUpdateSupportedFieldNumber = 41;
+  inline bool select_for_update_supported() const;
+  inline void set_select_for_update_supported(bool value);
+
+  // optional string special_characters = 42;
+  inline bool has_special_characters() const;
+  inline void clear_special_characters();
+  static const int kSpecialCharactersFieldNumber = 42;
+  inline const ::std::string& special_characters() const;
+  inline void set_special_characters(const ::std::string& value);
+  inline void set_special_characters(const char* value);
+  inline void set_special_characters(const char* value, size_t size);
+  inline ::std::string* mutable_special_characters();
+  inline ::std::string* release_special_characters();
+  inline void set_allocated_special_characters(::std::string* special_characters);
+
+  // repeated string sql_keywords = 43;
+  inline int sql_keywords_size() const;
+  inline void clear_sql_keywords();
+  static const int kSqlKeywordsFieldNumber = 43;
+  inline const ::std::string& sql_keywords(int index) const;
+  inline ::std::string* mutable_sql_keywords(int index);
+  inline void set_sql_keywords(int index, const ::std::string& value);
+  inline void set_sql_keywords(int index, const char* value);
+  inline void set_sql_keywords(int index, const char* value, size_t size);
+  inline ::std::string* add_sql_keywords();
+  inline void add_sql_keywords(const ::std::string& value);
+  inline void add_sql_keywords(const char* value);
+  inline void add_sql_keywords(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& sql_keywords() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_sql_keywords();
+
+  // repeated string string_functions = 44;
+  inline int string_functions_size() const;
+  inline void clear_string_functions();
+  static const int kStringFunctionsFieldNumber = 44;
+  inline const ::std::string& string_functions(int index) const;
+  inline ::std::string* mutable_string_functions(int index);
+  inline void set_string_functions(int index, const ::std::string& value);
+  inline void set_string_functions(int index, const char* value);
+  inline void set_string_functions(int index, const char* value, size_t size);
+  inline ::std::string* add_string_functions();
+  inline void add_string_functions(const ::std::string& value);
+  inline void add_string_functions(const char* value);
+  inline void add_string_functions(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& string_functions() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_string_functions();
+
+  // repeated .exec.user.SubQuerySupport subquery_support = 45;
+  inline int subquery_support_size() const;
+  inline void clear_subquery_support();
+  static const int kSubquerySupportFieldNumber = 45;
+  inline ::exec::user::SubQuerySupport subquery_support(int index) const;
+  inline void set_subquery_support(int index, ::exec::user::SubQuerySupport value);
+  inline void add_subquery_support(::exec::user::SubQuerySupport value);
+  inline const ::google::protobuf::RepeatedField<int>& subquery_support() const;
+  inline ::google::protobuf::RepeatedField<int>* mutable_subquery_support();
+
+  // repeated string system_functions = 46;
+  inline int system_functions_size() const;
+  inline void clear_system_functions();
+  static const int kSystemFunctionsFieldNumber = 46;
+  inline const ::std::string& system_functions(int index) const;
+  inline ::std::string* mutable_system_functions(int index);
+  inline void set_system_functions(int index, const ::std::string& value);
+  inline void set_system_functions(int index, const char* value);
+  inline void set_system_functions(int index, const char* value, size_t size);
+  inline ::std::string* add_system_functions();
+  inline void add_system_functions(const ::std::string& value);
+  inline void add_system_functions(const char* value);
+  inline void add_system_functions(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& system_functions() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_system_functions();
+
+  // optional string table_term = 47;
+  inline bool has_table_term() const;
+  inline void clear_table_term();
+  static const int kTableTermFieldNumber = 47;
+  inline const ::std::string& table_term() const;
+  inline void set_table_term(const ::std::string& value);
+  inline void set_table_term(const char* value);
+  inline void set_table_term(const char* value, size_t size);
+  inline ::std::string* mutable_table_term();
+  inline ::std::string* release_table_term();
+  inline void set_allocated_table_term(::std::string* table_term);
+
+  // optional bool transaction_supported = 48;
+  inline bool has_transaction_supported() const;
+  inline void clear_transaction_supported();
+  static const int kTransactionSupportedFieldNumber = 48;
+  inline bool transaction_supported() const;
+  inline void set_transaction_supported(bool value);
+
+  // repeated .exec.user.UnionSupport union_support = 49;
+  inline int union_support_size() const;
+  inline void clear_union_support();
+  static const int kUnionSupportFieldNumber = 49;
+  inline ::exec::user::UnionSupport union_support(int index) const;
+  inline void set_union_support(int index, ::exec::user::UnionSupport value);
+  inline void add_union_support(::exec::user::UnionSupport value);
+  inline const ::google::protobuf::RepeatedField<int>& union_support() const;
+  inline ::google::protobuf::RepeatedField<int>* mutable_union_support();
+
+  // optional string current_schema = 50;
+  inline bool has_current_schema() const;
+  inline void clear_current_schema();
+  static const int kCurrentSchemaFieldNumber = 50;
+  inline const ::std::string& current_schema() const;
+  inline void set_current_schema(const ::std::string& value);
+  inline void set_current_schema(const char* value);
+  inline void set_current_schema(const char* value, size_t size);
+  inline ::std::string* mutable_current_schema();
+  inline ::std::string* release_current_schema();
+  inline void set_allocated_current_schema(::std::string* current_schema);
 
   // @@protoc_insertion_point(class_scope:exec.user.ServerMeta)
  private:
-  void set_has_all_tables_selectable();
-  void clear_has_all_tables_selectable();
-  void set_has_blob_included_in_max_row_size();
-  void clear_has_blob_included_in_max_row_size();
-  void set_has_catalog_at_start();
-  void clear_has_catalog_at_start();
-  void set_has_catalog_separator();
-  void clear_has_catalog_separator();
-  void set_has_catalog_term();
-  void clear_has_catalog_term();
-  void set_has_column_aliasing_supported();
-  void clear_has_column_aliasing_supported();
-  void set_has_correlation_names_support();
-  void clear_has_correlation_names_support();
-  void set_has_group_by_support();
-  void clear_has_group_by_support();
-  void set_has_identifier_casing();
-  void clear_has_identifier_casing();
-  void set_has_identifier_quote_string();
-  void clear_has_identifier_quote_string();
-  void set_has_like_escape_clause_supported();
-  void clear_has_like_escape_clause_supported();
-  void set_has_max_binary_literal_length();
-  void clear_has_max_binary_literal_length();
-  void set_has_max_catalog_name_length();
-  void clear_has_max_catalog_name_length();
-  void set_has_max_char_literal_length();
-  void clear_has_max_char_literal_length();
-  void set_has_max_column_name_length();
-  void clear_has_max_column_name_length();
-  void set_has_max_columns_in_group_by();
-  void clear_has_max_columns_in_group_by();
-  void set_has_max_columns_in_order_by();
-  void clear_has_max_columns_in_order_by();
-  void set_has_max_columns_in_select();
-  void clear_has_max_columns_in_select();
-  void set_has_max_cursor_name_length();
-  void clear_has_max_cursor_name_length();
-  void set_has_max_logical_lob_size();
-  void clear_has_max_logical_lob_size();
-  void set_has_max_row_size();
-  void clear_has_max_row_size();
-  void set_has_max_schema_name_length();
-  void clear_has_max_schema_name_length();
-  void set_has_max_statement_length();
-  void clear_has_max_statement_length();
-  void set_has_max_statements();
-  void clear_has_max_statements();
-  void set_has_max_table_name_length();
-  void clear_has_max_table_name_length();
-  void set_has_max_tables_in_select();
-  void clear_has_max_tables_in_select();
-  void set_has_max_user_name_length();
-  void clear_has_max_user_name_length();
-  void set_has_null_collation();
-  void clear_has_null_collation();
-  void set_has_null_plus_non_null_equals_null();
-  void clear_has_null_plus_non_null_equals_null();
-  void set_has_quoted_identifier_casing();
-  void clear_has_quoted_identifier_casing();
-  void set_has_read_only();
-  void clear_has_read_only();
-  void set_has_schema_term();
-  void clear_has_schema_term();
-  void set_has_search_escape_string();
-  void clear_has_search_escape_string();
-  void set_has_select_for_update_supported();
-  void clear_has_select_for_update_supported();
-  void set_has_special_characters();
-  void clear_has_special_characters();
-  void set_has_table_term();
-  void clear_has_table_term();
-  void set_has_transaction_supported();
-  void clear_has_transaction_supported();
-  void set_has_current_schema();
-  void clear_has_current_schema();
+  inline void set_has_all_tables_selectable();
+  inline void clear_has_all_tables_selectable();
+  inline void set_has_blob_included_in_max_row_size();
+  inline void clear_has_blob_included_in_max_row_size();
+  inline void set_has_catalog_at_start();
+  inline void clear_has_catalog_at_start();
+  inline void set_has_catalog_separator();
+  inline void clear_has_catalog_separator();
+  inline void set_has_catalog_term();
+  inline void clear_has_catalog_term();
+  inline void set_has_column_aliasing_supported();
+  inline void clear_has_column_aliasing_supported();
+  inline void set_has_correlation_names_support();
+  inline void clear_has_correlation_names_support();
+  inline void set_has_group_by_support();
+  inline void clear_has_group_by_support();
+  inline void set_has_identifier_casing();
+  inline void clear_has_identifier_casing();
+  inline void set_has_identifier_quote_string();
+  inline void clear_has_identifier_quote_string();
+  inline void set_has_like_escape_clause_supported();
+  inline void clear_has_like_escape_clause_supported();
+  inline void set_has_max_binary_literal_length();
+  inline void clear_has_max_binary_literal_length();
+  inline void set_has_max_catalog_name_length();
+  inline void clear_has_max_catalog_name_length();
+  inline void set_has_max_char_literal_length();
+  inline void clear_has_max_char_literal_length();
+  inline void set_has_max_column_name_length();
+  inline void clear_has_max_column_name_length();
+  inline void set_has_max_columns_in_group_by();
+  inline void clear_has_max_columns_in_group_by();
+  inline void set_has_max_columns_in_order_by();
+  inline void clear_has_max_columns_in_order_by();
+  inline void set_has_max_columns_in_select();
+  inline void clear_has_max_columns_in_select();
+  inline void set_has_max_cursor_name_length();
+  inline void clear_has_max_cursor_name_length();
+  inline void set_has_max_logical_lob_size();
+  inline void clear_has_max_logical_lob_size();
+  inline void set_has_max_row_size();
+  inline void clear_has_max_row_size();
+  inline void set_has_max_schema_name_length();
+  inline void clear_has_max_schema_name_length();
+  inline void set_has_max_statement_length();
+  inline void clear_has_max_statement_length();
+  inline void set_has_max_statements();
+  inline void clear_has_max_statements();
+  inline void set_has_max_table_name_length();
+  inline void clear_has_max_table_name_length();
+  inline void set_has_max_tables_in_select();
+  inline void clear_has_max_tables_in_select();
+  inline void set_has_max_user_name_length();
+  inline void clear_has_max_user_name_length();
+  inline void set_has_null_collation();
+  inline void clear_has_null_collation();
+  inline void set_has_null_plus_non_null_equals_null();
+  inline void clear_has_null_plus_non_null_equals_null();
+  inline void set_has_quoted_identifier_casing();
+  inline void clear_has_quoted_identifier_casing();
+  inline void set_has_read_only();
+  inline void clear_has_read_only();
+  inline void set_has_schema_term();
+  inline void clear_has_schema_term();
+  inline void set_has_search_escape_string();
+  inline void clear_has_search_escape_string();
+  inline void set_has_select_for_update_supported();
+  inline void clear_has_select_for_update_supported();
+  inline void set_has_special_characters();
+  inline void clear_has_special_characters();
+  inline void set_has_table_term();
+  inline void clear_has_table_term();
+  inline void set_has_transaction_supported();
+  inline void clear_has_transaction_supported();
+  inline void set_has_current_schema();
+  inline void clear_has_current_schema();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<2> _has_bits_;
-  ::google::protobuf::RepeatedField<int> collate_support_;
-  ::google::protobuf::RepeatedPtrField< ::exec::user::ConvertSupport > convert_support_;
-  ::google::protobuf::RepeatedPtrField< ::std::string> date_time_functions_;
-  ::google::protobuf::RepeatedField<int> date_time_literals_support_;
-  ::google::protobuf::RepeatedPtrField< ::std::string> numeric_functions_;
-  ::google::protobuf::RepeatedField<int> order_by_support_;
-  ::google::protobuf::RepeatedField<int> outer_join_support_;
-  ::google::protobuf::RepeatedPtrField< ::std::string> sql_keywords_;
-  ::google::protobuf::RepeatedPtrField< ::std::string> string_functions_;
-  ::google::protobuf::RepeatedField<int> subquery_support_;
-  ::google::protobuf::RepeatedPtrField< ::std::string> system_functions_;
-  ::google::protobuf::RepeatedField<int> union_support_;
-  ::google::protobuf::internal::ArenaStringPtr catalog_separator_;
-  ::google::protobuf::internal::ArenaStringPtr catalog_term_;
-  ::google::protobuf::internal::ArenaStringPtr identifier_quote_string_;
-  ::google::protobuf::internal::ArenaStringPtr schema_term_;
-  ::google::protobuf::internal::ArenaStringPtr search_escape_string_;
-  ::google::protobuf::internal::ArenaStringPtr special_characters_;
-  ::google::protobuf::internal::ArenaStringPtr table_term_;
-  ::google::protobuf::internal::ArenaStringPtr current_schema_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* catalog_separator_;
   bool all_tables_selectable_;
   bool blob_included_in_max_row_size_;
   bool catalog_at_start_;
   bool column_aliasing_supported_;
+  int correlation_names_support_;
+  ::std::string* catalog_term_;
+  ::google::protobuf::RepeatedField<int> collate_support_;
+  ::google::protobuf::RepeatedPtrField< ::exec::user::ConvertSupport > convert_support_;
+  ::google::protobuf::RepeatedPtrField< ::std::string> date_time_functions_;
+  ::google::protobuf::RepeatedField<int> date_time_literals_support_;
+  int group_by_support_;
   int identifier_casing_;
+  ::std::string* identifier_quote_string_;
   ::google::protobuf::uint32 max_binary_literal_length_;
   ::google::protobuf::uint32 max_catalog_name_length_;
   ::google::protobuf::uint32 max_char_literal_length_;
@@ -6055,16 +4695,35 @@
   bool read_only_;
   bool select_for_update_supported_;
   int null_collation_;
+  ::google::protobuf::RepeatedPtrField< ::std::string> numeric_functions_;
+  ::google::protobuf::RepeatedField<int> order_by_support_;
+  ::google::protobuf::RepeatedField<int> outer_join_support_;
+  ::std::string* schema_term_;
+  ::std::string* search_escape_string_;
+  ::std::string* special_characters_;
   int quoted_identifier_casing_;
   bool transaction_supported_;
-  int correlation_names_support_;
-  int group_by_support_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::google::protobuf::RepeatedPtrField< ::std::string> sql_keywords_;
+  ::google::protobuf::RepeatedPtrField< ::std::string> string_functions_;
+  ::google::protobuf::RepeatedField<int> subquery_support_;
+  ::google::protobuf::RepeatedPtrField< ::std::string> system_functions_;
+  ::std::string* table_term_;
+  ::google::protobuf::RepeatedField<int> union_support_;
+  ::std::string* current_schema_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(50 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static ServerMeta* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class RunQuery : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.user.RunQuery) */ {
+class RunQuery : public ::google::protobuf::Message {
  public:
   RunQuery();
   virtual ~RunQuery();
@@ -6075,182 +4734,140 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  RunQuery(RunQuery&& from) noexcept
-    : RunQuery() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline RunQuery& operator=(RunQuery&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const RunQuery& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const RunQuery* internal_default_instance() {
-    return reinterpret_cast<const RunQuery*>(
-               &_RunQuery_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    30;
-
   void Swap(RunQuery* other);
-  friend void swap(RunQuery& a, RunQuery& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline RunQuery* New() const final {
-    return CreateMaybeMessage<RunQuery>(NULL);
-  }
-
-  RunQuery* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<RunQuery>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  RunQuery* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const RunQuery& from);
   void MergeFrom(const RunQuery& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(RunQuery* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.bit.control.PlanFragment fragments = 4;
-  int fragments_size() const;
-  void clear_fragments();
-  static const int kFragmentsFieldNumber = 4;
-  ::exec::bit::control::PlanFragment* mutable_fragments(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
-      mutable_fragments();
-  const ::exec::bit::control::PlanFragment& fragments(int index) const;
-  ::exec::bit::control::PlanFragment* add_fragments();
-  const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >&
-      fragments() const;
-
-  // optional string plan = 3;
-  bool has_plan() const;
-  void clear_plan();
-  static const int kPlanFieldNumber = 3;
-  const ::std::string& plan() const;
-  void set_plan(const ::std::string& value);
-  #if LANG_CXX11
-  void set_plan(::std::string&& value);
-  #endif
-  void set_plan(const char* value);
-  void set_plan(const char* value, size_t size);
-  ::std::string* mutable_plan();
-  ::std::string* release_plan();
-  void set_allocated_plan(::std::string* plan);
-
-  // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
-  bool has_prepared_statement_handle() const;
-  void clear_prepared_statement_handle();
-  static const int kPreparedStatementHandleFieldNumber = 5;
-  private:
-  const ::exec::user::PreparedStatementHandle& _internal_prepared_statement_handle() const;
-  public:
-  const ::exec::user::PreparedStatementHandle& prepared_statement_handle() const;
-  ::exec::user::PreparedStatementHandle* release_prepared_statement_handle();
-  ::exec::user::PreparedStatementHandle* mutable_prepared_statement_handle();
-  void set_allocated_prepared_statement_handle(::exec::user::PreparedStatementHandle* prepared_statement_handle);
-
-  // optional int32 autolimit_rowcount = 6;
-  bool has_autolimit_rowcount() const;
-  void clear_autolimit_rowcount();
-  static const int kAutolimitRowcountFieldNumber = 6;
-  ::google::protobuf::int32 autolimit_rowcount() const;
-  void set_autolimit_rowcount(::google::protobuf::int32 value);
-
   // optional .exec.user.QueryResultsMode results_mode = 1;
-  bool has_results_mode() const;
-  void clear_results_mode();
+  inline bool has_results_mode() const;
+  inline void clear_results_mode();
   static const int kResultsModeFieldNumber = 1;
-  ::exec::user::QueryResultsMode results_mode() const;
-  void set_results_mode(::exec::user::QueryResultsMode value);
+  inline ::exec::user::QueryResultsMode results_mode() const;
+  inline void set_results_mode(::exec::user::QueryResultsMode value);
 
   // optional .exec.shared.QueryType type = 2;
-  bool has_type() const;
-  void clear_type();
+  inline bool has_type() const;
+  inline void clear_type();
   static const int kTypeFieldNumber = 2;
-  ::exec::shared::QueryType type() const;
-  void set_type(::exec::shared::QueryType value);
+  inline ::exec::shared::QueryType type() const;
+  inline void set_type(::exec::shared::QueryType value);
+
+  // optional string plan = 3;
+  inline bool has_plan() const;
+  inline void clear_plan();
+  static const int kPlanFieldNumber = 3;
+  inline const ::std::string& plan() const;
+  inline void set_plan(const ::std::string& value);
+  inline void set_plan(const char* value);
+  inline void set_plan(const char* value, size_t size);
+  inline ::std::string* mutable_plan();
+  inline ::std::string* release_plan();
+  inline void set_allocated_plan(::std::string* plan);
+
+  // repeated .exec.bit.control.PlanFragment fragments = 4;
+  inline int fragments_size() const;
+  inline void clear_fragments();
+  static const int kFragmentsFieldNumber = 4;
+  inline const ::exec::bit::control::PlanFragment& fragments(int index) const;
+  inline ::exec::bit::control::PlanFragment* mutable_fragments(int index);
+  inline ::exec::bit::control::PlanFragment* add_fragments();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >&
+      fragments() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
+      mutable_fragments();
+
+  // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
+  inline bool has_prepared_statement_handle() const;
+  inline void clear_prepared_statement_handle();
+  static const int kPreparedStatementHandleFieldNumber = 5;
+  inline const ::exec::user::PreparedStatementHandle& prepared_statement_handle() const;
+  inline ::exec::user::PreparedStatementHandle* mutable_prepared_statement_handle();
+  inline ::exec::user::PreparedStatementHandle* release_prepared_statement_handle();
+  inline void set_allocated_prepared_statement_handle(::exec::user::PreparedStatementHandle* prepared_statement_handle);
+
+  // optional int32 autolimit_rowcount = 6;
+  inline bool has_autolimit_rowcount() const;
+  inline void clear_autolimit_rowcount();
+  static const int kAutolimitRowcountFieldNumber = 6;
+  inline ::google::protobuf::int32 autolimit_rowcount() const;
+  inline void set_autolimit_rowcount(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.user.RunQuery)
  private:
-  void set_has_results_mode();
-  void clear_has_results_mode();
-  void set_has_type();
-  void clear_has_type();
-  void set_has_plan();
-  void clear_has_plan();
-  void set_has_prepared_statement_handle();
-  void clear_has_prepared_statement_handle();
-  void set_has_autolimit_rowcount();
-  void clear_has_autolimit_rowcount();
+  inline void set_has_results_mode();
+  inline void clear_has_results_mode();
+  inline void set_has_type();
+  inline void clear_has_type();
+  inline void set_has_plan();
+  inline void clear_has_plan();
+  inline void set_has_prepared_statement_handle();
+  inline void clear_has_prepared_statement_handle();
+  inline void set_has_autolimit_rowcount();
+  inline void clear_has_autolimit_rowcount();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment > fragments_;
-  ::google::protobuf::internal::ArenaStringPtr plan_;
-  ::exec::user::PreparedStatementHandle* prepared_statement_handle_;
-  ::google::protobuf::int32 autolimit_rowcount_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   int results_mode_;
   int type_;
-  friend struct ::protobuf_User_2eproto::TableStruct;
+  ::std::string* plan_;
+  ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment > fragments_;
+  ::exec::user::PreparedStatementHandle* prepared_statement_handle_;
+  ::google::protobuf::int32 autolimit_rowcount_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(6 + 31) / 32];
+
+  friend void  protobuf_AddDesc_User_2eproto();
+  friend void protobuf_AssignDesc_User_2eproto();
+  friend void protobuf_ShutdownFile_User_2eproto();
+
+  void InitAsDefaultInstance();
+  static RunQuery* default_instance_;
 };
 // ===================================================================
 
 
 // ===================================================================
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic push
-  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
-#endif  // __GNUC__
 // Property
 
 // required string key = 1;
@@ -6264,59 +4881,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void Property::clear_key() {
-  key_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (key_ != &::google::protobuf::internal::kEmptyString) {
+    key_->clear();
+  }
   clear_has_key();
 }
 inline const ::std::string& Property::key() const {
-  // @@protoc_insertion_point(field_get:exec.user.Property.key)
-  return key_.GetNoArena();
+  return *key_;
 }
 inline void Property::set_key(const ::std::string& value) {
   set_has_key();
-  key_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.Property.key)
+  if (key_ == &::google::protobuf::internal::kEmptyString) {
+    key_ = new ::std::string;
+  }
+  key_->assign(value);
 }
-#if LANG_CXX11
-inline void Property::set_key(::std::string&& value) {
-  set_has_key();
-  key_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.Property.key)
-}
-#endif
 inline void Property::set_key(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_key();
-  key_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.Property.key)
+  if (key_ == &::google::protobuf::internal::kEmptyString) {
+    key_ = new ::std::string;
+  }
+  key_->assign(value);
 }
 inline void Property::set_key(const char* value, size_t size) {
   set_has_key();
-  key_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.Property.key)
+  if (key_ == &::google::protobuf::internal::kEmptyString) {
+    key_ = new ::std::string;
+  }
+  key_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* Property::mutable_key() {
   set_has_key();
-  // @@protoc_insertion_point(field_mutable:exec.user.Property.key)
-  return key_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (key_ == &::google::protobuf::internal::kEmptyString) {
+    key_ = new ::std::string;
+  }
+  return key_;
 }
 inline ::std::string* Property::release_key() {
-  // @@protoc_insertion_point(field_release:exec.user.Property.key)
-  if (!has_key()) {
-    return NULL;
-  }
   clear_has_key();
-  return key_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (key_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = key_;
+    key_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void Property::set_allocated_key(::std::string* key) {
-  if (key != NULL) {
+  if (key_ != &::google::protobuf::internal::kEmptyString) {
+    delete key_;
+  }
+  if (key) {
     set_has_key();
+    key_ = key;
   } else {
     clear_has_key();
+    key_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  key_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), key);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.Property.key)
 }
 
 // required string value = 2;
@@ -6330,59 +4951,63 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void Property::clear_value() {
-  value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (value_ != &::google::protobuf::internal::kEmptyString) {
+    value_->clear();
+  }
   clear_has_value();
 }
 inline const ::std::string& Property::value() const {
-  // @@protoc_insertion_point(field_get:exec.user.Property.value)
-  return value_.GetNoArena();
+  return *value_;
 }
 inline void Property::set_value(const ::std::string& value) {
   set_has_value();
-  value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.Property.value)
+  if (value_ == &::google::protobuf::internal::kEmptyString) {
+    value_ = new ::std::string;
+  }
+  value_->assign(value);
 }
-#if LANG_CXX11
-inline void Property::set_value(::std::string&& value) {
-  set_has_value();
-  value_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.Property.value)
-}
-#endif
 inline void Property::set_value(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_value();
-  value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.Property.value)
+  if (value_ == &::google::protobuf::internal::kEmptyString) {
+    value_ = new ::std::string;
+  }
+  value_->assign(value);
 }
 inline void Property::set_value(const char* value, size_t size) {
   set_has_value();
-  value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.Property.value)
+  if (value_ == &::google::protobuf::internal::kEmptyString) {
+    value_ = new ::std::string;
+  }
+  value_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* Property::mutable_value() {
   set_has_value();
-  // @@protoc_insertion_point(field_mutable:exec.user.Property.value)
-  return value_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (value_ == &::google::protobuf::internal::kEmptyString) {
+    value_ = new ::std::string;
+  }
+  return value_;
 }
 inline ::std::string* Property::release_value() {
-  // @@protoc_insertion_point(field_release:exec.user.Property.value)
-  if (!has_value()) {
-    return NULL;
-  }
   clear_has_value();
-  return value_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (value_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = value_;
+    value_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void Property::set_allocated_value(::std::string* value) {
-  if (value != NULL) {
+  if (value_ != &::google::protobuf::internal::kEmptyString) {
+    delete value_;
+  }
+  if (value) {
     set_has_value();
+    value_ = value;
   } else {
     clear_has_value();
+    value_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  value_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.Property.value)
 }
 
 // -------------------------------------------------------------------
@@ -6396,28 +5021,23 @@
 inline void UserProperties::clear_properties() {
   properties_.Clear();
 }
-inline ::exec::user::Property* UserProperties::mutable_properties(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.UserProperties.properties)
-  return properties_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::user::Property >*
-UserProperties::mutable_properties() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.UserProperties.properties)
-  return &properties_;
-}
 inline const ::exec::user::Property& UserProperties::properties(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.UserProperties.properties)
   return properties_.Get(index);
 }
+inline ::exec::user::Property* UserProperties::mutable_properties(int index) {
+  return properties_.Mutable(index);
+}
 inline ::exec::user::Property* UserProperties::add_properties() {
-  // @@protoc_insertion_point(field_add:exec.user.UserProperties.properties)
   return properties_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::user::Property >&
 UserProperties::properties() const {
-  // @@protoc_insertion_point(field_list:exec.user.UserProperties.properties)
   return properties_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::user::Property >*
+UserProperties::mutable_properties() {
+  return &properties_;
+}
 
 // -------------------------------------------------------------------
 
@@ -6434,59 +5054,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void RpcEndpointInfos::clear_name() {
-  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ != &::google::protobuf::internal::kEmptyString) {
+    name_->clear();
+  }
   clear_has_name();
 }
 inline const ::std::string& RpcEndpointInfos::name() const {
-  // @@protoc_insertion_point(field_get:exec.user.RpcEndpointInfos.name)
-  return name_.GetNoArena();
+  return *name_;
 }
 inline void RpcEndpointInfos::set_name(const ::std::string& value) {
   set_has_name();
-  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.RpcEndpointInfos.name)
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  name_->assign(value);
 }
-#if LANG_CXX11
-inline void RpcEndpointInfos::set_name(::std::string&& value) {
-  set_has_name();
-  name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.RpcEndpointInfos.name)
-}
-#endif
 inline void RpcEndpointInfos::set_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_name();
-  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.RpcEndpointInfos.name)
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  name_->assign(value);
 }
 inline void RpcEndpointInfos::set_name(const char* value, size_t size) {
   set_has_name();
-  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.RpcEndpointInfos.name)
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* RpcEndpointInfos::mutable_name() {
   set_has_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.RpcEndpointInfos.name)
-  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  return name_;
 }
 inline ::std::string* RpcEndpointInfos::release_name() {
-  // @@protoc_insertion_point(field_release:exec.user.RpcEndpointInfos.name)
-  if (!has_name()) {
-    return NULL;
-  }
   clear_has_name();
-  return name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = name_;
+    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void RpcEndpointInfos::set_allocated_name(::std::string* name) {
-  if (name != NULL) {
+  if (name_ != &::google::protobuf::internal::kEmptyString) {
+    delete name_;
+  }
+  if (name) {
     set_has_name();
+    name_ = name;
   } else {
     clear_has_name();
+    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.RpcEndpointInfos.name)
 }
 
 // optional string version = 2;
@@ -6500,287 +5124,291 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void RpcEndpointInfos::clear_version() {
-  version_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (version_ != &::google::protobuf::internal::kEmptyString) {
+    version_->clear();
+  }
   clear_has_version();
 }
 inline const ::std::string& RpcEndpointInfos::version() const {
-  // @@protoc_insertion_point(field_get:exec.user.RpcEndpointInfos.version)
-  return version_.GetNoArena();
+  return *version_;
 }
 inline void RpcEndpointInfos::set_version(const ::std::string& value) {
   set_has_version();
-  version_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.RpcEndpointInfos.version)
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    version_ = new ::std::string;
+  }
+  version_->assign(value);
 }
-#if LANG_CXX11
-inline void RpcEndpointInfos::set_version(::std::string&& value) {
-  set_has_version();
-  version_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.RpcEndpointInfos.version)
-}
-#endif
 inline void RpcEndpointInfos::set_version(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_version();
-  version_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.RpcEndpointInfos.version)
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    version_ = new ::std::string;
+  }
+  version_->assign(value);
 }
 inline void RpcEndpointInfos::set_version(const char* value, size_t size) {
   set_has_version();
-  version_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.RpcEndpointInfos.version)
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    version_ = new ::std::string;
+  }
+  version_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* RpcEndpointInfos::mutable_version() {
   set_has_version();
-  // @@protoc_insertion_point(field_mutable:exec.user.RpcEndpointInfos.version)
-  return version_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    version_ = new ::std::string;
+  }
+  return version_;
 }
 inline ::std::string* RpcEndpointInfos::release_version() {
-  // @@protoc_insertion_point(field_release:exec.user.RpcEndpointInfos.version)
-  if (!has_version()) {
-    return NULL;
-  }
   clear_has_version();
-  return version_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (version_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = version_;
+    version_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void RpcEndpointInfos::set_allocated_version(::std::string* version) {
-  if (version != NULL) {
+  if (version_ != &::google::protobuf::internal::kEmptyString) {
+    delete version_;
+  }
+  if (version) {
     set_has_version();
+    version_ = version;
   } else {
     clear_has_version();
+    version_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  version_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), version);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.RpcEndpointInfos.version)
 }
 
 // optional uint32 majorVersion = 3;
 inline bool RpcEndpointInfos::has_majorversion() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void RpcEndpointInfos::set_has_majorversion() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void RpcEndpointInfos::clear_has_majorversion() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void RpcEndpointInfos::clear_majorversion() {
   majorversion_ = 0u;
   clear_has_majorversion();
 }
 inline ::google::protobuf::uint32 RpcEndpointInfos::majorversion() const {
-  // @@protoc_insertion_point(field_get:exec.user.RpcEndpointInfos.majorVersion)
   return majorversion_;
 }
 inline void RpcEndpointInfos::set_majorversion(::google::protobuf::uint32 value) {
   set_has_majorversion();
   majorversion_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.RpcEndpointInfos.majorVersion)
 }
 
 // optional uint32 minorVersion = 4;
 inline bool RpcEndpointInfos::has_minorversion() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void RpcEndpointInfos::set_has_minorversion() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void RpcEndpointInfos::clear_has_minorversion() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void RpcEndpointInfos::clear_minorversion() {
   minorversion_ = 0u;
   clear_has_minorversion();
 }
 inline ::google::protobuf::uint32 RpcEndpointInfos::minorversion() const {
-  // @@protoc_insertion_point(field_get:exec.user.RpcEndpointInfos.minorVersion)
   return minorversion_;
 }
 inline void RpcEndpointInfos::set_minorversion(::google::protobuf::uint32 value) {
   set_has_minorversion();
   minorversion_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.RpcEndpointInfos.minorVersion)
 }
 
 // optional uint32 patchVersion = 5;
 inline bool RpcEndpointInfos::has_patchversion() const {
-  return (_has_bits_[0] & 0x00000040u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void RpcEndpointInfos::set_has_patchversion() {
-  _has_bits_[0] |= 0x00000040u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void RpcEndpointInfos::clear_has_patchversion() {
-  _has_bits_[0] &= ~0x00000040u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void RpcEndpointInfos::clear_patchversion() {
   patchversion_ = 0u;
   clear_has_patchversion();
 }
 inline ::google::protobuf::uint32 RpcEndpointInfos::patchversion() const {
-  // @@protoc_insertion_point(field_get:exec.user.RpcEndpointInfos.patchVersion)
   return patchversion_;
 }
 inline void RpcEndpointInfos::set_patchversion(::google::protobuf::uint32 value) {
   set_has_patchversion();
   patchversion_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.RpcEndpointInfos.patchVersion)
 }
 
 // optional string application = 6;
 inline bool RpcEndpointInfos::has_application() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void RpcEndpointInfos::set_has_application() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void RpcEndpointInfos::clear_has_application() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000020u;
 }
 inline void RpcEndpointInfos::clear_application() {
-  application_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (application_ != &::google::protobuf::internal::kEmptyString) {
+    application_->clear();
+  }
   clear_has_application();
 }
 inline const ::std::string& RpcEndpointInfos::application() const {
-  // @@protoc_insertion_point(field_get:exec.user.RpcEndpointInfos.application)
-  return application_.GetNoArena();
+  return *application_;
 }
 inline void RpcEndpointInfos::set_application(const ::std::string& value) {
   set_has_application();
-  application_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.RpcEndpointInfos.application)
+  if (application_ == &::google::protobuf::internal::kEmptyString) {
+    application_ = new ::std::string;
+  }
+  application_->assign(value);
 }
-#if LANG_CXX11
-inline void RpcEndpointInfos::set_application(::std::string&& value) {
-  set_has_application();
-  application_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.RpcEndpointInfos.application)
-}
-#endif
 inline void RpcEndpointInfos::set_application(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_application();
-  application_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.RpcEndpointInfos.application)
+  if (application_ == &::google::protobuf::internal::kEmptyString) {
+    application_ = new ::std::string;
+  }
+  application_->assign(value);
 }
 inline void RpcEndpointInfos::set_application(const char* value, size_t size) {
   set_has_application();
-  application_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.RpcEndpointInfos.application)
+  if (application_ == &::google::protobuf::internal::kEmptyString) {
+    application_ = new ::std::string;
+  }
+  application_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* RpcEndpointInfos::mutable_application() {
   set_has_application();
-  // @@protoc_insertion_point(field_mutable:exec.user.RpcEndpointInfos.application)
-  return application_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (application_ == &::google::protobuf::internal::kEmptyString) {
+    application_ = new ::std::string;
+  }
+  return application_;
 }
 inline ::std::string* RpcEndpointInfos::release_application() {
-  // @@protoc_insertion_point(field_release:exec.user.RpcEndpointInfos.application)
-  if (!has_application()) {
-    return NULL;
-  }
   clear_has_application();
-  return application_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (application_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = application_;
+    application_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void RpcEndpointInfos::set_allocated_application(::std::string* application) {
-  if (application != NULL) {
+  if (application_ != &::google::protobuf::internal::kEmptyString) {
+    delete application_;
+  }
+  if (application) {
     set_has_application();
+    application_ = application;
   } else {
     clear_has_application();
+    application_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  application_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), application);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.RpcEndpointInfos.application)
 }
 
 // optional uint32 buildNumber = 7;
 inline bool RpcEndpointInfos::has_buildnumber() const {
-  return (_has_bits_[0] & 0x00000080u) != 0;
+  return (_has_bits_[0] & 0x00000040u) != 0;
 }
 inline void RpcEndpointInfos::set_has_buildnumber() {
-  _has_bits_[0] |= 0x00000080u;
+  _has_bits_[0] |= 0x00000040u;
 }
 inline void RpcEndpointInfos::clear_has_buildnumber() {
-  _has_bits_[0] &= ~0x00000080u;
+  _has_bits_[0] &= ~0x00000040u;
 }
 inline void RpcEndpointInfos::clear_buildnumber() {
   buildnumber_ = 0u;
   clear_has_buildnumber();
 }
 inline ::google::protobuf::uint32 RpcEndpointInfos::buildnumber() const {
-  // @@protoc_insertion_point(field_get:exec.user.RpcEndpointInfos.buildNumber)
   return buildnumber_;
 }
 inline void RpcEndpointInfos::set_buildnumber(::google::protobuf::uint32 value) {
   set_has_buildnumber();
   buildnumber_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.RpcEndpointInfos.buildNumber)
 }
 
 // optional string versionQualifier = 8;
 inline bool RpcEndpointInfos::has_versionqualifier() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000080u) != 0;
 }
 inline void RpcEndpointInfos::set_has_versionqualifier() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000080u;
 }
 inline void RpcEndpointInfos::clear_has_versionqualifier() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000080u;
 }
 inline void RpcEndpointInfos::clear_versionqualifier() {
-  versionqualifier_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (versionqualifier_ != &::google::protobuf::internal::kEmptyString) {
+    versionqualifier_->clear();
+  }
   clear_has_versionqualifier();
 }
 inline const ::std::string& RpcEndpointInfos::versionqualifier() const {
-  // @@protoc_insertion_point(field_get:exec.user.RpcEndpointInfos.versionQualifier)
-  return versionqualifier_.GetNoArena();
+  return *versionqualifier_;
 }
 inline void RpcEndpointInfos::set_versionqualifier(const ::std::string& value) {
   set_has_versionqualifier();
-  versionqualifier_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.RpcEndpointInfos.versionQualifier)
+  if (versionqualifier_ == &::google::protobuf::internal::kEmptyString) {
+    versionqualifier_ = new ::std::string;
+  }
+  versionqualifier_->assign(value);
 }
-#if LANG_CXX11
-inline void RpcEndpointInfos::set_versionqualifier(::std::string&& value) {
-  set_has_versionqualifier();
-  versionqualifier_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.RpcEndpointInfos.versionQualifier)
-}
-#endif
 inline void RpcEndpointInfos::set_versionqualifier(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_versionqualifier();
-  versionqualifier_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.RpcEndpointInfos.versionQualifier)
+  if (versionqualifier_ == &::google::protobuf::internal::kEmptyString) {
+    versionqualifier_ = new ::std::string;
+  }
+  versionqualifier_->assign(value);
 }
 inline void RpcEndpointInfos::set_versionqualifier(const char* value, size_t size) {
   set_has_versionqualifier();
-  versionqualifier_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.RpcEndpointInfos.versionQualifier)
+  if (versionqualifier_ == &::google::protobuf::internal::kEmptyString) {
+    versionqualifier_ = new ::std::string;
+  }
+  versionqualifier_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* RpcEndpointInfos::mutable_versionqualifier() {
   set_has_versionqualifier();
-  // @@protoc_insertion_point(field_mutable:exec.user.RpcEndpointInfos.versionQualifier)
-  return versionqualifier_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (versionqualifier_ == &::google::protobuf::internal::kEmptyString) {
+    versionqualifier_ = new ::std::string;
+  }
+  return versionqualifier_;
 }
 inline ::std::string* RpcEndpointInfos::release_versionqualifier() {
-  // @@protoc_insertion_point(field_release:exec.user.RpcEndpointInfos.versionQualifier)
-  if (!has_versionqualifier()) {
-    return NULL;
-  }
   clear_has_versionqualifier();
-  return versionqualifier_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (versionqualifier_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = versionqualifier_;
+    versionqualifier_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void RpcEndpointInfos::set_allocated_versionqualifier(::std::string* versionqualifier) {
-  if (versionqualifier != NULL) {
+  if (versionqualifier_ != &::google::protobuf::internal::kEmptyString) {
+    delete versionqualifier_;
+  }
+  if (versionqualifier) {
     set_has_versionqualifier();
+    versionqualifier_ = versionqualifier;
   } else {
     clear_has_versionqualifier();
+    versionqualifier_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  versionqualifier_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), versionqualifier);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.RpcEndpointInfos.versionQualifier)
 }
 
 // -------------------------------------------------------------------
@@ -6789,187 +5417,145 @@
 
 // optional .exec.shared.RpcChannel channel = 1 [default = USER];
 inline bool UserToBitHandshake::has_channel() const {
-  return (_has_bits_[0] & 0x00000100u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void UserToBitHandshake::set_has_channel() {
-  _has_bits_[0] |= 0x00000100u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void UserToBitHandshake::clear_has_channel() {
-  _has_bits_[0] &= ~0x00000100u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void UserToBitHandshake::clear_channel() {
   channel_ = 2;
   clear_has_channel();
 }
 inline ::exec::shared::RpcChannel UserToBitHandshake::channel() const {
-  // @@protoc_insertion_point(field_get:exec.user.UserToBitHandshake.channel)
   return static_cast< ::exec::shared::RpcChannel >(channel_);
 }
 inline void UserToBitHandshake::set_channel(::exec::shared::RpcChannel value) {
   assert(::exec::shared::RpcChannel_IsValid(value));
   set_has_channel();
   channel_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.UserToBitHandshake.channel)
 }
 
 // optional bool support_listening = 2;
 inline bool UserToBitHandshake::has_support_listening() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void UserToBitHandshake::set_has_support_listening() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void UserToBitHandshake::clear_has_support_listening() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void UserToBitHandshake::clear_support_listening() {
   support_listening_ = false;
   clear_has_support_listening();
 }
 inline bool UserToBitHandshake::support_listening() const {
-  // @@protoc_insertion_point(field_get:exec.user.UserToBitHandshake.support_listening)
   return support_listening_;
 }
 inline void UserToBitHandshake::set_support_listening(bool value) {
   set_has_support_listening();
   support_listening_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.UserToBitHandshake.support_listening)
 }
 
 // optional int32 rpc_version = 3;
 inline bool UserToBitHandshake::has_rpc_version() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void UserToBitHandshake::set_has_rpc_version() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void UserToBitHandshake::clear_has_rpc_version() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void UserToBitHandshake::clear_rpc_version() {
   rpc_version_ = 0;
   clear_has_rpc_version();
 }
 inline ::google::protobuf::int32 UserToBitHandshake::rpc_version() const {
-  // @@protoc_insertion_point(field_get:exec.user.UserToBitHandshake.rpc_version)
   return rpc_version_;
 }
 inline void UserToBitHandshake::set_rpc_version(::google::protobuf::int32 value) {
   set_has_rpc_version();
   rpc_version_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.UserToBitHandshake.rpc_version)
 }
 
 // optional .exec.shared.UserCredentials credentials = 4;
 inline bool UserToBitHandshake::has_credentials() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void UserToBitHandshake::set_has_credentials() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void UserToBitHandshake::clear_has_credentials() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000008u;
 }
-inline const ::exec::shared::UserCredentials& UserToBitHandshake::_internal_credentials() const {
-  return *credentials_;
+inline void UserToBitHandshake::clear_credentials() {
+  if (credentials_ != NULL) credentials_->::exec::shared::UserCredentials::Clear();
+  clear_has_credentials();
 }
 inline const ::exec::shared::UserCredentials& UserToBitHandshake::credentials() const {
-  const ::exec::shared::UserCredentials* p = credentials_;
-  // @@protoc_insertion_point(field_get:exec.user.UserToBitHandshake.credentials)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::UserCredentials*>(
-      &::exec::shared::_UserCredentials_default_instance_);
+  return credentials_ != NULL ? *credentials_ : *default_instance_->credentials_;
+}
+inline ::exec::shared::UserCredentials* UserToBitHandshake::mutable_credentials() {
+  set_has_credentials();
+  if (credentials_ == NULL) credentials_ = new ::exec::shared::UserCredentials;
+  return credentials_;
 }
 inline ::exec::shared::UserCredentials* UserToBitHandshake::release_credentials() {
-  // @@protoc_insertion_point(field_release:exec.user.UserToBitHandshake.credentials)
   clear_has_credentials();
   ::exec::shared::UserCredentials* temp = credentials_;
   credentials_ = NULL;
   return temp;
 }
-inline ::exec::shared::UserCredentials* UserToBitHandshake::mutable_credentials() {
-  set_has_credentials();
-  if (credentials_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::UserCredentials>(GetArenaNoVirtual());
-    credentials_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.UserToBitHandshake.credentials)
-  return credentials_;
-}
 inline void UserToBitHandshake::set_allocated_credentials(::exec::shared::UserCredentials* credentials) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(credentials_);
-  }
+  delete credentials_;
+  credentials_ = credentials;
   if (credentials) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      credentials = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, credentials, submessage_arena);
-    }
     set_has_credentials();
   } else {
     clear_has_credentials();
   }
-  credentials_ = credentials;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.UserToBitHandshake.credentials)
 }
 
 // optional .exec.user.UserProperties properties = 5;
 inline bool UserToBitHandshake::has_properties() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void UserToBitHandshake::set_has_properties() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void UserToBitHandshake::clear_has_properties() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void UserToBitHandshake::clear_properties() {
-  if (properties_ != NULL) properties_->Clear();
+  if (properties_ != NULL) properties_->::exec::user::UserProperties::Clear();
   clear_has_properties();
 }
-inline const ::exec::user::UserProperties& UserToBitHandshake::_internal_properties() const {
-  return *properties_;
-}
 inline const ::exec::user::UserProperties& UserToBitHandshake::properties() const {
-  const ::exec::user::UserProperties* p = properties_;
-  // @@protoc_insertion_point(field_get:exec.user.UserToBitHandshake.properties)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::UserProperties*>(
-      &::exec::user::_UserProperties_default_instance_);
+  return properties_ != NULL ? *properties_ : *default_instance_->properties_;
+}
+inline ::exec::user::UserProperties* UserToBitHandshake::mutable_properties() {
+  set_has_properties();
+  if (properties_ == NULL) properties_ = new ::exec::user::UserProperties;
+  return properties_;
 }
 inline ::exec::user::UserProperties* UserToBitHandshake::release_properties() {
-  // @@protoc_insertion_point(field_release:exec.user.UserToBitHandshake.properties)
   clear_has_properties();
   ::exec::user::UserProperties* temp = properties_;
   properties_ = NULL;
   return temp;
 }
-inline ::exec::user::UserProperties* UserToBitHandshake::mutable_properties() {
-  set_has_properties();
-  if (properties_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::UserProperties>(GetArenaNoVirtual());
-    properties_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.UserToBitHandshake.properties)
-  return properties_;
-}
 inline void UserToBitHandshake::set_allocated_properties(::exec::user::UserProperties* properties) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete properties_;
-  }
+  delete properties_;
+  properties_ = properties;
   if (properties) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      properties = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, properties, submessage_arena);
-    }
     set_has_properties();
   } else {
     clear_has_properties();
   }
-  properties_ = properties;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.UserToBitHandshake.properties)
 }
 
 // optional bool support_complex_types = 6 [default = false];
@@ -6987,13 +5573,11 @@
   clear_has_support_complex_types();
 }
 inline bool UserToBitHandshake::support_complex_types() const {
-  // @@protoc_insertion_point(field_get:exec.user.UserToBitHandshake.support_complex_types)
   return support_complex_types_;
 }
 inline void UserToBitHandshake::set_support_complex_types(bool value) {
   set_has_support_complex_types();
   support_complex_types_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.UserToBitHandshake.support_complex_types)
 }
 
 // optional bool support_timeout = 7 [default = false];
@@ -7011,96 +5595,72 @@
   clear_has_support_timeout();
 }
 inline bool UserToBitHandshake::support_timeout() const {
-  // @@protoc_insertion_point(field_get:exec.user.UserToBitHandshake.support_timeout)
   return support_timeout_;
 }
 inline void UserToBitHandshake::set_support_timeout(bool value) {
   set_has_support_timeout();
   support_timeout_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.UserToBitHandshake.support_timeout)
 }
 
 // optional .exec.user.RpcEndpointInfos client_infos = 8;
 inline bool UserToBitHandshake::has_client_infos() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000080u) != 0;
 }
 inline void UserToBitHandshake::set_has_client_infos() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000080u;
 }
 inline void UserToBitHandshake::clear_has_client_infos() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000080u;
 }
 inline void UserToBitHandshake::clear_client_infos() {
-  if (client_infos_ != NULL) client_infos_->Clear();
+  if (client_infos_ != NULL) client_infos_->::exec::user::RpcEndpointInfos::Clear();
   clear_has_client_infos();
 }
-inline const ::exec::user::RpcEndpointInfos& UserToBitHandshake::_internal_client_infos() const {
-  return *client_infos_;
-}
 inline const ::exec::user::RpcEndpointInfos& UserToBitHandshake::client_infos() const {
-  const ::exec::user::RpcEndpointInfos* p = client_infos_;
-  // @@protoc_insertion_point(field_get:exec.user.UserToBitHandshake.client_infos)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::RpcEndpointInfos*>(
-      &::exec::user::_RpcEndpointInfos_default_instance_);
+  return client_infos_ != NULL ? *client_infos_ : *default_instance_->client_infos_;
+}
+inline ::exec::user::RpcEndpointInfos* UserToBitHandshake::mutable_client_infos() {
+  set_has_client_infos();
+  if (client_infos_ == NULL) client_infos_ = new ::exec::user::RpcEndpointInfos;
+  return client_infos_;
 }
 inline ::exec::user::RpcEndpointInfos* UserToBitHandshake::release_client_infos() {
-  // @@protoc_insertion_point(field_release:exec.user.UserToBitHandshake.client_infos)
   clear_has_client_infos();
   ::exec::user::RpcEndpointInfos* temp = client_infos_;
   client_infos_ = NULL;
   return temp;
 }
-inline ::exec::user::RpcEndpointInfos* UserToBitHandshake::mutable_client_infos() {
-  set_has_client_infos();
-  if (client_infos_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::RpcEndpointInfos>(GetArenaNoVirtual());
-    client_infos_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.UserToBitHandshake.client_infos)
-  return client_infos_;
-}
 inline void UserToBitHandshake::set_allocated_client_infos(::exec::user::RpcEndpointInfos* client_infos) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete client_infos_;
-  }
+  delete client_infos_;
+  client_infos_ = client_infos;
   if (client_infos) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      client_infos = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, client_infos, submessage_arena);
-    }
     set_has_client_infos();
   } else {
     clear_has_client_infos();
   }
-  client_infos_ = client_infos;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.UserToBitHandshake.client_infos)
 }
 
 // optional .exec.user.SaslSupport sasl_support = 9;
 inline bool UserToBitHandshake::has_sasl_support() const {
-  return (_has_bits_[0] & 0x00000080u) != 0;
+  return (_has_bits_[0] & 0x00000100u) != 0;
 }
 inline void UserToBitHandshake::set_has_sasl_support() {
-  _has_bits_[0] |= 0x00000080u;
+  _has_bits_[0] |= 0x00000100u;
 }
 inline void UserToBitHandshake::clear_has_sasl_support() {
-  _has_bits_[0] &= ~0x00000080u;
+  _has_bits_[0] &= ~0x00000100u;
 }
 inline void UserToBitHandshake::clear_sasl_support() {
   sasl_support_ = 0;
   clear_has_sasl_support();
 }
 inline ::exec::user::SaslSupport UserToBitHandshake::sasl_support() const {
-  // @@protoc_insertion_point(field_get:exec.user.UserToBitHandshake.sasl_support)
   return static_cast< ::exec::user::SaslSupport >(sasl_support_);
 }
 inline void UserToBitHandshake::set_sasl_support(::exec::user::SaslSupport value) {
   assert(::exec::user::SaslSupport_IsValid(value));
   set_has_sasl_support();
   sasl_support_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.UserToBitHandshake.sasl_support)
 }
 
 // -------------------------------------------------------------------
@@ -7117,48 +5677,32 @@
 inline void RequestResults::clear_has_query_id() {
   _has_bits_[0] &= ~0x00000001u;
 }
-inline const ::exec::shared::QueryId& RequestResults::_internal_query_id() const {
-  return *query_id_;
+inline void RequestResults::clear_query_id() {
+  if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
+  clear_has_query_id();
 }
 inline const ::exec::shared::QueryId& RequestResults::query_id() const {
-  const ::exec::shared::QueryId* p = query_id_;
-  // @@protoc_insertion_point(field_get:exec.user.RequestResults.query_id)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::QueryId*>(
-      &::exec::shared::_QueryId_default_instance_);
+  return query_id_ != NULL ? *query_id_ : *default_instance_->query_id_;
+}
+inline ::exec::shared::QueryId* RequestResults::mutable_query_id() {
+  set_has_query_id();
+  if (query_id_ == NULL) query_id_ = new ::exec::shared::QueryId;
+  return query_id_;
 }
 inline ::exec::shared::QueryId* RequestResults::release_query_id() {
-  // @@protoc_insertion_point(field_release:exec.user.RequestResults.query_id)
   clear_has_query_id();
   ::exec::shared::QueryId* temp = query_id_;
   query_id_ = NULL;
   return temp;
 }
-inline ::exec::shared::QueryId* RequestResults::mutable_query_id() {
-  set_has_query_id();
-  if (query_id_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::QueryId>(GetArenaNoVirtual());
-    query_id_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.RequestResults.query_id)
-  return query_id_;
-}
 inline void RequestResults::set_allocated_query_id(::exec::shared::QueryId* query_id) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(query_id_);
-  }
+  delete query_id_;
+  query_id_ = query_id;
   if (query_id) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      query_id = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, query_id, submessage_arena);
-    }
     set_has_query_id();
   } else {
     clear_has_query_id();
   }
-  query_id_ = query_id;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.RequestResults.query_id)
 }
 
 // optional int32 maximum_responses = 2;
@@ -7176,13 +5720,11 @@
   clear_has_maximum_responses();
 }
 inline ::google::protobuf::int32 RequestResults::maximum_responses() const {
-  // @@protoc_insertion_point(field_get:exec.user.RequestResults.maximum_responses)
   return maximum_responses_;
 }
 inline void RequestResults::set_maximum_responses(::google::protobuf::int32 value) {
   set_has_maximum_responses();
   maximum_responses_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.RequestResults.maximum_responses)
 }
 
 // -------------------------------------------------------------------
@@ -7200,108 +5742,108 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetQueryPlanFragments::clear_query() {
-  query_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ != &::google::protobuf::internal::kEmptyString) {
+    query_->clear();
+  }
   clear_has_query();
 }
 inline const ::std::string& GetQueryPlanFragments::query() const {
-  // @@protoc_insertion_point(field_get:exec.user.GetQueryPlanFragments.query)
-  return query_.GetNoArena();
+  return *query_;
 }
 inline void GetQueryPlanFragments::set_query(const ::std::string& value) {
   set_has_query();
-  query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.GetQueryPlanFragments.query)
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  query_->assign(value);
 }
-#if LANG_CXX11
-inline void GetQueryPlanFragments::set_query(::std::string&& value) {
-  set_has_query();
-  query_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.GetQueryPlanFragments.query)
-}
-#endif
 inline void GetQueryPlanFragments::set_query(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_query();
-  query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.GetQueryPlanFragments.query)
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  query_->assign(value);
 }
 inline void GetQueryPlanFragments::set_query(const char* value, size_t size) {
   set_has_query();
-  query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.GetQueryPlanFragments.query)
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  query_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* GetQueryPlanFragments::mutable_query() {
   set_has_query();
-  // @@protoc_insertion_point(field_mutable:exec.user.GetQueryPlanFragments.query)
-  return query_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  return query_;
 }
 inline ::std::string* GetQueryPlanFragments::release_query() {
-  // @@protoc_insertion_point(field_release:exec.user.GetQueryPlanFragments.query)
-  if (!has_query()) {
-    return NULL;
-  }
   clear_has_query();
-  return query_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = query_;
+    query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void GetQueryPlanFragments::set_allocated_query(::std::string* query) {
-  if (query != NULL) {
+  if (query_ != &::google::protobuf::internal::kEmptyString) {
+    delete query_;
+  }
+  if (query) {
     set_has_query();
+    query_ = query;
   } else {
     clear_has_query();
+    query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  query_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), query);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetQueryPlanFragments.query)
 }
 
 // optional .exec.shared.QueryType type = 2;
 inline bool GetQueryPlanFragments::has_type() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void GetQueryPlanFragments::set_has_type() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void GetQueryPlanFragments::clear_has_type() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void GetQueryPlanFragments::clear_type() {
   type_ = 1;
   clear_has_type();
 }
 inline ::exec::shared::QueryType GetQueryPlanFragments::type() const {
-  // @@protoc_insertion_point(field_get:exec.user.GetQueryPlanFragments.type)
   return static_cast< ::exec::shared::QueryType >(type_);
 }
 inline void GetQueryPlanFragments::set_type(::exec::shared::QueryType value) {
   assert(::exec::shared::QueryType_IsValid(value));
   set_has_type();
   type_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.GetQueryPlanFragments.type)
 }
 
 // optional bool split_plan = 3 [default = false];
 inline bool GetQueryPlanFragments::has_split_plan() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void GetQueryPlanFragments::set_has_split_plan() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void GetQueryPlanFragments::clear_has_split_plan() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void GetQueryPlanFragments::clear_split_plan() {
   split_plan_ = false;
   clear_has_split_plan();
 }
 inline bool GetQueryPlanFragments::split_plan() const {
-  // @@protoc_insertion_point(field_get:exec.user.GetQueryPlanFragments.split_plan)
   return split_plan_;
 }
 inline void GetQueryPlanFragments::set_split_plan(bool value) {
   set_has_split_plan();
   split_plan_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.GetQueryPlanFragments.split_plan)
 }
 
 // -------------------------------------------------------------------
@@ -7310,162 +5852,126 @@
 
 // required .exec.shared.QueryResult.QueryState status = 1;
 inline bool QueryPlanFragments::has_status() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void QueryPlanFragments::set_has_status() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void QueryPlanFragments::clear_has_status() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void QueryPlanFragments::clear_status() {
   status_ = 0;
   clear_has_status();
 }
 inline ::exec::shared::QueryResult_QueryState QueryPlanFragments::status() const {
-  // @@protoc_insertion_point(field_get:exec.user.QueryPlanFragments.status)
   return static_cast< ::exec::shared::QueryResult_QueryState >(status_);
 }
 inline void QueryPlanFragments::set_status(::exec::shared::QueryResult_QueryState value) {
   assert(::exec::shared::QueryResult_QueryState_IsValid(value));
   set_has_status();
   status_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.QueryPlanFragments.status)
 }
 
 // optional .exec.shared.QueryId query_id = 2;
 inline bool QueryPlanFragments::has_query_id() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void QueryPlanFragments::set_has_query_id() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void QueryPlanFragments::clear_has_query_id() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
-inline const ::exec::shared::QueryId& QueryPlanFragments::_internal_query_id() const {
-  return *query_id_;
+inline void QueryPlanFragments::clear_query_id() {
+  if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
+  clear_has_query_id();
 }
 inline const ::exec::shared::QueryId& QueryPlanFragments::query_id() const {
-  const ::exec::shared::QueryId* p = query_id_;
-  // @@protoc_insertion_point(field_get:exec.user.QueryPlanFragments.query_id)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::QueryId*>(
-      &::exec::shared::_QueryId_default_instance_);
+  return query_id_ != NULL ? *query_id_ : *default_instance_->query_id_;
+}
+inline ::exec::shared::QueryId* QueryPlanFragments::mutable_query_id() {
+  set_has_query_id();
+  if (query_id_ == NULL) query_id_ = new ::exec::shared::QueryId;
+  return query_id_;
 }
 inline ::exec::shared::QueryId* QueryPlanFragments::release_query_id() {
-  // @@protoc_insertion_point(field_release:exec.user.QueryPlanFragments.query_id)
   clear_has_query_id();
   ::exec::shared::QueryId* temp = query_id_;
   query_id_ = NULL;
   return temp;
 }
-inline ::exec::shared::QueryId* QueryPlanFragments::mutable_query_id() {
-  set_has_query_id();
-  if (query_id_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::QueryId>(GetArenaNoVirtual());
-    query_id_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.QueryPlanFragments.query_id)
-  return query_id_;
-}
 inline void QueryPlanFragments::set_allocated_query_id(::exec::shared::QueryId* query_id) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(query_id_);
-  }
+  delete query_id_;
+  query_id_ = query_id;
   if (query_id) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      query_id = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, query_id, submessage_arena);
-    }
     set_has_query_id();
   } else {
     clear_has_query_id();
   }
-  query_id_ = query_id;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.QueryPlanFragments.query_id)
 }
 
 // repeated .exec.bit.control.PlanFragment fragments = 3;
 inline int QueryPlanFragments::fragments_size() const {
   return fragments_.size();
 }
-inline ::exec::bit::control::PlanFragment* QueryPlanFragments::mutable_fragments(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.QueryPlanFragments.fragments)
-  return fragments_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
-QueryPlanFragments::mutable_fragments() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.QueryPlanFragments.fragments)
-  return &fragments_;
+inline void QueryPlanFragments::clear_fragments() {
+  fragments_.Clear();
 }
 inline const ::exec::bit::control::PlanFragment& QueryPlanFragments::fragments(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.QueryPlanFragments.fragments)
   return fragments_.Get(index);
 }
+inline ::exec::bit::control::PlanFragment* QueryPlanFragments::mutable_fragments(int index) {
+  return fragments_.Mutable(index);
+}
 inline ::exec::bit::control::PlanFragment* QueryPlanFragments::add_fragments() {
-  // @@protoc_insertion_point(field_add:exec.user.QueryPlanFragments.fragments)
   return fragments_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >&
 QueryPlanFragments::fragments() const {
-  // @@protoc_insertion_point(field_list:exec.user.QueryPlanFragments.fragments)
   return fragments_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
+QueryPlanFragments::mutable_fragments() {
+  return &fragments_;
+}
 
 // optional .exec.shared.DrillPBError error = 4;
 inline bool QueryPlanFragments::has_error() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void QueryPlanFragments::set_has_error() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void QueryPlanFragments::clear_has_error() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000008u;
 }
-inline const ::exec::shared::DrillPBError& QueryPlanFragments::_internal_error() const {
-  return *error_;
+inline void QueryPlanFragments::clear_error() {
+  if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+  clear_has_error();
 }
 inline const ::exec::shared::DrillPBError& QueryPlanFragments::error() const {
-  const ::exec::shared::DrillPBError* p = error_;
-  // @@protoc_insertion_point(field_get:exec.user.QueryPlanFragments.error)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::DrillPBError*>(
-      &::exec::shared::_DrillPBError_default_instance_);
+  return error_ != NULL ? *error_ : *default_instance_->error_;
+}
+inline ::exec::shared::DrillPBError* QueryPlanFragments::mutable_error() {
+  set_has_error();
+  if (error_ == NULL) error_ = new ::exec::shared::DrillPBError;
+  return error_;
 }
 inline ::exec::shared::DrillPBError* QueryPlanFragments::release_error() {
-  // @@protoc_insertion_point(field_release:exec.user.QueryPlanFragments.error)
   clear_has_error();
   ::exec::shared::DrillPBError* temp = error_;
   error_ = NULL;
   return temp;
 }
-inline ::exec::shared::DrillPBError* QueryPlanFragments::mutable_error() {
-  set_has_error();
-  if (error_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::DrillPBError>(GetArenaNoVirtual());
-    error_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.QueryPlanFragments.error)
-  return error_;
-}
 inline void QueryPlanFragments::set_allocated_error(::exec::shared::DrillPBError* error) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(error_);
-  }
+  delete error_;
+  error_ = error;
   if (error) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      error = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, error, submessage_arena);
-    }
     set_has_error();
   } else {
     clear_has_error();
   }
-  error_ = error;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.QueryPlanFragments.error)
 }
 
 // -------------------------------------------------------------------
@@ -7474,241 +5980,225 @@
 
 // optional int32 rpc_version = 2;
 inline bool BitToUserHandshake::has_rpc_version() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void BitToUserHandshake::set_has_rpc_version() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void BitToUserHandshake::clear_has_rpc_version() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void BitToUserHandshake::clear_rpc_version() {
   rpc_version_ = 0;
   clear_has_rpc_version();
 }
 inline ::google::protobuf::int32 BitToUserHandshake::rpc_version() const {
-  // @@protoc_insertion_point(field_get:exec.user.BitToUserHandshake.rpc_version)
   return rpc_version_;
 }
 inline void BitToUserHandshake::set_rpc_version(::google::protobuf::int32 value) {
   set_has_rpc_version();
   rpc_version_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.BitToUserHandshake.rpc_version)
 }
 
 // optional .exec.user.HandshakeStatus status = 3;
 inline bool BitToUserHandshake::has_status() const {
-  return (_has_bits_[0] & 0x00000040u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void BitToUserHandshake::set_has_status() {
-  _has_bits_[0] |= 0x00000040u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void BitToUserHandshake::clear_has_status() {
-  _has_bits_[0] &= ~0x00000040u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void BitToUserHandshake::clear_status() {
   status_ = 1;
   clear_has_status();
 }
 inline ::exec::user::HandshakeStatus BitToUserHandshake::status() const {
-  // @@protoc_insertion_point(field_get:exec.user.BitToUserHandshake.status)
   return static_cast< ::exec::user::HandshakeStatus >(status_);
 }
 inline void BitToUserHandshake::set_status(::exec::user::HandshakeStatus value) {
   assert(::exec::user::HandshakeStatus_IsValid(value));
   set_has_status();
   status_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.BitToUserHandshake.status)
 }
 
 // optional string errorId = 4;
 inline bool BitToUserHandshake::has_errorid() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void BitToUserHandshake::set_has_errorid() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void BitToUserHandshake::clear_has_errorid() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void BitToUserHandshake::clear_errorid() {
-  errorid_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (errorid_ != &::google::protobuf::internal::kEmptyString) {
+    errorid_->clear();
+  }
   clear_has_errorid();
 }
 inline const ::std::string& BitToUserHandshake::errorid() const {
-  // @@protoc_insertion_point(field_get:exec.user.BitToUserHandshake.errorId)
-  return errorid_.GetNoArena();
+  return *errorid_;
 }
 inline void BitToUserHandshake::set_errorid(const ::std::string& value) {
   set_has_errorid();
-  errorid_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.BitToUserHandshake.errorId)
+  if (errorid_ == &::google::protobuf::internal::kEmptyString) {
+    errorid_ = new ::std::string;
+  }
+  errorid_->assign(value);
 }
-#if LANG_CXX11
-inline void BitToUserHandshake::set_errorid(::std::string&& value) {
-  set_has_errorid();
-  errorid_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.BitToUserHandshake.errorId)
-}
-#endif
 inline void BitToUserHandshake::set_errorid(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_errorid();
-  errorid_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.BitToUserHandshake.errorId)
+  if (errorid_ == &::google::protobuf::internal::kEmptyString) {
+    errorid_ = new ::std::string;
+  }
+  errorid_->assign(value);
 }
 inline void BitToUserHandshake::set_errorid(const char* value, size_t size) {
   set_has_errorid();
-  errorid_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.BitToUserHandshake.errorId)
+  if (errorid_ == &::google::protobuf::internal::kEmptyString) {
+    errorid_ = new ::std::string;
+  }
+  errorid_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* BitToUserHandshake::mutable_errorid() {
   set_has_errorid();
-  // @@protoc_insertion_point(field_mutable:exec.user.BitToUserHandshake.errorId)
-  return errorid_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (errorid_ == &::google::protobuf::internal::kEmptyString) {
+    errorid_ = new ::std::string;
+  }
+  return errorid_;
 }
 inline ::std::string* BitToUserHandshake::release_errorid() {
-  // @@protoc_insertion_point(field_release:exec.user.BitToUserHandshake.errorId)
-  if (!has_errorid()) {
-    return NULL;
-  }
   clear_has_errorid();
-  return errorid_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (errorid_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = errorid_;
+    errorid_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void BitToUserHandshake::set_allocated_errorid(::std::string* errorid) {
-  if (errorid != NULL) {
+  if (errorid_ != &::google::protobuf::internal::kEmptyString) {
+    delete errorid_;
+  }
+  if (errorid) {
     set_has_errorid();
+    errorid_ = errorid;
   } else {
     clear_has_errorid();
+    errorid_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  errorid_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), errorid);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.BitToUserHandshake.errorId)
 }
 
 // optional string errorMessage = 5;
 inline bool BitToUserHandshake::has_errormessage() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void BitToUserHandshake::set_has_errormessage() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void BitToUserHandshake::clear_has_errormessage() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void BitToUserHandshake::clear_errormessage() {
-  errormessage_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (errormessage_ != &::google::protobuf::internal::kEmptyString) {
+    errormessage_->clear();
+  }
   clear_has_errormessage();
 }
 inline const ::std::string& BitToUserHandshake::errormessage() const {
-  // @@protoc_insertion_point(field_get:exec.user.BitToUserHandshake.errorMessage)
-  return errormessage_.GetNoArena();
+  return *errormessage_;
 }
 inline void BitToUserHandshake::set_errormessage(const ::std::string& value) {
   set_has_errormessage();
-  errormessage_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.BitToUserHandshake.errorMessage)
+  if (errormessage_ == &::google::protobuf::internal::kEmptyString) {
+    errormessage_ = new ::std::string;
+  }
+  errormessage_->assign(value);
 }
-#if LANG_CXX11
-inline void BitToUserHandshake::set_errormessage(::std::string&& value) {
-  set_has_errormessage();
-  errormessage_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.BitToUserHandshake.errorMessage)
-}
-#endif
 inline void BitToUserHandshake::set_errormessage(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_errormessage();
-  errormessage_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.BitToUserHandshake.errorMessage)
+  if (errormessage_ == &::google::protobuf::internal::kEmptyString) {
+    errormessage_ = new ::std::string;
+  }
+  errormessage_->assign(value);
 }
 inline void BitToUserHandshake::set_errormessage(const char* value, size_t size) {
   set_has_errormessage();
-  errormessage_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.BitToUserHandshake.errorMessage)
+  if (errormessage_ == &::google::protobuf::internal::kEmptyString) {
+    errormessage_ = new ::std::string;
+  }
+  errormessage_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* BitToUserHandshake::mutable_errormessage() {
   set_has_errormessage();
-  // @@protoc_insertion_point(field_mutable:exec.user.BitToUserHandshake.errorMessage)
-  return errormessage_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (errormessage_ == &::google::protobuf::internal::kEmptyString) {
+    errormessage_ = new ::std::string;
+  }
+  return errormessage_;
 }
 inline ::std::string* BitToUserHandshake::release_errormessage() {
-  // @@protoc_insertion_point(field_release:exec.user.BitToUserHandshake.errorMessage)
-  if (!has_errormessage()) {
-    return NULL;
-  }
   clear_has_errormessage();
-  return errormessage_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (errormessage_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = errormessage_;
+    errormessage_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void BitToUserHandshake::set_allocated_errormessage(::std::string* errormessage) {
-  if (errormessage != NULL) {
+  if (errormessage_ != &::google::protobuf::internal::kEmptyString) {
+    delete errormessage_;
+  }
+  if (errormessage) {
     set_has_errormessage();
+    errormessage_ = errormessage;
   } else {
     clear_has_errormessage();
+    errormessage_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  errormessage_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), errormessage);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.BitToUserHandshake.errorMessage)
 }
 
 // optional .exec.user.RpcEndpointInfos server_infos = 6;
 inline bool BitToUserHandshake::has_server_infos() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void BitToUserHandshake::set_has_server_infos() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void BitToUserHandshake::clear_has_server_infos() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void BitToUserHandshake::clear_server_infos() {
-  if (server_infos_ != NULL) server_infos_->Clear();
+  if (server_infos_ != NULL) server_infos_->::exec::user::RpcEndpointInfos::Clear();
   clear_has_server_infos();
 }
-inline const ::exec::user::RpcEndpointInfos& BitToUserHandshake::_internal_server_infos() const {
-  return *server_infos_;
-}
 inline const ::exec::user::RpcEndpointInfos& BitToUserHandshake::server_infos() const {
-  const ::exec::user::RpcEndpointInfos* p = server_infos_;
-  // @@protoc_insertion_point(field_get:exec.user.BitToUserHandshake.server_infos)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::RpcEndpointInfos*>(
-      &::exec::user::_RpcEndpointInfos_default_instance_);
+  return server_infos_ != NULL ? *server_infos_ : *default_instance_->server_infos_;
+}
+inline ::exec::user::RpcEndpointInfos* BitToUserHandshake::mutable_server_infos() {
+  set_has_server_infos();
+  if (server_infos_ == NULL) server_infos_ = new ::exec::user::RpcEndpointInfos;
+  return server_infos_;
 }
 inline ::exec::user::RpcEndpointInfos* BitToUserHandshake::release_server_infos() {
-  // @@protoc_insertion_point(field_release:exec.user.BitToUserHandshake.server_infos)
   clear_has_server_infos();
   ::exec::user::RpcEndpointInfos* temp = server_infos_;
   server_infos_ = NULL;
   return temp;
 }
-inline ::exec::user::RpcEndpointInfos* BitToUserHandshake::mutable_server_infos() {
-  set_has_server_infos();
-  if (server_infos_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::RpcEndpointInfos>(GetArenaNoVirtual());
-    server_infos_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.BitToUserHandshake.server_infos)
-  return server_infos_;
-}
 inline void BitToUserHandshake::set_allocated_server_infos(::exec::user::RpcEndpointInfos* server_infos) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete server_infos_;
-  }
+  delete server_infos_;
+  server_infos_ = server_infos;
   if (server_infos) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      server_infos = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, server_infos, submessage_arena);
-    }
     set_has_server_infos();
   } else {
     clear_has_server_infos();
   }
-  server_infos_ = server_infos;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.BitToUserHandshake.server_infos)
 }
 
 // repeated string authenticationMechanisms = 7;
@@ -7719,64 +6209,39 @@
   authenticationmechanisms_.Clear();
 }
 inline const ::std::string& BitToUserHandshake::authenticationmechanisms(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.BitToUserHandshake.authenticationMechanisms)
   return authenticationmechanisms_.Get(index);
 }
 inline ::std::string* BitToUserHandshake::mutable_authenticationmechanisms(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.BitToUserHandshake.authenticationMechanisms)
   return authenticationmechanisms_.Mutable(index);
 }
 inline void BitToUserHandshake::set_authenticationmechanisms(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.user.BitToUserHandshake.authenticationMechanisms)
   authenticationmechanisms_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void BitToUserHandshake::set_authenticationmechanisms(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.user.BitToUserHandshake.authenticationMechanisms)
-  authenticationmechanisms_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void BitToUserHandshake::set_authenticationmechanisms(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   authenticationmechanisms_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.user.BitToUserHandshake.authenticationMechanisms)
 }
 inline void BitToUserHandshake::set_authenticationmechanisms(int index, const char* value, size_t size) {
   authenticationmechanisms_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.user.BitToUserHandshake.authenticationMechanisms)
 }
 inline ::std::string* BitToUserHandshake::add_authenticationmechanisms() {
-  // @@protoc_insertion_point(field_add_mutable:exec.user.BitToUserHandshake.authenticationMechanisms)
   return authenticationmechanisms_.Add();
 }
 inline void BitToUserHandshake::add_authenticationmechanisms(const ::std::string& value) {
   authenticationmechanisms_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.user.BitToUserHandshake.authenticationMechanisms)
 }
-#if LANG_CXX11
-inline void BitToUserHandshake::add_authenticationmechanisms(::std::string&& value) {
-  authenticationmechanisms_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.user.BitToUserHandshake.authenticationMechanisms)
-}
-#endif
 inline void BitToUserHandshake::add_authenticationmechanisms(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   authenticationmechanisms_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.user.BitToUserHandshake.authenticationMechanisms)
 }
 inline void BitToUserHandshake::add_authenticationmechanisms(const char* value, size_t size) {
   authenticationmechanisms_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.user.BitToUserHandshake.authenticationMechanisms)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 BitToUserHandshake::authenticationmechanisms() const {
-  // @@protoc_insertion_point(field_list:exec.user.BitToUserHandshake.authenticationMechanisms)
   return authenticationmechanisms_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 BitToUserHandshake::mutable_authenticationmechanisms() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.BitToUserHandshake.authenticationMechanisms)
   return &authenticationmechanisms_;
 }
 
@@ -7788,76 +6253,67 @@
   supported_methods_.Clear();
 }
 inline ::exec::user::RpcType BitToUserHandshake::supported_methods(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.BitToUserHandshake.supported_methods)
   return static_cast< ::exec::user::RpcType >(supported_methods_.Get(index));
 }
 inline void BitToUserHandshake::set_supported_methods(int index, ::exec::user::RpcType value) {
   assert(::exec::user::RpcType_IsValid(value));
   supported_methods_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.user.BitToUserHandshake.supported_methods)
 }
 inline void BitToUserHandshake::add_supported_methods(::exec::user::RpcType value) {
   assert(::exec::user::RpcType_IsValid(value));
   supported_methods_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.user.BitToUserHandshake.supported_methods)
 }
 inline const ::google::protobuf::RepeatedField<int>&
 BitToUserHandshake::supported_methods() const {
-  // @@protoc_insertion_point(field_list:exec.user.BitToUserHandshake.supported_methods)
   return supported_methods_;
 }
 inline ::google::protobuf::RepeatedField<int>*
 BitToUserHandshake::mutable_supported_methods() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.BitToUserHandshake.supported_methods)
   return &supported_methods_;
 }
 
 // optional bool encrypted = 9;
 inline bool BitToUserHandshake::has_encrypted() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000080u) != 0;
 }
 inline void BitToUserHandshake::set_has_encrypted() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000080u;
 }
 inline void BitToUserHandshake::clear_has_encrypted() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000080u;
 }
 inline void BitToUserHandshake::clear_encrypted() {
   encrypted_ = false;
   clear_has_encrypted();
 }
 inline bool BitToUserHandshake::encrypted() const {
-  // @@protoc_insertion_point(field_get:exec.user.BitToUserHandshake.encrypted)
   return encrypted_;
 }
 inline void BitToUserHandshake::set_encrypted(bool value) {
   set_has_encrypted();
   encrypted_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.BitToUserHandshake.encrypted)
 }
 
 // optional int32 maxWrappedSize = 10;
 inline bool BitToUserHandshake::has_maxwrappedsize() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000100u) != 0;
 }
 inline void BitToUserHandshake::set_has_maxwrappedsize() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000100u;
 }
 inline void BitToUserHandshake::clear_has_maxwrappedsize() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000100u;
 }
 inline void BitToUserHandshake::clear_maxwrappedsize() {
   maxwrappedsize_ = 0;
   clear_has_maxwrappedsize();
 }
 inline ::google::protobuf::int32 BitToUserHandshake::maxwrappedsize() const {
-  // @@protoc_insertion_point(field_get:exec.user.BitToUserHandshake.maxWrappedSize)
   return maxwrappedsize_;
 }
 inline void BitToUserHandshake::set_maxwrappedsize(::google::protobuf::int32 value) {
   set_has_maxwrappedsize();
   maxwrappedsize_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.BitToUserHandshake.maxWrappedSize)
 }
 
 // -------------------------------------------------------------------
@@ -7875,59 +6331,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void LikeFilter::clear_pattern() {
-  pattern_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (pattern_ != &::google::protobuf::internal::kEmptyString) {
+    pattern_->clear();
+  }
   clear_has_pattern();
 }
 inline const ::std::string& LikeFilter::pattern() const {
-  // @@protoc_insertion_point(field_get:exec.user.LikeFilter.pattern)
-  return pattern_.GetNoArena();
+  return *pattern_;
 }
 inline void LikeFilter::set_pattern(const ::std::string& value) {
   set_has_pattern();
-  pattern_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.LikeFilter.pattern)
+  if (pattern_ == &::google::protobuf::internal::kEmptyString) {
+    pattern_ = new ::std::string;
+  }
+  pattern_->assign(value);
 }
-#if LANG_CXX11
-inline void LikeFilter::set_pattern(::std::string&& value) {
-  set_has_pattern();
-  pattern_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.LikeFilter.pattern)
-}
-#endif
 inline void LikeFilter::set_pattern(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_pattern();
-  pattern_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.LikeFilter.pattern)
+  if (pattern_ == &::google::protobuf::internal::kEmptyString) {
+    pattern_ = new ::std::string;
+  }
+  pattern_->assign(value);
 }
 inline void LikeFilter::set_pattern(const char* value, size_t size) {
   set_has_pattern();
-  pattern_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.LikeFilter.pattern)
+  if (pattern_ == &::google::protobuf::internal::kEmptyString) {
+    pattern_ = new ::std::string;
+  }
+  pattern_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* LikeFilter::mutable_pattern() {
   set_has_pattern();
-  // @@protoc_insertion_point(field_mutable:exec.user.LikeFilter.pattern)
-  return pattern_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (pattern_ == &::google::protobuf::internal::kEmptyString) {
+    pattern_ = new ::std::string;
+  }
+  return pattern_;
 }
 inline ::std::string* LikeFilter::release_pattern() {
-  // @@protoc_insertion_point(field_release:exec.user.LikeFilter.pattern)
-  if (!has_pattern()) {
-    return NULL;
-  }
   clear_has_pattern();
-  return pattern_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (pattern_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = pattern_;
+    pattern_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void LikeFilter::set_allocated_pattern(::std::string* pattern) {
-  if (pattern != NULL) {
+  if (pattern_ != &::google::protobuf::internal::kEmptyString) {
+    delete pattern_;
+  }
+  if (pattern) {
     set_has_pattern();
+    pattern_ = pattern;
   } else {
     clear_has_pattern();
+    pattern_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  pattern_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), pattern);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.LikeFilter.pattern)
 }
 
 // optional string escape = 2;
@@ -7941,59 +6401,63 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void LikeFilter::clear_escape() {
-  escape_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (escape_ != &::google::protobuf::internal::kEmptyString) {
+    escape_->clear();
+  }
   clear_has_escape();
 }
 inline const ::std::string& LikeFilter::escape() const {
-  // @@protoc_insertion_point(field_get:exec.user.LikeFilter.escape)
-  return escape_.GetNoArena();
+  return *escape_;
 }
 inline void LikeFilter::set_escape(const ::std::string& value) {
   set_has_escape();
-  escape_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.LikeFilter.escape)
+  if (escape_ == &::google::protobuf::internal::kEmptyString) {
+    escape_ = new ::std::string;
+  }
+  escape_->assign(value);
 }
-#if LANG_CXX11
-inline void LikeFilter::set_escape(::std::string&& value) {
-  set_has_escape();
-  escape_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.LikeFilter.escape)
-}
-#endif
 inline void LikeFilter::set_escape(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_escape();
-  escape_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.LikeFilter.escape)
+  if (escape_ == &::google::protobuf::internal::kEmptyString) {
+    escape_ = new ::std::string;
+  }
+  escape_->assign(value);
 }
 inline void LikeFilter::set_escape(const char* value, size_t size) {
   set_has_escape();
-  escape_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.LikeFilter.escape)
+  if (escape_ == &::google::protobuf::internal::kEmptyString) {
+    escape_ = new ::std::string;
+  }
+  escape_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* LikeFilter::mutable_escape() {
   set_has_escape();
-  // @@protoc_insertion_point(field_mutable:exec.user.LikeFilter.escape)
-  return escape_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (escape_ == &::google::protobuf::internal::kEmptyString) {
+    escape_ = new ::std::string;
+  }
+  return escape_;
 }
 inline ::std::string* LikeFilter::release_escape() {
-  // @@protoc_insertion_point(field_release:exec.user.LikeFilter.escape)
-  if (!has_escape()) {
-    return NULL;
-  }
   clear_has_escape();
-  return escape_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (escape_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = escape_;
+    escape_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void LikeFilter::set_allocated_escape(::std::string* escape) {
-  if (escape != NULL) {
+  if (escape_ != &::google::protobuf::internal::kEmptyString) {
+    delete escape_;
+  }
+  if (escape) {
     set_has_escape();
+    escape_ = escape;
   } else {
     clear_has_escape();
+    escape_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  escape_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), escape);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.LikeFilter.escape)
 }
 
 // -------------------------------------------------------------------
@@ -8011,51 +6475,31 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetCatalogsReq::clear_catalog_name_filter() {
-  if (catalog_name_filter_ != NULL) catalog_name_filter_->Clear();
+  if (catalog_name_filter_ != NULL) catalog_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_catalog_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetCatalogsReq::_internal_catalog_name_filter() const {
-  return *catalog_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetCatalogsReq::catalog_name_filter() const {
-  const ::exec::user::LikeFilter* p = catalog_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetCatalogsReq.catalog_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return catalog_name_filter_ != NULL ? *catalog_name_filter_ : *default_instance_->catalog_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetCatalogsReq::mutable_catalog_name_filter() {
+  set_has_catalog_name_filter();
+  if (catalog_name_filter_ == NULL) catalog_name_filter_ = new ::exec::user::LikeFilter;
+  return catalog_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetCatalogsReq::release_catalog_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetCatalogsReq.catalog_name_filter)
   clear_has_catalog_name_filter();
   ::exec::user::LikeFilter* temp = catalog_name_filter_;
   catalog_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetCatalogsReq::mutable_catalog_name_filter() {
-  set_has_catalog_name_filter();
-  if (catalog_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    catalog_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetCatalogsReq.catalog_name_filter)
-  return catalog_name_filter_;
-}
 inline void GetCatalogsReq::set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete catalog_name_filter_;
-  }
+  delete catalog_name_filter_;
+  catalog_name_filter_ = catalog_name_filter;
   if (catalog_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      catalog_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, catalog_name_filter, submessage_arena);
-    }
     set_has_catalog_name_filter();
   } else {
     clear_has_catalog_name_filter();
   }
-  catalog_name_filter_ = catalog_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetCatalogsReq.catalog_name_filter)
 }
 
 // -------------------------------------------------------------------
@@ -8073,59 +6517,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void CatalogMetadata::clear_catalog_name() {
-  catalog_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    catalog_name_->clear();
+  }
   clear_has_catalog_name();
 }
 inline const ::std::string& CatalogMetadata::catalog_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.CatalogMetadata.catalog_name)
-  return catalog_name_.GetNoArena();
+  return *catalog_name_;
 }
 inline void CatalogMetadata::set_catalog_name(const ::std::string& value) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.CatalogMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
-#if LANG_CXX11
-inline void CatalogMetadata::set_catalog_name(::std::string&& value) {
-  set_has_catalog_name();
-  catalog_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.CatalogMetadata.catalog_name)
-}
-#endif
 inline void CatalogMetadata::set_catalog_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.CatalogMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
 inline void CatalogMetadata::set_catalog_name(const char* value, size_t size) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.CatalogMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* CatalogMetadata::mutable_catalog_name() {
   set_has_catalog_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.CatalogMetadata.catalog_name)
-  return catalog_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  return catalog_name_;
 }
 inline ::std::string* CatalogMetadata::release_catalog_name() {
-  // @@protoc_insertion_point(field_release:exec.user.CatalogMetadata.catalog_name)
-  if (!has_catalog_name()) {
-    return NULL;
-  }
   clear_has_catalog_name();
-  return catalog_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = catalog_name_;
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void CatalogMetadata::set_allocated_catalog_name(::std::string* catalog_name) {
-  if (catalog_name != NULL) {
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (catalog_name) {
     set_has_catalog_name();
+    catalog_name_ = catalog_name;
   } else {
     clear_has_catalog_name();
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  catalog_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), catalog_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.CatalogMetadata.catalog_name)
 }
 
 // optional string description = 2;
@@ -8139,59 +6587,63 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void CatalogMetadata::clear_description() {
-  description_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (description_ != &::google::protobuf::internal::kEmptyString) {
+    description_->clear();
+  }
   clear_has_description();
 }
 inline const ::std::string& CatalogMetadata::description() const {
-  // @@protoc_insertion_point(field_get:exec.user.CatalogMetadata.description)
-  return description_.GetNoArena();
+  return *description_;
 }
 inline void CatalogMetadata::set_description(const ::std::string& value) {
   set_has_description();
-  description_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.CatalogMetadata.description)
+  if (description_ == &::google::protobuf::internal::kEmptyString) {
+    description_ = new ::std::string;
+  }
+  description_->assign(value);
 }
-#if LANG_CXX11
-inline void CatalogMetadata::set_description(::std::string&& value) {
-  set_has_description();
-  description_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.CatalogMetadata.description)
-}
-#endif
 inline void CatalogMetadata::set_description(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_description();
-  description_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.CatalogMetadata.description)
+  if (description_ == &::google::protobuf::internal::kEmptyString) {
+    description_ = new ::std::string;
+  }
+  description_->assign(value);
 }
 inline void CatalogMetadata::set_description(const char* value, size_t size) {
   set_has_description();
-  description_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.CatalogMetadata.description)
+  if (description_ == &::google::protobuf::internal::kEmptyString) {
+    description_ = new ::std::string;
+  }
+  description_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* CatalogMetadata::mutable_description() {
   set_has_description();
-  // @@protoc_insertion_point(field_mutable:exec.user.CatalogMetadata.description)
-  return description_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (description_ == &::google::protobuf::internal::kEmptyString) {
+    description_ = new ::std::string;
+  }
+  return description_;
 }
 inline ::std::string* CatalogMetadata::release_description() {
-  // @@protoc_insertion_point(field_release:exec.user.CatalogMetadata.description)
-  if (!has_description()) {
-    return NULL;
-  }
   clear_has_description();
-  return description_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (description_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = description_;
+    description_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void CatalogMetadata::set_allocated_description(::std::string* description) {
-  if (description != NULL) {
+  if (description_ != &::google::protobuf::internal::kEmptyString) {
+    delete description_;
+  }
+  if (description) {
     set_has_description();
+    description_ = description;
   } else {
     clear_has_description();
+    description_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  description_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), description);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.CatalogMetadata.description)
 }
 
 // optional string connect = 3;
@@ -8205,59 +6657,63 @@
   _has_bits_[0] &= ~0x00000004u;
 }
 inline void CatalogMetadata::clear_connect() {
-  connect_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (connect_ != &::google::protobuf::internal::kEmptyString) {
+    connect_->clear();
+  }
   clear_has_connect();
 }
 inline const ::std::string& CatalogMetadata::connect() const {
-  // @@protoc_insertion_point(field_get:exec.user.CatalogMetadata.connect)
-  return connect_.GetNoArena();
+  return *connect_;
 }
 inline void CatalogMetadata::set_connect(const ::std::string& value) {
   set_has_connect();
-  connect_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.CatalogMetadata.connect)
+  if (connect_ == &::google::protobuf::internal::kEmptyString) {
+    connect_ = new ::std::string;
+  }
+  connect_->assign(value);
 }
-#if LANG_CXX11
-inline void CatalogMetadata::set_connect(::std::string&& value) {
-  set_has_connect();
-  connect_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.CatalogMetadata.connect)
-}
-#endif
 inline void CatalogMetadata::set_connect(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_connect();
-  connect_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.CatalogMetadata.connect)
+  if (connect_ == &::google::protobuf::internal::kEmptyString) {
+    connect_ = new ::std::string;
+  }
+  connect_->assign(value);
 }
 inline void CatalogMetadata::set_connect(const char* value, size_t size) {
   set_has_connect();
-  connect_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.CatalogMetadata.connect)
+  if (connect_ == &::google::protobuf::internal::kEmptyString) {
+    connect_ = new ::std::string;
+  }
+  connect_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* CatalogMetadata::mutable_connect() {
   set_has_connect();
-  // @@protoc_insertion_point(field_mutable:exec.user.CatalogMetadata.connect)
-  return connect_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (connect_ == &::google::protobuf::internal::kEmptyString) {
+    connect_ = new ::std::string;
+  }
+  return connect_;
 }
 inline ::std::string* CatalogMetadata::release_connect() {
-  // @@protoc_insertion_point(field_release:exec.user.CatalogMetadata.connect)
-  if (!has_connect()) {
-    return NULL;
-  }
   clear_has_connect();
-  return connect_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (connect_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = connect_;
+    connect_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void CatalogMetadata::set_allocated_connect(::std::string* connect) {
-  if (connect != NULL) {
+  if (connect_ != &::google::protobuf::internal::kEmptyString) {
+    delete connect_;
+  }
+  if (connect) {
     set_has_connect();
+    connect_ = connect;
   } else {
     clear_has_connect();
+    connect_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  connect_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), connect);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.CatalogMetadata.connect)
 }
 
 // -------------------------------------------------------------------
@@ -8266,27 +6722,25 @@
 
 // optional .exec.user.RequestStatus status = 1;
 inline bool GetCatalogsResp::has_status() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void GetCatalogsResp::set_has_status() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void GetCatalogsResp::clear_has_status() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetCatalogsResp::clear_status() {
   status_ = 0;
   clear_has_status();
 }
 inline ::exec::user::RequestStatus GetCatalogsResp::status() const {
-  // @@protoc_insertion_point(field_get:exec.user.GetCatalogsResp.status)
   return static_cast< ::exec::user::RequestStatus >(status_);
 }
 inline void GetCatalogsResp::set_status(::exec::user::RequestStatus value) {
   assert(::exec::user::RequestStatus_IsValid(value));
   set_has_status();
   status_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.GetCatalogsResp.status)
 }
 
 // repeated .exec.user.CatalogMetadata catalogs = 2;
@@ -8296,81 +6750,60 @@
 inline void GetCatalogsResp::clear_catalogs() {
   catalogs_.Clear();
 }
-inline ::exec::user::CatalogMetadata* GetCatalogsResp::mutable_catalogs(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.GetCatalogsResp.catalogs)
-  return catalogs_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::user::CatalogMetadata >*
-GetCatalogsResp::mutable_catalogs() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.GetCatalogsResp.catalogs)
-  return &catalogs_;
-}
 inline const ::exec::user::CatalogMetadata& GetCatalogsResp::catalogs(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.GetCatalogsResp.catalogs)
   return catalogs_.Get(index);
 }
+inline ::exec::user::CatalogMetadata* GetCatalogsResp::mutable_catalogs(int index) {
+  return catalogs_.Mutable(index);
+}
 inline ::exec::user::CatalogMetadata* GetCatalogsResp::add_catalogs() {
-  // @@protoc_insertion_point(field_add:exec.user.GetCatalogsResp.catalogs)
   return catalogs_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::user::CatalogMetadata >&
 GetCatalogsResp::catalogs() const {
-  // @@protoc_insertion_point(field_list:exec.user.GetCatalogsResp.catalogs)
   return catalogs_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::user::CatalogMetadata >*
+GetCatalogsResp::mutable_catalogs() {
+  return &catalogs_;
+}
 
 // optional .exec.shared.DrillPBError error = 3;
 inline bool GetCatalogsResp::has_error() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void GetCatalogsResp::set_has_error() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void GetCatalogsResp::clear_has_error() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000004u;
 }
-inline const ::exec::shared::DrillPBError& GetCatalogsResp::_internal_error() const {
-  return *error_;
+inline void GetCatalogsResp::clear_error() {
+  if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+  clear_has_error();
 }
 inline const ::exec::shared::DrillPBError& GetCatalogsResp::error() const {
-  const ::exec::shared::DrillPBError* p = error_;
-  // @@protoc_insertion_point(field_get:exec.user.GetCatalogsResp.error)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::DrillPBError*>(
-      &::exec::shared::_DrillPBError_default_instance_);
+  return error_ != NULL ? *error_ : *default_instance_->error_;
+}
+inline ::exec::shared::DrillPBError* GetCatalogsResp::mutable_error() {
+  set_has_error();
+  if (error_ == NULL) error_ = new ::exec::shared::DrillPBError;
+  return error_;
 }
 inline ::exec::shared::DrillPBError* GetCatalogsResp::release_error() {
-  // @@protoc_insertion_point(field_release:exec.user.GetCatalogsResp.error)
   clear_has_error();
   ::exec::shared::DrillPBError* temp = error_;
   error_ = NULL;
   return temp;
 }
-inline ::exec::shared::DrillPBError* GetCatalogsResp::mutable_error() {
-  set_has_error();
-  if (error_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::DrillPBError>(GetArenaNoVirtual());
-    error_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetCatalogsResp.error)
-  return error_;
-}
 inline void GetCatalogsResp::set_allocated_error(::exec::shared::DrillPBError* error) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(error_);
-  }
+  delete error_;
+  error_ = error;
   if (error) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      error = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, error, submessage_arena);
-    }
     set_has_error();
   } else {
     clear_has_error();
   }
-  error_ = error;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetCatalogsResp.error)
 }
 
 // -------------------------------------------------------------------
@@ -8388,51 +6821,31 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetSchemasReq::clear_catalog_name_filter() {
-  if (catalog_name_filter_ != NULL) catalog_name_filter_->Clear();
+  if (catalog_name_filter_ != NULL) catalog_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_catalog_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetSchemasReq::_internal_catalog_name_filter() const {
-  return *catalog_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetSchemasReq::catalog_name_filter() const {
-  const ::exec::user::LikeFilter* p = catalog_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetSchemasReq.catalog_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return catalog_name_filter_ != NULL ? *catalog_name_filter_ : *default_instance_->catalog_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetSchemasReq::mutable_catalog_name_filter() {
+  set_has_catalog_name_filter();
+  if (catalog_name_filter_ == NULL) catalog_name_filter_ = new ::exec::user::LikeFilter;
+  return catalog_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetSchemasReq::release_catalog_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetSchemasReq.catalog_name_filter)
   clear_has_catalog_name_filter();
   ::exec::user::LikeFilter* temp = catalog_name_filter_;
   catalog_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetSchemasReq::mutable_catalog_name_filter() {
-  set_has_catalog_name_filter();
-  if (catalog_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    catalog_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetSchemasReq.catalog_name_filter)
-  return catalog_name_filter_;
-}
 inline void GetSchemasReq::set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete catalog_name_filter_;
-  }
+  delete catalog_name_filter_;
+  catalog_name_filter_ = catalog_name_filter;
   if (catalog_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      catalog_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, catalog_name_filter, submessage_arena);
-    }
     set_has_catalog_name_filter();
   } else {
     clear_has_catalog_name_filter();
   }
-  catalog_name_filter_ = catalog_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetSchemasReq.catalog_name_filter)
 }
 
 // optional .exec.user.LikeFilter schema_name_filter = 2;
@@ -8446,51 +6859,31 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void GetSchemasReq::clear_schema_name_filter() {
-  if (schema_name_filter_ != NULL) schema_name_filter_->Clear();
+  if (schema_name_filter_ != NULL) schema_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_schema_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetSchemasReq::_internal_schema_name_filter() const {
-  return *schema_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetSchemasReq::schema_name_filter() const {
-  const ::exec::user::LikeFilter* p = schema_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetSchemasReq.schema_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return schema_name_filter_ != NULL ? *schema_name_filter_ : *default_instance_->schema_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetSchemasReq::mutable_schema_name_filter() {
+  set_has_schema_name_filter();
+  if (schema_name_filter_ == NULL) schema_name_filter_ = new ::exec::user::LikeFilter;
+  return schema_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetSchemasReq::release_schema_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetSchemasReq.schema_name_filter)
   clear_has_schema_name_filter();
   ::exec::user::LikeFilter* temp = schema_name_filter_;
   schema_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetSchemasReq::mutable_schema_name_filter() {
-  set_has_schema_name_filter();
-  if (schema_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    schema_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetSchemasReq.schema_name_filter)
-  return schema_name_filter_;
-}
 inline void GetSchemasReq::set_allocated_schema_name_filter(::exec::user::LikeFilter* schema_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete schema_name_filter_;
-  }
+  delete schema_name_filter_;
+  schema_name_filter_ = schema_name_filter;
   if (schema_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      schema_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, schema_name_filter, submessage_arena);
-    }
     set_has_schema_name_filter();
   } else {
     clear_has_schema_name_filter();
   }
-  schema_name_filter_ = schema_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetSchemasReq.schema_name_filter)
 }
 
 // -------------------------------------------------------------------
@@ -8508,59 +6901,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void SchemaMetadata::clear_catalog_name() {
-  catalog_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    catalog_name_->clear();
+  }
   clear_has_catalog_name();
 }
 inline const ::std::string& SchemaMetadata::catalog_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.SchemaMetadata.catalog_name)
-  return catalog_name_.GetNoArena();
+  return *catalog_name_;
 }
 inline void SchemaMetadata::set_catalog_name(const ::std::string& value) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.SchemaMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
-#if LANG_CXX11
-inline void SchemaMetadata::set_catalog_name(::std::string&& value) {
-  set_has_catalog_name();
-  catalog_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.SchemaMetadata.catalog_name)
-}
-#endif
 inline void SchemaMetadata::set_catalog_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.SchemaMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
 inline void SchemaMetadata::set_catalog_name(const char* value, size_t size) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.SchemaMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* SchemaMetadata::mutable_catalog_name() {
   set_has_catalog_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.SchemaMetadata.catalog_name)
-  return catalog_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  return catalog_name_;
 }
 inline ::std::string* SchemaMetadata::release_catalog_name() {
-  // @@protoc_insertion_point(field_release:exec.user.SchemaMetadata.catalog_name)
-  if (!has_catalog_name()) {
-    return NULL;
-  }
   clear_has_catalog_name();
-  return catalog_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = catalog_name_;
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void SchemaMetadata::set_allocated_catalog_name(::std::string* catalog_name) {
-  if (catalog_name != NULL) {
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (catalog_name) {
     set_has_catalog_name();
+    catalog_name_ = catalog_name;
   } else {
     clear_has_catalog_name();
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  catalog_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), catalog_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.SchemaMetadata.catalog_name)
 }
 
 // optional string schema_name = 2;
@@ -8574,59 +6971,63 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void SchemaMetadata::clear_schema_name() {
-  schema_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    schema_name_->clear();
+  }
   clear_has_schema_name();
 }
 inline const ::std::string& SchemaMetadata::schema_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.SchemaMetadata.schema_name)
-  return schema_name_.GetNoArena();
+  return *schema_name_;
 }
 inline void SchemaMetadata::set_schema_name(const ::std::string& value) {
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.SchemaMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(value);
 }
-#if LANG_CXX11
-inline void SchemaMetadata::set_schema_name(::std::string&& value) {
-  set_has_schema_name();
-  schema_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.SchemaMetadata.schema_name)
-}
-#endif
 inline void SchemaMetadata::set_schema_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.SchemaMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(value);
 }
 inline void SchemaMetadata::set_schema_name(const char* value, size_t size) {
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.SchemaMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* SchemaMetadata::mutable_schema_name() {
   set_has_schema_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.SchemaMetadata.schema_name)
-  return schema_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  return schema_name_;
 }
 inline ::std::string* SchemaMetadata::release_schema_name() {
-  // @@protoc_insertion_point(field_release:exec.user.SchemaMetadata.schema_name)
-  if (!has_schema_name()) {
-    return NULL;
-  }
   clear_has_schema_name();
-  return schema_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = schema_name_;
+    schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void SchemaMetadata::set_allocated_schema_name(::std::string* schema_name) {
-  if (schema_name != NULL) {
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_name_;
+  }
+  if (schema_name) {
     set_has_schema_name();
+    schema_name_ = schema_name;
   } else {
     clear_has_schema_name();
+    schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  schema_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), schema_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.SchemaMetadata.schema_name)
 }
 
 // optional string owner = 3;
@@ -8640,59 +7041,63 @@
   _has_bits_[0] &= ~0x00000004u;
 }
 inline void SchemaMetadata::clear_owner() {
-  owner_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (owner_ != &::google::protobuf::internal::kEmptyString) {
+    owner_->clear();
+  }
   clear_has_owner();
 }
 inline const ::std::string& SchemaMetadata::owner() const {
-  // @@protoc_insertion_point(field_get:exec.user.SchemaMetadata.owner)
-  return owner_.GetNoArena();
+  return *owner_;
 }
 inline void SchemaMetadata::set_owner(const ::std::string& value) {
   set_has_owner();
-  owner_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.SchemaMetadata.owner)
+  if (owner_ == &::google::protobuf::internal::kEmptyString) {
+    owner_ = new ::std::string;
+  }
+  owner_->assign(value);
 }
-#if LANG_CXX11
-inline void SchemaMetadata::set_owner(::std::string&& value) {
-  set_has_owner();
-  owner_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.SchemaMetadata.owner)
-}
-#endif
 inline void SchemaMetadata::set_owner(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_owner();
-  owner_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.SchemaMetadata.owner)
+  if (owner_ == &::google::protobuf::internal::kEmptyString) {
+    owner_ = new ::std::string;
+  }
+  owner_->assign(value);
 }
 inline void SchemaMetadata::set_owner(const char* value, size_t size) {
   set_has_owner();
-  owner_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.SchemaMetadata.owner)
+  if (owner_ == &::google::protobuf::internal::kEmptyString) {
+    owner_ = new ::std::string;
+  }
+  owner_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* SchemaMetadata::mutable_owner() {
   set_has_owner();
-  // @@protoc_insertion_point(field_mutable:exec.user.SchemaMetadata.owner)
-  return owner_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (owner_ == &::google::protobuf::internal::kEmptyString) {
+    owner_ = new ::std::string;
+  }
+  return owner_;
 }
 inline ::std::string* SchemaMetadata::release_owner() {
-  // @@protoc_insertion_point(field_release:exec.user.SchemaMetadata.owner)
-  if (!has_owner()) {
-    return NULL;
-  }
   clear_has_owner();
-  return owner_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (owner_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = owner_;
+    owner_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void SchemaMetadata::set_allocated_owner(::std::string* owner) {
-  if (owner != NULL) {
+  if (owner_ != &::google::protobuf::internal::kEmptyString) {
+    delete owner_;
+  }
+  if (owner) {
     set_has_owner();
+    owner_ = owner;
   } else {
     clear_has_owner();
+    owner_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  owner_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), owner);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.SchemaMetadata.owner)
 }
 
 // optional string type = 4;
@@ -8706,59 +7111,63 @@
   _has_bits_[0] &= ~0x00000008u;
 }
 inline void SchemaMetadata::clear_type() {
-  type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (type_ != &::google::protobuf::internal::kEmptyString) {
+    type_->clear();
+  }
   clear_has_type();
 }
 inline const ::std::string& SchemaMetadata::type() const {
-  // @@protoc_insertion_point(field_get:exec.user.SchemaMetadata.type)
-  return type_.GetNoArena();
+  return *type_;
 }
 inline void SchemaMetadata::set_type(const ::std::string& value) {
   set_has_type();
-  type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.SchemaMetadata.type)
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    type_ = new ::std::string;
+  }
+  type_->assign(value);
 }
-#if LANG_CXX11
-inline void SchemaMetadata::set_type(::std::string&& value) {
-  set_has_type();
-  type_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.SchemaMetadata.type)
-}
-#endif
 inline void SchemaMetadata::set_type(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_type();
-  type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.SchemaMetadata.type)
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    type_ = new ::std::string;
+  }
+  type_->assign(value);
 }
 inline void SchemaMetadata::set_type(const char* value, size_t size) {
   set_has_type();
-  type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.SchemaMetadata.type)
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    type_ = new ::std::string;
+  }
+  type_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* SchemaMetadata::mutable_type() {
   set_has_type();
-  // @@protoc_insertion_point(field_mutable:exec.user.SchemaMetadata.type)
-  return type_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    type_ = new ::std::string;
+  }
+  return type_;
 }
 inline ::std::string* SchemaMetadata::release_type() {
-  // @@protoc_insertion_point(field_release:exec.user.SchemaMetadata.type)
-  if (!has_type()) {
-    return NULL;
-  }
   clear_has_type();
-  return type_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = type_;
+    type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void SchemaMetadata::set_allocated_type(::std::string* type) {
-  if (type != NULL) {
+  if (type_ != &::google::protobuf::internal::kEmptyString) {
+    delete type_;
+  }
+  if (type) {
     set_has_type();
+    type_ = type;
   } else {
     clear_has_type();
+    type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  type_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), type);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.SchemaMetadata.type)
 }
 
 // optional string mutable = 5;
@@ -8772,59 +7181,63 @@
   _has_bits_[0] &= ~0x00000010u;
 }
 inline void SchemaMetadata::clear_mutable_() {
-  mutable__.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (mutable__ != &::google::protobuf::internal::kEmptyString) {
+    mutable__->clear();
+  }
   clear_has_mutable_();
 }
 inline const ::std::string& SchemaMetadata::mutable_() const {
-  // @@protoc_insertion_point(field_get:exec.user.SchemaMetadata.mutable)
-  return mutable__.GetNoArena();
+  return *mutable__;
 }
 inline void SchemaMetadata::set_mutable_(const ::std::string& value) {
   set_has_mutable_();
-  mutable__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.SchemaMetadata.mutable)
+  if (mutable__ == &::google::protobuf::internal::kEmptyString) {
+    mutable__ = new ::std::string;
+  }
+  mutable__->assign(value);
 }
-#if LANG_CXX11
-inline void SchemaMetadata::set_mutable_(::std::string&& value) {
-  set_has_mutable_();
-  mutable__.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.SchemaMetadata.mutable)
-}
-#endif
 inline void SchemaMetadata::set_mutable_(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_mutable_();
-  mutable__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.SchemaMetadata.mutable)
+  if (mutable__ == &::google::protobuf::internal::kEmptyString) {
+    mutable__ = new ::std::string;
+  }
+  mutable__->assign(value);
 }
 inline void SchemaMetadata::set_mutable_(const char* value, size_t size) {
   set_has_mutable_();
-  mutable__.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.SchemaMetadata.mutable)
+  if (mutable__ == &::google::protobuf::internal::kEmptyString) {
+    mutable__ = new ::std::string;
+  }
+  mutable__->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* SchemaMetadata::mutable_mutable_() {
   set_has_mutable_();
-  // @@protoc_insertion_point(field_mutable:exec.user.SchemaMetadata.mutable)
-  return mutable__.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (mutable__ == &::google::protobuf::internal::kEmptyString) {
+    mutable__ = new ::std::string;
+  }
+  return mutable__;
 }
 inline ::std::string* SchemaMetadata::release_mutable_() {
-  // @@protoc_insertion_point(field_release:exec.user.SchemaMetadata.mutable)
-  if (!has_mutable_()) {
-    return NULL;
-  }
   clear_has_mutable_();
-  return mutable__.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (mutable__ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = mutable__;
+    mutable__ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void SchemaMetadata::set_allocated_mutable_(::std::string* mutable_) {
-  if (mutable_ != NULL) {
+  if (mutable__ != &::google::protobuf::internal::kEmptyString) {
+    delete mutable__;
+  }
+  if (mutable_) {
     set_has_mutable_();
+    mutable__ = mutable_;
   } else {
     clear_has_mutable_();
+    mutable__ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  mutable__.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), mutable_);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.SchemaMetadata.mutable)
 }
 
 // -------------------------------------------------------------------
@@ -8833,27 +7246,25 @@
 
 // optional .exec.user.RequestStatus status = 1;
 inline bool GetSchemasResp::has_status() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void GetSchemasResp::set_has_status() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void GetSchemasResp::clear_has_status() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetSchemasResp::clear_status() {
   status_ = 0;
   clear_has_status();
 }
 inline ::exec::user::RequestStatus GetSchemasResp::status() const {
-  // @@protoc_insertion_point(field_get:exec.user.GetSchemasResp.status)
   return static_cast< ::exec::user::RequestStatus >(status_);
 }
 inline void GetSchemasResp::set_status(::exec::user::RequestStatus value) {
   assert(::exec::user::RequestStatus_IsValid(value));
   set_has_status();
   status_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.GetSchemasResp.status)
 }
 
 // repeated .exec.user.SchemaMetadata schemas = 2;
@@ -8863,81 +7274,60 @@
 inline void GetSchemasResp::clear_schemas() {
   schemas_.Clear();
 }
-inline ::exec::user::SchemaMetadata* GetSchemasResp::mutable_schemas(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.GetSchemasResp.schemas)
-  return schemas_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::user::SchemaMetadata >*
-GetSchemasResp::mutable_schemas() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.GetSchemasResp.schemas)
-  return &schemas_;
-}
 inline const ::exec::user::SchemaMetadata& GetSchemasResp::schemas(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.GetSchemasResp.schemas)
   return schemas_.Get(index);
 }
+inline ::exec::user::SchemaMetadata* GetSchemasResp::mutable_schemas(int index) {
+  return schemas_.Mutable(index);
+}
 inline ::exec::user::SchemaMetadata* GetSchemasResp::add_schemas() {
-  // @@protoc_insertion_point(field_add:exec.user.GetSchemasResp.schemas)
   return schemas_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::user::SchemaMetadata >&
 GetSchemasResp::schemas() const {
-  // @@protoc_insertion_point(field_list:exec.user.GetSchemasResp.schemas)
   return schemas_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::user::SchemaMetadata >*
+GetSchemasResp::mutable_schemas() {
+  return &schemas_;
+}
 
 // optional .exec.shared.DrillPBError error = 3;
 inline bool GetSchemasResp::has_error() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void GetSchemasResp::set_has_error() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void GetSchemasResp::clear_has_error() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000004u;
 }
-inline const ::exec::shared::DrillPBError& GetSchemasResp::_internal_error() const {
-  return *error_;
+inline void GetSchemasResp::clear_error() {
+  if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+  clear_has_error();
 }
 inline const ::exec::shared::DrillPBError& GetSchemasResp::error() const {
-  const ::exec::shared::DrillPBError* p = error_;
-  // @@protoc_insertion_point(field_get:exec.user.GetSchemasResp.error)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::DrillPBError*>(
-      &::exec::shared::_DrillPBError_default_instance_);
+  return error_ != NULL ? *error_ : *default_instance_->error_;
+}
+inline ::exec::shared::DrillPBError* GetSchemasResp::mutable_error() {
+  set_has_error();
+  if (error_ == NULL) error_ = new ::exec::shared::DrillPBError;
+  return error_;
 }
 inline ::exec::shared::DrillPBError* GetSchemasResp::release_error() {
-  // @@protoc_insertion_point(field_release:exec.user.GetSchemasResp.error)
   clear_has_error();
   ::exec::shared::DrillPBError* temp = error_;
   error_ = NULL;
   return temp;
 }
-inline ::exec::shared::DrillPBError* GetSchemasResp::mutable_error() {
-  set_has_error();
-  if (error_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::DrillPBError>(GetArenaNoVirtual());
-    error_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetSchemasResp.error)
-  return error_;
-}
 inline void GetSchemasResp::set_allocated_error(::exec::shared::DrillPBError* error) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(error_);
-  }
+  delete error_;
+  error_ = error;
   if (error) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      error = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, error, submessage_arena);
-    }
     set_has_error();
   } else {
     clear_has_error();
   }
-  error_ = error;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetSchemasResp.error)
 }
 
 // -------------------------------------------------------------------
@@ -8955,51 +7345,31 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetTablesReq::clear_catalog_name_filter() {
-  if (catalog_name_filter_ != NULL) catalog_name_filter_->Clear();
+  if (catalog_name_filter_ != NULL) catalog_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_catalog_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetTablesReq::_internal_catalog_name_filter() const {
-  return *catalog_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetTablesReq::catalog_name_filter() const {
-  const ::exec::user::LikeFilter* p = catalog_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetTablesReq.catalog_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return catalog_name_filter_ != NULL ? *catalog_name_filter_ : *default_instance_->catalog_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetTablesReq::mutable_catalog_name_filter() {
+  set_has_catalog_name_filter();
+  if (catalog_name_filter_ == NULL) catalog_name_filter_ = new ::exec::user::LikeFilter;
+  return catalog_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetTablesReq::release_catalog_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetTablesReq.catalog_name_filter)
   clear_has_catalog_name_filter();
   ::exec::user::LikeFilter* temp = catalog_name_filter_;
   catalog_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetTablesReq::mutable_catalog_name_filter() {
-  set_has_catalog_name_filter();
-  if (catalog_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    catalog_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetTablesReq.catalog_name_filter)
-  return catalog_name_filter_;
-}
 inline void GetTablesReq::set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete catalog_name_filter_;
-  }
+  delete catalog_name_filter_;
+  catalog_name_filter_ = catalog_name_filter;
   if (catalog_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      catalog_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, catalog_name_filter, submessage_arena);
-    }
     set_has_catalog_name_filter();
   } else {
     clear_has_catalog_name_filter();
   }
-  catalog_name_filter_ = catalog_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetTablesReq.catalog_name_filter)
 }
 
 // optional .exec.user.LikeFilter schema_name_filter = 2;
@@ -9013,51 +7383,31 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void GetTablesReq::clear_schema_name_filter() {
-  if (schema_name_filter_ != NULL) schema_name_filter_->Clear();
+  if (schema_name_filter_ != NULL) schema_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_schema_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetTablesReq::_internal_schema_name_filter() const {
-  return *schema_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetTablesReq::schema_name_filter() const {
-  const ::exec::user::LikeFilter* p = schema_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetTablesReq.schema_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return schema_name_filter_ != NULL ? *schema_name_filter_ : *default_instance_->schema_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetTablesReq::mutable_schema_name_filter() {
+  set_has_schema_name_filter();
+  if (schema_name_filter_ == NULL) schema_name_filter_ = new ::exec::user::LikeFilter;
+  return schema_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetTablesReq::release_schema_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetTablesReq.schema_name_filter)
   clear_has_schema_name_filter();
   ::exec::user::LikeFilter* temp = schema_name_filter_;
   schema_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetTablesReq::mutable_schema_name_filter() {
-  set_has_schema_name_filter();
-  if (schema_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    schema_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetTablesReq.schema_name_filter)
-  return schema_name_filter_;
-}
 inline void GetTablesReq::set_allocated_schema_name_filter(::exec::user::LikeFilter* schema_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete schema_name_filter_;
-  }
+  delete schema_name_filter_;
+  schema_name_filter_ = schema_name_filter;
   if (schema_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      schema_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, schema_name_filter, submessage_arena);
-    }
     set_has_schema_name_filter();
   } else {
     clear_has_schema_name_filter();
   }
-  schema_name_filter_ = schema_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetTablesReq.schema_name_filter)
 }
 
 // optional .exec.user.LikeFilter table_name_filter = 3;
@@ -9071,51 +7421,31 @@
   _has_bits_[0] &= ~0x00000004u;
 }
 inline void GetTablesReq::clear_table_name_filter() {
-  if (table_name_filter_ != NULL) table_name_filter_->Clear();
+  if (table_name_filter_ != NULL) table_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_table_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetTablesReq::_internal_table_name_filter() const {
-  return *table_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetTablesReq::table_name_filter() const {
-  const ::exec::user::LikeFilter* p = table_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetTablesReq.table_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return table_name_filter_ != NULL ? *table_name_filter_ : *default_instance_->table_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetTablesReq::mutable_table_name_filter() {
+  set_has_table_name_filter();
+  if (table_name_filter_ == NULL) table_name_filter_ = new ::exec::user::LikeFilter;
+  return table_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetTablesReq::release_table_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetTablesReq.table_name_filter)
   clear_has_table_name_filter();
   ::exec::user::LikeFilter* temp = table_name_filter_;
   table_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetTablesReq::mutable_table_name_filter() {
-  set_has_table_name_filter();
-  if (table_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    table_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetTablesReq.table_name_filter)
-  return table_name_filter_;
-}
 inline void GetTablesReq::set_allocated_table_name_filter(::exec::user::LikeFilter* table_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete table_name_filter_;
-  }
+  delete table_name_filter_;
+  table_name_filter_ = table_name_filter;
   if (table_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      table_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, table_name_filter, submessage_arena);
-    }
     set_has_table_name_filter();
   } else {
     clear_has_table_name_filter();
   }
-  table_name_filter_ = table_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetTablesReq.table_name_filter)
 }
 
 // repeated string table_type_filter = 4;
@@ -9126,64 +7456,39 @@
   table_type_filter_.Clear();
 }
 inline const ::std::string& GetTablesReq::table_type_filter(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.GetTablesReq.table_type_filter)
   return table_type_filter_.Get(index);
 }
 inline ::std::string* GetTablesReq::mutable_table_type_filter(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.GetTablesReq.table_type_filter)
   return table_type_filter_.Mutable(index);
 }
 inline void GetTablesReq::set_table_type_filter(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.user.GetTablesReq.table_type_filter)
   table_type_filter_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void GetTablesReq::set_table_type_filter(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.user.GetTablesReq.table_type_filter)
-  table_type_filter_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void GetTablesReq::set_table_type_filter(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   table_type_filter_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.user.GetTablesReq.table_type_filter)
 }
 inline void GetTablesReq::set_table_type_filter(int index, const char* value, size_t size) {
   table_type_filter_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.user.GetTablesReq.table_type_filter)
 }
 inline ::std::string* GetTablesReq::add_table_type_filter() {
-  // @@protoc_insertion_point(field_add_mutable:exec.user.GetTablesReq.table_type_filter)
   return table_type_filter_.Add();
 }
 inline void GetTablesReq::add_table_type_filter(const ::std::string& value) {
   table_type_filter_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.user.GetTablesReq.table_type_filter)
 }
-#if LANG_CXX11
-inline void GetTablesReq::add_table_type_filter(::std::string&& value) {
-  table_type_filter_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.user.GetTablesReq.table_type_filter)
-}
-#endif
 inline void GetTablesReq::add_table_type_filter(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   table_type_filter_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.user.GetTablesReq.table_type_filter)
 }
 inline void GetTablesReq::add_table_type_filter(const char* value, size_t size) {
   table_type_filter_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.user.GetTablesReq.table_type_filter)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 GetTablesReq::table_type_filter() const {
-  // @@protoc_insertion_point(field_list:exec.user.GetTablesReq.table_type_filter)
   return table_type_filter_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 GetTablesReq::mutable_table_type_filter() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.GetTablesReq.table_type_filter)
   return &table_type_filter_;
 }
 
@@ -9202,59 +7507,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void TableMetadata::clear_catalog_name() {
-  catalog_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    catalog_name_->clear();
+  }
   clear_has_catalog_name();
 }
 inline const ::std::string& TableMetadata::catalog_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.TableMetadata.catalog_name)
-  return catalog_name_.GetNoArena();
+  return *catalog_name_;
 }
 inline void TableMetadata::set_catalog_name(const ::std::string& value) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.TableMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
-#if LANG_CXX11
-inline void TableMetadata::set_catalog_name(::std::string&& value) {
-  set_has_catalog_name();
-  catalog_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.TableMetadata.catalog_name)
-}
-#endif
 inline void TableMetadata::set_catalog_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.TableMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
 inline void TableMetadata::set_catalog_name(const char* value, size_t size) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.TableMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* TableMetadata::mutable_catalog_name() {
   set_has_catalog_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.TableMetadata.catalog_name)
-  return catalog_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  return catalog_name_;
 }
 inline ::std::string* TableMetadata::release_catalog_name() {
-  // @@protoc_insertion_point(field_release:exec.user.TableMetadata.catalog_name)
-  if (!has_catalog_name()) {
-    return NULL;
-  }
   clear_has_catalog_name();
-  return catalog_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = catalog_name_;
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void TableMetadata::set_allocated_catalog_name(::std::string* catalog_name) {
-  if (catalog_name != NULL) {
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (catalog_name) {
     set_has_catalog_name();
+    catalog_name_ = catalog_name;
   } else {
     clear_has_catalog_name();
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  catalog_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), catalog_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.TableMetadata.catalog_name)
 }
 
 // optional string schema_name = 2;
@@ -9268,59 +7577,63 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void TableMetadata::clear_schema_name() {
-  schema_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    schema_name_->clear();
+  }
   clear_has_schema_name();
 }
 inline const ::std::string& TableMetadata::schema_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.TableMetadata.schema_name)
-  return schema_name_.GetNoArena();
+  return *schema_name_;
 }
 inline void TableMetadata::set_schema_name(const ::std::string& value) {
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.TableMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(value);
 }
-#if LANG_CXX11
-inline void TableMetadata::set_schema_name(::std::string&& value) {
-  set_has_schema_name();
-  schema_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.TableMetadata.schema_name)
-}
-#endif
 inline void TableMetadata::set_schema_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.TableMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(value);
 }
 inline void TableMetadata::set_schema_name(const char* value, size_t size) {
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.TableMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* TableMetadata::mutable_schema_name() {
   set_has_schema_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.TableMetadata.schema_name)
-  return schema_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  return schema_name_;
 }
 inline ::std::string* TableMetadata::release_schema_name() {
-  // @@protoc_insertion_point(field_release:exec.user.TableMetadata.schema_name)
-  if (!has_schema_name()) {
-    return NULL;
-  }
   clear_has_schema_name();
-  return schema_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = schema_name_;
+    schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void TableMetadata::set_allocated_schema_name(::std::string* schema_name) {
-  if (schema_name != NULL) {
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_name_;
+  }
+  if (schema_name) {
     set_has_schema_name();
+    schema_name_ = schema_name;
   } else {
     clear_has_schema_name();
+    schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  schema_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), schema_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.TableMetadata.schema_name)
 }
 
 // optional string table_name = 3;
@@ -9334,59 +7647,63 @@
   _has_bits_[0] &= ~0x00000004u;
 }
 inline void TableMetadata::clear_table_name() {
-  table_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+    table_name_->clear();
+  }
   clear_has_table_name();
 }
 inline const ::std::string& TableMetadata::table_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.TableMetadata.table_name)
-  return table_name_.GetNoArena();
+  return *table_name_;
 }
 inline void TableMetadata::set_table_name(const ::std::string& value) {
   set_has_table_name();
-  table_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.TableMetadata.table_name)
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  table_name_->assign(value);
 }
-#if LANG_CXX11
-inline void TableMetadata::set_table_name(::std::string&& value) {
-  set_has_table_name();
-  table_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.TableMetadata.table_name)
-}
-#endif
 inline void TableMetadata::set_table_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_table_name();
-  table_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.TableMetadata.table_name)
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  table_name_->assign(value);
 }
 inline void TableMetadata::set_table_name(const char* value, size_t size) {
   set_has_table_name();
-  table_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.TableMetadata.table_name)
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  table_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* TableMetadata::mutable_table_name() {
   set_has_table_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.TableMetadata.table_name)
-  return table_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  return table_name_;
 }
 inline ::std::string* TableMetadata::release_table_name() {
-  // @@protoc_insertion_point(field_release:exec.user.TableMetadata.table_name)
-  if (!has_table_name()) {
-    return NULL;
-  }
   clear_has_table_name();
-  return table_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = table_name_;
+    table_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void TableMetadata::set_allocated_table_name(::std::string* table_name) {
-  if (table_name != NULL) {
+  if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete table_name_;
+  }
+  if (table_name) {
     set_has_table_name();
+    table_name_ = table_name;
   } else {
     clear_has_table_name();
+    table_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  table_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), table_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.TableMetadata.table_name)
 }
 
 // optional string type = 4;
@@ -9400,59 +7717,63 @@
   _has_bits_[0] &= ~0x00000008u;
 }
 inline void TableMetadata::clear_type() {
-  type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (type_ != &::google::protobuf::internal::kEmptyString) {
+    type_->clear();
+  }
   clear_has_type();
 }
 inline const ::std::string& TableMetadata::type() const {
-  // @@protoc_insertion_point(field_get:exec.user.TableMetadata.type)
-  return type_.GetNoArena();
+  return *type_;
 }
 inline void TableMetadata::set_type(const ::std::string& value) {
   set_has_type();
-  type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.TableMetadata.type)
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    type_ = new ::std::string;
+  }
+  type_->assign(value);
 }
-#if LANG_CXX11
-inline void TableMetadata::set_type(::std::string&& value) {
-  set_has_type();
-  type_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.TableMetadata.type)
-}
-#endif
 inline void TableMetadata::set_type(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_type();
-  type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.TableMetadata.type)
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    type_ = new ::std::string;
+  }
+  type_->assign(value);
 }
 inline void TableMetadata::set_type(const char* value, size_t size) {
   set_has_type();
-  type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.TableMetadata.type)
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    type_ = new ::std::string;
+  }
+  type_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* TableMetadata::mutable_type() {
   set_has_type();
-  // @@protoc_insertion_point(field_mutable:exec.user.TableMetadata.type)
-  return type_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    type_ = new ::std::string;
+  }
+  return type_;
 }
 inline ::std::string* TableMetadata::release_type() {
-  // @@protoc_insertion_point(field_release:exec.user.TableMetadata.type)
-  if (!has_type()) {
-    return NULL;
-  }
   clear_has_type();
-  return type_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (type_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = type_;
+    type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void TableMetadata::set_allocated_type(::std::string* type) {
-  if (type != NULL) {
+  if (type_ != &::google::protobuf::internal::kEmptyString) {
+    delete type_;
+  }
+  if (type) {
     set_has_type();
+    type_ = type;
   } else {
     clear_has_type();
+    type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  type_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), type);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.TableMetadata.type)
 }
 
 // -------------------------------------------------------------------
@@ -9461,27 +7782,25 @@
 
 // optional .exec.user.RequestStatus status = 1;
 inline bool GetTablesResp::has_status() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void GetTablesResp::set_has_status() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void GetTablesResp::clear_has_status() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetTablesResp::clear_status() {
   status_ = 0;
   clear_has_status();
 }
 inline ::exec::user::RequestStatus GetTablesResp::status() const {
-  // @@protoc_insertion_point(field_get:exec.user.GetTablesResp.status)
   return static_cast< ::exec::user::RequestStatus >(status_);
 }
 inline void GetTablesResp::set_status(::exec::user::RequestStatus value) {
   assert(::exec::user::RequestStatus_IsValid(value));
   set_has_status();
   status_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.GetTablesResp.status)
 }
 
 // repeated .exec.user.TableMetadata tables = 2;
@@ -9491,81 +7810,60 @@
 inline void GetTablesResp::clear_tables() {
   tables_.Clear();
 }
-inline ::exec::user::TableMetadata* GetTablesResp::mutable_tables(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.GetTablesResp.tables)
-  return tables_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::user::TableMetadata >*
-GetTablesResp::mutable_tables() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.GetTablesResp.tables)
-  return &tables_;
-}
 inline const ::exec::user::TableMetadata& GetTablesResp::tables(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.GetTablesResp.tables)
   return tables_.Get(index);
 }
+inline ::exec::user::TableMetadata* GetTablesResp::mutable_tables(int index) {
+  return tables_.Mutable(index);
+}
 inline ::exec::user::TableMetadata* GetTablesResp::add_tables() {
-  // @@protoc_insertion_point(field_add:exec.user.GetTablesResp.tables)
   return tables_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::user::TableMetadata >&
 GetTablesResp::tables() const {
-  // @@protoc_insertion_point(field_list:exec.user.GetTablesResp.tables)
   return tables_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::user::TableMetadata >*
+GetTablesResp::mutable_tables() {
+  return &tables_;
+}
 
 // optional .exec.shared.DrillPBError error = 3;
 inline bool GetTablesResp::has_error() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void GetTablesResp::set_has_error() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void GetTablesResp::clear_has_error() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000004u;
 }
-inline const ::exec::shared::DrillPBError& GetTablesResp::_internal_error() const {
-  return *error_;
+inline void GetTablesResp::clear_error() {
+  if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+  clear_has_error();
 }
 inline const ::exec::shared::DrillPBError& GetTablesResp::error() const {
-  const ::exec::shared::DrillPBError* p = error_;
-  // @@protoc_insertion_point(field_get:exec.user.GetTablesResp.error)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::DrillPBError*>(
-      &::exec::shared::_DrillPBError_default_instance_);
+  return error_ != NULL ? *error_ : *default_instance_->error_;
+}
+inline ::exec::shared::DrillPBError* GetTablesResp::mutable_error() {
+  set_has_error();
+  if (error_ == NULL) error_ = new ::exec::shared::DrillPBError;
+  return error_;
 }
 inline ::exec::shared::DrillPBError* GetTablesResp::release_error() {
-  // @@protoc_insertion_point(field_release:exec.user.GetTablesResp.error)
   clear_has_error();
   ::exec::shared::DrillPBError* temp = error_;
   error_ = NULL;
   return temp;
 }
-inline ::exec::shared::DrillPBError* GetTablesResp::mutable_error() {
-  set_has_error();
-  if (error_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::DrillPBError>(GetArenaNoVirtual());
-    error_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetTablesResp.error)
-  return error_;
-}
 inline void GetTablesResp::set_allocated_error(::exec::shared::DrillPBError* error) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(error_);
-  }
+  delete error_;
+  error_ = error;
   if (error) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      error = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, error, submessage_arena);
-    }
     set_has_error();
   } else {
     clear_has_error();
   }
-  error_ = error;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetTablesResp.error)
 }
 
 // -------------------------------------------------------------------
@@ -9583,51 +7881,31 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetColumnsReq::clear_catalog_name_filter() {
-  if (catalog_name_filter_ != NULL) catalog_name_filter_->Clear();
+  if (catalog_name_filter_ != NULL) catalog_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_catalog_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetColumnsReq::_internal_catalog_name_filter() const {
-  return *catalog_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetColumnsReq::catalog_name_filter() const {
-  const ::exec::user::LikeFilter* p = catalog_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetColumnsReq.catalog_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return catalog_name_filter_ != NULL ? *catalog_name_filter_ : *default_instance_->catalog_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetColumnsReq::mutable_catalog_name_filter() {
+  set_has_catalog_name_filter();
+  if (catalog_name_filter_ == NULL) catalog_name_filter_ = new ::exec::user::LikeFilter;
+  return catalog_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetColumnsReq::release_catalog_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetColumnsReq.catalog_name_filter)
   clear_has_catalog_name_filter();
   ::exec::user::LikeFilter* temp = catalog_name_filter_;
   catalog_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetColumnsReq::mutable_catalog_name_filter() {
-  set_has_catalog_name_filter();
-  if (catalog_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    catalog_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetColumnsReq.catalog_name_filter)
-  return catalog_name_filter_;
-}
 inline void GetColumnsReq::set_allocated_catalog_name_filter(::exec::user::LikeFilter* catalog_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete catalog_name_filter_;
-  }
+  delete catalog_name_filter_;
+  catalog_name_filter_ = catalog_name_filter;
   if (catalog_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      catalog_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, catalog_name_filter, submessage_arena);
-    }
     set_has_catalog_name_filter();
   } else {
     clear_has_catalog_name_filter();
   }
-  catalog_name_filter_ = catalog_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetColumnsReq.catalog_name_filter)
 }
 
 // optional .exec.user.LikeFilter schema_name_filter = 2;
@@ -9641,51 +7919,31 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void GetColumnsReq::clear_schema_name_filter() {
-  if (schema_name_filter_ != NULL) schema_name_filter_->Clear();
+  if (schema_name_filter_ != NULL) schema_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_schema_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetColumnsReq::_internal_schema_name_filter() const {
-  return *schema_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetColumnsReq::schema_name_filter() const {
-  const ::exec::user::LikeFilter* p = schema_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetColumnsReq.schema_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return schema_name_filter_ != NULL ? *schema_name_filter_ : *default_instance_->schema_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetColumnsReq::mutable_schema_name_filter() {
+  set_has_schema_name_filter();
+  if (schema_name_filter_ == NULL) schema_name_filter_ = new ::exec::user::LikeFilter;
+  return schema_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetColumnsReq::release_schema_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetColumnsReq.schema_name_filter)
   clear_has_schema_name_filter();
   ::exec::user::LikeFilter* temp = schema_name_filter_;
   schema_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetColumnsReq::mutable_schema_name_filter() {
-  set_has_schema_name_filter();
-  if (schema_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    schema_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetColumnsReq.schema_name_filter)
-  return schema_name_filter_;
-}
 inline void GetColumnsReq::set_allocated_schema_name_filter(::exec::user::LikeFilter* schema_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete schema_name_filter_;
-  }
+  delete schema_name_filter_;
+  schema_name_filter_ = schema_name_filter;
   if (schema_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      schema_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, schema_name_filter, submessage_arena);
-    }
     set_has_schema_name_filter();
   } else {
     clear_has_schema_name_filter();
   }
-  schema_name_filter_ = schema_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetColumnsReq.schema_name_filter)
 }
 
 // optional .exec.user.LikeFilter table_name_filter = 3;
@@ -9699,51 +7957,31 @@
   _has_bits_[0] &= ~0x00000004u;
 }
 inline void GetColumnsReq::clear_table_name_filter() {
-  if (table_name_filter_ != NULL) table_name_filter_->Clear();
+  if (table_name_filter_ != NULL) table_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_table_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetColumnsReq::_internal_table_name_filter() const {
-  return *table_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetColumnsReq::table_name_filter() const {
-  const ::exec::user::LikeFilter* p = table_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetColumnsReq.table_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return table_name_filter_ != NULL ? *table_name_filter_ : *default_instance_->table_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetColumnsReq::mutable_table_name_filter() {
+  set_has_table_name_filter();
+  if (table_name_filter_ == NULL) table_name_filter_ = new ::exec::user::LikeFilter;
+  return table_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetColumnsReq::release_table_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetColumnsReq.table_name_filter)
   clear_has_table_name_filter();
   ::exec::user::LikeFilter* temp = table_name_filter_;
   table_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetColumnsReq::mutable_table_name_filter() {
-  set_has_table_name_filter();
-  if (table_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    table_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetColumnsReq.table_name_filter)
-  return table_name_filter_;
-}
 inline void GetColumnsReq::set_allocated_table_name_filter(::exec::user::LikeFilter* table_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete table_name_filter_;
-  }
+  delete table_name_filter_;
+  table_name_filter_ = table_name_filter;
   if (table_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      table_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, table_name_filter, submessage_arena);
-    }
     set_has_table_name_filter();
   } else {
     clear_has_table_name_filter();
   }
-  table_name_filter_ = table_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetColumnsReq.table_name_filter)
 }
 
 // optional .exec.user.LikeFilter column_name_filter = 4;
@@ -9757,51 +7995,31 @@
   _has_bits_[0] &= ~0x00000008u;
 }
 inline void GetColumnsReq::clear_column_name_filter() {
-  if (column_name_filter_ != NULL) column_name_filter_->Clear();
+  if (column_name_filter_ != NULL) column_name_filter_->::exec::user::LikeFilter::Clear();
   clear_has_column_name_filter();
 }
-inline const ::exec::user::LikeFilter& GetColumnsReq::_internal_column_name_filter() const {
-  return *column_name_filter_;
-}
 inline const ::exec::user::LikeFilter& GetColumnsReq::column_name_filter() const {
-  const ::exec::user::LikeFilter* p = column_name_filter_;
-  // @@protoc_insertion_point(field_get:exec.user.GetColumnsReq.column_name_filter)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::LikeFilter*>(
-      &::exec::user::_LikeFilter_default_instance_);
+  return column_name_filter_ != NULL ? *column_name_filter_ : *default_instance_->column_name_filter_;
+}
+inline ::exec::user::LikeFilter* GetColumnsReq::mutable_column_name_filter() {
+  set_has_column_name_filter();
+  if (column_name_filter_ == NULL) column_name_filter_ = new ::exec::user::LikeFilter;
+  return column_name_filter_;
 }
 inline ::exec::user::LikeFilter* GetColumnsReq::release_column_name_filter() {
-  // @@protoc_insertion_point(field_release:exec.user.GetColumnsReq.column_name_filter)
   clear_has_column_name_filter();
   ::exec::user::LikeFilter* temp = column_name_filter_;
   column_name_filter_ = NULL;
   return temp;
 }
-inline ::exec::user::LikeFilter* GetColumnsReq::mutable_column_name_filter() {
-  set_has_column_name_filter();
-  if (column_name_filter_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::LikeFilter>(GetArenaNoVirtual());
-    column_name_filter_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetColumnsReq.column_name_filter)
-  return column_name_filter_;
-}
 inline void GetColumnsReq::set_allocated_column_name_filter(::exec::user::LikeFilter* column_name_filter) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete column_name_filter_;
-  }
+  delete column_name_filter_;
+  column_name_filter_ = column_name_filter;
   if (column_name_filter) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      column_name_filter = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, column_name_filter, submessage_arena);
-    }
     set_has_column_name_filter();
   } else {
     clear_has_column_name_filter();
   }
-  column_name_filter_ = column_name_filter;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetColumnsReq.column_name_filter)
 }
 
 // -------------------------------------------------------------------
@@ -9819,59 +8037,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void ColumnMetadata::clear_catalog_name() {
-  catalog_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    catalog_name_->clear();
+  }
   clear_has_catalog_name();
 }
 inline const ::std::string& ColumnMetadata::catalog_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.catalog_name)
-  return catalog_name_.GetNoArena();
+  return *catalog_name_;
 }
 inline void ColumnMetadata::set_catalog_name(const ::std::string& value) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
-#if LANG_CXX11
-inline void ColumnMetadata::set_catalog_name(::std::string&& value) {
-  set_has_catalog_name();
-  catalog_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ColumnMetadata.catalog_name)
-}
-#endif
 inline void ColumnMetadata::set_catalog_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ColumnMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
 inline void ColumnMetadata::set_catalog_name(const char* value, size_t size) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ColumnMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ColumnMetadata::mutable_catalog_name() {
   set_has_catalog_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.ColumnMetadata.catalog_name)
-  return catalog_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  return catalog_name_;
 }
 inline ::std::string* ColumnMetadata::release_catalog_name() {
-  // @@protoc_insertion_point(field_release:exec.user.ColumnMetadata.catalog_name)
-  if (!has_catalog_name()) {
-    return NULL;
-  }
   clear_has_catalog_name();
-  return catalog_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = catalog_name_;
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ColumnMetadata::set_allocated_catalog_name(::std::string* catalog_name) {
-  if (catalog_name != NULL) {
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (catalog_name) {
     set_has_catalog_name();
+    catalog_name_ = catalog_name;
   } else {
     clear_has_catalog_name();
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  catalog_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), catalog_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ColumnMetadata.catalog_name)
 }
 
 // optional string schema_name = 2;
@@ -9885,59 +8107,63 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void ColumnMetadata::clear_schema_name() {
-  schema_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    schema_name_->clear();
+  }
   clear_has_schema_name();
 }
 inline const ::std::string& ColumnMetadata::schema_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.schema_name)
-  return schema_name_.GetNoArena();
+  return *schema_name_;
 }
 inline void ColumnMetadata::set_schema_name(const ::std::string& value) {
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(value);
 }
-#if LANG_CXX11
-inline void ColumnMetadata::set_schema_name(::std::string&& value) {
-  set_has_schema_name();
-  schema_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ColumnMetadata.schema_name)
-}
-#endif
 inline void ColumnMetadata::set_schema_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ColumnMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(value);
 }
 inline void ColumnMetadata::set_schema_name(const char* value, size_t size) {
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ColumnMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ColumnMetadata::mutable_schema_name() {
   set_has_schema_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.ColumnMetadata.schema_name)
-  return schema_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  return schema_name_;
 }
 inline ::std::string* ColumnMetadata::release_schema_name() {
-  // @@protoc_insertion_point(field_release:exec.user.ColumnMetadata.schema_name)
-  if (!has_schema_name()) {
-    return NULL;
-  }
   clear_has_schema_name();
-  return schema_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = schema_name_;
+    schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ColumnMetadata::set_allocated_schema_name(::std::string* schema_name) {
-  if (schema_name != NULL) {
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_name_;
+  }
+  if (schema_name) {
     set_has_schema_name();
+    schema_name_ = schema_name;
   } else {
     clear_has_schema_name();
+    schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  schema_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), schema_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ColumnMetadata.schema_name)
 }
 
 // optional string table_name = 3;
@@ -9951,59 +8177,63 @@
   _has_bits_[0] &= ~0x00000004u;
 }
 inline void ColumnMetadata::clear_table_name() {
-  table_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+    table_name_->clear();
+  }
   clear_has_table_name();
 }
 inline const ::std::string& ColumnMetadata::table_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.table_name)
-  return table_name_.GetNoArena();
+  return *table_name_;
 }
 inline void ColumnMetadata::set_table_name(const ::std::string& value) {
   set_has_table_name();
-  table_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.table_name)
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  table_name_->assign(value);
 }
-#if LANG_CXX11
-inline void ColumnMetadata::set_table_name(::std::string&& value) {
-  set_has_table_name();
-  table_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ColumnMetadata.table_name)
-}
-#endif
 inline void ColumnMetadata::set_table_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_table_name();
-  table_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ColumnMetadata.table_name)
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  table_name_->assign(value);
 }
 inline void ColumnMetadata::set_table_name(const char* value, size_t size) {
   set_has_table_name();
-  table_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ColumnMetadata.table_name)
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  table_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ColumnMetadata::mutable_table_name() {
   set_has_table_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.ColumnMetadata.table_name)
-  return table_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  return table_name_;
 }
 inline ::std::string* ColumnMetadata::release_table_name() {
-  // @@protoc_insertion_point(field_release:exec.user.ColumnMetadata.table_name)
-  if (!has_table_name()) {
-    return NULL;
-  }
   clear_has_table_name();
-  return table_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = table_name_;
+    table_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ColumnMetadata::set_allocated_table_name(::std::string* table_name) {
-  if (table_name != NULL) {
+  if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete table_name_;
+  }
+  if (table_name) {
     set_has_table_name();
+    table_name_ = table_name;
   } else {
     clear_has_table_name();
+    table_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  table_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), table_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ColumnMetadata.table_name)
 }
 
 // optional string column_name = 4;
@@ -10017,449 +8247,449 @@
   _has_bits_[0] &= ~0x00000008u;
 }
 inline void ColumnMetadata::clear_column_name() {
-  column_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (column_name_ != &::google::protobuf::internal::kEmptyString) {
+    column_name_->clear();
+  }
   clear_has_column_name();
 }
 inline const ::std::string& ColumnMetadata::column_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.column_name)
-  return column_name_.GetNoArena();
+  return *column_name_;
 }
 inline void ColumnMetadata::set_column_name(const ::std::string& value) {
   set_has_column_name();
-  column_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.column_name)
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    column_name_ = new ::std::string;
+  }
+  column_name_->assign(value);
 }
-#if LANG_CXX11
-inline void ColumnMetadata::set_column_name(::std::string&& value) {
-  set_has_column_name();
-  column_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ColumnMetadata.column_name)
-}
-#endif
 inline void ColumnMetadata::set_column_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_column_name();
-  column_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ColumnMetadata.column_name)
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    column_name_ = new ::std::string;
+  }
+  column_name_->assign(value);
 }
 inline void ColumnMetadata::set_column_name(const char* value, size_t size) {
   set_has_column_name();
-  column_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ColumnMetadata.column_name)
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    column_name_ = new ::std::string;
+  }
+  column_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ColumnMetadata::mutable_column_name() {
   set_has_column_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.ColumnMetadata.column_name)
-  return column_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    column_name_ = new ::std::string;
+  }
+  return column_name_;
 }
 inline ::std::string* ColumnMetadata::release_column_name() {
-  // @@protoc_insertion_point(field_release:exec.user.ColumnMetadata.column_name)
-  if (!has_column_name()) {
-    return NULL;
-  }
   clear_has_column_name();
-  return column_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = column_name_;
+    column_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ColumnMetadata::set_allocated_column_name(::std::string* column_name) {
-  if (column_name != NULL) {
+  if (column_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete column_name_;
+  }
+  if (column_name) {
     set_has_column_name();
+    column_name_ = column_name;
   } else {
     clear_has_column_name();
+    column_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  column_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), column_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ColumnMetadata.column_name)
 }
 
 // optional int32 ordinal_position = 5;
 inline bool ColumnMetadata::has_ordinal_position() const {
-  return (_has_bits_[0] & 0x00000080u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void ColumnMetadata::set_has_ordinal_position() {
-  _has_bits_[0] |= 0x00000080u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void ColumnMetadata::clear_has_ordinal_position() {
-  _has_bits_[0] &= ~0x00000080u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void ColumnMetadata::clear_ordinal_position() {
   ordinal_position_ = 0;
   clear_has_ordinal_position();
 }
 inline ::google::protobuf::int32 ColumnMetadata::ordinal_position() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.ordinal_position)
   return ordinal_position_;
 }
 inline void ColumnMetadata::set_ordinal_position(::google::protobuf::int32 value) {
   set_has_ordinal_position();
   ordinal_position_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.ordinal_position)
 }
 
 // optional string default_value = 6;
 inline bool ColumnMetadata::has_default_value() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void ColumnMetadata::set_has_default_value() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void ColumnMetadata::clear_has_default_value() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000020u;
 }
 inline void ColumnMetadata::clear_default_value() {
-  default_value_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (default_value_ != &::google::protobuf::internal::kEmptyString) {
+    default_value_->clear();
+  }
   clear_has_default_value();
 }
 inline const ::std::string& ColumnMetadata::default_value() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.default_value)
-  return default_value_.GetNoArena();
+  return *default_value_;
 }
 inline void ColumnMetadata::set_default_value(const ::std::string& value) {
   set_has_default_value();
-  default_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.default_value)
+  if (default_value_ == &::google::protobuf::internal::kEmptyString) {
+    default_value_ = new ::std::string;
+  }
+  default_value_->assign(value);
 }
-#if LANG_CXX11
-inline void ColumnMetadata::set_default_value(::std::string&& value) {
-  set_has_default_value();
-  default_value_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ColumnMetadata.default_value)
-}
-#endif
 inline void ColumnMetadata::set_default_value(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_default_value();
-  default_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ColumnMetadata.default_value)
+  if (default_value_ == &::google::protobuf::internal::kEmptyString) {
+    default_value_ = new ::std::string;
+  }
+  default_value_->assign(value);
 }
 inline void ColumnMetadata::set_default_value(const char* value, size_t size) {
   set_has_default_value();
-  default_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ColumnMetadata.default_value)
+  if (default_value_ == &::google::protobuf::internal::kEmptyString) {
+    default_value_ = new ::std::string;
+  }
+  default_value_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ColumnMetadata::mutable_default_value() {
   set_has_default_value();
-  // @@protoc_insertion_point(field_mutable:exec.user.ColumnMetadata.default_value)
-  return default_value_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (default_value_ == &::google::protobuf::internal::kEmptyString) {
+    default_value_ = new ::std::string;
+  }
+  return default_value_;
 }
 inline ::std::string* ColumnMetadata::release_default_value() {
-  // @@protoc_insertion_point(field_release:exec.user.ColumnMetadata.default_value)
-  if (!has_default_value()) {
-    return NULL;
-  }
   clear_has_default_value();
-  return default_value_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (default_value_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = default_value_;
+    default_value_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ColumnMetadata::set_allocated_default_value(::std::string* default_value) {
-  if (default_value != NULL) {
+  if (default_value_ != &::google::protobuf::internal::kEmptyString) {
+    delete default_value_;
+  }
+  if (default_value) {
     set_has_default_value();
+    default_value_ = default_value;
   } else {
     clear_has_default_value();
+    default_value_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  default_value_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), default_value);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ColumnMetadata.default_value)
 }
 
 // optional bool is_nullable = 7;
 inline bool ColumnMetadata::has_is_nullable() const {
-  return (_has_bits_[0] & 0x00000100u) != 0;
+  return (_has_bits_[0] & 0x00000040u) != 0;
 }
 inline void ColumnMetadata::set_has_is_nullable() {
-  _has_bits_[0] |= 0x00000100u;
+  _has_bits_[0] |= 0x00000040u;
 }
 inline void ColumnMetadata::clear_has_is_nullable() {
-  _has_bits_[0] &= ~0x00000100u;
+  _has_bits_[0] &= ~0x00000040u;
 }
 inline void ColumnMetadata::clear_is_nullable() {
   is_nullable_ = false;
   clear_has_is_nullable();
 }
 inline bool ColumnMetadata::is_nullable() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.is_nullable)
   return is_nullable_;
 }
 inline void ColumnMetadata::set_is_nullable(bool value) {
   set_has_is_nullable();
   is_nullable_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.is_nullable)
 }
 
 // optional string data_type = 8;
 inline bool ColumnMetadata::has_data_type() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000080u) != 0;
 }
 inline void ColumnMetadata::set_has_data_type() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000080u;
 }
 inline void ColumnMetadata::clear_has_data_type() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000080u;
 }
 inline void ColumnMetadata::clear_data_type() {
-  data_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (data_type_ != &::google::protobuf::internal::kEmptyString) {
+    data_type_->clear();
+  }
   clear_has_data_type();
 }
 inline const ::std::string& ColumnMetadata::data_type() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.data_type)
-  return data_type_.GetNoArena();
+  return *data_type_;
 }
 inline void ColumnMetadata::set_data_type(const ::std::string& value) {
   set_has_data_type();
-  data_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.data_type)
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    data_type_ = new ::std::string;
+  }
+  data_type_->assign(value);
 }
-#if LANG_CXX11
-inline void ColumnMetadata::set_data_type(::std::string&& value) {
-  set_has_data_type();
-  data_type_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ColumnMetadata.data_type)
-}
-#endif
 inline void ColumnMetadata::set_data_type(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_data_type();
-  data_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ColumnMetadata.data_type)
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    data_type_ = new ::std::string;
+  }
+  data_type_->assign(value);
 }
 inline void ColumnMetadata::set_data_type(const char* value, size_t size) {
   set_has_data_type();
-  data_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ColumnMetadata.data_type)
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    data_type_ = new ::std::string;
+  }
+  data_type_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ColumnMetadata::mutable_data_type() {
   set_has_data_type();
-  // @@protoc_insertion_point(field_mutable:exec.user.ColumnMetadata.data_type)
-  return data_type_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    data_type_ = new ::std::string;
+  }
+  return data_type_;
 }
 inline ::std::string* ColumnMetadata::release_data_type() {
-  // @@protoc_insertion_point(field_release:exec.user.ColumnMetadata.data_type)
-  if (!has_data_type()) {
-    return NULL;
-  }
   clear_has_data_type();
-  return data_type_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = data_type_;
+    data_type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ColumnMetadata::set_allocated_data_type(::std::string* data_type) {
-  if (data_type != NULL) {
+  if (data_type_ != &::google::protobuf::internal::kEmptyString) {
+    delete data_type_;
+  }
+  if (data_type) {
     set_has_data_type();
+    data_type_ = data_type;
   } else {
     clear_has_data_type();
+    data_type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  data_type_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), data_type);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ColumnMetadata.data_type)
 }
 
 // optional int32 char_max_length = 9;
 inline bool ColumnMetadata::has_char_max_length() const {
-  return (_has_bits_[0] & 0x00000200u) != 0;
+  return (_has_bits_[0] & 0x00000100u) != 0;
 }
 inline void ColumnMetadata::set_has_char_max_length() {
-  _has_bits_[0] |= 0x00000200u;
+  _has_bits_[0] |= 0x00000100u;
 }
 inline void ColumnMetadata::clear_has_char_max_length() {
-  _has_bits_[0] &= ~0x00000200u;
+  _has_bits_[0] &= ~0x00000100u;
 }
 inline void ColumnMetadata::clear_char_max_length() {
   char_max_length_ = 0;
   clear_has_char_max_length();
 }
 inline ::google::protobuf::int32 ColumnMetadata::char_max_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.char_max_length)
   return char_max_length_;
 }
 inline void ColumnMetadata::set_char_max_length(::google::protobuf::int32 value) {
   set_has_char_max_length();
   char_max_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.char_max_length)
 }
 
 // optional int32 char_octet_length = 10;
 inline bool ColumnMetadata::has_char_octet_length() const {
-  return (_has_bits_[0] & 0x00000400u) != 0;
+  return (_has_bits_[0] & 0x00000200u) != 0;
 }
 inline void ColumnMetadata::set_has_char_octet_length() {
-  _has_bits_[0] |= 0x00000400u;
+  _has_bits_[0] |= 0x00000200u;
 }
 inline void ColumnMetadata::clear_has_char_octet_length() {
-  _has_bits_[0] &= ~0x00000400u;
+  _has_bits_[0] &= ~0x00000200u;
 }
 inline void ColumnMetadata::clear_char_octet_length() {
   char_octet_length_ = 0;
   clear_has_char_octet_length();
 }
 inline ::google::protobuf::int32 ColumnMetadata::char_octet_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.char_octet_length)
   return char_octet_length_;
 }
 inline void ColumnMetadata::set_char_octet_length(::google::protobuf::int32 value) {
   set_has_char_octet_length();
   char_octet_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.char_octet_length)
 }
 
 // optional int32 numeric_precision = 11;
 inline bool ColumnMetadata::has_numeric_precision() const {
-  return (_has_bits_[0] & 0x00000800u) != 0;
+  return (_has_bits_[0] & 0x00000400u) != 0;
 }
 inline void ColumnMetadata::set_has_numeric_precision() {
-  _has_bits_[0] |= 0x00000800u;
+  _has_bits_[0] |= 0x00000400u;
 }
 inline void ColumnMetadata::clear_has_numeric_precision() {
-  _has_bits_[0] &= ~0x00000800u;
+  _has_bits_[0] &= ~0x00000400u;
 }
 inline void ColumnMetadata::clear_numeric_precision() {
   numeric_precision_ = 0;
   clear_has_numeric_precision();
 }
 inline ::google::protobuf::int32 ColumnMetadata::numeric_precision() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.numeric_precision)
   return numeric_precision_;
 }
 inline void ColumnMetadata::set_numeric_precision(::google::protobuf::int32 value) {
   set_has_numeric_precision();
   numeric_precision_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.numeric_precision)
 }
 
 // optional int32 numeric_precision_radix = 12;
 inline bool ColumnMetadata::has_numeric_precision_radix() const {
-  return (_has_bits_[0] & 0x00001000u) != 0;
+  return (_has_bits_[0] & 0x00000800u) != 0;
 }
 inline void ColumnMetadata::set_has_numeric_precision_radix() {
-  _has_bits_[0] |= 0x00001000u;
+  _has_bits_[0] |= 0x00000800u;
 }
 inline void ColumnMetadata::clear_has_numeric_precision_radix() {
-  _has_bits_[0] &= ~0x00001000u;
+  _has_bits_[0] &= ~0x00000800u;
 }
 inline void ColumnMetadata::clear_numeric_precision_radix() {
   numeric_precision_radix_ = 0;
   clear_has_numeric_precision_radix();
 }
 inline ::google::protobuf::int32 ColumnMetadata::numeric_precision_radix() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.numeric_precision_radix)
   return numeric_precision_radix_;
 }
 inline void ColumnMetadata::set_numeric_precision_radix(::google::protobuf::int32 value) {
   set_has_numeric_precision_radix();
   numeric_precision_radix_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.numeric_precision_radix)
 }
 
 // optional int32 numeric_scale = 13;
 inline bool ColumnMetadata::has_numeric_scale() const {
-  return (_has_bits_[0] & 0x00002000u) != 0;
+  return (_has_bits_[0] & 0x00001000u) != 0;
 }
 inline void ColumnMetadata::set_has_numeric_scale() {
-  _has_bits_[0] |= 0x00002000u;
+  _has_bits_[0] |= 0x00001000u;
 }
 inline void ColumnMetadata::clear_has_numeric_scale() {
-  _has_bits_[0] &= ~0x00002000u;
+  _has_bits_[0] &= ~0x00001000u;
 }
 inline void ColumnMetadata::clear_numeric_scale() {
   numeric_scale_ = 0;
   clear_has_numeric_scale();
 }
 inline ::google::protobuf::int32 ColumnMetadata::numeric_scale() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.numeric_scale)
   return numeric_scale_;
 }
 inline void ColumnMetadata::set_numeric_scale(::google::protobuf::int32 value) {
   set_has_numeric_scale();
   numeric_scale_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.numeric_scale)
 }
 
 // optional int32 date_time_precision = 14;
 inline bool ColumnMetadata::has_date_time_precision() const {
-  return (_has_bits_[0] & 0x00004000u) != 0;
+  return (_has_bits_[0] & 0x00002000u) != 0;
 }
 inline void ColumnMetadata::set_has_date_time_precision() {
-  _has_bits_[0] |= 0x00004000u;
+  _has_bits_[0] |= 0x00002000u;
 }
 inline void ColumnMetadata::clear_has_date_time_precision() {
-  _has_bits_[0] &= ~0x00004000u;
+  _has_bits_[0] &= ~0x00002000u;
 }
 inline void ColumnMetadata::clear_date_time_precision() {
   date_time_precision_ = 0;
   clear_has_date_time_precision();
 }
 inline ::google::protobuf::int32 ColumnMetadata::date_time_precision() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.date_time_precision)
   return date_time_precision_;
 }
 inline void ColumnMetadata::set_date_time_precision(::google::protobuf::int32 value) {
   set_has_date_time_precision();
   date_time_precision_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.date_time_precision)
 }
 
 // optional string interval_type = 15;
 inline bool ColumnMetadata::has_interval_type() const {
-  return (_has_bits_[0] & 0x00000040u) != 0;
+  return (_has_bits_[0] & 0x00004000u) != 0;
 }
 inline void ColumnMetadata::set_has_interval_type() {
-  _has_bits_[0] |= 0x00000040u;
+  _has_bits_[0] |= 0x00004000u;
 }
 inline void ColumnMetadata::clear_has_interval_type() {
-  _has_bits_[0] &= ~0x00000040u;
+  _has_bits_[0] &= ~0x00004000u;
 }
 inline void ColumnMetadata::clear_interval_type() {
-  interval_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (interval_type_ != &::google::protobuf::internal::kEmptyString) {
+    interval_type_->clear();
+  }
   clear_has_interval_type();
 }
 inline const ::std::string& ColumnMetadata::interval_type() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.interval_type)
-  return interval_type_.GetNoArena();
+  return *interval_type_;
 }
 inline void ColumnMetadata::set_interval_type(const ::std::string& value) {
   set_has_interval_type();
-  interval_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.interval_type)
+  if (interval_type_ == &::google::protobuf::internal::kEmptyString) {
+    interval_type_ = new ::std::string;
+  }
+  interval_type_->assign(value);
 }
-#if LANG_CXX11
-inline void ColumnMetadata::set_interval_type(::std::string&& value) {
-  set_has_interval_type();
-  interval_type_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ColumnMetadata.interval_type)
-}
-#endif
 inline void ColumnMetadata::set_interval_type(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_interval_type();
-  interval_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ColumnMetadata.interval_type)
+  if (interval_type_ == &::google::protobuf::internal::kEmptyString) {
+    interval_type_ = new ::std::string;
+  }
+  interval_type_->assign(value);
 }
 inline void ColumnMetadata::set_interval_type(const char* value, size_t size) {
   set_has_interval_type();
-  interval_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ColumnMetadata.interval_type)
+  if (interval_type_ == &::google::protobuf::internal::kEmptyString) {
+    interval_type_ = new ::std::string;
+  }
+  interval_type_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ColumnMetadata::mutable_interval_type() {
   set_has_interval_type();
-  // @@protoc_insertion_point(field_mutable:exec.user.ColumnMetadata.interval_type)
-  return interval_type_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (interval_type_ == &::google::protobuf::internal::kEmptyString) {
+    interval_type_ = new ::std::string;
+  }
+  return interval_type_;
 }
 inline ::std::string* ColumnMetadata::release_interval_type() {
-  // @@protoc_insertion_point(field_release:exec.user.ColumnMetadata.interval_type)
-  if (!has_interval_type()) {
-    return NULL;
-  }
   clear_has_interval_type();
-  return interval_type_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (interval_type_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = interval_type_;
+    interval_type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ColumnMetadata::set_allocated_interval_type(::std::string* interval_type) {
-  if (interval_type != NULL) {
+  if (interval_type_ != &::google::protobuf::internal::kEmptyString) {
+    delete interval_type_;
+  }
+  if (interval_type) {
     set_has_interval_type();
+    interval_type_ = interval_type;
   } else {
     clear_has_interval_type();
+    interval_type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  interval_type_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), interval_type);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ColumnMetadata.interval_type)
 }
 
 // optional int32 interval_precision = 16;
@@ -10477,13 +8707,11 @@
   clear_has_interval_precision();
 }
 inline ::google::protobuf::int32 ColumnMetadata::interval_precision() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.interval_precision)
   return interval_precision_;
 }
 inline void ColumnMetadata::set_interval_precision(::google::protobuf::int32 value) {
   set_has_interval_precision();
   interval_precision_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.interval_precision)
 }
 
 // optional int32 column_size = 17;
@@ -10501,13 +8729,11 @@
   clear_has_column_size();
 }
 inline ::google::protobuf::int32 ColumnMetadata::column_size() const {
-  // @@protoc_insertion_point(field_get:exec.user.ColumnMetadata.column_size)
   return column_size_;
 }
 inline void ColumnMetadata::set_column_size(::google::protobuf::int32 value) {
   set_has_column_size();
   column_size_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ColumnMetadata.column_size)
 }
 
 // -------------------------------------------------------------------
@@ -10516,27 +8742,25 @@
 
 // optional .exec.user.RequestStatus status = 1;
 inline bool GetColumnsResp::has_status() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void GetColumnsResp::set_has_status() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void GetColumnsResp::clear_has_status() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetColumnsResp::clear_status() {
   status_ = 0;
   clear_has_status();
 }
 inline ::exec::user::RequestStatus GetColumnsResp::status() const {
-  // @@protoc_insertion_point(field_get:exec.user.GetColumnsResp.status)
   return static_cast< ::exec::user::RequestStatus >(status_);
 }
 inline void GetColumnsResp::set_status(::exec::user::RequestStatus value) {
   assert(::exec::user::RequestStatus_IsValid(value));
   set_has_status();
   status_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.GetColumnsResp.status)
 }
 
 // repeated .exec.user.ColumnMetadata columns = 2;
@@ -10546,81 +8770,60 @@
 inline void GetColumnsResp::clear_columns() {
   columns_.Clear();
 }
-inline ::exec::user::ColumnMetadata* GetColumnsResp::mutable_columns(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.GetColumnsResp.columns)
-  return columns_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::user::ColumnMetadata >*
-GetColumnsResp::mutable_columns() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.GetColumnsResp.columns)
-  return &columns_;
-}
 inline const ::exec::user::ColumnMetadata& GetColumnsResp::columns(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.GetColumnsResp.columns)
   return columns_.Get(index);
 }
+inline ::exec::user::ColumnMetadata* GetColumnsResp::mutable_columns(int index) {
+  return columns_.Mutable(index);
+}
 inline ::exec::user::ColumnMetadata* GetColumnsResp::add_columns() {
-  // @@protoc_insertion_point(field_add:exec.user.GetColumnsResp.columns)
   return columns_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::user::ColumnMetadata >&
 GetColumnsResp::columns() const {
-  // @@protoc_insertion_point(field_list:exec.user.GetColumnsResp.columns)
   return columns_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::user::ColumnMetadata >*
+GetColumnsResp::mutable_columns() {
+  return &columns_;
+}
 
 // optional .exec.shared.DrillPBError error = 3;
 inline bool GetColumnsResp::has_error() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void GetColumnsResp::set_has_error() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void GetColumnsResp::clear_has_error() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000004u;
 }
-inline const ::exec::shared::DrillPBError& GetColumnsResp::_internal_error() const {
-  return *error_;
+inline void GetColumnsResp::clear_error() {
+  if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+  clear_has_error();
 }
 inline const ::exec::shared::DrillPBError& GetColumnsResp::error() const {
-  const ::exec::shared::DrillPBError* p = error_;
-  // @@protoc_insertion_point(field_get:exec.user.GetColumnsResp.error)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::DrillPBError*>(
-      &::exec::shared::_DrillPBError_default_instance_);
+  return error_ != NULL ? *error_ : *default_instance_->error_;
+}
+inline ::exec::shared::DrillPBError* GetColumnsResp::mutable_error() {
+  set_has_error();
+  if (error_ == NULL) error_ = new ::exec::shared::DrillPBError;
+  return error_;
 }
 inline ::exec::shared::DrillPBError* GetColumnsResp::release_error() {
-  // @@protoc_insertion_point(field_release:exec.user.GetColumnsResp.error)
   clear_has_error();
   ::exec::shared::DrillPBError* temp = error_;
   error_ = NULL;
   return temp;
 }
-inline ::exec::shared::DrillPBError* GetColumnsResp::mutable_error() {
-  set_has_error();
-  if (error_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::DrillPBError>(GetArenaNoVirtual());
-    error_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetColumnsResp.error)
-  return error_;
-}
 inline void GetColumnsResp::set_allocated_error(::exec::shared::DrillPBError* error) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(error_);
-  }
+  delete error_;
+  error_ = error;
   if (error) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      error = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, error, submessage_arena);
-    }
     set_has_error();
   } else {
     clear_has_error();
   }
-  error_ = error;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetColumnsResp.error)
 }
 
 // -------------------------------------------------------------------
@@ -10638,59 +8841,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void CreatePreparedStatementReq::clear_sql_query() {
-  sql_query_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (sql_query_ != &::google::protobuf::internal::kEmptyString) {
+    sql_query_->clear();
+  }
   clear_has_sql_query();
 }
 inline const ::std::string& CreatePreparedStatementReq::sql_query() const {
-  // @@protoc_insertion_point(field_get:exec.user.CreatePreparedStatementReq.sql_query)
-  return sql_query_.GetNoArena();
+  return *sql_query_;
 }
 inline void CreatePreparedStatementReq::set_sql_query(const ::std::string& value) {
   set_has_sql_query();
-  sql_query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.CreatePreparedStatementReq.sql_query)
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    sql_query_ = new ::std::string;
+  }
+  sql_query_->assign(value);
 }
-#if LANG_CXX11
-inline void CreatePreparedStatementReq::set_sql_query(::std::string&& value) {
-  set_has_sql_query();
-  sql_query_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.CreatePreparedStatementReq.sql_query)
-}
-#endif
 inline void CreatePreparedStatementReq::set_sql_query(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_sql_query();
-  sql_query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.CreatePreparedStatementReq.sql_query)
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    sql_query_ = new ::std::string;
+  }
+  sql_query_->assign(value);
 }
 inline void CreatePreparedStatementReq::set_sql_query(const char* value, size_t size) {
   set_has_sql_query();
-  sql_query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.CreatePreparedStatementReq.sql_query)
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    sql_query_ = new ::std::string;
+  }
+  sql_query_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* CreatePreparedStatementReq::mutable_sql_query() {
   set_has_sql_query();
-  // @@protoc_insertion_point(field_mutable:exec.user.CreatePreparedStatementReq.sql_query)
-  return sql_query_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    sql_query_ = new ::std::string;
+  }
+  return sql_query_;
 }
 inline ::std::string* CreatePreparedStatementReq::release_sql_query() {
-  // @@protoc_insertion_point(field_release:exec.user.CreatePreparedStatementReq.sql_query)
-  if (!has_sql_query()) {
-    return NULL;
-  }
   clear_has_sql_query();
-  return sql_query_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (sql_query_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = sql_query_;
+    sql_query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void CreatePreparedStatementReq::set_allocated_sql_query(::std::string* sql_query) {
-  if (sql_query != NULL) {
+  if (sql_query_ != &::google::protobuf::internal::kEmptyString) {
+    delete sql_query_;
+  }
+  if (sql_query) {
     set_has_sql_query();
+    sql_query_ = sql_query;
   } else {
     clear_has_sql_query();
+    sql_query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  sql_query_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), sql_query);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.CreatePreparedStatementReq.sql_query)
 }
 
 // -------------------------------------------------------------------
@@ -10708,59 +8915,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void ResultColumnMetadata::clear_catalog_name() {
-  catalog_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    catalog_name_->clear();
+  }
   clear_has_catalog_name();
 }
 inline const ::std::string& ResultColumnMetadata::catalog_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.catalog_name)
-  return catalog_name_.GetNoArena();
+  return *catalog_name_;
 }
 inline void ResultColumnMetadata::set_catalog_name(const ::std::string& value) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
-#if LANG_CXX11
-inline void ResultColumnMetadata::set_catalog_name(::std::string&& value) {
-  set_has_catalog_name();
-  catalog_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ResultColumnMetadata.catalog_name)
-}
-#endif
 inline void ResultColumnMetadata::set_catalog_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ResultColumnMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(value);
 }
 inline void ResultColumnMetadata::set_catalog_name(const char* value, size_t size) {
   set_has_catalog_name();
-  catalog_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ResultColumnMetadata.catalog_name)
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  catalog_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ResultColumnMetadata::mutable_catalog_name() {
   set_has_catalog_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.ResultColumnMetadata.catalog_name)
-  return catalog_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_name_ = new ::std::string;
+  }
+  return catalog_name_;
 }
 inline ::std::string* ResultColumnMetadata::release_catalog_name() {
-  // @@protoc_insertion_point(field_release:exec.user.ResultColumnMetadata.catalog_name)
-  if (!has_catalog_name()) {
-    return NULL;
-  }
   clear_has_catalog_name();
-  return catalog_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = catalog_name_;
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ResultColumnMetadata::set_allocated_catalog_name(::std::string* catalog_name) {
-  if (catalog_name != NULL) {
+  if (catalog_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_name_;
+  }
+  if (catalog_name) {
     set_has_catalog_name();
+    catalog_name_ = catalog_name;
   } else {
     clear_has_catalog_name();
+    catalog_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  catalog_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), catalog_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ResultColumnMetadata.catalog_name)
 }
 
 // optional string schema_name = 2;
@@ -10774,59 +8985,63 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void ResultColumnMetadata::clear_schema_name() {
-  schema_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    schema_name_->clear();
+  }
   clear_has_schema_name();
 }
 inline const ::std::string& ResultColumnMetadata::schema_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.schema_name)
-  return schema_name_.GetNoArena();
+  return *schema_name_;
 }
 inline void ResultColumnMetadata::set_schema_name(const ::std::string& value) {
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(value);
 }
-#if LANG_CXX11
-inline void ResultColumnMetadata::set_schema_name(::std::string&& value) {
-  set_has_schema_name();
-  schema_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ResultColumnMetadata.schema_name)
-}
-#endif
 inline void ResultColumnMetadata::set_schema_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ResultColumnMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(value);
 }
 inline void ResultColumnMetadata::set_schema_name(const char* value, size_t size) {
   set_has_schema_name();
-  schema_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ResultColumnMetadata.schema_name)
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  schema_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ResultColumnMetadata::mutable_schema_name() {
   set_has_schema_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.ResultColumnMetadata.schema_name)
-  return schema_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    schema_name_ = new ::std::string;
+  }
+  return schema_name_;
 }
 inline ::std::string* ResultColumnMetadata::release_schema_name() {
-  // @@protoc_insertion_point(field_release:exec.user.ResultColumnMetadata.schema_name)
-  if (!has_schema_name()) {
-    return NULL;
-  }
   clear_has_schema_name();
-  return schema_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = schema_name_;
+    schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ResultColumnMetadata::set_allocated_schema_name(::std::string* schema_name) {
-  if (schema_name != NULL) {
+  if (schema_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_name_;
+  }
+  if (schema_name) {
     set_has_schema_name();
+    schema_name_ = schema_name;
   } else {
     clear_has_schema_name();
+    schema_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  schema_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), schema_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ResultColumnMetadata.schema_name)
 }
 
 // optional string table_name = 3;
@@ -10840,59 +9055,63 @@
   _has_bits_[0] &= ~0x00000004u;
 }
 inline void ResultColumnMetadata::clear_table_name() {
-  table_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+    table_name_->clear();
+  }
   clear_has_table_name();
 }
 inline const ::std::string& ResultColumnMetadata::table_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.table_name)
-  return table_name_.GetNoArena();
+  return *table_name_;
 }
 inline void ResultColumnMetadata::set_table_name(const ::std::string& value) {
   set_has_table_name();
-  table_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.table_name)
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  table_name_->assign(value);
 }
-#if LANG_CXX11
-inline void ResultColumnMetadata::set_table_name(::std::string&& value) {
-  set_has_table_name();
-  table_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ResultColumnMetadata.table_name)
-}
-#endif
 inline void ResultColumnMetadata::set_table_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_table_name();
-  table_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ResultColumnMetadata.table_name)
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  table_name_->assign(value);
 }
 inline void ResultColumnMetadata::set_table_name(const char* value, size_t size) {
   set_has_table_name();
-  table_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ResultColumnMetadata.table_name)
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  table_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ResultColumnMetadata::mutable_table_name() {
   set_has_table_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.ResultColumnMetadata.table_name)
-  return table_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    table_name_ = new ::std::string;
+  }
+  return table_name_;
 }
 inline ::std::string* ResultColumnMetadata::release_table_name() {
-  // @@protoc_insertion_point(field_release:exec.user.ResultColumnMetadata.table_name)
-  if (!has_table_name()) {
-    return NULL;
-  }
   clear_has_table_name();
-  return table_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = table_name_;
+    table_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ResultColumnMetadata::set_allocated_table_name(::std::string* table_name) {
-  if (table_name != NULL) {
+  if (table_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete table_name_;
+  }
+  if (table_name) {
     set_has_table_name();
+    table_name_ = table_name;
   } else {
     clear_has_table_name();
+    table_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  table_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), table_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ResultColumnMetadata.table_name)
 }
 
 // optional string column_name = 4;
@@ -10906,59 +9125,63 @@
   _has_bits_[0] &= ~0x00000008u;
 }
 inline void ResultColumnMetadata::clear_column_name() {
-  column_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (column_name_ != &::google::protobuf::internal::kEmptyString) {
+    column_name_->clear();
+  }
   clear_has_column_name();
 }
 inline const ::std::string& ResultColumnMetadata::column_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.column_name)
-  return column_name_.GetNoArena();
+  return *column_name_;
 }
 inline void ResultColumnMetadata::set_column_name(const ::std::string& value) {
   set_has_column_name();
-  column_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.column_name)
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    column_name_ = new ::std::string;
+  }
+  column_name_->assign(value);
 }
-#if LANG_CXX11
-inline void ResultColumnMetadata::set_column_name(::std::string&& value) {
-  set_has_column_name();
-  column_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ResultColumnMetadata.column_name)
-}
-#endif
 inline void ResultColumnMetadata::set_column_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_column_name();
-  column_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ResultColumnMetadata.column_name)
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    column_name_ = new ::std::string;
+  }
+  column_name_->assign(value);
 }
 inline void ResultColumnMetadata::set_column_name(const char* value, size_t size) {
   set_has_column_name();
-  column_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ResultColumnMetadata.column_name)
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    column_name_ = new ::std::string;
+  }
+  column_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ResultColumnMetadata::mutable_column_name() {
   set_has_column_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.ResultColumnMetadata.column_name)
-  return column_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    column_name_ = new ::std::string;
+  }
+  return column_name_;
 }
 inline ::std::string* ResultColumnMetadata::release_column_name() {
-  // @@protoc_insertion_point(field_release:exec.user.ResultColumnMetadata.column_name)
-  if (!has_column_name()) {
-    return NULL;
-  }
   clear_has_column_name();
-  return column_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (column_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = column_name_;
+    column_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ResultColumnMetadata::set_allocated_column_name(::std::string* column_name) {
-  if (column_name != NULL) {
+  if (column_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete column_name_;
+  }
+  if (column_name) {
     set_has_column_name();
+    column_name_ = column_name;
   } else {
     clear_has_column_name();
+    column_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  column_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), column_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ResultColumnMetadata.column_name)
 }
 
 // optional string label = 5;
@@ -10972,59 +9195,63 @@
   _has_bits_[0] &= ~0x00000010u;
 }
 inline void ResultColumnMetadata::clear_label() {
-  label_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (label_ != &::google::protobuf::internal::kEmptyString) {
+    label_->clear();
+  }
   clear_has_label();
 }
 inline const ::std::string& ResultColumnMetadata::label() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.label)
-  return label_.GetNoArena();
+  return *label_;
 }
 inline void ResultColumnMetadata::set_label(const ::std::string& value) {
   set_has_label();
-  label_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.label)
+  if (label_ == &::google::protobuf::internal::kEmptyString) {
+    label_ = new ::std::string;
+  }
+  label_->assign(value);
 }
-#if LANG_CXX11
-inline void ResultColumnMetadata::set_label(::std::string&& value) {
-  set_has_label();
-  label_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ResultColumnMetadata.label)
-}
-#endif
 inline void ResultColumnMetadata::set_label(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_label();
-  label_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ResultColumnMetadata.label)
+  if (label_ == &::google::protobuf::internal::kEmptyString) {
+    label_ = new ::std::string;
+  }
+  label_->assign(value);
 }
 inline void ResultColumnMetadata::set_label(const char* value, size_t size) {
   set_has_label();
-  label_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ResultColumnMetadata.label)
+  if (label_ == &::google::protobuf::internal::kEmptyString) {
+    label_ = new ::std::string;
+  }
+  label_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ResultColumnMetadata::mutable_label() {
   set_has_label();
-  // @@protoc_insertion_point(field_mutable:exec.user.ResultColumnMetadata.label)
-  return label_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (label_ == &::google::protobuf::internal::kEmptyString) {
+    label_ = new ::std::string;
+  }
+  return label_;
 }
 inline ::std::string* ResultColumnMetadata::release_label() {
-  // @@protoc_insertion_point(field_release:exec.user.ResultColumnMetadata.label)
-  if (!has_label()) {
-    return NULL;
-  }
   clear_has_label();
-  return label_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (label_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = label_;
+    label_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ResultColumnMetadata::set_allocated_label(::std::string* label) {
-  if (label != NULL) {
+  if (label_ != &::google::protobuf::internal::kEmptyString) {
+    delete label_;
+  }
+  if (label) {
     set_has_label();
+    label_ = label;
   } else {
     clear_has_label();
+    label_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  label_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), label);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ResultColumnMetadata.label)
 }
 
 // optional string data_type = 6;
@@ -11038,83 +9265,85 @@
   _has_bits_[0] &= ~0x00000020u;
 }
 inline void ResultColumnMetadata::clear_data_type() {
-  data_type_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (data_type_ != &::google::protobuf::internal::kEmptyString) {
+    data_type_->clear();
+  }
   clear_has_data_type();
 }
 inline const ::std::string& ResultColumnMetadata::data_type() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.data_type)
-  return data_type_.GetNoArena();
+  return *data_type_;
 }
 inline void ResultColumnMetadata::set_data_type(const ::std::string& value) {
   set_has_data_type();
-  data_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.data_type)
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    data_type_ = new ::std::string;
+  }
+  data_type_->assign(value);
 }
-#if LANG_CXX11
-inline void ResultColumnMetadata::set_data_type(::std::string&& value) {
-  set_has_data_type();
-  data_type_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ResultColumnMetadata.data_type)
-}
-#endif
 inline void ResultColumnMetadata::set_data_type(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_data_type();
-  data_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ResultColumnMetadata.data_type)
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    data_type_ = new ::std::string;
+  }
+  data_type_->assign(value);
 }
 inline void ResultColumnMetadata::set_data_type(const char* value, size_t size) {
   set_has_data_type();
-  data_type_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ResultColumnMetadata.data_type)
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    data_type_ = new ::std::string;
+  }
+  data_type_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ResultColumnMetadata::mutable_data_type() {
   set_has_data_type();
-  // @@protoc_insertion_point(field_mutable:exec.user.ResultColumnMetadata.data_type)
-  return data_type_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    data_type_ = new ::std::string;
+  }
+  return data_type_;
 }
 inline ::std::string* ResultColumnMetadata::release_data_type() {
-  // @@protoc_insertion_point(field_release:exec.user.ResultColumnMetadata.data_type)
-  if (!has_data_type()) {
-    return NULL;
-  }
   clear_has_data_type();
-  return data_type_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (data_type_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = data_type_;
+    data_type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ResultColumnMetadata::set_allocated_data_type(::std::string* data_type) {
-  if (data_type != NULL) {
+  if (data_type_ != &::google::protobuf::internal::kEmptyString) {
+    delete data_type_;
+  }
+  if (data_type) {
     set_has_data_type();
+    data_type_ = data_type;
   } else {
     clear_has_data_type();
+    data_type_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  data_type_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), data_type);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ResultColumnMetadata.data_type)
 }
 
 // optional bool is_nullable = 7;
 inline bool ResultColumnMetadata::has_is_nullable() const {
-  return (_has_bits_[0] & 0x00000400u) != 0;
+  return (_has_bits_[0] & 0x00000040u) != 0;
 }
 inline void ResultColumnMetadata::set_has_is_nullable() {
-  _has_bits_[0] |= 0x00000400u;
+  _has_bits_[0] |= 0x00000040u;
 }
 inline void ResultColumnMetadata::clear_has_is_nullable() {
-  _has_bits_[0] &= ~0x00000400u;
+  _has_bits_[0] &= ~0x00000040u;
 }
 inline void ResultColumnMetadata::clear_is_nullable() {
   is_nullable_ = false;
   clear_has_is_nullable();
 }
 inline bool ResultColumnMetadata::is_nullable() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.is_nullable)
   return is_nullable_;
 }
 inline void ResultColumnMetadata::set_is_nullable(bool value) {
   set_has_is_nullable();
   is_nullable_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.is_nullable)
 }
 
 // optional int32 precision = 8;
@@ -11132,13 +9361,11 @@
   clear_has_precision();
 }
 inline ::google::protobuf::int32 ResultColumnMetadata::precision() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.precision)
   return precision_;
 }
 inline void ResultColumnMetadata::set_precision(::google::protobuf::int32 value) {
   set_has_precision();
   precision_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.precision)
 }
 
 // optional int32 scale = 9;
@@ -11156,273 +9383,259 @@
   clear_has_scale();
 }
 inline ::google::protobuf::int32 ResultColumnMetadata::scale() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.scale)
   return scale_;
 }
 inline void ResultColumnMetadata::set_scale(::google::protobuf::int32 value) {
   set_has_scale();
   scale_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.scale)
 }
 
 // optional bool signed = 10;
 inline bool ResultColumnMetadata::has_signed_() const {
-  return (_has_bits_[0] & 0x00000800u) != 0;
+  return (_has_bits_[0] & 0x00000200u) != 0;
 }
 inline void ResultColumnMetadata::set_has_signed_() {
-  _has_bits_[0] |= 0x00000800u;
+  _has_bits_[0] |= 0x00000200u;
 }
 inline void ResultColumnMetadata::clear_has_signed_() {
-  _has_bits_[0] &= ~0x00000800u;
+  _has_bits_[0] &= ~0x00000200u;
 }
 inline void ResultColumnMetadata::clear_signed_() {
   signed__ = false;
   clear_has_signed_();
 }
 inline bool ResultColumnMetadata::signed_() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.signed)
   return signed__;
 }
 inline void ResultColumnMetadata::set_signed_(bool value) {
   set_has_signed_();
   signed__ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.signed)
 }
 
 // optional int32 display_size = 11;
 inline bool ResultColumnMetadata::has_display_size() const {
-  return (_has_bits_[0] & 0x00000200u) != 0;
+  return (_has_bits_[0] & 0x00000400u) != 0;
 }
 inline void ResultColumnMetadata::set_has_display_size() {
-  _has_bits_[0] |= 0x00000200u;
+  _has_bits_[0] |= 0x00000400u;
 }
 inline void ResultColumnMetadata::clear_has_display_size() {
-  _has_bits_[0] &= ~0x00000200u;
+  _has_bits_[0] &= ~0x00000400u;
 }
 inline void ResultColumnMetadata::clear_display_size() {
   display_size_ = 0;
   clear_has_display_size();
 }
 inline ::google::protobuf::int32 ResultColumnMetadata::display_size() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.display_size)
   return display_size_;
 }
 inline void ResultColumnMetadata::set_display_size(::google::protobuf::int32 value) {
   set_has_display_size();
   display_size_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.display_size)
 }
 
 // optional bool is_aliased = 12;
 inline bool ResultColumnMetadata::has_is_aliased() const {
-  return (_has_bits_[0] & 0x00001000u) != 0;
+  return (_has_bits_[0] & 0x00000800u) != 0;
 }
 inline void ResultColumnMetadata::set_has_is_aliased() {
-  _has_bits_[0] |= 0x00001000u;
+  _has_bits_[0] |= 0x00000800u;
 }
 inline void ResultColumnMetadata::clear_has_is_aliased() {
-  _has_bits_[0] &= ~0x00001000u;
+  _has_bits_[0] &= ~0x00000800u;
 }
 inline void ResultColumnMetadata::clear_is_aliased() {
   is_aliased_ = false;
   clear_has_is_aliased();
 }
 inline bool ResultColumnMetadata::is_aliased() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.is_aliased)
   return is_aliased_;
 }
 inline void ResultColumnMetadata::set_is_aliased(bool value) {
   set_has_is_aliased();
   is_aliased_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.is_aliased)
 }
 
 // optional .exec.user.ColumnSearchability searchability = 13;
 inline bool ResultColumnMetadata::has_searchability() const {
-  return (_has_bits_[0] & 0x00004000u) != 0;
+  return (_has_bits_[0] & 0x00001000u) != 0;
 }
 inline void ResultColumnMetadata::set_has_searchability() {
-  _has_bits_[0] |= 0x00004000u;
+  _has_bits_[0] |= 0x00001000u;
 }
 inline void ResultColumnMetadata::clear_has_searchability() {
-  _has_bits_[0] &= ~0x00004000u;
+  _has_bits_[0] &= ~0x00001000u;
 }
 inline void ResultColumnMetadata::clear_searchability() {
   searchability_ = 0;
   clear_has_searchability();
 }
 inline ::exec::user::ColumnSearchability ResultColumnMetadata::searchability() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.searchability)
   return static_cast< ::exec::user::ColumnSearchability >(searchability_);
 }
 inline void ResultColumnMetadata::set_searchability(::exec::user::ColumnSearchability value) {
   assert(::exec::user::ColumnSearchability_IsValid(value));
   set_has_searchability();
   searchability_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.searchability)
 }
 
 // optional .exec.user.ColumnUpdatability updatability = 14;
 inline bool ResultColumnMetadata::has_updatability() const {
-  return (_has_bits_[0] & 0x00008000u) != 0;
+  return (_has_bits_[0] & 0x00002000u) != 0;
 }
 inline void ResultColumnMetadata::set_has_updatability() {
-  _has_bits_[0] |= 0x00008000u;
+  _has_bits_[0] |= 0x00002000u;
 }
 inline void ResultColumnMetadata::clear_has_updatability() {
-  _has_bits_[0] &= ~0x00008000u;
+  _has_bits_[0] &= ~0x00002000u;
 }
 inline void ResultColumnMetadata::clear_updatability() {
   updatability_ = 0;
   clear_has_updatability();
 }
 inline ::exec::user::ColumnUpdatability ResultColumnMetadata::updatability() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.updatability)
   return static_cast< ::exec::user::ColumnUpdatability >(updatability_);
 }
 inline void ResultColumnMetadata::set_updatability(::exec::user::ColumnUpdatability value) {
   assert(::exec::user::ColumnUpdatability_IsValid(value));
   set_has_updatability();
   updatability_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.updatability)
 }
 
 // optional bool auto_increment = 15;
 inline bool ResultColumnMetadata::has_auto_increment() const {
-  return (_has_bits_[0] & 0x00002000u) != 0;
+  return (_has_bits_[0] & 0x00004000u) != 0;
 }
 inline void ResultColumnMetadata::set_has_auto_increment() {
-  _has_bits_[0] |= 0x00002000u;
+  _has_bits_[0] |= 0x00004000u;
 }
 inline void ResultColumnMetadata::clear_has_auto_increment() {
-  _has_bits_[0] &= ~0x00002000u;
+  _has_bits_[0] &= ~0x00004000u;
 }
 inline void ResultColumnMetadata::clear_auto_increment() {
   auto_increment_ = false;
   clear_has_auto_increment();
 }
 inline bool ResultColumnMetadata::auto_increment() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.auto_increment)
   return auto_increment_;
 }
 inline void ResultColumnMetadata::set_auto_increment(bool value) {
   set_has_auto_increment();
   auto_increment_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.auto_increment)
 }
 
 // optional bool case_sensitivity = 16;
 inline bool ResultColumnMetadata::has_case_sensitivity() const {
-  return (_has_bits_[0] & 0x00010000u) != 0;
+  return (_has_bits_[0] & 0x00008000u) != 0;
 }
 inline void ResultColumnMetadata::set_has_case_sensitivity() {
-  _has_bits_[0] |= 0x00010000u;
+  _has_bits_[0] |= 0x00008000u;
 }
 inline void ResultColumnMetadata::clear_has_case_sensitivity() {
-  _has_bits_[0] &= ~0x00010000u;
+  _has_bits_[0] &= ~0x00008000u;
 }
 inline void ResultColumnMetadata::clear_case_sensitivity() {
   case_sensitivity_ = false;
   clear_has_case_sensitivity();
 }
 inline bool ResultColumnMetadata::case_sensitivity() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.case_sensitivity)
   return case_sensitivity_;
 }
 inline void ResultColumnMetadata::set_case_sensitivity(bool value) {
   set_has_case_sensitivity();
   case_sensitivity_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.case_sensitivity)
 }
 
 // optional bool sortable = 17;
 inline bool ResultColumnMetadata::has_sortable() const {
-  return (_has_bits_[0] & 0x00020000u) != 0;
+  return (_has_bits_[0] & 0x00010000u) != 0;
 }
 inline void ResultColumnMetadata::set_has_sortable() {
-  _has_bits_[0] |= 0x00020000u;
+  _has_bits_[0] |= 0x00010000u;
 }
 inline void ResultColumnMetadata::clear_has_sortable() {
-  _has_bits_[0] &= ~0x00020000u;
+  _has_bits_[0] &= ~0x00010000u;
 }
 inline void ResultColumnMetadata::clear_sortable() {
   sortable_ = false;
   clear_has_sortable();
 }
 inline bool ResultColumnMetadata::sortable() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.sortable)
   return sortable_;
 }
 inline void ResultColumnMetadata::set_sortable(bool value) {
   set_has_sortable();
   sortable_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.sortable)
 }
 
 // optional string class_name = 18;
 inline bool ResultColumnMetadata::has_class_name() const {
-  return (_has_bits_[0] & 0x00000040u) != 0;
+  return (_has_bits_[0] & 0x00020000u) != 0;
 }
 inline void ResultColumnMetadata::set_has_class_name() {
-  _has_bits_[0] |= 0x00000040u;
+  _has_bits_[0] |= 0x00020000u;
 }
 inline void ResultColumnMetadata::clear_has_class_name() {
-  _has_bits_[0] &= ~0x00000040u;
+  _has_bits_[0] &= ~0x00020000u;
 }
 inline void ResultColumnMetadata::clear_class_name() {
-  class_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (class_name_ != &::google::protobuf::internal::kEmptyString) {
+    class_name_->clear();
+  }
   clear_has_class_name();
 }
 inline const ::std::string& ResultColumnMetadata::class_name() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.class_name)
-  return class_name_.GetNoArena();
+  return *class_name_;
 }
 inline void ResultColumnMetadata::set_class_name(const ::std::string& value) {
   set_has_class_name();
-  class_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.class_name)
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    class_name_ = new ::std::string;
+  }
+  class_name_->assign(value);
 }
-#if LANG_CXX11
-inline void ResultColumnMetadata::set_class_name(::std::string&& value) {
-  set_has_class_name();
-  class_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ResultColumnMetadata.class_name)
-}
-#endif
 inline void ResultColumnMetadata::set_class_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_class_name();
-  class_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ResultColumnMetadata.class_name)
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    class_name_ = new ::std::string;
+  }
+  class_name_->assign(value);
 }
 inline void ResultColumnMetadata::set_class_name(const char* value, size_t size) {
   set_has_class_name();
-  class_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ResultColumnMetadata.class_name)
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    class_name_ = new ::std::string;
+  }
+  class_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ResultColumnMetadata::mutable_class_name() {
   set_has_class_name();
-  // @@protoc_insertion_point(field_mutable:exec.user.ResultColumnMetadata.class_name)
-  return class_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    class_name_ = new ::std::string;
+  }
+  return class_name_;
 }
 inline ::std::string* ResultColumnMetadata::release_class_name() {
-  // @@protoc_insertion_point(field_release:exec.user.ResultColumnMetadata.class_name)
-  if (!has_class_name()) {
-    return NULL;
-  }
   clear_has_class_name();
-  return class_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = class_name_;
+    class_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ResultColumnMetadata::set_allocated_class_name(::std::string* class_name) {
-  if (class_name != NULL) {
+  if (class_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete class_name_;
+  }
+  if (class_name) {
     set_has_class_name();
+    class_name_ = class_name;
   } else {
     clear_has_class_name();
+    class_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  class_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), class_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ResultColumnMetadata.class_name)
 }
 
 // optional bool is_currency = 20;
@@ -11440,13 +9653,11 @@
   clear_has_is_currency();
 }
 inline bool ResultColumnMetadata::is_currency() const {
-  // @@protoc_insertion_point(field_get:exec.user.ResultColumnMetadata.is_currency)
   return is_currency_;
 }
 inline void ResultColumnMetadata::set_is_currency(bool value) {
   set_has_is_currency();
   is_currency_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ResultColumnMetadata.is_currency)
 }
 
 // -------------------------------------------------------------------
@@ -11464,59 +9675,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void PreparedStatementHandle::clear_server_info() {
-  server_info_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (server_info_ != &::google::protobuf::internal::kEmptyString) {
+    server_info_->clear();
+  }
   clear_has_server_info();
 }
 inline const ::std::string& PreparedStatementHandle::server_info() const {
-  // @@protoc_insertion_point(field_get:exec.user.PreparedStatementHandle.server_info)
-  return server_info_.GetNoArena();
+  return *server_info_;
 }
 inline void PreparedStatementHandle::set_server_info(const ::std::string& value) {
   set_has_server_info();
-  server_info_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.PreparedStatementHandle.server_info)
+  if (server_info_ == &::google::protobuf::internal::kEmptyString) {
+    server_info_ = new ::std::string;
+  }
+  server_info_->assign(value);
 }
-#if LANG_CXX11
-inline void PreparedStatementHandle::set_server_info(::std::string&& value) {
-  set_has_server_info();
-  server_info_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.PreparedStatementHandle.server_info)
-}
-#endif
 inline void PreparedStatementHandle::set_server_info(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_server_info();
-  server_info_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.PreparedStatementHandle.server_info)
+  if (server_info_ == &::google::protobuf::internal::kEmptyString) {
+    server_info_ = new ::std::string;
+  }
+  server_info_->assign(value);
 }
 inline void PreparedStatementHandle::set_server_info(const void* value, size_t size) {
   set_has_server_info();
-  server_info_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.PreparedStatementHandle.server_info)
+  if (server_info_ == &::google::protobuf::internal::kEmptyString) {
+    server_info_ = new ::std::string;
+  }
+  server_info_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* PreparedStatementHandle::mutable_server_info() {
   set_has_server_info();
-  // @@protoc_insertion_point(field_mutable:exec.user.PreparedStatementHandle.server_info)
-  return server_info_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (server_info_ == &::google::protobuf::internal::kEmptyString) {
+    server_info_ = new ::std::string;
+  }
+  return server_info_;
 }
 inline ::std::string* PreparedStatementHandle::release_server_info() {
-  // @@protoc_insertion_point(field_release:exec.user.PreparedStatementHandle.server_info)
-  if (!has_server_info()) {
-    return NULL;
-  }
   clear_has_server_info();
-  return server_info_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (server_info_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = server_info_;
+    server_info_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void PreparedStatementHandle::set_allocated_server_info(::std::string* server_info) {
-  if (server_info != NULL) {
+  if (server_info_ != &::google::protobuf::internal::kEmptyString) {
+    delete server_info_;
+  }
+  if (server_info) {
     set_has_server_info();
+    server_info_ = server_info;
   } else {
     clear_has_server_info();
+    server_info_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  server_info_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), server_info);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.PreparedStatementHandle.server_info)
 }
 
 // -------------------------------------------------------------------
@@ -11530,85 +9745,60 @@
 inline void PreparedStatement::clear_columns() {
   columns_.Clear();
 }
-inline ::exec::user::ResultColumnMetadata* PreparedStatement::mutable_columns(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.PreparedStatement.columns)
-  return columns_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::user::ResultColumnMetadata >*
-PreparedStatement::mutable_columns() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.PreparedStatement.columns)
-  return &columns_;
-}
 inline const ::exec::user::ResultColumnMetadata& PreparedStatement::columns(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.PreparedStatement.columns)
   return columns_.Get(index);
 }
+inline ::exec::user::ResultColumnMetadata* PreparedStatement::mutable_columns(int index) {
+  return columns_.Mutable(index);
+}
 inline ::exec::user::ResultColumnMetadata* PreparedStatement::add_columns() {
-  // @@protoc_insertion_point(field_add:exec.user.PreparedStatement.columns)
   return columns_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::user::ResultColumnMetadata >&
 PreparedStatement::columns() const {
-  // @@protoc_insertion_point(field_list:exec.user.PreparedStatement.columns)
   return columns_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::user::ResultColumnMetadata >*
+PreparedStatement::mutable_columns() {
+  return &columns_;
+}
 
 // optional .exec.user.PreparedStatementHandle server_handle = 2;
 inline bool PreparedStatement::has_server_handle() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void PreparedStatement::set_has_server_handle() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void PreparedStatement::clear_has_server_handle() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void PreparedStatement::clear_server_handle() {
-  if (server_handle_ != NULL) server_handle_->Clear();
+  if (server_handle_ != NULL) server_handle_->::exec::user::PreparedStatementHandle::Clear();
   clear_has_server_handle();
 }
-inline const ::exec::user::PreparedStatementHandle& PreparedStatement::_internal_server_handle() const {
-  return *server_handle_;
-}
 inline const ::exec::user::PreparedStatementHandle& PreparedStatement::server_handle() const {
-  const ::exec::user::PreparedStatementHandle* p = server_handle_;
-  // @@protoc_insertion_point(field_get:exec.user.PreparedStatement.server_handle)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::PreparedStatementHandle*>(
-      &::exec::user::_PreparedStatementHandle_default_instance_);
+  return server_handle_ != NULL ? *server_handle_ : *default_instance_->server_handle_;
+}
+inline ::exec::user::PreparedStatementHandle* PreparedStatement::mutable_server_handle() {
+  set_has_server_handle();
+  if (server_handle_ == NULL) server_handle_ = new ::exec::user::PreparedStatementHandle;
+  return server_handle_;
 }
 inline ::exec::user::PreparedStatementHandle* PreparedStatement::release_server_handle() {
-  // @@protoc_insertion_point(field_release:exec.user.PreparedStatement.server_handle)
   clear_has_server_handle();
   ::exec::user::PreparedStatementHandle* temp = server_handle_;
   server_handle_ = NULL;
   return temp;
 }
-inline ::exec::user::PreparedStatementHandle* PreparedStatement::mutable_server_handle() {
-  set_has_server_handle();
-  if (server_handle_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::PreparedStatementHandle>(GetArenaNoVirtual());
-    server_handle_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.PreparedStatement.server_handle)
-  return server_handle_;
-}
 inline void PreparedStatement::set_allocated_server_handle(::exec::user::PreparedStatementHandle* server_handle) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete server_handle_;
-  }
+  delete server_handle_;
+  server_handle_ = server_handle;
   if (server_handle) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      server_handle = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, server_handle, submessage_arena);
-    }
     set_has_server_handle();
   } else {
     clear_has_server_handle();
   }
-  server_handle_ = server_handle;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.PreparedStatement.server_handle)
 }
 
 // -------------------------------------------------------------------
@@ -11617,139 +9807,101 @@
 
 // optional .exec.user.RequestStatus status = 1;
 inline bool CreatePreparedStatementResp::has_status() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void CreatePreparedStatementResp::set_has_status() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void CreatePreparedStatementResp::clear_has_status() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void CreatePreparedStatementResp::clear_status() {
   status_ = 0;
   clear_has_status();
 }
 inline ::exec::user::RequestStatus CreatePreparedStatementResp::status() const {
-  // @@protoc_insertion_point(field_get:exec.user.CreatePreparedStatementResp.status)
   return static_cast< ::exec::user::RequestStatus >(status_);
 }
 inline void CreatePreparedStatementResp::set_status(::exec::user::RequestStatus value) {
   assert(::exec::user::RequestStatus_IsValid(value));
   set_has_status();
   status_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.CreatePreparedStatementResp.status)
 }
 
 // optional .exec.user.PreparedStatement prepared_statement = 2;
 inline bool CreatePreparedStatementResp::has_prepared_statement() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void CreatePreparedStatementResp::set_has_prepared_statement() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void CreatePreparedStatementResp::clear_has_prepared_statement() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void CreatePreparedStatementResp::clear_prepared_statement() {
-  if (prepared_statement_ != NULL) prepared_statement_->Clear();
+  if (prepared_statement_ != NULL) prepared_statement_->::exec::user::PreparedStatement::Clear();
   clear_has_prepared_statement();
 }
-inline const ::exec::user::PreparedStatement& CreatePreparedStatementResp::_internal_prepared_statement() const {
-  return *prepared_statement_;
-}
 inline const ::exec::user::PreparedStatement& CreatePreparedStatementResp::prepared_statement() const {
-  const ::exec::user::PreparedStatement* p = prepared_statement_;
-  // @@protoc_insertion_point(field_get:exec.user.CreatePreparedStatementResp.prepared_statement)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::PreparedStatement*>(
-      &::exec::user::_PreparedStatement_default_instance_);
+  return prepared_statement_ != NULL ? *prepared_statement_ : *default_instance_->prepared_statement_;
+}
+inline ::exec::user::PreparedStatement* CreatePreparedStatementResp::mutable_prepared_statement() {
+  set_has_prepared_statement();
+  if (prepared_statement_ == NULL) prepared_statement_ = new ::exec::user::PreparedStatement;
+  return prepared_statement_;
 }
 inline ::exec::user::PreparedStatement* CreatePreparedStatementResp::release_prepared_statement() {
-  // @@protoc_insertion_point(field_release:exec.user.CreatePreparedStatementResp.prepared_statement)
   clear_has_prepared_statement();
   ::exec::user::PreparedStatement* temp = prepared_statement_;
   prepared_statement_ = NULL;
   return temp;
 }
-inline ::exec::user::PreparedStatement* CreatePreparedStatementResp::mutable_prepared_statement() {
-  set_has_prepared_statement();
-  if (prepared_statement_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::PreparedStatement>(GetArenaNoVirtual());
-    prepared_statement_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.CreatePreparedStatementResp.prepared_statement)
-  return prepared_statement_;
-}
 inline void CreatePreparedStatementResp::set_allocated_prepared_statement(::exec::user::PreparedStatement* prepared_statement) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete prepared_statement_;
-  }
+  delete prepared_statement_;
+  prepared_statement_ = prepared_statement;
   if (prepared_statement) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      prepared_statement = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, prepared_statement, submessage_arena);
-    }
     set_has_prepared_statement();
   } else {
     clear_has_prepared_statement();
   }
-  prepared_statement_ = prepared_statement;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.CreatePreparedStatementResp.prepared_statement)
 }
 
 // optional .exec.shared.DrillPBError error = 3;
 inline bool CreatePreparedStatementResp::has_error() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void CreatePreparedStatementResp::set_has_error() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void CreatePreparedStatementResp::clear_has_error() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
-inline const ::exec::shared::DrillPBError& CreatePreparedStatementResp::_internal_error() const {
-  return *error_;
+inline void CreatePreparedStatementResp::clear_error() {
+  if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+  clear_has_error();
 }
 inline const ::exec::shared::DrillPBError& CreatePreparedStatementResp::error() const {
-  const ::exec::shared::DrillPBError* p = error_;
-  // @@protoc_insertion_point(field_get:exec.user.CreatePreparedStatementResp.error)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::DrillPBError*>(
-      &::exec::shared::_DrillPBError_default_instance_);
+  return error_ != NULL ? *error_ : *default_instance_->error_;
+}
+inline ::exec::shared::DrillPBError* CreatePreparedStatementResp::mutable_error() {
+  set_has_error();
+  if (error_ == NULL) error_ = new ::exec::shared::DrillPBError;
+  return error_;
 }
 inline ::exec::shared::DrillPBError* CreatePreparedStatementResp::release_error() {
-  // @@protoc_insertion_point(field_release:exec.user.CreatePreparedStatementResp.error)
   clear_has_error();
   ::exec::shared::DrillPBError* temp = error_;
   error_ = NULL;
   return temp;
 }
-inline ::exec::shared::DrillPBError* CreatePreparedStatementResp::mutable_error() {
-  set_has_error();
-  if (error_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::DrillPBError>(GetArenaNoVirtual());
-    error_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.CreatePreparedStatementResp.error)
-  return error_;
-}
 inline void CreatePreparedStatementResp::set_allocated_error(::exec::shared::DrillPBError* error) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(error_);
-  }
+  delete error_;
+  error_ = error;
   if (error) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      error = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, error, submessage_arena);
-    }
     set_has_error();
   } else {
     clear_has_error();
   }
-  error_ = error;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.CreatePreparedStatementResp.error)
 }
 
 // -------------------------------------------------------------------
@@ -11775,14 +9927,12 @@
   clear_has_from();
 }
 inline ::common::MinorType ConvertSupport::from() const {
-  // @@protoc_insertion_point(field_get:exec.user.ConvertSupport.from)
   return static_cast< ::common::MinorType >(from_);
 }
 inline void ConvertSupport::set_from(::common::MinorType value) {
   assert(::common::MinorType_IsValid(value));
   set_has_from();
   from_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ConvertSupport.from)
 }
 
 // required .common.MinorType to = 2;
@@ -11800,14 +9950,12 @@
   clear_has_to();
 }
 inline ::common::MinorType ConvertSupport::to() const {
-  // @@protoc_insertion_point(field_get:exec.user.ConvertSupport.to)
   return static_cast< ::common::MinorType >(to_);
 }
 inline void ConvertSupport::set_to(::common::MinorType value) {
   assert(::common::MinorType_IsValid(value));
   set_has_to();
   to_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ConvertSupport.to)
 }
 
 // -------------------------------------------------------------------
@@ -11816,139 +9964,101 @@
 
 // optional .exec.user.RequestStatus status = 1;
 inline bool GetServerMetaResp::has_status() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void GetServerMetaResp::set_has_status() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void GetServerMetaResp::clear_has_status() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void GetServerMetaResp::clear_status() {
   status_ = 0;
   clear_has_status();
 }
 inline ::exec::user::RequestStatus GetServerMetaResp::status() const {
-  // @@protoc_insertion_point(field_get:exec.user.GetServerMetaResp.status)
   return static_cast< ::exec::user::RequestStatus >(status_);
 }
 inline void GetServerMetaResp::set_status(::exec::user::RequestStatus value) {
   assert(::exec::user::RequestStatus_IsValid(value));
   set_has_status();
   status_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.GetServerMetaResp.status)
 }
 
 // optional .exec.user.ServerMeta server_meta = 2;
 inline bool GetServerMetaResp::has_server_meta() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void GetServerMetaResp::set_has_server_meta() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void GetServerMetaResp::clear_has_server_meta() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void GetServerMetaResp::clear_server_meta() {
-  if (server_meta_ != NULL) server_meta_->Clear();
+  if (server_meta_ != NULL) server_meta_->::exec::user::ServerMeta::Clear();
   clear_has_server_meta();
 }
-inline const ::exec::user::ServerMeta& GetServerMetaResp::_internal_server_meta() const {
-  return *server_meta_;
-}
 inline const ::exec::user::ServerMeta& GetServerMetaResp::server_meta() const {
-  const ::exec::user::ServerMeta* p = server_meta_;
-  // @@protoc_insertion_point(field_get:exec.user.GetServerMetaResp.server_meta)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::ServerMeta*>(
-      &::exec::user::_ServerMeta_default_instance_);
+  return server_meta_ != NULL ? *server_meta_ : *default_instance_->server_meta_;
+}
+inline ::exec::user::ServerMeta* GetServerMetaResp::mutable_server_meta() {
+  set_has_server_meta();
+  if (server_meta_ == NULL) server_meta_ = new ::exec::user::ServerMeta;
+  return server_meta_;
 }
 inline ::exec::user::ServerMeta* GetServerMetaResp::release_server_meta() {
-  // @@protoc_insertion_point(field_release:exec.user.GetServerMetaResp.server_meta)
   clear_has_server_meta();
   ::exec::user::ServerMeta* temp = server_meta_;
   server_meta_ = NULL;
   return temp;
 }
-inline ::exec::user::ServerMeta* GetServerMetaResp::mutable_server_meta() {
-  set_has_server_meta();
-  if (server_meta_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::ServerMeta>(GetArenaNoVirtual());
-    server_meta_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetServerMetaResp.server_meta)
-  return server_meta_;
-}
 inline void GetServerMetaResp::set_allocated_server_meta(::exec::user::ServerMeta* server_meta) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete server_meta_;
-  }
+  delete server_meta_;
+  server_meta_ = server_meta;
   if (server_meta) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      server_meta = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, server_meta, submessage_arena);
-    }
     set_has_server_meta();
   } else {
     clear_has_server_meta();
   }
-  server_meta_ = server_meta;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetServerMetaResp.server_meta)
 }
 
 // optional .exec.shared.DrillPBError error = 3;
 inline bool GetServerMetaResp::has_error() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void GetServerMetaResp::set_has_error() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void GetServerMetaResp::clear_has_error() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
-inline const ::exec::shared::DrillPBError& GetServerMetaResp::_internal_error() const {
-  return *error_;
+inline void GetServerMetaResp::clear_error() {
+  if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+  clear_has_error();
 }
 inline const ::exec::shared::DrillPBError& GetServerMetaResp::error() const {
-  const ::exec::shared::DrillPBError* p = error_;
-  // @@protoc_insertion_point(field_get:exec.user.GetServerMetaResp.error)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::DrillPBError*>(
-      &::exec::shared::_DrillPBError_default_instance_);
+  return error_ != NULL ? *error_ : *default_instance_->error_;
+}
+inline ::exec::shared::DrillPBError* GetServerMetaResp::mutable_error() {
+  set_has_error();
+  if (error_ == NULL) error_ = new ::exec::shared::DrillPBError;
+  return error_;
 }
 inline ::exec::shared::DrillPBError* GetServerMetaResp::release_error() {
-  // @@protoc_insertion_point(field_release:exec.user.GetServerMetaResp.error)
   clear_has_error();
   ::exec::shared::DrillPBError* temp = error_;
   error_ = NULL;
   return temp;
 }
-inline ::exec::shared::DrillPBError* GetServerMetaResp::mutable_error() {
-  set_has_error();
-  if (error_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::DrillPBError>(GetArenaNoVirtual());
-    error_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.GetServerMetaResp.error)
-  return error_;
-}
 inline void GetServerMetaResp::set_allocated_error(::exec::shared::DrillPBError* error) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(error_);
-  }
+  delete error_;
+  error_ = error;
   if (error) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      error = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, error, submessage_arena);
-    }
     set_has_error();
   } else {
     clear_has_error();
   }
-  error_ = error;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.GetServerMetaResp.error)
 }
 
 // -------------------------------------------------------------------
@@ -11957,206 +10067,208 @@
 
 // optional bool all_tables_selectable = 1;
 inline bool ServerMeta::has_all_tables_selectable() const {
-  return (_has_bits_[0] & 0x00000100u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void ServerMeta::set_has_all_tables_selectable() {
-  _has_bits_[0] |= 0x00000100u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void ServerMeta::clear_has_all_tables_selectable() {
-  _has_bits_[0] &= ~0x00000100u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void ServerMeta::clear_all_tables_selectable() {
   all_tables_selectable_ = false;
   clear_has_all_tables_selectable();
 }
 inline bool ServerMeta::all_tables_selectable() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.all_tables_selectable)
   return all_tables_selectable_;
 }
 inline void ServerMeta::set_all_tables_selectable(bool value) {
   set_has_all_tables_selectable();
   all_tables_selectable_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.all_tables_selectable)
 }
 
 // optional bool blob_included_in_max_row_size = 2;
 inline bool ServerMeta::has_blob_included_in_max_row_size() const {
-  return (_has_bits_[0] & 0x00000200u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void ServerMeta::set_has_blob_included_in_max_row_size() {
-  _has_bits_[0] |= 0x00000200u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void ServerMeta::clear_has_blob_included_in_max_row_size() {
-  _has_bits_[0] &= ~0x00000200u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void ServerMeta::clear_blob_included_in_max_row_size() {
   blob_included_in_max_row_size_ = false;
   clear_has_blob_included_in_max_row_size();
 }
 inline bool ServerMeta::blob_included_in_max_row_size() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.blob_included_in_max_row_size)
   return blob_included_in_max_row_size_;
 }
 inline void ServerMeta::set_blob_included_in_max_row_size(bool value) {
   set_has_blob_included_in_max_row_size();
   blob_included_in_max_row_size_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.blob_included_in_max_row_size)
 }
 
 // optional bool catalog_at_start = 3;
 inline bool ServerMeta::has_catalog_at_start() const {
-  return (_has_bits_[0] & 0x00000400u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void ServerMeta::set_has_catalog_at_start() {
-  _has_bits_[0] |= 0x00000400u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void ServerMeta::clear_has_catalog_at_start() {
-  _has_bits_[0] &= ~0x00000400u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void ServerMeta::clear_catalog_at_start() {
   catalog_at_start_ = false;
   clear_has_catalog_at_start();
 }
 inline bool ServerMeta::catalog_at_start() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.catalog_at_start)
   return catalog_at_start_;
 }
 inline void ServerMeta::set_catalog_at_start(bool value) {
   set_has_catalog_at_start();
   catalog_at_start_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.catalog_at_start)
 }
 
 // optional string catalog_separator = 4;
 inline bool ServerMeta::has_catalog_separator() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void ServerMeta::set_has_catalog_separator() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void ServerMeta::clear_has_catalog_separator() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void ServerMeta::clear_catalog_separator() {
-  catalog_separator_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_separator_ != &::google::protobuf::internal::kEmptyString) {
+    catalog_separator_->clear();
+  }
   clear_has_catalog_separator();
 }
 inline const ::std::string& ServerMeta::catalog_separator() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.catalog_separator)
-  return catalog_separator_.GetNoArena();
+  return *catalog_separator_;
 }
 inline void ServerMeta::set_catalog_separator(const ::std::string& value) {
   set_has_catalog_separator();
-  catalog_separator_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.catalog_separator)
+  if (catalog_separator_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_separator_ = new ::std::string;
+  }
+  catalog_separator_->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_catalog_separator(::std::string&& value) {
-  set_has_catalog_separator();
-  catalog_separator_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ServerMeta.catalog_separator)
-}
-#endif
 inline void ServerMeta::set_catalog_separator(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_catalog_separator();
-  catalog_separator_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.catalog_separator)
+  if (catalog_separator_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_separator_ = new ::std::string;
+  }
+  catalog_separator_->assign(value);
 }
 inline void ServerMeta::set_catalog_separator(const char* value, size_t size) {
   set_has_catalog_separator();
-  catalog_separator_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.catalog_separator)
+  if (catalog_separator_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_separator_ = new ::std::string;
+  }
+  catalog_separator_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ServerMeta::mutable_catalog_separator() {
   set_has_catalog_separator();
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.catalog_separator)
-  return catalog_separator_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_separator_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_separator_ = new ::std::string;
+  }
+  return catalog_separator_;
 }
 inline ::std::string* ServerMeta::release_catalog_separator() {
-  // @@protoc_insertion_point(field_release:exec.user.ServerMeta.catalog_separator)
-  if (!has_catalog_separator()) {
-    return NULL;
-  }
   clear_has_catalog_separator();
-  return catalog_separator_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_separator_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = catalog_separator_;
+    catalog_separator_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ServerMeta::set_allocated_catalog_separator(::std::string* catalog_separator) {
-  if (catalog_separator != NULL) {
+  if (catalog_separator_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_separator_;
+  }
+  if (catalog_separator) {
     set_has_catalog_separator();
+    catalog_separator_ = catalog_separator;
   } else {
     clear_has_catalog_separator();
+    catalog_separator_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  catalog_separator_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), catalog_separator);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ServerMeta.catalog_separator)
 }
 
 // optional string catalog_term = 5;
 inline bool ServerMeta::has_catalog_term() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void ServerMeta::set_has_catalog_term() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void ServerMeta::clear_has_catalog_term() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void ServerMeta::clear_catalog_term() {
-  catalog_term_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_term_ != &::google::protobuf::internal::kEmptyString) {
+    catalog_term_->clear();
+  }
   clear_has_catalog_term();
 }
 inline const ::std::string& ServerMeta::catalog_term() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.catalog_term)
-  return catalog_term_.GetNoArena();
+  return *catalog_term_;
 }
 inline void ServerMeta::set_catalog_term(const ::std::string& value) {
   set_has_catalog_term();
-  catalog_term_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.catalog_term)
+  if (catalog_term_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_term_ = new ::std::string;
+  }
+  catalog_term_->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_catalog_term(::std::string&& value) {
-  set_has_catalog_term();
-  catalog_term_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ServerMeta.catalog_term)
-}
-#endif
 inline void ServerMeta::set_catalog_term(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_catalog_term();
-  catalog_term_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.catalog_term)
+  if (catalog_term_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_term_ = new ::std::string;
+  }
+  catalog_term_->assign(value);
 }
 inline void ServerMeta::set_catalog_term(const char* value, size_t size) {
   set_has_catalog_term();
-  catalog_term_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.catalog_term)
+  if (catalog_term_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_term_ = new ::std::string;
+  }
+  catalog_term_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ServerMeta::mutable_catalog_term() {
   set_has_catalog_term();
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.catalog_term)
-  return catalog_term_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_term_ == &::google::protobuf::internal::kEmptyString) {
+    catalog_term_ = new ::std::string;
+  }
+  return catalog_term_;
 }
 inline ::std::string* ServerMeta::release_catalog_term() {
-  // @@protoc_insertion_point(field_release:exec.user.ServerMeta.catalog_term)
-  if (!has_catalog_term()) {
-    return NULL;
-  }
   clear_has_catalog_term();
-  return catalog_term_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (catalog_term_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = catalog_term_;
+    catalog_term_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ServerMeta::set_allocated_catalog_term(::std::string* catalog_term) {
-  if (catalog_term != NULL) {
+  if (catalog_term_ != &::google::protobuf::internal::kEmptyString) {
+    delete catalog_term_;
+  }
+  if (catalog_term) {
     set_has_catalog_term();
+    catalog_term_ = catalog_term;
   } else {
     clear_has_catalog_term();
+    catalog_term_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  catalog_term_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), catalog_term);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ServerMeta.catalog_term)
 }
 
 // repeated .exec.user.CollateSupport collate_support = 6;
@@ -12167,52 +10279,45 @@
   collate_support_.Clear();
 }
 inline ::exec::user::CollateSupport ServerMeta::collate_support(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.collate_support)
   return static_cast< ::exec::user::CollateSupport >(collate_support_.Get(index));
 }
 inline void ServerMeta::set_collate_support(int index, ::exec::user::CollateSupport value) {
   assert(::exec::user::CollateSupport_IsValid(value));
   collate_support_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.collate_support)
 }
 inline void ServerMeta::add_collate_support(::exec::user::CollateSupport value) {
   assert(::exec::user::CollateSupport_IsValid(value));
   collate_support_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.collate_support)
 }
 inline const ::google::protobuf::RepeatedField<int>&
 ServerMeta::collate_support() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.collate_support)
   return collate_support_;
 }
 inline ::google::protobuf::RepeatedField<int>*
 ServerMeta::mutable_collate_support() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.collate_support)
   return &collate_support_;
 }
 
 // optional bool column_aliasing_supported = 7;
 inline bool ServerMeta::has_column_aliasing_supported() const {
-  return (_has_bits_[0] & 0x00000800u) != 0;
+  return (_has_bits_[0] & 0x00000040u) != 0;
 }
 inline void ServerMeta::set_has_column_aliasing_supported() {
-  _has_bits_[0] |= 0x00000800u;
+  _has_bits_[0] |= 0x00000040u;
 }
 inline void ServerMeta::clear_has_column_aliasing_supported() {
-  _has_bits_[0] &= ~0x00000800u;
+  _has_bits_[0] &= ~0x00000040u;
 }
 inline void ServerMeta::clear_column_aliasing_supported() {
   column_aliasing_supported_ = false;
   clear_has_column_aliasing_supported();
 }
 inline bool ServerMeta::column_aliasing_supported() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.column_aliasing_supported)
   return column_aliasing_supported_;
 }
 inline void ServerMeta::set_column_aliasing_supported(bool value) {
   set_has_column_aliasing_supported();
   column_aliasing_supported_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.column_aliasing_supported)
 }
 
 // repeated .exec.user.ConvertSupport convert_support = 8;
@@ -12222,52 +10327,45 @@
 inline void ServerMeta::clear_convert_support() {
   convert_support_.Clear();
 }
-inline ::exec::user::ConvertSupport* ServerMeta::mutable_convert_support(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.convert_support)
-  return convert_support_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::user::ConvertSupport >*
-ServerMeta::mutable_convert_support() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.convert_support)
-  return &convert_support_;
-}
 inline const ::exec::user::ConvertSupport& ServerMeta::convert_support(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.convert_support)
   return convert_support_.Get(index);
 }
+inline ::exec::user::ConvertSupport* ServerMeta::mutable_convert_support(int index) {
+  return convert_support_.Mutable(index);
+}
 inline ::exec::user::ConvertSupport* ServerMeta::add_convert_support() {
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.convert_support)
   return convert_support_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::user::ConvertSupport >&
 ServerMeta::convert_support() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.convert_support)
   return convert_support_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::user::ConvertSupport >*
+ServerMeta::mutable_convert_support() {
+  return &convert_support_;
+}
 
 // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
 inline bool ServerMeta::has_correlation_names_support() const {
-  return (_has_bits_[1] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000100u) != 0;
 }
 inline void ServerMeta::set_has_correlation_names_support() {
-  _has_bits_[1] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000100u;
 }
 inline void ServerMeta::clear_has_correlation_names_support() {
-  _has_bits_[1] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000100u;
 }
 inline void ServerMeta::clear_correlation_names_support() {
   correlation_names_support_ = 1;
   clear_has_correlation_names_support();
 }
 inline ::exec::user::CorrelationNamesSupport ServerMeta::correlation_names_support() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.correlation_names_support)
   return static_cast< ::exec::user::CorrelationNamesSupport >(correlation_names_support_);
 }
 inline void ServerMeta::set_correlation_names_support(::exec::user::CorrelationNamesSupport value) {
   assert(::exec::user::CorrelationNamesSupport_IsValid(value));
   set_has_correlation_names_support();
   correlation_names_support_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.correlation_names_support)
 }
 
 // repeated string date_time_functions = 10;
@@ -12278,64 +10376,39 @@
   date_time_functions_.Clear();
 }
 inline const ::std::string& ServerMeta::date_time_functions(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.date_time_functions)
   return date_time_functions_.Get(index);
 }
 inline ::std::string* ServerMeta::mutable_date_time_functions(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.date_time_functions)
   return date_time_functions_.Mutable(index);
 }
 inline void ServerMeta::set_date_time_functions(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.date_time_functions)
   date_time_functions_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_date_time_functions(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.date_time_functions)
-  date_time_functions_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void ServerMeta::set_date_time_functions(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   date_time_functions_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.date_time_functions)
 }
 inline void ServerMeta::set_date_time_functions(int index, const char* value, size_t size) {
   date_time_functions_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.date_time_functions)
 }
 inline ::std::string* ServerMeta::add_date_time_functions() {
-  // @@protoc_insertion_point(field_add_mutable:exec.user.ServerMeta.date_time_functions)
   return date_time_functions_.Add();
 }
 inline void ServerMeta::add_date_time_functions(const ::std::string& value) {
   date_time_functions_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.date_time_functions)
 }
-#if LANG_CXX11
-inline void ServerMeta::add_date_time_functions(::std::string&& value) {
-  date_time_functions_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.date_time_functions)
-}
-#endif
 inline void ServerMeta::add_date_time_functions(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   date_time_functions_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.user.ServerMeta.date_time_functions)
 }
 inline void ServerMeta::add_date_time_functions(const char* value, size_t size) {
   date_time_functions_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.user.ServerMeta.date_time_functions)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 ServerMeta::date_time_functions() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.date_time_functions)
   return date_time_functions_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 ServerMeta::mutable_date_time_functions() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.date_time_functions)
   return &date_time_functions_;
 }
 
@@ -12347,53 +10420,46 @@
   date_time_literals_support_.Clear();
 }
 inline ::exec::user::DateTimeLiteralsSupport ServerMeta::date_time_literals_support(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.date_time_literals_support)
   return static_cast< ::exec::user::DateTimeLiteralsSupport >(date_time_literals_support_.Get(index));
 }
 inline void ServerMeta::set_date_time_literals_support(int index, ::exec::user::DateTimeLiteralsSupport value) {
   assert(::exec::user::DateTimeLiteralsSupport_IsValid(value));
   date_time_literals_support_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.date_time_literals_support)
 }
 inline void ServerMeta::add_date_time_literals_support(::exec::user::DateTimeLiteralsSupport value) {
   assert(::exec::user::DateTimeLiteralsSupport_IsValid(value));
   date_time_literals_support_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.date_time_literals_support)
 }
 inline const ::google::protobuf::RepeatedField<int>&
 ServerMeta::date_time_literals_support() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.date_time_literals_support)
   return date_time_literals_support_;
 }
 inline ::google::protobuf::RepeatedField<int>*
 ServerMeta::mutable_date_time_literals_support() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.date_time_literals_support)
   return &date_time_literals_support_;
 }
 
 // optional .exec.user.GroupBySupport group_by_support = 12;
 inline bool ServerMeta::has_group_by_support() const {
-  return (_has_bits_[1] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000800u) != 0;
 }
 inline void ServerMeta::set_has_group_by_support() {
-  _has_bits_[1] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000800u;
 }
 inline void ServerMeta::clear_has_group_by_support() {
-  _has_bits_[1] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000800u;
 }
 inline void ServerMeta::clear_group_by_support() {
   group_by_support_ = 1;
   clear_has_group_by_support();
 }
 inline ::exec::user::GroupBySupport ServerMeta::group_by_support() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.group_by_support)
   return static_cast< ::exec::user::GroupBySupport >(group_by_support_);
 }
 inline void ServerMeta::set_group_by_support(::exec::user::GroupBySupport value) {
   assert(::exec::user::GroupBySupport_IsValid(value));
   set_has_group_by_support();
   group_by_support_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.group_by_support)
 }
 
 // optional .exec.user.IdentifierCasing identifier_casing = 13;
@@ -12411,537 +10477,501 @@
   clear_has_identifier_casing();
 }
 inline ::exec::user::IdentifierCasing ServerMeta::identifier_casing() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.identifier_casing)
   return static_cast< ::exec::user::IdentifierCasing >(identifier_casing_);
 }
 inline void ServerMeta::set_identifier_casing(::exec::user::IdentifierCasing value) {
   assert(::exec::user::IdentifierCasing_IsValid(value));
   set_has_identifier_casing();
   identifier_casing_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.identifier_casing)
 }
 
 // optional string identifier_quote_string = 14;
 inline bool ServerMeta::has_identifier_quote_string() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00002000u) != 0;
 }
 inline void ServerMeta::set_has_identifier_quote_string() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00002000u;
 }
 inline void ServerMeta::clear_has_identifier_quote_string() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00002000u;
 }
 inline void ServerMeta::clear_identifier_quote_string() {
-  identifier_quote_string_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (identifier_quote_string_ != &::google::protobuf::internal::kEmptyString) {
+    identifier_quote_string_->clear();
+  }
   clear_has_identifier_quote_string();
 }
 inline const ::std::string& ServerMeta::identifier_quote_string() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.identifier_quote_string)
-  return identifier_quote_string_.GetNoArena();
+  return *identifier_quote_string_;
 }
 inline void ServerMeta::set_identifier_quote_string(const ::std::string& value) {
   set_has_identifier_quote_string();
-  identifier_quote_string_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.identifier_quote_string)
+  if (identifier_quote_string_ == &::google::protobuf::internal::kEmptyString) {
+    identifier_quote_string_ = new ::std::string;
+  }
+  identifier_quote_string_->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_identifier_quote_string(::std::string&& value) {
-  set_has_identifier_quote_string();
-  identifier_quote_string_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ServerMeta.identifier_quote_string)
-}
-#endif
 inline void ServerMeta::set_identifier_quote_string(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_identifier_quote_string();
-  identifier_quote_string_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.identifier_quote_string)
+  if (identifier_quote_string_ == &::google::protobuf::internal::kEmptyString) {
+    identifier_quote_string_ = new ::std::string;
+  }
+  identifier_quote_string_->assign(value);
 }
 inline void ServerMeta::set_identifier_quote_string(const char* value, size_t size) {
   set_has_identifier_quote_string();
-  identifier_quote_string_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.identifier_quote_string)
+  if (identifier_quote_string_ == &::google::protobuf::internal::kEmptyString) {
+    identifier_quote_string_ = new ::std::string;
+  }
+  identifier_quote_string_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ServerMeta::mutable_identifier_quote_string() {
   set_has_identifier_quote_string();
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.identifier_quote_string)
-  return identifier_quote_string_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (identifier_quote_string_ == &::google::protobuf::internal::kEmptyString) {
+    identifier_quote_string_ = new ::std::string;
+  }
+  return identifier_quote_string_;
 }
 inline ::std::string* ServerMeta::release_identifier_quote_string() {
-  // @@protoc_insertion_point(field_release:exec.user.ServerMeta.identifier_quote_string)
-  if (!has_identifier_quote_string()) {
-    return NULL;
-  }
   clear_has_identifier_quote_string();
-  return identifier_quote_string_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (identifier_quote_string_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = identifier_quote_string_;
+    identifier_quote_string_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ServerMeta::set_allocated_identifier_quote_string(::std::string* identifier_quote_string) {
-  if (identifier_quote_string != NULL) {
+  if (identifier_quote_string_ != &::google::protobuf::internal::kEmptyString) {
+    delete identifier_quote_string_;
+  }
+  if (identifier_quote_string) {
     set_has_identifier_quote_string();
+    identifier_quote_string_ = identifier_quote_string;
   } else {
     clear_has_identifier_quote_string();
+    identifier_quote_string_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  identifier_quote_string_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), identifier_quote_string);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ServerMeta.identifier_quote_string)
 }
 
 // optional bool like_escape_clause_supported = 15;
 inline bool ServerMeta::has_like_escape_clause_supported() const {
-  return (_has_bits_[0] & 0x20000000u) != 0;
+  return (_has_bits_[0] & 0x00004000u) != 0;
 }
 inline void ServerMeta::set_has_like_escape_clause_supported() {
-  _has_bits_[0] |= 0x20000000u;
+  _has_bits_[0] |= 0x00004000u;
 }
 inline void ServerMeta::clear_has_like_escape_clause_supported() {
-  _has_bits_[0] &= ~0x20000000u;
+  _has_bits_[0] &= ~0x00004000u;
 }
 inline void ServerMeta::clear_like_escape_clause_supported() {
   like_escape_clause_supported_ = false;
   clear_has_like_escape_clause_supported();
 }
 inline bool ServerMeta::like_escape_clause_supported() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.like_escape_clause_supported)
   return like_escape_clause_supported_;
 }
 inline void ServerMeta::set_like_escape_clause_supported(bool value) {
   set_has_like_escape_clause_supported();
   like_escape_clause_supported_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.like_escape_clause_supported)
 }
 
 // optional uint32 max_binary_literal_length = 16;
 inline bool ServerMeta::has_max_binary_literal_length() const {
-  return (_has_bits_[0] & 0x00002000u) != 0;
+  return (_has_bits_[0] & 0x00008000u) != 0;
 }
 inline void ServerMeta::set_has_max_binary_literal_length() {
-  _has_bits_[0] |= 0x00002000u;
+  _has_bits_[0] |= 0x00008000u;
 }
 inline void ServerMeta::clear_has_max_binary_literal_length() {
-  _has_bits_[0] &= ~0x00002000u;
+  _has_bits_[0] &= ~0x00008000u;
 }
 inline void ServerMeta::clear_max_binary_literal_length() {
   max_binary_literal_length_ = 0u;
   clear_has_max_binary_literal_length();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_binary_literal_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_binary_literal_length)
   return max_binary_literal_length_;
 }
 inline void ServerMeta::set_max_binary_literal_length(::google::protobuf::uint32 value) {
   set_has_max_binary_literal_length();
   max_binary_literal_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_binary_literal_length)
 }
 
 // optional uint32 max_catalog_name_length = 17;
 inline bool ServerMeta::has_max_catalog_name_length() const {
-  return (_has_bits_[0] & 0x00004000u) != 0;
+  return (_has_bits_[0] & 0x00010000u) != 0;
 }
 inline void ServerMeta::set_has_max_catalog_name_length() {
-  _has_bits_[0] |= 0x00004000u;
+  _has_bits_[0] |= 0x00010000u;
 }
 inline void ServerMeta::clear_has_max_catalog_name_length() {
-  _has_bits_[0] &= ~0x00004000u;
+  _has_bits_[0] &= ~0x00010000u;
 }
 inline void ServerMeta::clear_max_catalog_name_length() {
   max_catalog_name_length_ = 0u;
   clear_has_max_catalog_name_length();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_catalog_name_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_catalog_name_length)
   return max_catalog_name_length_;
 }
 inline void ServerMeta::set_max_catalog_name_length(::google::protobuf::uint32 value) {
   set_has_max_catalog_name_length();
   max_catalog_name_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_catalog_name_length)
 }
 
 // optional uint32 max_char_literal_length = 18;
 inline bool ServerMeta::has_max_char_literal_length() const {
-  return (_has_bits_[0] & 0x00008000u) != 0;
+  return (_has_bits_[0] & 0x00020000u) != 0;
 }
 inline void ServerMeta::set_has_max_char_literal_length() {
-  _has_bits_[0] |= 0x00008000u;
+  _has_bits_[0] |= 0x00020000u;
 }
 inline void ServerMeta::clear_has_max_char_literal_length() {
-  _has_bits_[0] &= ~0x00008000u;
+  _has_bits_[0] &= ~0x00020000u;
 }
 inline void ServerMeta::clear_max_char_literal_length() {
   max_char_literal_length_ = 0u;
   clear_has_max_char_literal_length();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_char_literal_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_char_literal_length)
   return max_char_literal_length_;
 }
 inline void ServerMeta::set_max_char_literal_length(::google::protobuf::uint32 value) {
   set_has_max_char_literal_length();
   max_char_literal_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_char_literal_length)
 }
 
 // optional uint32 max_column_name_length = 19;
 inline bool ServerMeta::has_max_column_name_length() const {
-  return (_has_bits_[0] & 0x00010000u) != 0;
+  return (_has_bits_[0] & 0x00040000u) != 0;
 }
 inline void ServerMeta::set_has_max_column_name_length() {
-  _has_bits_[0] |= 0x00010000u;
+  _has_bits_[0] |= 0x00040000u;
 }
 inline void ServerMeta::clear_has_max_column_name_length() {
-  _has_bits_[0] &= ~0x00010000u;
+  _has_bits_[0] &= ~0x00040000u;
 }
 inline void ServerMeta::clear_max_column_name_length() {
   max_column_name_length_ = 0u;
   clear_has_max_column_name_length();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_column_name_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_column_name_length)
   return max_column_name_length_;
 }
 inline void ServerMeta::set_max_column_name_length(::google::protobuf::uint32 value) {
   set_has_max_column_name_length();
   max_column_name_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_column_name_length)
 }
 
 // optional uint32 max_columns_in_group_by = 20;
 inline bool ServerMeta::has_max_columns_in_group_by() const {
-  return (_has_bits_[0] & 0x00020000u) != 0;
+  return (_has_bits_[0] & 0x00080000u) != 0;
 }
 inline void ServerMeta::set_has_max_columns_in_group_by() {
-  _has_bits_[0] |= 0x00020000u;
+  _has_bits_[0] |= 0x00080000u;
 }
 inline void ServerMeta::clear_has_max_columns_in_group_by() {
-  _has_bits_[0] &= ~0x00020000u;
+  _has_bits_[0] &= ~0x00080000u;
 }
 inline void ServerMeta::clear_max_columns_in_group_by() {
   max_columns_in_group_by_ = 0u;
   clear_has_max_columns_in_group_by();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_columns_in_group_by() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_columns_in_group_by)
   return max_columns_in_group_by_;
 }
 inline void ServerMeta::set_max_columns_in_group_by(::google::protobuf::uint32 value) {
   set_has_max_columns_in_group_by();
   max_columns_in_group_by_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_columns_in_group_by)
 }
 
 // optional uint32 max_columns_in_order_by = 21;
 inline bool ServerMeta::has_max_columns_in_order_by() const {
-  return (_has_bits_[0] & 0x00040000u) != 0;
+  return (_has_bits_[0] & 0x00100000u) != 0;
 }
 inline void ServerMeta::set_has_max_columns_in_order_by() {
-  _has_bits_[0] |= 0x00040000u;
+  _has_bits_[0] |= 0x00100000u;
 }
 inline void ServerMeta::clear_has_max_columns_in_order_by() {
-  _has_bits_[0] &= ~0x00040000u;
+  _has_bits_[0] &= ~0x00100000u;
 }
 inline void ServerMeta::clear_max_columns_in_order_by() {
   max_columns_in_order_by_ = 0u;
   clear_has_max_columns_in_order_by();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_columns_in_order_by() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_columns_in_order_by)
   return max_columns_in_order_by_;
 }
 inline void ServerMeta::set_max_columns_in_order_by(::google::protobuf::uint32 value) {
   set_has_max_columns_in_order_by();
   max_columns_in_order_by_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_columns_in_order_by)
 }
 
 // optional uint32 max_columns_in_select = 22;
 inline bool ServerMeta::has_max_columns_in_select() const {
-  return (_has_bits_[0] & 0x00080000u) != 0;
+  return (_has_bits_[0] & 0x00200000u) != 0;
 }
 inline void ServerMeta::set_has_max_columns_in_select() {
-  _has_bits_[0] |= 0x00080000u;
+  _has_bits_[0] |= 0x00200000u;
 }
 inline void ServerMeta::clear_has_max_columns_in_select() {
-  _has_bits_[0] &= ~0x00080000u;
+  _has_bits_[0] &= ~0x00200000u;
 }
 inline void ServerMeta::clear_max_columns_in_select() {
   max_columns_in_select_ = 0u;
   clear_has_max_columns_in_select();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_columns_in_select() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_columns_in_select)
   return max_columns_in_select_;
 }
 inline void ServerMeta::set_max_columns_in_select(::google::protobuf::uint32 value) {
   set_has_max_columns_in_select();
   max_columns_in_select_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_columns_in_select)
 }
 
 // optional uint32 max_cursor_name_length = 23;
 inline bool ServerMeta::has_max_cursor_name_length() const {
-  return (_has_bits_[0] & 0x00100000u) != 0;
+  return (_has_bits_[0] & 0x00400000u) != 0;
 }
 inline void ServerMeta::set_has_max_cursor_name_length() {
-  _has_bits_[0] |= 0x00100000u;
+  _has_bits_[0] |= 0x00400000u;
 }
 inline void ServerMeta::clear_has_max_cursor_name_length() {
-  _has_bits_[0] &= ~0x00100000u;
+  _has_bits_[0] &= ~0x00400000u;
 }
 inline void ServerMeta::clear_max_cursor_name_length() {
   max_cursor_name_length_ = 0u;
   clear_has_max_cursor_name_length();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_cursor_name_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_cursor_name_length)
   return max_cursor_name_length_;
 }
 inline void ServerMeta::set_max_cursor_name_length(::google::protobuf::uint32 value) {
   set_has_max_cursor_name_length();
   max_cursor_name_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_cursor_name_length)
 }
 
 // optional uint32 max_logical_lob_size = 24;
 inline bool ServerMeta::has_max_logical_lob_size() const {
-  return (_has_bits_[0] & 0x00200000u) != 0;
+  return (_has_bits_[0] & 0x00800000u) != 0;
 }
 inline void ServerMeta::set_has_max_logical_lob_size() {
-  _has_bits_[0] |= 0x00200000u;
+  _has_bits_[0] |= 0x00800000u;
 }
 inline void ServerMeta::clear_has_max_logical_lob_size() {
-  _has_bits_[0] &= ~0x00200000u;
+  _has_bits_[0] &= ~0x00800000u;
 }
 inline void ServerMeta::clear_max_logical_lob_size() {
   max_logical_lob_size_ = 0u;
   clear_has_max_logical_lob_size();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_logical_lob_size() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_logical_lob_size)
   return max_logical_lob_size_;
 }
 inline void ServerMeta::set_max_logical_lob_size(::google::protobuf::uint32 value) {
   set_has_max_logical_lob_size();
   max_logical_lob_size_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_logical_lob_size)
 }
 
 // optional uint32 max_row_size = 25;
 inline bool ServerMeta::has_max_row_size() const {
-  return (_has_bits_[0] & 0x00400000u) != 0;
+  return (_has_bits_[0] & 0x01000000u) != 0;
 }
 inline void ServerMeta::set_has_max_row_size() {
-  _has_bits_[0] |= 0x00400000u;
+  _has_bits_[0] |= 0x01000000u;
 }
 inline void ServerMeta::clear_has_max_row_size() {
-  _has_bits_[0] &= ~0x00400000u;
+  _has_bits_[0] &= ~0x01000000u;
 }
 inline void ServerMeta::clear_max_row_size() {
   max_row_size_ = 0u;
   clear_has_max_row_size();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_row_size() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_row_size)
   return max_row_size_;
 }
 inline void ServerMeta::set_max_row_size(::google::protobuf::uint32 value) {
   set_has_max_row_size();
   max_row_size_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_row_size)
 }
 
 // optional uint32 max_schema_name_length = 26;
 inline bool ServerMeta::has_max_schema_name_length() const {
-  return (_has_bits_[0] & 0x00800000u) != 0;
+  return (_has_bits_[0] & 0x02000000u) != 0;
 }
 inline void ServerMeta::set_has_max_schema_name_length() {
-  _has_bits_[0] |= 0x00800000u;
+  _has_bits_[0] |= 0x02000000u;
 }
 inline void ServerMeta::clear_has_max_schema_name_length() {
-  _has_bits_[0] &= ~0x00800000u;
+  _has_bits_[0] &= ~0x02000000u;
 }
 inline void ServerMeta::clear_max_schema_name_length() {
   max_schema_name_length_ = 0u;
   clear_has_max_schema_name_length();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_schema_name_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_schema_name_length)
   return max_schema_name_length_;
 }
 inline void ServerMeta::set_max_schema_name_length(::google::protobuf::uint32 value) {
   set_has_max_schema_name_length();
   max_schema_name_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_schema_name_length)
 }
 
 // optional uint32 max_statement_length = 27;
 inline bool ServerMeta::has_max_statement_length() const {
-  return (_has_bits_[0] & 0x01000000u) != 0;
+  return (_has_bits_[0] & 0x04000000u) != 0;
 }
 inline void ServerMeta::set_has_max_statement_length() {
-  _has_bits_[0] |= 0x01000000u;
+  _has_bits_[0] |= 0x04000000u;
 }
 inline void ServerMeta::clear_has_max_statement_length() {
-  _has_bits_[0] &= ~0x01000000u;
+  _has_bits_[0] &= ~0x04000000u;
 }
 inline void ServerMeta::clear_max_statement_length() {
   max_statement_length_ = 0u;
   clear_has_max_statement_length();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_statement_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_statement_length)
   return max_statement_length_;
 }
 inline void ServerMeta::set_max_statement_length(::google::protobuf::uint32 value) {
   set_has_max_statement_length();
   max_statement_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_statement_length)
 }
 
 // optional uint32 max_statements = 28;
 inline bool ServerMeta::has_max_statements() const {
-  return (_has_bits_[0] & 0x02000000u) != 0;
+  return (_has_bits_[0] & 0x08000000u) != 0;
 }
 inline void ServerMeta::set_has_max_statements() {
-  _has_bits_[0] |= 0x02000000u;
+  _has_bits_[0] |= 0x08000000u;
 }
 inline void ServerMeta::clear_has_max_statements() {
-  _has_bits_[0] &= ~0x02000000u;
+  _has_bits_[0] &= ~0x08000000u;
 }
 inline void ServerMeta::clear_max_statements() {
   max_statements_ = 0u;
   clear_has_max_statements();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_statements() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_statements)
   return max_statements_;
 }
 inline void ServerMeta::set_max_statements(::google::protobuf::uint32 value) {
   set_has_max_statements();
   max_statements_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_statements)
 }
 
 // optional uint32 max_table_name_length = 29;
 inline bool ServerMeta::has_max_table_name_length() const {
-  return (_has_bits_[0] & 0x04000000u) != 0;
+  return (_has_bits_[0] & 0x10000000u) != 0;
 }
 inline void ServerMeta::set_has_max_table_name_length() {
-  _has_bits_[0] |= 0x04000000u;
+  _has_bits_[0] |= 0x10000000u;
 }
 inline void ServerMeta::clear_has_max_table_name_length() {
-  _has_bits_[0] &= ~0x04000000u;
+  _has_bits_[0] &= ~0x10000000u;
 }
 inline void ServerMeta::clear_max_table_name_length() {
   max_table_name_length_ = 0u;
   clear_has_max_table_name_length();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_table_name_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_table_name_length)
   return max_table_name_length_;
 }
 inline void ServerMeta::set_max_table_name_length(::google::protobuf::uint32 value) {
   set_has_max_table_name_length();
   max_table_name_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_table_name_length)
 }
 
 // optional uint32 max_tables_in_select = 30;
 inline bool ServerMeta::has_max_tables_in_select() const {
-  return (_has_bits_[0] & 0x08000000u) != 0;
+  return (_has_bits_[0] & 0x20000000u) != 0;
 }
 inline void ServerMeta::set_has_max_tables_in_select() {
-  _has_bits_[0] |= 0x08000000u;
+  _has_bits_[0] |= 0x20000000u;
 }
 inline void ServerMeta::clear_has_max_tables_in_select() {
-  _has_bits_[0] &= ~0x08000000u;
+  _has_bits_[0] &= ~0x20000000u;
 }
 inline void ServerMeta::clear_max_tables_in_select() {
   max_tables_in_select_ = 0u;
   clear_has_max_tables_in_select();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_tables_in_select() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_tables_in_select)
   return max_tables_in_select_;
 }
 inline void ServerMeta::set_max_tables_in_select(::google::protobuf::uint32 value) {
   set_has_max_tables_in_select();
   max_tables_in_select_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_tables_in_select)
 }
 
 // optional uint32 max_user_name_length = 31;
 inline bool ServerMeta::has_max_user_name_length() const {
-  return (_has_bits_[0] & 0x10000000u) != 0;
+  return (_has_bits_[0] & 0x40000000u) != 0;
 }
 inline void ServerMeta::set_has_max_user_name_length() {
-  _has_bits_[0] |= 0x10000000u;
+  _has_bits_[0] |= 0x40000000u;
 }
 inline void ServerMeta::clear_has_max_user_name_length() {
-  _has_bits_[0] &= ~0x10000000u;
+  _has_bits_[0] &= ~0x40000000u;
 }
 inline void ServerMeta::clear_max_user_name_length() {
   max_user_name_length_ = 0u;
   clear_has_max_user_name_length();
 }
 inline ::google::protobuf::uint32 ServerMeta::max_user_name_length() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.max_user_name_length)
   return max_user_name_length_;
 }
 inline void ServerMeta::set_max_user_name_length(::google::protobuf::uint32 value) {
   set_has_max_user_name_length();
   max_user_name_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.max_user_name_length)
 }
 
 // optional .exec.user.NullCollation null_collation = 32;
 inline bool ServerMeta::has_null_collation() const {
-  return (_has_bits_[1] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x80000000u) != 0;
 }
 inline void ServerMeta::set_has_null_collation() {
-  _has_bits_[1] |= 0x00000002u;
+  _has_bits_[0] |= 0x80000000u;
 }
 inline void ServerMeta::clear_has_null_collation() {
-  _has_bits_[1] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x80000000u;
 }
 inline void ServerMeta::clear_null_collation() {
   null_collation_ = 0;
   clear_has_null_collation();
 }
 inline ::exec::user::NullCollation ServerMeta::null_collation() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.null_collation)
   return static_cast< ::exec::user::NullCollation >(null_collation_);
 }
 inline void ServerMeta::set_null_collation(::exec::user::NullCollation value) {
   assert(::exec::user::NullCollation_IsValid(value));
   set_has_null_collation();
   null_collation_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.null_collation)
 }
 
 // optional bool null_plus_non_null_equals_null = 33;
 inline bool ServerMeta::has_null_plus_non_null_equals_null() const {
-  return (_has_bits_[0] & 0x40000000u) != 0;
+  return (_has_bits_[1] & 0x00000001u) != 0;
 }
 inline void ServerMeta::set_has_null_plus_non_null_equals_null() {
-  _has_bits_[0] |= 0x40000000u;
+  _has_bits_[1] |= 0x00000001u;
 }
 inline void ServerMeta::clear_has_null_plus_non_null_equals_null() {
-  _has_bits_[0] &= ~0x40000000u;
+  _has_bits_[1] &= ~0x00000001u;
 }
 inline void ServerMeta::clear_null_plus_non_null_equals_null() {
   null_plus_non_null_equals_null_ = false;
   clear_has_null_plus_non_null_equals_null();
 }
 inline bool ServerMeta::null_plus_non_null_equals_null() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.null_plus_non_null_equals_null)
   return null_plus_non_null_equals_null_;
 }
 inline void ServerMeta::set_null_plus_non_null_equals_null(bool value) {
   set_has_null_plus_non_null_equals_null();
   null_plus_non_null_equals_null_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.null_plus_non_null_equals_null)
 }
 
 // repeated string numeric_functions = 34;
@@ -12952,64 +10982,39 @@
   numeric_functions_.Clear();
 }
 inline const ::std::string& ServerMeta::numeric_functions(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.numeric_functions)
   return numeric_functions_.Get(index);
 }
 inline ::std::string* ServerMeta::mutable_numeric_functions(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.numeric_functions)
   return numeric_functions_.Mutable(index);
 }
 inline void ServerMeta::set_numeric_functions(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.numeric_functions)
   numeric_functions_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_numeric_functions(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.numeric_functions)
-  numeric_functions_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void ServerMeta::set_numeric_functions(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   numeric_functions_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.numeric_functions)
 }
 inline void ServerMeta::set_numeric_functions(int index, const char* value, size_t size) {
   numeric_functions_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.numeric_functions)
 }
 inline ::std::string* ServerMeta::add_numeric_functions() {
-  // @@protoc_insertion_point(field_add_mutable:exec.user.ServerMeta.numeric_functions)
   return numeric_functions_.Add();
 }
 inline void ServerMeta::add_numeric_functions(const ::std::string& value) {
   numeric_functions_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.numeric_functions)
 }
-#if LANG_CXX11
-inline void ServerMeta::add_numeric_functions(::std::string&& value) {
-  numeric_functions_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.numeric_functions)
-}
-#endif
 inline void ServerMeta::add_numeric_functions(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   numeric_functions_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.user.ServerMeta.numeric_functions)
 }
 inline void ServerMeta::add_numeric_functions(const char* value, size_t size) {
   numeric_functions_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.user.ServerMeta.numeric_functions)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 ServerMeta::numeric_functions() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.numeric_functions)
   return numeric_functions_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 ServerMeta::mutable_numeric_functions() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.numeric_functions)
   return &numeric_functions_;
 }
 
@@ -13021,27 +11026,22 @@
   order_by_support_.Clear();
 }
 inline ::exec::user::OrderBySupport ServerMeta::order_by_support(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.order_by_support)
   return static_cast< ::exec::user::OrderBySupport >(order_by_support_.Get(index));
 }
 inline void ServerMeta::set_order_by_support(int index, ::exec::user::OrderBySupport value) {
   assert(::exec::user::OrderBySupport_IsValid(value));
   order_by_support_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.order_by_support)
 }
 inline void ServerMeta::add_order_by_support(::exec::user::OrderBySupport value) {
   assert(::exec::user::OrderBySupport_IsValid(value));
   order_by_support_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.order_by_support)
 }
 inline const ::google::protobuf::RepeatedField<int>&
 ServerMeta::order_by_support() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.order_by_support)
   return order_by_support_;
 }
 inline ::google::protobuf::RepeatedField<int>*
 ServerMeta::mutable_order_by_support() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.order_by_support)
   return &order_by_support_;
 }
 
@@ -13053,299 +11053,300 @@
   outer_join_support_.Clear();
 }
 inline ::exec::user::OuterJoinSupport ServerMeta::outer_join_support(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.outer_join_support)
   return static_cast< ::exec::user::OuterJoinSupport >(outer_join_support_.Get(index));
 }
 inline void ServerMeta::set_outer_join_support(int index, ::exec::user::OuterJoinSupport value) {
   assert(::exec::user::OuterJoinSupport_IsValid(value));
   outer_join_support_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.outer_join_support)
 }
 inline void ServerMeta::add_outer_join_support(::exec::user::OuterJoinSupport value) {
   assert(::exec::user::OuterJoinSupport_IsValid(value));
   outer_join_support_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.outer_join_support)
 }
 inline const ::google::protobuf::RepeatedField<int>&
 ServerMeta::outer_join_support() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.outer_join_support)
   return outer_join_support_;
 }
 inline ::google::protobuf::RepeatedField<int>*
 ServerMeta::mutable_outer_join_support() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.outer_join_support)
   return &outer_join_support_;
 }
 
 // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
 inline bool ServerMeta::has_quoted_identifier_casing() const {
-  return (_has_bits_[1] & 0x00000004u) != 0;
+  return (_has_bits_[1] & 0x00000010u) != 0;
 }
 inline void ServerMeta::set_has_quoted_identifier_casing() {
-  _has_bits_[1] |= 0x00000004u;
+  _has_bits_[1] |= 0x00000010u;
 }
 inline void ServerMeta::clear_has_quoted_identifier_casing() {
-  _has_bits_[1] &= ~0x00000004u;
+  _has_bits_[1] &= ~0x00000010u;
 }
 inline void ServerMeta::clear_quoted_identifier_casing() {
   quoted_identifier_casing_ = 0;
   clear_has_quoted_identifier_casing();
 }
 inline ::exec::user::IdentifierCasing ServerMeta::quoted_identifier_casing() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.quoted_identifier_casing)
   return static_cast< ::exec::user::IdentifierCasing >(quoted_identifier_casing_);
 }
 inline void ServerMeta::set_quoted_identifier_casing(::exec::user::IdentifierCasing value) {
   assert(::exec::user::IdentifierCasing_IsValid(value));
   set_has_quoted_identifier_casing();
   quoted_identifier_casing_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.quoted_identifier_casing)
 }
 
 // optional bool read_only = 38;
 inline bool ServerMeta::has_read_only() const {
-  return (_has_bits_[0] & 0x80000000u) != 0;
+  return (_has_bits_[1] & 0x00000020u) != 0;
 }
 inline void ServerMeta::set_has_read_only() {
-  _has_bits_[0] |= 0x80000000u;
+  _has_bits_[1] |= 0x00000020u;
 }
 inline void ServerMeta::clear_has_read_only() {
-  _has_bits_[0] &= ~0x80000000u;
+  _has_bits_[1] &= ~0x00000020u;
 }
 inline void ServerMeta::clear_read_only() {
   read_only_ = false;
   clear_has_read_only();
 }
 inline bool ServerMeta::read_only() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.read_only)
   return read_only_;
 }
 inline void ServerMeta::set_read_only(bool value) {
   set_has_read_only();
   read_only_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.read_only)
 }
 
 // optional string schema_term = 39;
 inline bool ServerMeta::has_schema_term() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[1] & 0x00000040u) != 0;
 }
 inline void ServerMeta::set_has_schema_term() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[1] |= 0x00000040u;
 }
 inline void ServerMeta::clear_has_schema_term() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[1] &= ~0x00000040u;
 }
 inline void ServerMeta::clear_schema_term() {
-  schema_term_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_term_ != &::google::protobuf::internal::kEmptyString) {
+    schema_term_->clear();
+  }
   clear_has_schema_term();
 }
 inline const ::std::string& ServerMeta::schema_term() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.schema_term)
-  return schema_term_.GetNoArena();
+  return *schema_term_;
 }
 inline void ServerMeta::set_schema_term(const ::std::string& value) {
   set_has_schema_term();
-  schema_term_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.schema_term)
+  if (schema_term_ == &::google::protobuf::internal::kEmptyString) {
+    schema_term_ = new ::std::string;
+  }
+  schema_term_->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_schema_term(::std::string&& value) {
-  set_has_schema_term();
-  schema_term_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ServerMeta.schema_term)
-}
-#endif
 inline void ServerMeta::set_schema_term(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_schema_term();
-  schema_term_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.schema_term)
+  if (schema_term_ == &::google::protobuf::internal::kEmptyString) {
+    schema_term_ = new ::std::string;
+  }
+  schema_term_->assign(value);
 }
 inline void ServerMeta::set_schema_term(const char* value, size_t size) {
   set_has_schema_term();
-  schema_term_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.schema_term)
+  if (schema_term_ == &::google::protobuf::internal::kEmptyString) {
+    schema_term_ = new ::std::string;
+  }
+  schema_term_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ServerMeta::mutable_schema_term() {
   set_has_schema_term();
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.schema_term)
-  return schema_term_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_term_ == &::google::protobuf::internal::kEmptyString) {
+    schema_term_ = new ::std::string;
+  }
+  return schema_term_;
 }
 inline ::std::string* ServerMeta::release_schema_term() {
-  // @@protoc_insertion_point(field_release:exec.user.ServerMeta.schema_term)
-  if (!has_schema_term()) {
-    return NULL;
-  }
   clear_has_schema_term();
-  return schema_term_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (schema_term_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = schema_term_;
+    schema_term_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ServerMeta::set_allocated_schema_term(::std::string* schema_term) {
-  if (schema_term != NULL) {
+  if (schema_term_ != &::google::protobuf::internal::kEmptyString) {
+    delete schema_term_;
+  }
+  if (schema_term) {
     set_has_schema_term();
+    schema_term_ = schema_term;
   } else {
     clear_has_schema_term();
+    schema_term_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  schema_term_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), schema_term);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ServerMeta.schema_term)
 }
 
 // optional string search_escape_string = 40;
 inline bool ServerMeta::has_search_escape_string() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[1] & 0x00000080u) != 0;
 }
 inline void ServerMeta::set_has_search_escape_string() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[1] |= 0x00000080u;
 }
 inline void ServerMeta::clear_has_search_escape_string() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[1] &= ~0x00000080u;
 }
 inline void ServerMeta::clear_search_escape_string() {
-  search_escape_string_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (search_escape_string_ != &::google::protobuf::internal::kEmptyString) {
+    search_escape_string_->clear();
+  }
   clear_has_search_escape_string();
 }
 inline const ::std::string& ServerMeta::search_escape_string() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.search_escape_string)
-  return search_escape_string_.GetNoArena();
+  return *search_escape_string_;
 }
 inline void ServerMeta::set_search_escape_string(const ::std::string& value) {
   set_has_search_escape_string();
-  search_escape_string_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.search_escape_string)
+  if (search_escape_string_ == &::google::protobuf::internal::kEmptyString) {
+    search_escape_string_ = new ::std::string;
+  }
+  search_escape_string_->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_search_escape_string(::std::string&& value) {
-  set_has_search_escape_string();
-  search_escape_string_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ServerMeta.search_escape_string)
-}
-#endif
 inline void ServerMeta::set_search_escape_string(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_search_escape_string();
-  search_escape_string_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.search_escape_string)
+  if (search_escape_string_ == &::google::protobuf::internal::kEmptyString) {
+    search_escape_string_ = new ::std::string;
+  }
+  search_escape_string_->assign(value);
 }
 inline void ServerMeta::set_search_escape_string(const char* value, size_t size) {
   set_has_search_escape_string();
-  search_escape_string_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.search_escape_string)
+  if (search_escape_string_ == &::google::protobuf::internal::kEmptyString) {
+    search_escape_string_ = new ::std::string;
+  }
+  search_escape_string_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ServerMeta::mutable_search_escape_string() {
   set_has_search_escape_string();
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.search_escape_string)
-  return search_escape_string_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (search_escape_string_ == &::google::protobuf::internal::kEmptyString) {
+    search_escape_string_ = new ::std::string;
+  }
+  return search_escape_string_;
 }
 inline ::std::string* ServerMeta::release_search_escape_string() {
-  // @@protoc_insertion_point(field_release:exec.user.ServerMeta.search_escape_string)
-  if (!has_search_escape_string()) {
-    return NULL;
-  }
   clear_has_search_escape_string();
-  return search_escape_string_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (search_escape_string_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = search_escape_string_;
+    search_escape_string_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ServerMeta::set_allocated_search_escape_string(::std::string* search_escape_string) {
-  if (search_escape_string != NULL) {
+  if (search_escape_string_ != &::google::protobuf::internal::kEmptyString) {
+    delete search_escape_string_;
+  }
+  if (search_escape_string) {
     set_has_search_escape_string();
+    search_escape_string_ = search_escape_string;
   } else {
     clear_has_search_escape_string();
+    search_escape_string_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  search_escape_string_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), search_escape_string);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ServerMeta.search_escape_string)
 }
 
 // optional bool select_for_update_supported = 41;
 inline bool ServerMeta::has_select_for_update_supported() const {
-  return (_has_bits_[1] & 0x00000001u) != 0;
+  return (_has_bits_[1] & 0x00000100u) != 0;
 }
 inline void ServerMeta::set_has_select_for_update_supported() {
-  _has_bits_[1] |= 0x00000001u;
+  _has_bits_[1] |= 0x00000100u;
 }
 inline void ServerMeta::clear_has_select_for_update_supported() {
-  _has_bits_[1] &= ~0x00000001u;
+  _has_bits_[1] &= ~0x00000100u;
 }
 inline void ServerMeta::clear_select_for_update_supported() {
   select_for_update_supported_ = false;
   clear_has_select_for_update_supported();
 }
 inline bool ServerMeta::select_for_update_supported() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.select_for_update_supported)
   return select_for_update_supported_;
 }
 inline void ServerMeta::set_select_for_update_supported(bool value) {
   set_has_select_for_update_supported();
   select_for_update_supported_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.select_for_update_supported)
 }
 
 // optional string special_characters = 42;
 inline bool ServerMeta::has_special_characters() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[1] & 0x00000200u) != 0;
 }
 inline void ServerMeta::set_has_special_characters() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[1] |= 0x00000200u;
 }
 inline void ServerMeta::clear_has_special_characters() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[1] &= ~0x00000200u;
 }
 inline void ServerMeta::clear_special_characters() {
-  special_characters_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (special_characters_ != &::google::protobuf::internal::kEmptyString) {
+    special_characters_->clear();
+  }
   clear_has_special_characters();
 }
 inline const ::std::string& ServerMeta::special_characters() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.special_characters)
-  return special_characters_.GetNoArena();
+  return *special_characters_;
 }
 inline void ServerMeta::set_special_characters(const ::std::string& value) {
   set_has_special_characters();
-  special_characters_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.special_characters)
+  if (special_characters_ == &::google::protobuf::internal::kEmptyString) {
+    special_characters_ = new ::std::string;
+  }
+  special_characters_->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_special_characters(::std::string&& value) {
-  set_has_special_characters();
-  special_characters_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ServerMeta.special_characters)
-}
-#endif
 inline void ServerMeta::set_special_characters(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_special_characters();
-  special_characters_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.special_characters)
+  if (special_characters_ == &::google::protobuf::internal::kEmptyString) {
+    special_characters_ = new ::std::string;
+  }
+  special_characters_->assign(value);
 }
 inline void ServerMeta::set_special_characters(const char* value, size_t size) {
   set_has_special_characters();
-  special_characters_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.special_characters)
+  if (special_characters_ == &::google::protobuf::internal::kEmptyString) {
+    special_characters_ = new ::std::string;
+  }
+  special_characters_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ServerMeta::mutable_special_characters() {
   set_has_special_characters();
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.special_characters)
-  return special_characters_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (special_characters_ == &::google::protobuf::internal::kEmptyString) {
+    special_characters_ = new ::std::string;
+  }
+  return special_characters_;
 }
 inline ::std::string* ServerMeta::release_special_characters() {
-  // @@protoc_insertion_point(field_release:exec.user.ServerMeta.special_characters)
-  if (!has_special_characters()) {
-    return NULL;
-  }
   clear_has_special_characters();
-  return special_characters_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (special_characters_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = special_characters_;
+    special_characters_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ServerMeta::set_allocated_special_characters(::std::string* special_characters) {
-  if (special_characters != NULL) {
+  if (special_characters_ != &::google::protobuf::internal::kEmptyString) {
+    delete special_characters_;
+  }
+  if (special_characters) {
     set_has_special_characters();
+    special_characters_ = special_characters;
   } else {
     clear_has_special_characters();
+    special_characters_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  special_characters_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), special_characters);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ServerMeta.special_characters)
 }
 
 // repeated string sql_keywords = 43;
@@ -13356,64 +11357,39 @@
   sql_keywords_.Clear();
 }
 inline const ::std::string& ServerMeta::sql_keywords(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.sql_keywords)
   return sql_keywords_.Get(index);
 }
 inline ::std::string* ServerMeta::mutable_sql_keywords(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.sql_keywords)
   return sql_keywords_.Mutable(index);
 }
 inline void ServerMeta::set_sql_keywords(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.sql_keywords)
   sql_keywords_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_sql_keywords(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.sql_keywords)
-  sql_keywords_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void ServerMeta::set_sql_keywords(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   sql_keywords_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.sql_keywords)
 }
 inline void ServerMeta::set_sql_keywords(int index, const char* value, size_t size) {
   sql_keywords_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.sql_keywords)
 }
 inline ::std::string* ServerMeta::add_sql_keywords() {
-  // @@protoc_insertion_point(field_add_mutable:exec.user.ServerMeta.sql_keywords)
   return sql_keywords_.Add();
 }
 inline void ServerMeta::add_sql_keywords(const ::std::string& value) {
   sql_keywords_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.sql_keywords)
 }
-#if LANG_CXX11
-inline void ServerMeta::add_sql_keywords(::std::string&& value) {
-  sql_keywords_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.sql_keywords)
-}
-#endif
 inline void ServerMeta::add_sql_keywords(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   sql_keywords_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.user.ServerMeta.sql_keywords)
 }
 inline void ServerMeta::add_sql_keywords(const char* value, size_t size) {
   sql_keywords_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.user.ServerMeta.sql_keywords)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 ServerMeta::sql_keywords() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.sql_keywords)
   return sql_keywords_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 ServerMeta::mutable_sql_keywords() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.sql_keywords)
   return &sql_keywords_;
 }
 
@@ -13425,64 +11401,39 @@
   string_functions_.Clear();
 }
 inline const ::std::string& ServerMeta::string_functions(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.string_functions)
   return string_functions_.Get(index);
 }
 inline ::std::string* ServerMeta::mutable_string_functions(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.string_functions)
   return string_functions_.Mutable(index);
 }
 inline void ServerMeta::set_string_functions(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.string_functions)
   string_functions_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_string_functions(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.string_functions)
-  string_functions_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void ServerMeta::set_string_functions(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   string_functions_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.string_functions)
 }
 inline void ServerMeta::set_string_functions(int index, const char* value, size_t size) {
   string_functions_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.string_functions)
 }
 inline ::std::string* ServerMeta::add_string_functions() {
-  // @@protoc_insertion_point(field_add_mutable:exec.user.ServerMeta.string_functions)
   return string_functions_.Add();
 }
 inline void ServerMeta::add_string_functions(const ::std::string& value) {
   string_functions_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.string_functions)
 }
-#if LANG_CXX11
-inline void ServerMeta::add_string_functions(::std::string&& value) {
-  string_functions_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.string_functions)
-}
-#endif
 inline void ServerMeta::add_string_functions(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   string_functions_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.user.ServerMeta.string_functions)
 }
 inline void ServerMeta::add_string_functions(const char* value, size_t size) {
   string_functions_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.user.ServerMeta.string_functions)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 ServerMeta::string_functions() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.string_functions)
   return string_functions_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 ServerMeta::mutable_string_functions() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.string_functions)
   return &string_functions_;
 }
 
@@ -13494,27 +11445,22 @@
   subquery_support_.Clear();
 }
 inline ::exec::user::SubQuerySupport ServerMeta::subquery_support(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.subquery_support)
   return static_cast< ::exec::user::SubQuerySupport >(subquery_support_.Get(index));
 }
 inline void ServerMeta::set_subquery_support(int index, ::exec::user::SubQuerySupport value) {
   assert(::exec::user::SubQuerySupport_IsValid(value));
   subquery_support_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.subquery_support)
 }
 inline void ServerMeta::add_subquery_support(::exec::user::SubQuerySupport value) {
   assert(::exec::user::SubQuerySupport_IsValid(value));
   subquery_support_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.subquery_support)
 }
 inline const ::google::protobuf::RepeatedField<int>&
 ServerMeta::subquery_support() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.subquery_support)
   return subquery_support_;
 }
 inline ::google::protobuf::RepeatedField<int>*
 ServerMeta::mutable_subquery_support() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.subquery_support)
   return &subquery_support_;
 }
 
@@ -13526,155 +11472,132 @@
   system_functions_.Clear();
 }
 inline const ::std::string& ServerMeta::system_functions(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.system_functions)
   return system_functions_.Get(index);
 }
 inline ::std::string* ServerMeta::mutable_system_functions(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.system_functions)
   return system_functions_.Mutable(index);
 }
 inline void ServerMeta::set_system_functions(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.system_functions)
   system_functions_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_system_functions(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.system_functions)
-  system_functions_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void ServerMeta::set_system_functions(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   system_functions_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.system_functions)
 }
 inline void ServerMeta::set_system_functions(int index, const char* value, size_t size) {
   system_functions_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.system_functions)
 }
 inline ::std::string* ServerMeta::add_system_functions() {
-  // @@protoc_insertion_point(field_add_mutable:exec.user.ServerMeta.system_functions)
   return system_functions_.Add();
 }
 inline void ServerMeta::add_system_functions(const ::std::string& value) {
   system_functions_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.system_functions)
 }
-#if LANG_CXX11
-inline void ServerMeta::add_system_functions(::std::string&& value) {
-  system_functions_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.system_functions)
-}
-#endif
 inline void ServerMeta::add_system_functions(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   system_functions_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.user.ServerMeta.system_functions)
 }
 inline void ServerMeta::add_system_functions(const char* value, size_t size) {
   system_functions_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.user.ServerMeta.system_functions)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 ServerMeta::system_functions() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.system_functions)
   return system_functions_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 ServerMeta::mutable_system_functions() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.system_functions)
   return &system_functions_;
 }
 
 // optional string table_term = 47;
 inline bool ServerMeta::has_table_term() const {
-  return (_has_bits_[0] & 0x00000040u) != 0;
+  return (_has_bits_[1] & 0x00004000u) != 0;
 }
 inline void ServerMeta::set_has_table_term() {
-  _has_bits_[0] |= 0x00000040u;
+  _has_bits_[1] |= 0x00004000u;
 }
 inline void ServerMeta::clear_has_table_term() {
-  _has_bits_[0] &= ~0x00000040u;
+  _has_bits_[1] &= ~0x00004000u;
 }
 inline void ServerMeta::clear_table_term() {
-  table_term_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_term_ != &::google::protobuf::internal::kEmptyString) {
+    table_term_->clear();
+  }
   clear_has_table_term();
 }
 inline const ::std::string& ServerMeta::table_term() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.table_term)
-  return table_term_.GetNoArena();
+  return *table_term_;
 }
 inline void ServerMeta::set_table_term(const ::std::string& value) {
   set_has_table_term();
-  table_term_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.table_term)
+  if (table_term_ == &::google::protobuf::internal::kEmptyString) {
+    table_term_ = new ::std::string;
+  }
+  table_term_->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_table_term(::std::string&& value) {
-  set_has_table_term();
-  table_term_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ServerMeta.table_term)
-}
-#endif
 inline void ServerMeta::set_table_term(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_table_term();
-  table_term_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.table_term)
+  if (table_term_ == &::google::protobuf::internal::kEmptyString) {
+    table_term_ = new ::std::string;
+  }
+  table_term_->assign(value);
 }
 inline void ServerMeta::set_table_term(const char* value, size_t size) {
   set_has_table_term();
-  table_term_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.table_term)
+  if (table_term_ == &::google::protobuf::internal::kEmptyString) {
+    table_term_ = new ::std::string;
+  }
+  table_term_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ServerMeta::mutable_table_term() {
   set_has_table_term();
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.table_term)
-  return table_term_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_term_ == &::google::protobuf::internal::kEmptyString) {
+    table_term_ = new ::std::string;
+  }
+  return table_term_;
 }
 inline ::std::string* ServerMeta::release_table_term() {
-  // @@protoc_insertion_point(field_release:exec.user.ServerMeta.table_term)
-  if (!has_table_term()) {
-    return NULL;
-  }
   clear_has_table_term();
-  return table_term_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (table_term_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = table_term_;
+    table_term_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ServerMeta::set_allocated_table_term(::std::string* table_term) {
-  if (table_term != NULL) {
+  if (table_term_ != &::google::protobuf::internal::kEmptyString) {
+    delete table_term_;
+  }
+  if (table_term) {
     set_has_table_term();
+    table_term_ = table_term;
   } else {
     clear_has_table_term();
+    table_term_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  table_term_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), table_term);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ServerMeta.table_term)
 }
 
 // optional bool transaction_supported = 48;
 inline bool ServerMeta::has_transaction_supported() const {
-  return (_has_bits_[1] & 0x00000008u) != 0;
+  return (_has_bits_[1] & 0x00008000u) != 0;
 }
 inline void ServerMeta::set_has_transaction_supported() {
-  _has_bits_[1] |= 0x00000008u;
+  _has_bits_[1] |= 0x00008000u;
 }
 inline void ServerMeta::clear_has_transaction_supported() {
-  _has_bits_[1] &= ~0x00000008u;
+  _has_bits_[1] &= ~0x00008000u;
 }
 inline void ServerMeta::clear_transaction_supported() {
   transaction_supported_ = false;
   clear_has_transaction_supported();
 }
 inline bool ServerMeta::transaction_supported() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.transaction_supported)
   return transaction_supported_;
 }
 inline void ServerMeta::set_transaction_supported(bool value) {
   set_has_transaction_supported();
   transaction_supported_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.transaction_supported)
 }
 
 // repeated .exec.user.UnionSupport union_support = 49;
@@ -13685,94 +11608,93 @@
   union_support_.Clear();
 }
 inline ::exec::user::UnionSupport ServerMeta::union_support(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.union_support)
   return static_cast< ::exec::user::UnionSupport >(union_support_.Get(index));
 }
 inline void ServerMeta::set_union_support(int index, ::exec::user::UnionSupport value) {
   assert(::exec::user::UnionSupport_IsValid(value));
   union_support_.Set(index, value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.union_support)
 }
 inline void ServerMeta::add_union_support(::exec::user::UnionSupport value) {
   assert(::exec::user::UnionSupport_IsValid(value));
   union_support_.Add(value);
-  // @@protoc_insertion_point(field_add:exec.user.ServerMeta.union_support)
 }
 inline const ::google::protobuf::RepeatedField<int>&
 ServerMeta::union_support() const {
-  // @@protoc_insertion_point(field_list:exec.user.ServerMeta.union_support)
   return union_support_;
 }
 inline ::google::protobuf::RepeatedField<int>*
 ServerMeta::mutable_union_support() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.ServerMeta.union_support)
   return &union_support_;
 }
 
 // optional string current_schema = 50;
 inline bool ServerMeta::has_current_schema() const {
-  return (_has_bits_[0] & 0x00000080u) != 0;
+  return (_has_bits_[1] & 0x00020000u) != 0;
 }
 inline void ServerMeta::set_has_current_schema() {
-  _has_bits_[0] |= 0x00000080u;
+  _has_bits_[1] |= 0x00020000u;
 }
 inline void ServerMeta::clear_has_current_schema() {
-  _has_bits_[0] &= ~0x00000080u;
+  _has_bits_[1] &= ~0x00020000u;
 }
 inline void ServerMeta::clear_current_schema() {
-  current_schema_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (current_schema_ != &::google::protobuf::internal::kEmptyString) {
+    current_schema_->clear();
+  }
   clear_has_current_schema();
 }
 inline const ::std::string& ServerMeta::current_schema() const {
-  // @@protoc_insertion_point(field_get:exec.user.ServerMeta.current_schema)
-  return current_schema_.GetNoArena();
+  return *current_schema_;
 }
 inline void ServerMeta::set_current_schema(const ::std::string& value) {
   set_has_current_schema();
-  current_schema_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.ServerMeta.current_schema)
+  if (current_schema_ == &::google::protobuf::internal::kEmptyString) {
+    current_schema_ = new ::std::string;
+  }
+  current_schema_->assign(value);
 }
-#if LANG_CXX11
-inline void ServerMeta::set_current_schema(::std::string&& value) {
-  set_has_current_schema();
-  current_schema_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.ServerMeta.current_schema)
-}
-#endif
 inline void ServerMeta::set_current_schema(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_current_schema();
-  current_schema_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.ServerMeta.current_schema)
+  if (current_schema_ == &::google::protobuf::internal::kEmptyString) {
+    current_schema_ = new ::std::string;
+  }
+  current_schema_->assign(value);
 }
 inline void ServerMeta::set_current_schema(const char* value, size_t size) {
   set_has_current_schema();
-  current_schema_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.ServerMeta.current_schema)
+  if (current_schema_ == &::google::protobuf::internal::kEmptyString) {
+    current_schema_ = new ::std::string;
+  }
+  current_schema_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ServerMeta::mutable_current_schema() {
   set_has_current_schema();
-  // @@protoc_insertion_point(field_mutable:exec.user.ServerMeta.current_schema)
-  return current_schema_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (current_schema_ == &::google::protobuf::internal::kEmptyString) {
+    current_schema_ = new ::std::string;
+  }
+  return current_schema_;
 }
 inline ::std::string* ServerMeta::release_current_schema() {
-  // @@protoc_insertion_point(field_release:exec.user.ServerMeta.current_schema)
-  if (!has_current_schema()) {
-    return NULL;
-  }
   clear_has_current_schema();
-  return current_schema_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (current_schema_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = current_schema_;
+    current_schema_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ServerMeta::set_allocated_current_schema(::std::string* current_schema) {
-  if (current_schema != NULL) {
+  if (current_schema_ != &::google::protobuf::internal::kEmptyString) {
+    delete current_schema_;
+  }
+  if (current_schema) {
     set_has_current_schema();
+    current_schema_ = current_schema;
   } else {
     clear_has_current_schema();
+    current_schema_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  current_schema_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), current_schema);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.ServerMeta.current_schema)
 }
 
 // -------------------------------------------------------------------
@@ -13781,390 +11703,288 @@
 
 // optional .exec.user.QueryResultsMode results_mode = 1;
 inline bool RunQuery::has_results_mode() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void RunQuery::set_has_results_mode() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void RunQuery::clear_has_results_mode() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void RunQuery::clear_results_mode() {
   results_mode_ = 1;
   clear_has_results_mode();
 }
 inline ::exec::user::QueryResultsMode RunQuery::results_mode() const {
-  // @@protoc_insertion_point(field_get:exec.user.RunQuery.results_mode)
   return static_cast< ::exec::user::QueryResultsMode >(results_mode_);
 }
 inline void RunQuery::set_results_mode(::exec::user::QueryResultsMode value) {
   assert(::exec::user::QueryResultsMode_IsValid(value));
   set_has_results_mode();
   results_mode_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.RunQuery.results_mode)
 }
 
 // optional .exec.shared.QueryType type = 2;
 inline bool RunQuery::has_type() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void RunQuery::set_has_type() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void RunQuery::clear_has_type() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void RunQuery::clear_type() {
   type_ = 1;
   clear_has_type();
 }
 inline ::exec::shared::QueryType RunQuery::type() const {
-  // @@protoc_insertion_point(field_get:exec.user.RunQuery.type)
   return static_cast< ::exec::shared::QueryType >(type_);
 }
 inline void RunQuery::set_type(::exec::shared::QueryType value) {
   assert(::exec::shared::QueryType_IsValid(value));
   set_has_type();
   type_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.RunQuery.type)
 }
 
 // optional string plan = 3;
 inline bool RunQuery::has_plan() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void RunQuery::set_has_plan() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void RunQuery::clear_has_plan() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void RunQuery::clear_plan() {
-  plan_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (plan_ != &::google::protobuf::internal::kEmptyString) {
+    plan_->clear();
+  }
   clear_has_plan();
 }
 inline const ::std::string& RunQuery::plan() const {
-  // @@protoc_insertion_point(field_get:exec.user.RunQuery.plan)
-  return plan_.GetNoArena();
+  return *plan_;
 }
 inline void RunQuery::set_plan(const ::std::string& value) {
   set_has_plan();
-  plan_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.user.RunQuery.plan)
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    plan_ = new ::std::string;
+  }
+  plan_->assign(value);
 }
-#if LANG_CXX11
-inline void RunQuery::set_plan(::std::string&& value) {
-  set_has_plan();
-  plan_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.user.RunQuery.plan)
-}
-#endif
 inline void RunQuery::set_plan(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_plan();
-  plan_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.user.RunQuery.plan)
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    plan_ = new ::std::string;
+  }
+  plan_->assign(value);
 }
 inline void RunQuery::set_plan(const char* value, size_t size) {
   set_has_plan();
-  plan_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.user.RunQuery.plan)
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    plan_ = new ::std::string;
+  }
+  plan_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* RunQuery::mutable_plan() {
   set_has_plan();
-  // @@protoc_insertion_point(field_mutable:exec.user.RunQuery.plan)
-  return plan_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    plan_ = new ::std::string;
+  }
+  return plan_;
 }
 inline ::std::string* RunQuery::release_plan() {
-  // @@protoc_insertion_point(field_release:exec.user.RunQuery.plan)
-  if (!has_plan()) {
-    return NULL;
-  }
   clear_has_plan();
-  return plan_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = plan_;
+    plan_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void RunQuery::set_allocated_plan(::std::string* plan) {
-  if (plan != NULL) {
+  if (plan_ != &::google::protobuf::internal::kEmptyString) {
+    delete plan_;
+  }
+  if (plan) {
     set_has_plan();
+    plan_ = plan;
   } else {
     clear_has_plan();
+    plan_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  plan_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), plan);
-  // @@protoc_insertion_point(field_set_allocated:exec.user.RunQuery.plan)
 }
 
 // repeated .exec.bit.control.PlanFragment fragments = 4;
 inline int RunQuery::fragments_size() const {
   return fragments_.size();
 }
-inline ::exec::bit::control::PlanFragment* RunQuery::mutable_fragments(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.user.RunQuery.fragments)
-  return fragments_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
-RunQuery::mutable_fragments() {
-  // @@protoc_insertion_point(field_mutable_list:exec.user.RunQuery.fragments)
-  return &fragments_;
+inline void RunQuery::clear_fragments() {
+  fragments_.Clear();
 }
 inline const ::exec::bit::control::PlanFragment& RunQuery::fragments(int index) const {
-  // @@protoc_insertion_point(field_get:exec.user.RunQuery.fragments)
   return fragments_.Get(index);
 }
+inline ::exec::bit::control::PlanFragment* RunQuery::mutable_fragments(int index) {
+  return fragments_.Mutable(index);
+}
 inline ::exec::bit::control::PlanFragment* RunQuery::add_fragments() {
-  // @@protoc_insertion_point(field_add:exec.user.RunQuery.fragments)
   return fragments_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >&
 RunQuery::fragments() const {
-  // @@protoc_insertion_point(field_list:exec.user.RunQuery.fragments)
   return fragments_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::bit::control::PlanFragment >*
+RunQuery::mutable_fragments() {
+  return &fragments_;
+}
 
 // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
 inline bool RunQuery::has_prepared_statement_handle() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void RunQuery::set_has_prepared_statement_handle() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void RunQuery::clear_has_prepared_statement_handle() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void RunQuery::clear_prepared_statement_handle() {
-  if (prepared_statement_handle_ != NULL) prepared_statement_handle_->Clear();
+  if (prepared_statement_handle_ != NULL) prepared_statement_handle_->::exec::user::PreparedStatementHandle::Clear();
   clear_has_prepared_statement_handle();
 }
-inline const ::exec::user::PreparedStatementHandle& RunQuery::_internal_prepared_statement_handle() const {
-  return *prepared_statement_handle_;
-}
 inline const ::exec::user::PreparedStatementHandle& RunQuery::prepared_statement_handle() const {
-  const ::exec::user::PreparedStatementHandle* p = prepared_statement_handle_;
-  // @@protoc_insertion_point(field_get:exec.user.RunQuery.prepared_statement_handle)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::user::PreparedStatementHandle*>(
-      &::exec::user::_PreparedStatementHandle_default_instance_);
+  return prepared_statement_handle_ != NULL ? *prepared_statement_handle_ : *default_instance_->prepared_statement_handle_;
+}
+inline ::exec::user::PreparedStatementHandle* RunQuery::mutable_prepared_statement_handle() {
+  set_has_prepared_statement_handle();
+  if (prepared_statement_handle_ == NULL) prepared_statement_handle_ = new ::exec::user::PreparedStatementHandle;
+  return prepared_statement_handle_;
 }
 inline ::exec::user::PreparedStatementHandle* RunQuery::release_prepared_statement_handle() {
-  // @@protoc_insertion_point(field_release:exec.user.RunQuery.prepared_statement_handle)
   clear_has_prepared_statement_handle();
   ::exec::user::PreparedStatementHandle* temp = prepared_statement_handle_;
   prepared_statement_handle_ = NULL;
   return temp;
 }
-inline ::exec::user::PreparedStatementHandle* RunQuery::mutable_prepared_statement_handle() {
-  set_has_prepared_statement_handle();
-  if (prepared_statement_handle_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::user::PreparedStatementHandle>(GetArenaNoVirtual());
-    prepared_statement_handle_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.user.RunQuery.prepared_statement_handle)
-  return prepared_statement_handle_;
-}
 inline void RunQuery::set_allocated_prepared_statement_handle(::exec::user::PreparedStatementHandle* prepared_statement_handle) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete prepared_statement_handle_;
-  }
+  delete prepared_statement_handle_;
+  prepared_statement_handle_ = prepared_statement_handle;
   if (prepared_statement_handle) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      prepared_statement_handle = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, prepared_statement_handle, submessage_arena);
-    }
     set_has_prepared_statement_handle();
   } else {
     clear_has_prepared_statement_handle();
   }
-  prepared_statement_handle_ = prepared_statement_handle;
-  // @@protoc_insertion_point(field_set_allocated:exec.user.RunQuery.prepared_statement_handle)
 }
 
 // optional int32 autolimit_rowcount = 6;
 inline bool RunQuery::has_autolimit_rowcount() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void RunQuery::set_has_autolimit_rowcount() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void RunQuery::clear_has_autolimit_rowcount() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000020u;
 }
 inline void RunQuery::clear_autolimit_rowcount() {
   autolimit_rowcount_ = 0;
   clear_has_autolimit_rowcount();
 }
 inline ::google::protobuf::int32 RunQuery::autolimit_rowcount() const {
-  // @@protoc_insertion_point(field_get:exec.user.RunQuery.autolimit_rowcount)
   return autolimit_rowcount_;
 }
 inline void RunQuery::set_autolimit_rowcount(::google::protobuf::int32 value) {
   set_has_autolimit_rowcount();
   autolimit_rowcount_ = value;
-  // @@protoc_insertion_point(field_set:exec.user.RunQuery.autolimit_rowcount)
 }
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic pop
-#endif  // __GNUC__
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
 
 // @@protoc_insertion_point(namespace_scope)
 
 }  // namespace user
 }  // namespace exec
 
+#ifndef SWIG
 namespace google {
 namespace protobuf {
 
-template <> struct is_proto_enum< ::exec::user::RpcType> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::RpcType>() {
   return ::exec::user::RpcType_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::SaslSupport> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::SaslSupport>() {
   return ::exec::user::SaslSupport_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::QueryResultsMode> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::QueryResultsMode>() {
   return ::exec::user::QueryResultsMode_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::HandshakeStatus> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::HandshakeStatus>() {
   return ::exec::user::HandshakeStatus_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::RequestStatus> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::RequestStatus>() {
   return ::exec::user::RequestStatus_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::ColumnSearchability> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::ColumnSearchability>() {
   return ::exec::user::ColumnSearchability_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::ColumnUpdatability> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::ColumnUpdatability>() {
   return ::exec::user::ColumnUpdatability_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::CollateSupport> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::CollateSupport>() {
   return ::exec::user::CollateSupport_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::CorrelationNamesSupport> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::CorrelationNamesSupport>() {
   return ::exec::user::CorrelationNamesSupport_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::DateTimeLiteralsSupport> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::DateTimeLiteralsSupport>() {
   return ::exec::user::DateTimeLiteralsSupport_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::GroupBySupport> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::GroupBySupport>() {
   return ::exec::user::GroupBySupport_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::IdentifierCasing> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::IdentifierCasing>() {
   return ::exec::user::IdentifierCasing_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::NullCollation> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::NullCollation>() {
   return ::exec::user::NullCollation_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::OrderBySupport> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::OrderBySupport>() {
   return ::exec::user::OrderBySupport_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::OuterJoinSupport> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::OuterJoinSupport>() {
   return ::exec::user::OuterJoinSupport_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::SubQuerySupport> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::SubQuerySupport>() {
   return ::exec::user::SubQuerySupport_descriptor();
 }
-template <> struct is_proto_enum< ::exec::user::UnionSupport> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::user::UnionSupport>() {
   return ::exec::user::UnionSupport_descriptor();
 }
 
-}  // namespace protobuf
 }  // namespace google
+}  // namespace protobuf
+#endif  // SWIG
 
 // @@protoc_insertion_point(global_scope)
 
-#endif  // PROTOBUF_INCLUDED_User_2eproto
+#endif  // PROTOBUF_User_2eproto__INCLUDED
diff --git a/contrib/native/client/src/protobuf/UserBitShared.pb.cc b/contrib/native/client/src/protobuf/UserBitShared.pb.cc
index 0996fca..f01fad9 100644
--- a/contrib/native/client/src/protobuf/UserBitShared.pb.cc
+++ b/contrib/native/client/src/protobuf/UserBitShared.pb.cc
@@ -1,1206 +1,866 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: UserBitShared.proto
 
+#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION
 #include "UserBitShared.pb.h"
 
 #include <algorithm>
 
 #include <google/protobuf/stubs/common.h>
-#include <google/protobuf/stubs/port.h>
+#include <google/protobuf/stubs/once.h>
 #include <google/protobuf/io/coded_stream.h>
 #include <google/protobuf/wire_format_lite_inl.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>
-// This is a temporary google only hack
-#ifdef GOOGLE_PROTOBUF_ENFORCE_UNIQUENESS
-#include "third_party/protobuf/version.h"
-#endif
 // @@protoc_insertion_point(includes)
 
-namespace protobuf_Coordination_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_Coordination_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_DrillbitEndpoint;
-}  // namespace protobuf_Coordination_2eproto
-namespace protobuf_Types_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_Types_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_MajorType;
-}  // namespace protobuf_Types_2eproto
-namespace protobuf_UserBitShared_2eproto {
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_Jar;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_MetricValue;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_NamePart;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_ParsingError;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_QueryId;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_StackTraceElementWrapper;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<0> scc_info_StreamProfile;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_ExceptionWrapper;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_MajorFragmentProfile;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<1> scc_info_RecordBatchDef;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<2> scc_info_OperatorProfile;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<2> scc_info_SerializedField;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<3> scc_info_DrillPBError;
-extern PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto ::google::protobuf::internal::SCCInfo<3> scc_info_MinorFragmentProfile;
-}  // namespace protobuf_UserBitShared_2eproto
 namespace exec {
 namespace shared {
-class UserCredentialsDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<UserCredentials>
-      _instance;
-} _UserCredentials_default_instance_;
-class QueryIdDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<QueryId>
-      _instance;
-} _QueryId_default_instance_;
-class DrillPBErrorDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<DrillPBError>
-      _instance;
-} _DrillPBError_default_instance_;
-class ExceptionWrapperDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<ExceptionWrapper>
-      _instance;
-} _ExceptionWrapper_default_instance_;
-class StackTraceElementWrapperDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<StackTraceElementWrapper>
-      _instance;
-} _StackTraceElementWrapper_default_instance_;
-class ParsingErrorDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<ParsingError>
-      _instance;
-} _ParsingError_default_instance_;
-class RecordBatchDefDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<RecordBatchDef>
-      _instance;
-} _RecordBatchDef_default_instance_;
-class NamePartDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<NamePart>
-      _instance;
-} _NamePart_default_instance_;
-class SerializedFieldDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<SerializedField>
-      _instance;
-} _SerializedField_default_instance_;
-class NodeStatusDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<NodeStatus>
-      _instance;
-} _NodeStatus_default_instance_;
-class QueryResultDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<QueryResult>
-      _instance;
-} _QueryResult_default_instance_;
-class QueryDataDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<QueryData>
-      _instance;
-} _QueryData_default_instance_;
-class QueryInfoDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<QueryInfo>
-      _instance;
-} _QueryInfo_default_instance_;
-class QueryProfileDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<QueryProfile>
-      _instance;
-} _QueryProfile_default_instance_;
-class MajorFragmentProfileDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<MajorFragmentProfile>
-      _instance;
-} _MajorFragmentProfile_default_instance_;
-class MinorFragmentProfileDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<MinorFragmentProfile>
-      _instance;
-} _MinorFragmentProfile_default_instance_;
-class OperatorProfileDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<OperatorProfile>
-      _instance;
-} _OperatorProfile_default_instance_;
-class StreamProfileDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<StreamProfile>
-      _instance;
-} _StreamProfile_default_instance_;
-class MetricValueDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<MetricValue>
-      _instance;
-} _MetricValue_default_instance_;
-class RegistryDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<Registry>
-      _instance;
-} _Registry_default_instance_;
-class JarDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<Jar>
-      _instance;
-} _Jar_default_instance_;
-class SaslMessageDefaultTypeInternal {
- public:
-  ::google::protobuf::internal::ExplicitlyConstructed<SaslMessage>
-      _instance;
-} _SaslMessage_default_instance_;
-}  // namespace shared
-}  // namespace exec
-namespace protobuf_UserBitShared_2eproto {
-static void InitDefaultsUserCredentials() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
 
-  {
-    void* ptr = &::exec::shared::_UserCredentials_default_instance_;
-    new (ptr) ::exec::shared::UserCredentials();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::UserCredentials::InitAsDefaultInstance();
+namespace {
+
+const ::google::protobuf::Descriptor* UserCredentials_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  UserCredentials_reflection_ = NULL;
+const ::google::protobuf::Descriptor* QueryId_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  QueryId_reflection_ = NULL;
+const ::google::protobuf::Descriptor* DrillPBError_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  DrillPBError_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* DrillPBError_ErrorType_descriptor_ = NULL;
+const ::google::protobuf::Descriptor* ExceptionWrapper_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  ExceptionWrapper_reflection_ = NULL;
+const ::google::protobuf::Descriptor* StackTraceElementWrapper_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  StackTraceElementWrapper_reflection_ = NULL;
+const ::google::protobuf::Descriptor* ParsingError_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  ParsingError_reflection_ = NULL;
+const ::google::protobuf::Descriptor* RecordBatchDef_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  RecordBatchDef_reflection_ = NULL;
+const ::google::protobuf::Descriptor* NamePart_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  NamePart_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* NamePart_Type_descriptor_ = NULL;
+const ::google::protobuf::Descriptor* SerializedField_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  SerializedField_reflection_ = NULL;
+const ::google::protobuf::Descriptor* NodeStatus_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  NodeStatus_reflection_ = NULL;
+const ::google::protobuf::Descriptor* QueryResult_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  QueryResult_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* QueryResult_QueryState_descriptor_ = NULL;
+const ::google::protobuf::Descriptor* QueryData_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  QueryData_reflection_ = NULL;
+const ::google::protobuf::Descriptor* QueryInfo_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  QueryInfo_reflection_ = NULL;
+const ::google::protobuf::Descriptor* QueryProfile_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  QueryProfile_reflection_ = NULL;
+const ::google::protobuf::Descriptor* MajorFragmentProfile_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  MajorFragmentProfile_reflection_ = NULL;
+const ::google::protobuf::Descriptor* MinorFragmentProfile_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  MinorFragmentProfile_reflection_ = NULL;
+const ::google::protobuf::Descriptor* OperatorProfile_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  OperatorProfile_reflection_ = NULL;
+const ::google::protobuf::Descriptor* StreamProfile_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  StreamProfile_reflection_ = NULL;
+const ::google::protobuf::Descriptor* MetricValue_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  MetricValue_reflection_ = NULL;
+const ::google::protobuf::Descriptor* Registry_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  Registry_reflection_ = NULL;
+const ::google::protobuf::Descriptor* Jar_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  Jar_reflection_ = NULL;
+const ::google::protobuf::Descriptor* SaslMessage_descriptor_ = NULL;
+const ::google::protobuf::internal::GeneratedMessageReflection*
+  SaslMessage_reflection_ = NULL;
+const ::google::protobuf::EnumDescriptor* RpcChannel_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* QueryType_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* FragmentState_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* CoreOperatorType_descriptor_ = NULL;
+const ::google::protobuf::EnumDescriptor* SaslStatus_descriptor_ = NULL;
+
+}  // namespace
+
+
+void protobuf_AssignDesc_UserBitShared_2eproto() {
+  protobuf_AddDesc_UserBitShared_2eproto();
+  const ::google::protobuf::FileDescriptor* file =
+    ::google::protobuf::DescriptorPool::generated_pool()->FindFileByName(
+      "UserBitShared.proto");
+  GOOGLE_CHECK(file != NULL);
+  UserCredentials_descriptor_ = file->message_type(0);
+  static const int UserCredentials_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserCredentials, user_name_),
+  };
+  UserCredentials_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      UserCredentials_descriptor_,
+      UserCredentials::default_instance_,
+      UserCredentials_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserCredentials, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(UserCredentials, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(UserCredentials));
+  QueryId_descriptor_ = file->message_type(1);
+  static const int QueryId_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryId, part1_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryId, part2_),
+  };
+  QueryId_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      QueryId_descriptor_,
+      QueryId::default_instance_,
+      QueryId_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryId, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryId, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(QueryId));
+  DrillPBError_descriptor_ = file->message_type(2);
+  static const int DrillPBError_offsets_[6] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillPBError, error_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillPBError, endpoint_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillPBError, error_type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillPBError, message_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillPBError, exception_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillPBError, parsing_error_),
+  };
+  DrillPBError_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      DrillPBError_descriptor_,
+      DrillPBError::default_instance_,
+      DrillPBError_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillPBError, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DrillPBError, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(DrillPBError));
+  DrillPBError_ErrorType_descriptor_ = DrillPBError_descriptor_->enum_type(0);
+  ExceptionWrapper_descriptor_ = file->message_type(3);
+  static const int ExceptionWrapper_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ExceptionWrapper, exception_class_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ExceptionWrapper, message_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ExceptionWrapper, stack_trace_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ExceptionWrapper, cause_),
+  };
+  ExceptionWrapper_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      ExceptionWrapper_descriptor_,
+      ExceptionWrapper::default_instance_,
+      ExceptionWrapper_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ExceptionWrapper, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ExceptionWrapper, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(ExceptionWrapper));
+  StackTraceElementWrapper_descriptor_ = file->message_type(4);
+  static const int StackTraceElementWrapper_offsets_[5] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StackTraceElementWrapper, class_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StackTraceElementWrapper, file_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StackTraceElementWrapper, line_number_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StackTraceElementWrapper, method_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StackTraceElementWrapper, is_native_method_),
+  };
+  StackTraceElementWrapper_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      StackTraceElementWrapper_descriptor_,
+      StackTraceElementWrapper::default_instance_,
+      StackTraceElementWrapper_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StackTraceElementWrapper, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StackTraceElementWrapper, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(StackTraceElementWrapper));
+  ParsingError_descriptor_ = file->message_type(5);
+  static const int ParsingError_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ParsingError, start_column_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ParsingError, start_row_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ParsingError, end_column_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ParsingError, end_row_),
+  };
+  ParsingError_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      ParsingError_descriptor_,
+      ParsingError::default_instance_,
+      ParsingError_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ParsingError, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ParsingError, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(ParsingError));
+  RecordBatchDef_descriptor_ = file->message_type(6);
+  static const int RecordBatchDef_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RecordBatchDef, record_count_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RecordBatchDef, field_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RecordBatchDef, carries_two_byte_selection_vector_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RecordBatchDef, affected_rows_count_),
+  };
+  RecordBatchDef_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      RecordBatchDef_descriptor_,
+      RecordBatchDef::default_instance_,
+      RecordBatchDef_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RecordBatchDef, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(RecordBatchDef, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(RecordBatchDef));
+  NamePart_descriptor_ = file->message_type(7);
+  static const int NamePart_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(NamePart, type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(NamePart, name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(NamePart, child_),
+  };
+  NamePart_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      NamePart_descriptor_,
+      NamePart::default_instance_,
+      NamePart_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(NamePart, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(NamePart, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(NamePart));
+  NamePart_Type_descriptor_ = NamePart_descriptor_->enum_type(0);
+  SerializedField_descriptor_ = file->message_type(8);
+  static const int SerializedField_offsets_[6] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SerializedField, major_type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SerializedField, name_part_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SerializedField, child_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SerializedField, value_count_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SerializedField, var_byte_length_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SerializedField, buffer_length_),
+  };
+  SerializedField_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      SerializedField_descriptor_,
+      SerializedField::default_instance_,
+      SerializedField_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SerializedField, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SerializedField, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(SerializedField));
+  NodeStatus_descriptor_ = file->message_type(9);
+  static const int NodeStatus_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(NodeStatus, node_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(NodeStatus, memory_footprint_),
+  };
+  NodeStatus_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      NodeStatus_descriptor_,
+      NodeStatus::default_instance_,
+      NodeStatus_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(NodeStatus, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(NodeStatus, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(NodeStatus));
+  QueryResult_descriptor_ = file->message_type(10);
+  static const int QueryResult_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryResult, query_state_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryResult, query_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryResult, error_),
+  };
+  QueryResult_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      QueryResult_descriptor_,
+      QueryResult::default_instance_,
+      QueryResult_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryResult, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryResult, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(QueryResult));
+  QueryResult_QueryState_descriptor_ = QueryResult_descriptor_->enum_type(0);
+  QueryData_descriptor_ = file->message_type(11);
+  static const int QueryData_offsets_[4] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryData, query_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryData, row_count_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryData, def_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryData, affected_rows_count_),
+  };
+  QueryData_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      QueryData_descriptor_,
+      QueryData::default_instance_,
+      QueryData_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryData, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryData, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(QueryData));
+  QueryInfo_descriptor_ = file->message_type(12);
+  static const int QueryInfo_offsets_[8] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, query_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, start_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, state_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, user_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, foreman_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, options_json_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, total_cost_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, queue_name_),
+  };
+  QueryInfo_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      QueryInfo_descriptor_,
+      QueryInfo::default_instance_,
+      QueryInfo_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryInfo, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(QueryInfo));
+  QueryProfile_descriptor_ = file->message_type(13);
+  static const int QueryProfile_offsets_[23] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, start_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, end_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, query_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, plan_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, foreman_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, state_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, total_fragments_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, finished_fragments_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, fragment_profile_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, user_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, error_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, verboseerror_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, error_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, error_node_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, options_json_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, planend_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, queuewaitend_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, total_cost_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, queue_name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, queryid_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, autolimit_),
+  };
+  QueryProfile_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      QueryProfile_descriptor_,
+      QueryProfile::default_instance_,
+      QueryProfile_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(QueryProfile, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(QueryProfile));
+  MajorFragmentProfile_descriptor_ = file->message_type(14);
+  static const int MajorFragmentProfile_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorFragmentProfile, major_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorFragmentProfile, minor_fragment_profile_),
+  };
+  MajorFragmentProfile_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      MajorFragmentProfile_descriptor_,
+      MajorFragmentProfile::default_instance_,
+      MajorFragmentProfile_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorFragmentProfile, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MajorFragmentProfile, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(MajorFragmentProfile));
+  MinorFragmentProfile_descriptor_ = file->message_type(15);
+  static const int MinorFragmentProfile_offsets_[11] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, state_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, error_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, minor_fragment_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, operator_profile_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, start_time_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, end_time_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, memory_used_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, max_memory_used_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, endpoint_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, last_update_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, last_progress_),
+  };
+  MinorFragmentProfile_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      MinorFragmentProfile_descriptor_,
+      MinorFragmentProfile::default_instance_,
+      MinorFragmentProfile_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MinorFragmentProfile, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(MinorFragmentProfile));
+  OperatorProfile_descriptor_ = file->message_type(16);
+  static const int OperatorProfile_offsets_[8] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, input_profile_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, operator_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, operator_type_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, setup_nanos_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, process_nanos_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, peak_local_memory_allocated_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, metric_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, wait_nanos_),
+  };
+  OperatorProfile_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      OperatorProfile_descriptor_,
+      OperatorProfile::default_instance_,
+      OperatorProfile_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(OperatorProfile, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(OperatorProfile));
+  StreamProfile_descriptor_ = file->message_type(17);
+  static const int StreamProfile_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StreamProfile, records_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StreamProfile, batches_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StreamProfile, schemas_),
+  };
+  StreamProfile_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      StreamProfile_descriptor_,
+      StreamProfile::default_instance_,
+      StreamProfile_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StreamProfile, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(StreamProfile, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(StreamProfile));
+  MetricValue_descriptor_ = file->message_type(18);
+  static const int MetricValue_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MetricValue, metric_id_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MetricValue, long_value_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MetricValue, double_value_),
+  };
+  MetricValue_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      MetricValue_descriptor_,
+      MetricValue::default_instance_,
+      MetricValue_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MetricValue, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(MetricValue, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(MetricValue));
+  Registry_descriptor_ = file->message_type(19);
+  static const int Registry_offsets_[1] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Registry, jar_),
+  };
+  Registry_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      Registry_descriptor_,
+      Registry::default_instance_,
+      Registry_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Registry, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Registry, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(Registry));
+  Jar_descriptor_ = file->message_type(20);
+  static const int Jar_offsets_[2] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Jar, name_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Jar, function_signature_),
+  };
+  Jar_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      Jar_descriptor_,
+      Jar::default_instance_,
+      Jar_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Jar, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Jar, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(Jar));
+  SaslMessage_descriptor_ = file->message_type(21);
+  static const int SaslMessage_offsets_[3] = {
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SaslMessage, mechanism_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SaslMessage, data_),
+    GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SaslMessage, status_),
+  };
+  SaslMessage_reflection_ =
+    new ::google::protobuf::internal::GeneratedMessageReflection(
+      SaslMessage_descriptor_,
+      SaslMessage::default_instance_,
+      SaslMessage_offsets_,
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SaslMessage, _has_bits_[0]),
+      GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(SaslMessage, _unknown_fields_),
+      -1,
+      ::google::protobuf::DescriptorPool::generated_pool(),
+      ::google::protobuf::MessageFactory::generated_factory(),
+      sizeof(SaslMessage));
+  RpcChannel_descriptor_ = file->enum_type(0);
+  QueryType_descriptor_ = file->enum_type(1);
+  FragmentState_descriptor_ = file->enum_type(2);
+  CoreOperatorType_descriptor_ = file->enum_type(3);
+  SaslStatus_descriptor_ = file->enum_type(4);
 }
 
-::google::protobuf::internal::SCCInfo<0> scc_info_UserCredentials =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsUserCredentials}, {}};
+namespace {
 
-static void InitDefaultsQueryId() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_QueryId_default_instance_;
-    new (ptr) ::exec::shared::QueryId();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::QueryId::InitAsDefaultInstance();
+GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
+inline void protobuf_AssignDescriptorsOnce() {
+  ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
+                 &protobuf_AssignDesc_UserBitShared_2eproto);
 }
 
-::google::protobuf::internal::SCCInfo<0> scc_info_QueryId =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsQueryId}, {}};
-
-static void InitDefaultsDrillPBError() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_DrillPBError_default_instance_;
-    new (ptr) ::exec::shared::DrillPBError();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::DrillPBError::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<3> scc_info_DrillPBError =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 3, InitDefaultsDrillPBError}, {
-      &protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base,
-      &protobuf_UserBitShared_2eproto::scc_info_ExceptionWrapper.base,
-      &protobuf_UserBitShared_2eproto::scc_info_ParsingError.base,}};
-
-static void InitDefaultsExceptionWrapper() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_ExceptionWrapper_default_instance_;
-    new (ptr) ::exec::shared::ExceptionWrapper();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::ExceptionWrapper::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_ExceptionWrapper =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsExceptionWrapper}, {
-      &protobuf_UserBitShared_2eproto::scc_info_StackTraceElementWrapper.base,}};
-
-static void InitDefaultsStackTraceElementWrapper() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_StackTraceElementWrapper_default_instance_;
-    new (ptr) ::exec::shared::StackTraceElementWrapper();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::StackTraceElementWrapper::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_StackTraceElementWrapper =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsStackTraceElementWrapper}, {}};
-
-static void InitDefaultsParsingError() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_ParsingError_default_instance_;
-    new (ptr) ::exec::shared::ParsingError();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::ParsingError::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_ParsingError =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsParsingError}, {}};
-
-static void InitDefaultsRecordBatchDef() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_RecordBatchDef_default_instance_;
-    new (ptr) ::exec::shared::RecordBatchDef();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::RecordBatchDef::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_RecordBatchDef =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsRecordBatchDef}, {
-      &protobuf_UserBitShared_2eproto::scc_info_SerializedField.base,}};
-
-static void InitDefaultsNamePart() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_NamePart_default_instance_;
-    new (ptr) ::exec::shared::NamePart();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::NamePart::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_NamePart =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsNamePart}, {}};
-
-static void InitDefaultsSerializedField() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_SerializedField_default_instance_;
-    new (ptr) ::exec::shared::SerializedField();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::SerializedField::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_SerializedField =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsSerializedField}, {
-      &protobuf_Types_2eproto::scc_info_MajorType.base,
-      &protobuf_UserBitShared_2eproto::scc_info_NamePart.base,}};
-
-static void InitDefaultsNodeStatus() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_NodeStatus_default_instance_;
-    new (ptr) ::exec::shared::NodeStatus();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::NodeStatus::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_NodeStatus =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsNodeStatus}, {}};
-
-static void InitDefaultsQueryResult() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_QueryResult_default_instance_;
-    new (ptr) ::exec::shared::QueryResult();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::QueryResult::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_QueryResult =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsQueryResult}, {
-      &protobuf_UserBitShared_2eproto::scc_info_QueryId.base,
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base,}};
-
-static void InitDefaultsQueryData() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_QueryData_default_instance_;
-    new (ptr) ::exec::shared::QueryData();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::QueryData::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_QueryData =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsQueryData}, {
-      &protobuf_UserBitShared_2eproto::scc_info_QueryId.base,
-      &protobuf_UserBitShared_2eproto::scc_info_RecordBatchDef.base,}};
-
-static void InitDefaultsQueryInfo() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  ::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.DefaultConstruct();
-  *::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get_mutable() = ::std::string("-", 1);
-  ::google::protobuf::internal::OnShutdownDestroyString(
-      ::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get_mutable());
-  ::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.DefaultConstruct();
-  *::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get_mutable() = ::std::string("-", 1);
-  ::google::protobuf::internal::OnShutdownDestroyString(
-      ::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get_mutable());
-  {
-    void* ptr = &::exec::shared::_QueryInfo_default_instance_;
-    new (ptr) ::exec::shared::QueryInfo();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::QueryInfo::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_QueryInfo =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsQueryInfo}, {
-      &protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base,}};
-
-static void InitDefaultsQueryProfile() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  ::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.DefaultConstruct();
-  *::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get_mutable() = ::std::string("-", 1);
-  ::google::protobuf::internal::OnShutdownDestroyString(
-      ::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get_mutable());
-  ::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.DefaultConstruct();
-  *::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get_mutable() = ::std::string("-", 1);
-  ::google::protobuf::internal::OnShutdownDestroyString(
-      ::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get_mutable());
-  {
-    void* ptr = &::exec::shared::_QueryProfile_default_instance_;
-    new (ptr) ::exec::shared::QueryProfile();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::QueryProfile::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<3> scc_info_QueryProfile =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 3, InitDefaultsQueryProfile}, {
-      &protobuf_UserBitShared_2eproto::scc_info_QueryId.base,
-      &protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base,
-      &protobuf_UserBitShared_2eproto::scc_info_MajorFragmentProfile.base,}};
-
-static void InitDefaultsMajorFragmentProfile() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_MajorFragmentProfile_default_instance_;
-    new (ptr) ::exec::shared::MajorFragmentProfile();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::MajorFragmentProfile::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_MajorFragmentProfile =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsMajorFragmentProfile}, {
-      &protobuf_UserBitShared_2eproto::scc_info_MinorFragmentProfile.base,}};
-
-static void InitDefaultsMinorFragmentProfile() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_MinorFragmentProfile_default_instance_;
-    new (ptr) ::exec::shared::MinorFragmentProfile();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::MinorFragmentProfile::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<3> scc_info_MinorFragmentProfile =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 3, InitDefaultsMinorFragmentProfile}, {
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base,
-      &protobuf_UserBitShared_2eproto::scc_info_OperatorProfile.base,
-      &protobuf_Coordination_2eproto::scc_info_DrillbitEndpoint.base,}};
-
-static void InitDefaultsOperatorProfile() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_OperatorProfile_default_instance_;
-    new (ptr) ::exec::shared::OperatorProfile();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::OperatorProfile::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<2> scc_info_OperatorProfile =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsOperatorProfile}, {
-      &protobuf_UserBitShared_2eproto::scc_info_StreamProfile.base,
-      &protobuf_UserBitShared_2eproto::scc_info_MetricValue.base,}};
-
-static void InitDefaultsStreamProfile() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_StreamProfile_default_instance_;
-    new (ptr) ::exec::shared::StreamProfile();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::StreamProfile::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_StreamProfile =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsStreamProfile}, {}};
-
-static void InitDefaultsMetricValue() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_MetricValue_default_instance_;
-    new (ptr) ::exec::shared::MetricValue();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::MetricValue::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_MetricValue =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsMetricValue}, {}};
-
-static void InitDefaultsRegistry() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_Registry_default_instance_;
-    new (ptr) ::exec::shared::Registry();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::Registry::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<1> scc_info_Registry =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsRegistry}, {
-      &protobuf_UserBitShared_2eproto::scc_info_Jar.base,}};
-
-static void InitDefaultsJar() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_Jar_default_instance_;
-    new (ptr) ::exec::shared::Jar();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::Jar::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_Jar =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsJar}, {}};
-
-static void InitDefaultsSaslMessage() {
-  GOOGLE_PROTOBUF_VERIFY_VERSION;
-
-  {
-    void* ptr = &::exec::shared::_SaslMessage_default_instance_;
-    new (ptr) ::exec::shared::SaslMessage();
-    ::google::protobuf::internal::OnShutdownDestroyMessage(ptr);
-  }
-  ::exec::shared::SaslMessage::InitAsDefaultInstance();
-}
-
-::google::protobuf::internal::SCCInfo<0> scc_info_SaslMessage =
-    {{ATOMIC_VAR_INIT(::google::protobuf::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsSaslMessage}, {}};
-
-void InitDefaults() {
-  ::google::protobuf::internal::InitSCC(&scc_info_UserCredentials.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_QueryId.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_DrillPBError.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_ExceptionWrapper.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_StackTraceElementWrapper.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_ParsingError.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_RecordBatchDef.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_NamePart.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_SerializedField.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_NodeStatus.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_QueryResult.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_QueryData.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_QueryInfo.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_QueryProfile.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_MajorFragmentProfile.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_MinorFragmentProfile.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_OperatorProfile.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_StreamProfile.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_MetricValue.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_Registry.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_Jar.base);
-  ::google::protobuf::internal::InitSCC(&scc_info_SaslMessage.base);
-}
-
-::google::protobuf::Metadata file_level_metadata[22];
-const ::google::protobuf::EnumDescriptor* file_level_enum_descriptors[8];
-
-const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::UserCredentials, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::UserCredentials, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::UserCredentials, user_name_),
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryId, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryId, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryId, part1_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryId, part2_),
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::DrillPBError, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::DrillPBError, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::DrillPBError, error_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::DrillPBError, endpoint_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::DrillPBError, error_type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::DrillPBError, message_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::DrillPBError, exception_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::DrillPBError, parsing_error_),
-  0,
-  2,
-  4,
-  1,
-  3,
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ExceptionWrapper, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ExceptionWrapper, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ExceptionWrapper, exception_class_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ExceptionWrapper, message_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ExceptionWrapper, stack_trace_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ExceptionWrapper, cause_),
-  0,
-  1,
-  ~0u,
-  2,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StackTraceElementWrapper, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StackTraceElementWrapper, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StackTraceElementWrapper, class_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StackTraceElementWrapper, file_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StackTraceElementWrapper, line_number_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StackTraceElementWrapper, method_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StackTraceElementWrapper, is_native_method_),
-  0,
-  1,
-  3,
-  2,
-  4,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ParsingError, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ParsingError, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ParsingError, start_column_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ParsingError, start_row_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ParsingError, end_column_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::ParsingError, end_row_),
-  0,
-  1,
-  2,
-  3,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::RecordBatchDef, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::RecordBatchDef, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::RecordBatchDef, record_count_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::RecordBatchDef, field_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::RecordBatchDef, carries_two_byte_selection_vector_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::RecordBatchDef, affected_rows_count_),
-  0,
-  ~0u,
-  1,
-  2,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::NamePart, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::NamePart, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::NamePart, type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::NamePart, name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::NamePart, child_),
-  2,
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SerializedField, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SerializedField, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SerializedField, major_type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SerializedField, name_part_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SerializedField, child_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SerializedField, value_count_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SerializedField, var_byte_length_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SerializedField, buffer_length_),
-  0,
-  1,
-  ~0u,
-  2,
-  3,
-  4,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::NodeStatus, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::NodeStatus, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::NodeStatus, node_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::NodeStatus, memory_footprint_),
-  1,
-  0,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryResult, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryResult, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryResult, query_state_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryResult, query_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryResult, error_),
-  1,
-  0,
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryData, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryData, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryData, query_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryData, row_count_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryData, def_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryData, affected_rows_count_),
-  0,
-  2,
-  1,
-  3,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, query_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, start_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, state_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, user_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, foreman_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, options_json_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, total_cost_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryInfo, queue_name_),
-  0,
-  5,
-  7,
-  1,
-  4,
-  2,
-  6,
-  3,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, start_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, end_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, query_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, plan_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, foreman_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, state_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, total_fragments_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, finished_fragments_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, fragment_profile_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, user_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, error_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, verboseerror_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, error_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, error_node_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, options_json_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, planend_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, queuewaitend_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, total_cost_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, queue_name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, queryid_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::QueryProfile, autolimit_),
-  10,
-  21,
-  12,
-  13,
-  0,
-  1,
-  11,
-  14,
-  15,
-  16,
-  ~0u,
-  2,
-  3,
-  4,
-  5,
-  6,
-  7,
-  18,
-  19,
-  20,
-  8,
-  9,
-  17,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MajorFragmentProfile, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MajorFragmentProfile, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MajorFragmentProfile, major_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MajorFragmentProfile, minor_fragment_profile_),
-  0,
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, state_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, error_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, minor_fragment_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, operator_profile_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, start_time_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, end_time_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, memory_used_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, max_memory_used_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, endpoint_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, last_update_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MinorFragmentProfile, last_progress_),
-  2,
-  0,
-  3,
-  ~0u,
-  4,
-  5,
-  6,
-  7,
-  1,
-  8,
-  9,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, input_profile_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, operator_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, operator_type_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, setup_nanos_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, process_nanos_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, peak_local_memory_allocated_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, metric_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::OperatorProfile, wait_nanos_),
-  ~0u,
-  0,
-  1,
-  2,
-  3,
-  4,
-  ~0u,
-  5,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StreamProfile, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StreamProfile, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StreamProfile, records_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StreamProfile, batches_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::StreamProfile, schemas_),
-  0,
-  1,
-  2,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MetricValue, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MetricValue, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MetricValue, metric_id_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MetricValue, long_value_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::MetricValue, double_value_),
-  2,
-  0,
-  1,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::Registry, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::Registry, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::Registry, jar_),
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::Jar, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::Jar, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::Jar, name_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::Jar, function_signature_),
-  0,
-  ~0u,
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SaslMessage, _has_bits_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SaslMessage, _internal_metadata_),
-  ~0u,  // no _extensions_
-  ~0u,  // no _oneof_case_
-  ~0u,  // no _weak_field_map_
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SaslMessage, mechanism_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SaslMessage, data_),
-  GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(::exec::shared::SaslMessage, status_),
-  0,
-  1,
-  2,
-};
-static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-  { 0, 6, sizeof(::exec::shared::UserCredentials)},
-  { 7, 14, sizeof(::exec::shared::QueryId)},
-  { 16, 27, sizeof(::exec::shared::DrillPBError)},
-  { 33, 42, sizeof(::exec::shared::ExceptionWrapper)},
-  { 46, 56, sizeof(::exec::shared::StackTraceElementWrapper)},
-  { 61, 70, sizeof(::exec::shared::ParsingError)},
-  { 74, 83, sizeof(::exec::shared::RecordBatchDef)},
-  { 87, 95, sizeof(::exec::shared::NamePart)},
-  { 98, 109, sizeof(::exec::shared::SerializedField)},
-  { 115, 122, sizeof(::exec::shared::NodeStatus)},
-  { 124, 132, sizeof(::exec::shared::QueryResult)},
-  { 135, 144, sizeof(::exec::shared::QueryData)},
-  { 148, 161, sizeof(::exec::shared::QueryInfo)},
-  { 169, 197, sizeof(::exec::shared::QueryProfile)},
-  { 220, 227, sizeof(::exec::shared::MajorFragmentProfile)},
-  { 229, 245, sizeof(::exec::shared::MinorFragmentProfile)},
-  { 256, 269, sizeof(::exec::shared::OperatorProfile)},
-  { 277, 285, sizeof(::exec::shared::StreamProfile)},
-  { 288, 296, sizeof(::exec::shared::MetricValue)},
-  { 299, 305, sizeof(::exec::shared::Registry)},
-  { 306, 313, sizeof(::exec::shared::Jar)},
-  { 315, 323, sizeof(::exec::shared::SaslMessage)},
-};
-
-static ::google::protobuf::Message const * const file_default_instances[] = {
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_UserCredentials_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_QueryId_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_DrillPBError_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_ExceptionWrapper_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_StackTraceElementWrapper_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_ParsingError_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_RecordBatchDef_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_NamePart_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_SerializedField_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_NodeStatus_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_QueryResult_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_QueryData_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_QueryInfo_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_QueryProfile_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_MajorFragmentProfile_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_MinorFragmentProfile_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_OperatorProfile_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_StreamProfile_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_MetricValue_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_Registry_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_Jar_default_instance_),
-  reinterpret_cast<const ::google::protobuf::Message*>(&::exec::shared::_SaslMessage_default_instance_),
-};
-
-void protobuf_AssignDescriptors() {
-  AddDescriptors();
-  AssignDescriptors(
-      "UserBitShared.proto", schemas, file_default_instances, TableStruct::offsets,
-      file_level_metadata, file_level_enum_descriptors, NULL);
-}
-
-void protobuf_AssignDescriptorsOnce() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, protobuf_AssignDescriptors);
-}
-
-void protobuf_RegisterTypes(const ::std::string&) GOOGLE_PROTOBUF_ATTRIBUTE_COLD;
 void protobuf_RegisterTypes(const ::std::string&) {
   protobuf_AssignDescriptorsOnce();
-  ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 22);
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    UserCredentials_descriptor_, &UserCredentials::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    QueryId_descriptor_, &QueryId::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    DrillPBError_descriptor_, &DrillPBError::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    ExceptionWrapper_descriptor_, &ExceptionWrapper::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    StackTraceElementWrapper_descriptor_, &StackTraceElementWrapper::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    ParsingError_descriptor_, &ParsingError::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    RecordBatchDef_descriptor_, &RecordBatchDef::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    NamePart_descriptor_, &NamePart::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    SerializedField_descriptor_, &SerializedField::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    NodeStatus_descriptor_, &NodeStatus::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    QueryResult_descriptor_, &QueryResult::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    QueryData_descriptor_, &QueryData::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    QueryInfo_descriptor_, &QueryInfo::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    QueryProfile_descriptor_, &QueryProfile::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    MajorFragmentProfile_descriptor_, &MajorFragmentProfile::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    MinorFragmentProfile_descriptor_, &MinorFragmentProfile::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    OperatorProfile_descriptor_, &OperatorProfile::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    StreamProfile_descriptor_, &StreamProfile::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    MetricValue_descriptor_, &MetricValue::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    Registry_descriptor_, &Registry::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    Jar_descriptor_, &Jar::default_instance());
+  ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
+    SaslMessage_descriptor_, &SaslMessage::default_instance());
 }
 
-void AddDescriptorsImpl() {
-  InitDefaults();
-  static const char descriptor[] GOOGLE_PROTOBUF_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
-      "\n\023UserBitShared.proto\022\013exec.shared\032\013Type"
-      "s.proto\032\022Coordination.proto\032\017SchemaDef.p"
-      "roto\"$\n\017UserCredentials\022\021\n\tuser_name\030\001 \001"
-      "(\t\"\'\n\007QueryId\022\r\n\005part1\030\001 \001(\020\022\r\n\005part2\030\002 "
-      "\001(\020\"\355\003\n\014DrillPBError\022\020\n\010error_id\030\001 \001(\t\022("
-      "\n\010endpoint\030\002 \001(\0132\026.exec.DrillbitEndpoint"
-      "\0227\n\nerror_type\030\003 \001(\0162#.exec.shared.Drill"
-      "PBError.ErrorType\022\017\n\007message\030\004 \001(\t\0220\n\tex"
-      "ception\030\005 \001(\0132\035.exec.shared.ExceptionWra"
-      "pper\0220\n\rparsing_error\030\006 \003(\0132\031.exec.share"
-      "d.ParsingError\"\362\001\n\tErrorType\022\016\n\nCONNECTI"
-      "ON\020\000\022\r\n\tDATA_READ\020\001\022\016\n\nDATA_WRITE\020\002\022\014\n\010F"
-      "UNCTION\020\003\022\t\n\005PARSE\020\004\022\016\n\nPERMISSION\020\005\022\010\n\004"
-      "PLAN\020\006\022\014\n\010RESOURCE\020\007\022\n\n\006SYSTEM\020\010\022\031\n\025UNSU"
-      "PPORTED_OPERATION\020\t\022\016\n\nVALIDATION\020\n\022\023\n\017E"
-      "XECUTION_ERROR\020\013\022\022\n\016INTERNAL_ERROR\020\014\022\025\n\021"
-      "UNSPECIFIED_ERROR\020\r\"\246\001\n\020ExceptionWrapper"
-      "\022\027\n\017exception_class\030\001 \001(\t\022\017\n\007message\030\002 \001"
-      "(\t\022:\n\013stack_trace\030\003 \003(\0132%.exec.shared.St"
-      "ackTraceElementWrapper\022,\n\005cause\030\004 \001(\0132\035."
-      "exec.shared.ExceptionWrapper\"\205\001\n\030StackTr"
-      "aceElementWrapper\022\022\n\nclass_name\030\001 \001(\t\022\021\n"
-      "\tfile_name\030\002 \001(\t\022\023\n\013line_number\030\003 \001(\005\022\023\n"
-      "\013method_name\030\004 \001(\t\022\030\n\020is_native_method\030\005"
-      " \001(\010\"\\\n\014ParsingError\022\024\n\014start_column\030\002 \001"
-      "(\005\022\021\n\tstart_row\030\003 \001(\005\022\022\n\nend_column\030\004 \001("
-      "\005\022\017\n\007end_row\030\005 \001(\005\"\233\001\n\016RecordBatchDef\022\024\n"
-      "\014record_count\030\001 \001(\005\022+\n\005field\030\002 \003(\0132\034.exe"
-      "c.shared.SerializedField\022)\n!carries_two_"
-      "byte_selection_vector\030\003 \001(\010\022\033\n\023affected_"
-      "rows_count\030\004 \001(\005\"\205\001\n\010NamePart\022(\n\004type\030\001 "
-      "\001(\0162\032.exec.shared.NamePart.Type\022\014\n\004name\030"
-      "\002 \001(\t\022$\n\005child\030\003 \001(\0132\025.exec.shared.NameP"
-      "art\"\033\n\004Type\022\010\n\004NAME\020\000\022\t\n\005ARRAY\020\001\"\324\001\n\017Ser"
-      "ializedField\022%\n\nmajor_type\030\001 \001(\0132\021.commo"
-      "n.MajorType\022(\n\tname_part\030\002 \001(\0132\025.exec.sh"
-      "ared.NamePart\022+\n\005child\030\003 \003(\0132\034.exec.shar"
-      "ed.SerializedField\022\023\n\013value_count\030\004 \001(\005\022"
-      "\027\n\017var_byte_length\030\005 \001(\005\022\025\n\rbuffer_lengt"
-      "h\030\007 \001(\005\"7\n\nNodeStatus\022\017\n\007node_id\030\001 \001(\005\022\030"
-      "\n\020memory_footprint\030\002 \001(\003\"\263\002\n\013QueryResult"
-      "\0228\n\013query_state\030\001 \001(\0162#.exec.shared.Quer"
-      "yResult.QueryState\022&\n\010query_id\030\002 \001(\0132\024.e"
-      "xec.shared.QueryId\022(\n\005error\030\003 \003(\0132\031.exec"
-      ".shared.DrillPBError\"\227\001\n\nQueryState\022\014\n\010S"
-      "TARTING\020\000\022\013\n\007RUNNING\020\001\022\r\n\tCOMPLETED\020\002\022\014\n"
-      "\010CANCELED\020\003\022\n\n\006FAILED\020\004\022\032\n\026CANCELLATION_"
-      "REQUESTED\020\005\022\014\n\010ENQUEUED\020\006\022\r\n\tPREPARING\020\007"
-      "\022\014\n\010PLANNING\020\010\"\215\001\n\tQueryData\022&\n\010query_id"
-      "\030\001 \001(\0132\024.exec.shared.QueryId\022\021\n\trow_coun"
-      "t\030\002 \001(\005\022(\n\003def\030\003 \001(\0132\033.exec.shared.Recor"
-      "dBatchDef\022\033\n\023affected_rows_count\030\004 \001(\005\"\330"
-      "\001\n\tQueryInfo\022\r\n\005query\030\001 \001(\t\022\r\n\005start\030\002 \001"
-      "(\003\0222\n\005state\030\003 \001(\0162#.exec.shared.QueryRes"
-      "ult.QueryState\022\017\n\004user\030\004 \001(\t:\001-\022\'\n\007forem"
-      "an\030\005 \001(\0132\026.exec.DrillbitEndpoint\022\024\n\014opti"
-      "ons_json\030\006 \001(\t\022\022\n\ntotal_cost\030\007 \001(\001\022\025\n\nqu"
-      "eue_name\030\010 \001(\t:\001-\"\306\004\n\014QueryProfile\022 \n\002id"
-      "\030\001 \001(\0132\024.exec.shared.QueryId\022$\n\004type\030\002 \001"
-      "(\0162\026.exec.shared.QueryType\022\r\n\005start\030\003 \001("
-      "\003\022\013\n\003end\030\004 \001(\003\022\r\n\005query\030\005 \001(\t\022\014\n\004plan\030\006 "
-      "\001(\t\022\'\n\007foreman\030\007 \001(\0132\026.exec.DrillbitEndp"
-      "oint\0222\n\005state\030\010 \001(\0162#.exec.shared.QueryR"
-      "esult.QueryState\022\027\n\017total_fragments\030\t \001("
-      "\005\022\032\n\022finished_fragments\030\n \001(\005\022;\n\020fragmen"
-      "t_profile\030\013 \003(\0132!.exec.shared.MajorFragm"
-      "entProfile\022\017\n\004user\030\014 \001(\t:\001-\022\r\n\005error\030\r \001"
-      "(\t\022\024\n\014verboseError\030\016 \001(\t\022\020\n\010error_id\030\017 \001"
-      "(\t\022\022\n\nerror_node\030\020 \001(\t\022\024\n\014options_json\030\021"
-      " \001(\t\022\017\n\007planEnd\030\022 \001(\003\022\024\n\014queueWaitEnd\030\023 "
-      "\001(\003\022\022\n\ntotal_cost\030\024 \001(\001\022\025\n\nqueue_name\030\025 "
-      "\001(\t:\001-\022\017\n\007queryId\030\026 \001(\t\022\021\n\tautoLimit\030\027 \001"
-      "(\005\"t\n\024MajorFragmentProfile\022\031\n\021major_frag"
-      "ment_id\030\001 \001(\005\022A\n\026minor_fragment_profile\030"
-      "\002 \003(\0132!.exec.shared.MinorFragmentProfile"
-      "\"\350\002\n\024MinorFragmentProfile\022)\n\005state\030\001 \001(\016"
-      "2\032.exec.shared.FragmentState\022(\n\005error\030\002 "
-      "\001(\0132\031.exec.shared.DrillPBError\022\031\n\021minor_"
-      "fragment_id\030\003 \001(\005\0226\n\020operator_profile\030\004 "
-      "\003(\0132\034.exec.shared.OperatorProfile\022\022\n\nsta"
-      "rt_time\030\005 \001(\003\022\020\n\010end_time\030\006 \001(\003\022\023\n\013memor"
-      "y_used\030\007 \001(\003\022\027\n\017max_memory_used\030\010 \001(\003\022(\n"
-      "\010endpoint\030\t \001(\0132\026.exec.DrillbitEndpoint\022"
-      "\023\n\013last_update\030\n \001(\003\022\025\n\rlast_progress\030\013 "
-      "\001(\003\"\377\001\n\017OperatorProfile\0221\n\rinput_profile"
-      "\030\001 \003(\0132\032.exec.shared.StreamProfile\022\023\n\013op"
-      "erator_id\030\003 \001(\005\022\025\n\roperator_type\030\004 \001(\005\022\023"
-      "\n\013setup_nanos\030\005 \001(\003\022\025\n\rprocess_nanos\030\006 \001"
-      "(\003\022#\n\033peak_local_memory_allocated\030\007 \001(\003\022"
-      "(\n\006metric\030\010 \003(\0132\030.exec.shared.MetricValu"
-      "e\022\022\n\nwait_nanos\030\t \001(\003\"B\n\rStreamProfile\022\017"
-      "\n\007records\030\001 \001(\003\022\017\n\007batches\030\002 \001(\003\022\017\n\007sche"
-      "mas\030\003 \001(\003\"J\n\013MetricValue\022\021\n\tmetric_id\030\001 "
-      "\001(\005\022\022\n\nlong_value\030\002 \001(\003\022\024\n\014double_value\030"
-      "\003 \001(\001\")\n\010Registry\022\035\n\003jar\030\001 \003(\0132\020.exec.sh"
-      "ared.Jar\"/\n\003Jar\022\014\n\004name\030\001 \001(\t\022\032\n\022functio"
-      "n_signature\030\002 \003(\t\"W\n\013SaslMessage\022\021\n\tmech"
-      "anism\030\001 \001(\t\022\014\n\004data\030\002 \001(\014\022\'\n\006status\030\003 \001("
-      "\0162\027.exec.shared.SaslStatus*5\n\nRpcChannel"
-      "\022\017\n\013BIT_CONTROL\020\000\022\014\n\010BIT_DATA\020\001\022\010\n\004USER\020"
-      "\002*V\n\tQueryType\022\007\n\003SQL\020\001\022\013\n\007LOGICAL\020\002\022\014\n\010"
-      "PHYSICAL\020\003\022\r\n\tEXECUTION\020\004\022\026\n\022PREPARED_ST"
-      "ATEMENT\020\005*\207\001\n\rFragmentState\022\013\n\007SENDING\020\000"
-      "\022\027\n\023AWAITING_ALLOCATION\020\001\022\013\n\007RUNNING\020\002\022\014"
-      "\n\010FINISHED\020\003\022\r\n\tCANCELLED\020\004\022\n\n\006FAILED\020\005\022"
-      "\032\n\026CANCELLATION_REQUESTED\020\006*\374\t\n\020CoreOper"
-      "atorType\022\021\n\rSINGLE_SENDER\020\000\022\024\n\020BROADCAST"
-      "_SENDER\020\001\022\n\n\006FILTER\020\002\022\022\n\016HASH_AGGREGATE\020"
-      "\003\022\r\n\tHASH_JOIN\020\004\022\016\n\nMERGE_JOIN\020\005\022\031\n\025HASH"
-      "_PARTITION_SENDER\020\006\022\t\n\005LIMIT\020\007\022\024\n\020MERGIN"
-      "G_RECEIVER\020\010\022\034\n\030ORDERED_PARTITION_SENDER"
-      "\020\t\022\013\n\007PROJECT\020\n\022\026\n\022UNORDERED_RECEIVER\020\013\022"
-      "\032\n\026RANGE_PARTITION_SENDER\020\014\022\n\n\006SCREEN\020\r\022"
-      "\034\n\030SELECTION_VECTOR_REMOVER\020\016\022\027\n\023STREAMI"
-      "NG_AGGREGATE\020\017\022\016\n\nTOP_N_SORT\020\020\022\021\n\rEXTERN"
-      "AL_SORT\020\021\022\t\n\005TRACE\020\022\022\t\n\005UNION\020\023\022\014\n\010OLD_S"
-      "ORT\020\024\022\032\n\026PARQUET_ROW_GROUP_SCAN\020\025\022\021\n\rHIV"
-      "E_SUB_SCAN\020\026\022\025\n\021SYSTEM_TABLE_SCAN\020\027\022\021\n\rM"
-      "OCK_SUB_SCAN\020\030\022\022\n\016PARQUET_WRITER\020\031\022\023\n\017DI"
-      "RECT_SUB_SCAN\020\032\022\017\n\013TEXT_WRITER\020\033\022\021\n\rTEXT"
-      "_SUB_SCAN\020\034\022\021\n\rJSON_SUB_SCAN\020\035\022\030\n\024INFO_S"
-      "CHEMA_SUB_SCAN\020\036\022\023\n\017COMPLEX_TO_JSON\020\037\022\025\n"
-      "\021PRODUCER_CONSUMER\020 \022\022\n\016HBASE_SUB_SCAN\020!"
-      "\022\n\n\006WINDOW\020\"\022\024\n\020NESTED_LOOP_JOIN\020#\022\021\n\rAV"
-      "RO_SUB_SCAN\020$\022\021\n\rPCAP_SUB_SCAN\020%\022\022\n\016KAFK"
-      "A_SUB_SCAN\020&\022\021\n\rKUDU_SUB_SCAN\020\'\022\013\n\007FLATT"
-      "EN\020(\022\020\n\014LATERAL_JOIN\020)\022\n\n\006UNNEST\020*\022,\n(HI"
-      "VE_DRILL_NATIVE_PARQUET_ROW_GROUP_SCAN\020+"
-      "\022\r\n\tJDBC_SCAN\020,\022\022\n\016REGEX_SUB_SCAN\020-\022\023\n\017M"
-      "APRDB_SUB_SCAN\020.\022\022\n\016MONGO_SUB_SCAN\020/\022\017\n\013"
-      "KUDU_WRITER\0200\022\026\n\022OPEN_TSDB_SUB_SCAN\0201\022\017\n"
-      "\013JSON_WRITER\0202\022\026\n\022HTPPD_LOG_SUB_SCAN\0203\022\022"
-      "\n\016IMAGE_SUB_SCAN\0204\022\025\n\021SEQUENCE_SUB_SCAN\020"
-      "5\022\023\n\017PARTITION_LIMIT\0206\022\023\n\017PCAPNG_SUB_SCA"
-      "N\0207\022\022\n\016RUNTIME_FILTER\0208\022\017\n\013ROWKEY_JOIN\0209"
-      "\022\023\n\017SYSLOG_SUB_SCAN\020:\022\030\n\024STATISTICS_AGGR"
-      "EGATE\020;\022\020\n\014UNPIVOT_MAPS\020<\022\024\n\020STATISTICS_"
-      "MERGE\020=\022\021\n\rLTSV_SUB_SCAN\020>*g\n\nSaslStatus"
-      "\022\020\n\014SASL_UNKNOWN\020\000\022\016\n\nSASL_START\020\001\022\024\n\020SA"
-      "SL_IN_PROGRESS\020\002\022\020\n\014SASL_SUCCESS\020\003\022\017\n\013SA"
-      "SL_FAILED\020\004B.\n\033org.apache.drill.exec.pro"
-      "toB\rUserBitSharedH\001"
-  };
+}  // namespace
+
+void protobuf_ShutdownFile_UserBitShared_2eproto() {
+  delete UserCredentials::default_instance_;
+  delete UserCredentials_reflection_;
+  delete QueryId::default_instance_;
+  delete QueryId_reflection_;
+  delete DrillPBError::default_instance_;
+  delete DrillPBError_reflection_;
+  delete ExceptionWrapper::default_instance_;
+  delete ExceptionWrapper_reflection_;
+  delete StackTraceElementWrapper::default_instance_;
+  delete StackTraceElementWrapper_reflection_;
+  delete ParsingError::default_instance_;
+  delete ParsingError_reflection_;
+  delete RecordBatchDef::default_instance_;
+  delete RecordBatchDef_reflection_;
+  delete NamePart::default_instance_;
+  delete NamePart_reflection_;
+  delete SerializedField::default_instance_;
+  delete SerializedField_reflection_;
+  delete NodeStatus::default_instance_;
+  delete NodeStatus_reflection_;
+  delete QueryResult::default_instance_;
+  delete QueryResult_reflection_;
+  delete QueryData::default_instance_;
+  delete QueryData_reflection_;
+  delete QueryInfo::default_instance_;
+  delete QueryInfo_reflection_;
+  delete QueryInfo::_default_user_;
+  delete QueryInfo::_default_queue_name_;
+  delete QueryProfile::default_instance_;
+  delete QueryProfile_reflection_;
+  delete QueryProfile::_default_user_;
+  delete QueryProfile::_default_queue_name_;
+  delete MajorFragmentProfile::default_instance_;
+  delete MajorFragmentProfile_reflection_;
+  delete MinorFragmentProfile::default_instance_;
+  delete MinorFragmentProfile_reflection_;
+  delete OperatorProfile::default_instance_;
+  delete OperatorProfile_reflection_;
+  delete StreamProfile::default_instance_;
+  delete StreamProfile_reflection_;
+  delete MetricValue::default_instance_;
+  delete MetricValue_reflection_;
+  delete Registry::default_instance_;
+  delete Registry_reflection_;
+  delete Jar::default_instance_;
+  delete Jar_reflection_;
+  delete SaslMessage::default_instance_;
+  delete SaslMessage_reflection_;
+}
+
+void protobuf_AddDesc_UserBitShared_2eproto() {
+  static bool already_here = false;
+  if (already_here) return;
+  already_here = true;
+  GOOGLE_PROTOBUF_VERIFY_VERSION;
+
+  ::common::protobuf_AddDesc_Types_2eproto();
+  ::exec::protobuf_AddDesc_Coordination_2eproto();
+  ::exec::protobuf_AddDesc_SchemaDef_2eproto();
   ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
-      descriptor, 5659);
+    "\n\023UserBitShared.proto\022\013exec.shared\032\013Type"
+    "s.proto\032\022Coordination.proto\032\017SchemaDef.p"
+    "roto\"$\n\017UserCredentials\022\021\n\tuser_name\030\001 \001"
+    "(\t\"\'\n\007QueryId\022\r\n\005part1\030\001 \001(\020\022\r\n\005part2\030\002 "
+    "\001(\020\"\355\003\n\014DrillPBError\022\020\n\010error_id\030\001 \001(\t\022("
+    "\n\010endpoint\030\002 \001(\0132\026.exec.DrillbitEndpoint"
+    "\0227\n\nerror_type\030\003 \001(\0162#.exec.shared.Drill"
+    "PBError.ErrorType\022\017\n\007message\030\004 \001(\t\0220\n\tex"
+    "ception\030\005 \001(\0132\035.exec.shared.ExceptionWra"
+    "pper\0220\n\rparsing_error\030\006 \003(\0132\031.exec.share"
+    "d.ParsingError\"\362\001\n\tErrorType\022\016\n\nCONNECTI"
+    "ON\020\000\022\r\n\tDATA_READ\020\001\022\016\n\nDATA_WRITE\020\002\022\014\n\010F"
+    "UNCTION\020\003\022\t\n\005PARSE\020\004\022\016\n\nPERMISSION\020\005\022\010\n\004"
+    "PLAN\020\006\022\014\n\010RESOURCE\020\007\022\n\n\006SYSTEM\020\010\022\031\n\025UNSU"
+    "PPORTED_OPERATION\020\t\022\016\n\nVALIDATION\020\n\022\023\n\017E"
+    "XECUTION_ERROR\020\013\022\022\n\016INTERNAL_ERROR\020\014\022\025\n\021"
+    "UNSPECIFIED_ERROR\020\r\"\246\001\n\020ExceptionWrapper"
+    "\022\027\n\017exception_class\030\001 \001(\t\022\017\n\007message\030\002 \001"
+    "(\t\022:\n\013stack_trace\030\003 \003(\0132%.exec.shared.St"
+    "ackTraceElementWrapper\022,\n\005cause\030\004 \001(\0132\035."
+    "exec.shared.ExceptionWrapper\"\205\001\n\030StackTr"
+    "aceElementWrapper\022\022\n\nclass_name\030\001 \001(\t\022\021\n"
+    "\tfile_name\030\002 \001(\t\022\023\n\013line_number\030\003 \001(\005\022\023\n"
+    "\013method_name\030\004 \001(\t\022\030\n\020is_native_method\030\005"
+    " \001(\010\"\\\n\014ParsingError\022\024\n\014start_column\030\002 \001"
+    "(\005\022\021\n\tstart_row\030\003 \001(\005\022\022\n\nend_column\030\004 \001("
+    "\005\022\017\n\007end_row\030\005 \001(\005\"\233\001\n\016RecordBatchDef\022\024\n"
+    "\014record_count\030\001 \001(\005\022+\n\005field\030\002 \003(\0132\034.exe"
+    "c.shared.SerializedField\022)\n!carries_two_"
+    "byte_selection_vector\030\003 \001(\010\022\033\n\023affected_"
+    "rows_count\030\004 \001(\005\"\205\001\n\010NamePart\022(\n\004type\030\001 "
+    "\001(\0162\032.exec.shared.NamePart.Type\022\014\n\004name\030"
+    "\002 \001(\t\022$\n\005child\030\003 \001(\0132\025.exec.shared.NameP"
+    "art\"\033\n\004Type\022\010\n\004NAME\020\000\022\t\n\005ARRAY\020\001\"\324\001\n\017Ser"
+    "ializedField\022%\n\nmajor_type\030\001 \001(\0132\021.commo"
+    "n.MajorType\022(\n\tname_part\030\002 \001(\0132\025.exec.sh"
+    "ared.NamePart\022+\n\005child\030\003 \003(\0132\034.exec.shar"
+    "ed.SerializedField\022\023\n\013value_count\030\004 \001(\005\022"
+    "\027\n\017var_byte_length\030\005 \001(\005\022\025\n\rbuffer_lengt"
+    "h\030\007 \001(\005\"7\n\nNodeStatus\022\017\n\007node_id\030\001 \001(\005\022\030"
+    "\n\020memory_footprint\030\002 \001(\003\"\263\002\n\013QueryResult"
+    "\0228\n\013query_state\030\001 \001(\0162#.exec.shared.Quer"
+    "yResult.QueryState\022&\n\010query_id\030\002 \001(\0132\024.e"
+    "xec.shared.QueryId\022(\n\005error\030\003 \003(\0132\031.exec"
+    ".shared.DrillPBError\"\227\001\n\nQueryState\022\014\n\010S"
+    "TARTING\020\000\022\013\n\007RUNNING\020\001\022\r\n\tCOMPLETED\020\002\022\014\n"
+    "\010CANCELED\020\003\022\n\n\006FAILED\020\004\022\032\n\026CANCELLATION_"
+    "REQUESTED\020\005\022\014\n\010ENQUEUED\020\006\022\r\n\tPREPARING\020\007"
+    "\022\014\n\010PLANNING\020\010\"\215\001\n\tQueryData\022&\n\010query_id"
+    "\030\001 \001(\0132\024.exec.shared.QueryId\022\021\n\trow_coun"
+    "t\030\002 \001(\005\022(\n\003def\030\003 \001(\0132\033.exec.shared.Recor"
+    "dBatchDef\022\033\n\023affected_rows_count\030\004 \001(\005\"\330"
+    "\001\n\tQueryInfo\022\r\n\005query\030\001 \001(\t\022\r\n\005start\030\002 \001"
+    "(\003\0222\n\005state\030\003 \001(\0162#.exec.shared.QueryRes"
+    "ult.QueryState\022\017\n\004user\030\004 \001(\t:\001-\022\'\n\007forem"
+    "an\030\005 \001(\0132\026.exec.DrillbitEndpoint\022\024\n\014opti"
+    "ons_json\030\006 \001(\t\022\022\n\ntotal_cost\030\007 \001(\001\022\025\n\nqu"
+    "eue_name\030\010 \001(\t:\001-\"\306\004\n\014QueryProfile\022 \n\002id"
+    "\030\001 \001(\0132\024.exec.shared.QueryId\022$\n\004type\030\002 \001"
+    "(\0162\026.exec.shared.QueryType\022\r\n\005start\030\003 \001("
+    "\003\022\013\n\003end\030\004 \001(\003\022\r\n\005query\030\005 \001(\t\022\014\n\004plan\030\006 "
+    "\001(\t\022\'\n\007foreman\030\007 \001(\0132\026.exec.DrillbitEndp"
+    "oint\0222\n\005state\030\010 \001(\0162#.exec.shared.QueryR"
+    "esult.QueryState\022\027\n\017total_fragments\030\t \001("
+    "\005\022\032\n\022finished_fragments\030\n \001(\005\022;\n\020fragmen"
+    "t_profile\030\013 \003(\0132!.exec.shared.MajorFragm"
+    "entProfile\022\017\n\004user\030\014 \001(\t:\001-\022\r\n\005error\030\r \001"
+    "(\t\022\024\n\014verboseError\030\016 \001(\t\022\020\n\010error_id\030\017 \001"
+    "(\t\022\022\n\nerror_node\030\020 \001(\t\022\024\n\014options_json\030\021"
+    " \001(\t\022\017\n\007planEnd\030\022 \001(\003\022\024\n\014queueWaitEnd\030\023 "
+    "\001(\003\022\022\n\ntotal_cost\030\024 \001(\001\022\025\n\nqueue_name\030\025 "
+    "\001(\t:\001-\022\017\n\007queryId\030\026 \001(\t\022\021\n\tautoLimit\030\027 \001"
+    "(\005\"t\n\024MajorFragmentProfile\022\031\n\021major_frag"
+    "ment_id\030\001 \001(\005\022A\n\026minor_fragment_profile\030"
+    "\002 \003(\0132!.exec.shared.MinorFragmentProfile"
+    "\"\350\002\n\024MinorFragmentProfile\022)\n\005state\030\001 \001(\016"
+    "2\032.exec.shared.FragmentState\022(\n\005error\030\002 "
+    "\001(\0132\031.exec.shared.DrillPBError\022\031\n\021minor_"
+    "fragment_id\030\003 \001(\005\0226\n\020operator_profile\030\004 "
+    "\003(\0132\034.exec.shared.OperatorProfile\022\022\n\nsta"
+    "rt_time\030\005 \001(\003\022\020\n\010end_time\030\006 \001(\003\022\023\n\013memor"
+    "y_used\030\007 \001(\003\022\027\n\017max_memory_used\030\010 \001(\003\022(\n"
+    "\010endpoint\030\t \001(\0132\026.exec.DrillbitEndpoint\022"
+    "\023\n\013last_update\030\n \001(\003\022\025\n\rlast_progress\030\013 "
+    "\001(\003\"\377\001\n\017OperatorProfile\0221\n\rinput_profile"
+    "\030\001 \003(\0132\032.exec.shared.StreamProfile\022\023\n\013op"
+    "erator_id\030\003 \001(\005\022\025\n\roperator_type\030\004 \001(\005\022\023"
+    "\n\013setup_nanos\030\005 \001(\003\022\025\n\rprocess_nanos\030\006 \001"
+    "(\003\022#\n\033peak_local_memory_allocated\030\007 \001(\003\022"
+    "(\n\006metric\030\010 \003(\0132\030.exec.shared.MetricValu"
+    "e\022\022\n\nwait_nanos\030\t \001(\003\"B\n\rStreamProfile\022\017"
+    "\n\007records\030\001 \001(\003\022\017\n\007batches\030\002 \001(\003\022\017\n\007sche"
+    "mas\030\003 \001(\003\"J\n\013MetricValue\022\021\n\tmetric_id\030\001 "
+    "\001(\005\022\022\n\nlong_value\030\002 \001(\003\022\024\n\014double_value\030"
+    "\003 \001(\001\")\n\010Registry\022\035\n\003jar\030\001 \003(\0132\020.exec.sh"
+    "ared.Jar\"/\n\003Jar\022\014\n\004name\030\001 \001(\t\022\032\n\022functio"
+    "n_signature\030\002 \003(\t\"W\n\013SaslMessage\022\021\n\tmech"
+    "anism\030\001 \001(\t\022\014\n\004data\030\002 \001(\014\022\'\n\006status\030\003 \001("
+    "\0162\027.exec.shared.SaslStatus*5\n\nRpcChannel"
+    "\022\017\n\013BIT_CONTROL\020\000\022\014\n\010BIT_DATA\020\001\022\010\n\004USER\020"
+    "\002*V\n\tQueryType\022\007\n\003SQL\020\001\022\013\n\007LOGICAL\020\002\022\014\n\010"
+    "PHYSICAL\020\003\022\r\n\tEXECUTION\020\004\022\026\n\022PREPARED_ST"
+    "ATEMENT\020\005*\207\001\n\rFragmentState\022\013\n\007SENDING\020\000"
+    "\022\027\n\023AWAITING_ALLOCATION\020\001\022\013\n\007RUNNING\020\002\022\014"
+    "\n\010FINISHED\020\003\022\r\n\tCANCELLED\020\004\022\n\n\006FAILED\020\005\022"
+    "\032\n\026CANCELLATION_REQUESTED\020\006*\374\t\n\020CoreOper"
+    "atorType\022\021\n\rSINGLE_SENDER\020\000\022\024\n\020BROADCAST"
+    "_SENDER\020\001\022\n\n\006FILTER\020\002\022\022\n\016HASH_AGGREGATE\020"
+    "\003\022\r\n\tHASH_JOIN\020\004\022\016\n\nMERGE_JOIN\020\005\022\031\n\025HASH"
+    "_PARTITION_SENDER\020\006\022\t\n\005LIMIT\020\007\022\024\n\020MERGIN"
+    "G_RECEIVER\020\010\022\034\n\030ORDERED_PARTITION_SENDER"
+    "\020\t\022\013\n\007PROJECT\020\n\022\026\n\022UNORDERED_RECEIVER\020\013\022"
+    "\032\n\026RANGE_PARTITION_SENDER\020\014\022\n\n\006SCREEN\020\r\022"
+    "\034\n\030SELECTION_VECTOR_REMOVER\020\016\022\027\n\023STREAMI"
+    "NG_AGGREGATE\020\017\022\016\n\nTOP_N_SORT\020\020\022\021\n\rEXTERN"
+    "AL_SORT\020\021\022\t\n\005TRACE\020\022\022\t\n\005UNION\020\023\022\014\n\010OLD_S"
+    "ORT\020\024\022\032\n\026PARQUET_ROW_GROUP_SCAN\020\025\022\021\n\rHIV"
+    "E_SUB_SCAN\020\026\022\025\n\021SYSTEM_TABLE_SCAN\020\027\022\021\n\rM"
+    "OCK_SUB_SCAN\020\030\022\022\n\016PARQUET_WRITER\020\031\022\023\n\017DI"
+    "RECT_SUB_SCAN\020\032\022\017\n\013TEXT_WRITER\020\033\022\021\n\rTEXT"
+    "_SUB_SCAN\020\034\022\021\n\rJSON_SUB_SCAN\020\035\022\030\n\024INFO_S"
+    "CHEMA_SUB_SCAN\020\036\022\023\n\017COMPLEX_TO_JSON\020\037\022\025\n"
+    "\021PRODUCER_CONSUMER\020 \022\022\n\016HBASE_SUB_SCAN\020!"
+    "\022\n\n\006WINDOW\020\"\022\024\n\020NESTED_LOOP_JOIN\020#\022\021\n\rAV"
+    "RO_SUB_SCAN\020$\022\021\n\rPCAP_SUB_SCAN\020%\022\022\n\016KAFK"
+    "A_SUB_SCAN\020&\022\021\n\rKUDU_SUB_SCAN\020\'\022\013\n\007FLATT"
+    "EN\020(\022\020\n\014LATERAL_JOIN\020)\022\n\n\006UNNEST\020*\022,\n(HI"
+    "VE_DRILL_NATIVE_PARQUET_ROW_GROUP_SCAN\020+"
+    "\022\r\n\tJDBC_SCAN\020,\022\022\n\016REGEX_SUB_SCAN\020-\022\023\n\017M"
+    "APRDB_SUB_SCAN\020.\022\022\n\016MONGO_SUB_SCAN\020/\022\017\n\013"
+    "KUDU_WRITER\0200\022\026\n\022OPEN_TSDB_SUB_SCAN\0201\022\017\n"
+    "\013JSON_WRITER\0202\022\026\n\022HTPPD_LOG_SUB_SCAN\0203\022\022"
+    "\n\016IMAGE_SUB_SCAN\0204\022\025\n\021SEQUENCE_SUB_SCAN\020"
+    "5\022\023\n\017PARTITION_LIMIT\0206\022\023\n\017PCAPNG_SUB_SCA"
+    "N\0207\022\022\n\016RUNTIME_FILTER\0208\022\017\n\013ROWKEY_JOIN\0209"
+    "\022\023\n\017SYSLOG_SUB_SCAN\020:\022\030\n\024STATISTICS_AGGR"
+    "EGATE\020;\022\020\n\014UNPIVOT_MAPS\020<\022\024\n\020STATISTICS_"
+    "MERGE\020=\022\021\n\rLTSV_SUB_SCAN\020>*g\n\nSaslStatus"
+    "\022\020\n\014SASL_UNKNOWN\020\000\022\016\n\nSASL_START\020\001\022\024\n\020SA"
+    "SL_IN_PROGRESS\020\002\022\020\n\014SASL_SUCCESS\020\003\022\017\n\013SA"
+    "SL_FAILED\020\004B.\n\033org.apache.drill.exec.pro"
+    "toB\rUserBitSharedH\001", 5659);
   ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
     "UserBitShared.proto", &protobuf_RegisterTypes);
-  ::protobuf_Types_2eproto::AddDescriptors();
-  ::protobuf_Coordination_2eproto::AddDescriptors();
-  ::protobuf_SchemaDef_2eproto::AddDescriptors();
+  UserCredentials::default_instance_ = new UserCredentials();
+  QueryId::default_instance_ = new QueryId();
+  DrillPBError::default_instance_ = new DrillPBError();
+  ExceptionWrapper::default_instance_ = new ExceptionWrapper();
+  StackTraceElementWrapper::default_instance_ = new StackTraceElementWrapper();
+  ParsingError::default_instance_ = new ParsingError();
+  RecordBatchDef::default_instance_ = new RecordBatchDef();
+  NamePart::default_instance_ = new NamePart();
+  SerializedField::default_instance_ = new SerializedField();
+  NodeStatus::default_instance_ = new NodeStatus();
+  QueryResult::default_instance_ = new QueryResult();
+  QueryData::default_instance_ = new QueryData();
+  QueryInfo::_default_user_ =
+      new ::std::string("-", 1);
+  QueryInfo::_default_queue_name_ =
+      new ::std::string("-", 1);
+  QueryInfo::default_instance_ = new QueryInfo();
+  QueryProfile::_default_user_ =
+      new ::std::string("-", 1);
+  QueryProfile::_default_queue_name_ =
+      new ::std::string("-", 1);
+  QueryProfile::default_instance_ = new QueryProfile();
+  MajorFragmentProfile::default_instance_ = new MajorFragmentProfile();
+  MinorFragmentProfile::default_instance_ = new MinorFragmentProfile();
+  OperatorProfile::default_instance_ = new OperatorProfile();
+  StreamProfile::default_instance_ = new StreamProfile();
+  MetricValue::default_instance_ = new MetricValue();
+  Registry::default_instance_ = new Registry();
+  Jar::default_instance_ = new Jar();
+  SaslMessage::default_instance_ = new SaslMessage();
+  UserCredentials::default_instance_->InitAsDefaultInstance();
+  QueryId::default_instance_->InitAsDefaultInstance();
+  DrillPBError::default_instance_->InitAsDefaultInstance();
+  ExceptionWrapper::default_instance_->InitAsDefaultInstance();
+  StackTraceElementWrapper::default_instance_->InitAsDefaultInstance();
+  ParsingError::default_instance_->InitAsDefaultInstance();
+  RecordBatchDef::default_instance_->InitAsDefaultInstance();
+  NamePart::default_instance_->InitAsDefaultInstance();
+  SerializedField::default_instance_->InitAsDefaultInstance();
+  NodeStatus::default_instance_->InitAsDefaultInstance();
+  QueryResult::default_instance_->InitAsDefaultInstance();
+  QueryData::default_instance_->InitAsDefaultInstance();
+  QueryInfo::default_instance_->InitAsDefaultInstance();
+  QueryProfile::default_instance_->InitAsDefaultInstance();
+  MajorFragmentProfile::default_instance_->InitAsDefaultInstance();
+  MinorFragmentProfile::default_instance_->InitAsDefaultInstance();
+  OperatorProfile::default_instance_->InitAsDefaultInstance();
+  StreamProfile::default_instance_->InitAsDefaultInstance();
+  MetricValue::default_instance_->InitAsDefaultInstance();
+  Registry::default_instance_->InitAsDefaultInstance();
+  Jar::default_instance_->InitAsDefaultInstance();
+  SaslMessage::default_instance_->InitAsDefaultInstance();
+  ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_UserBitShared_2eproto);
 }
 
-void AddDescriptors() {
-  static ::google::protobuf::internal::once_flag once;
-  ::google::protobuf::internal::call_once(once, AddDescriptorsImpl);
-}
-// Force AddDescriptors() to be called at dynamic initialization time.
-struct StaticDescriptorInitializer {
-  StaticDescriptorInitializer() {
-    AddDescriptors();
+// Force AddDescriptors() to be called at static initialization time.
+struct StaticDescriptorInitializer_UserBitShared_2eproto {
+  StaticDescriptorInitializer_UserBitShared_2eproto() {
+    protobuf_AddDesc_UserBitShared_2eproto();
   }
-} static_descriptor_initializer;
-}  // namespace protobuf_UserBitShared_2eproto
-namespace exec {
-namespace shared {
-const ::google::protobuf::EnumDescriptor* DrillPBError_ErrorType_descriptor() {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_UserBitShared_2eproto::file_level_enum_descriptors[0];
-}
-bool DrillPBError_ErrorType_IsValid(int value) {
-  switch (value) {
-    case 0:
-    case 1:
-    case 2:
-    case 3:
-    case 4:
-    case 5:
-    case 6:
-    case 7:
-    case 8:
-    case 9:
-    case 10:
-    case 11:
-    case 12:
-    case 13:
-      return true;
-    default:
-      return false;
-  }
-}
-
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
-const DrillPBError_ErrorType DrillPBError::CONNECTION;
-const DrillPBError_ErrorType DrillPBError::DATA_READ;
-const DrillPBError_ErrorType DrillPBError::DATA_WRITE;
-const DrillPBError_ErrorType DrillPBError::FUNCTION;
-const DrillPBError_ErrorType DrillPBError::PARSE;
-const DrillPBError_ErrorType DrillPBError::PERMISSION;
-const DrillPBError_ErrorType DrillPBError::PLAN;
-const DrillPBError_ErrorType DrillPBError::RESOURCE;
-const DrillPBError_ErrorType DrillPBError::SYSTEM;
-const DrillPBError_ErrorType DrillPBError::UNSUPPORTED_OPERATION;
-const DrillPBError_ErrorType DrillPBError::VALIDATION;
-const DrillPBError_ErrorType DrillPBError::EXECUTION_ERROR;
-const DrillPBError_ErrorType DrillPBError::INTERNAL_ERROR;
-const DrillPBError_ErrorType DrillPBError::UNSPECIFIED_ERROR;
-const DrillPBError_ErrorType DrillPBError::ErrorType_MIN;
-const DrillPBError_ErrorType DrillPBError::ErrorType_MAX;
-const int DrillPBError::ErrorType_ARRAYSIZE;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
-const ::google::protobuf::EnumDescriptor* NamePart_Type_descriptor() {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_UserBitShared_2eproto::file_level_enum_descriptors[1];
-}
-bool NamePart_Type_IsValid(int value) {
-  switch (value) {
-    case 0:
-    case 1:
-      return true;
-    default:
-      return false;
-  }
-}
-
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
-const NamePart_Type NamePart::NAME;
-const NamePart_Type NamePart::ARRAY;
-const NamePart_Type NamePart::Type_MIN;
-const NamePart_Type NamePart::Type_MAX;
-const int NamePart::Type_ARRAYSIZE;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
-const ::google::protobuf::EnumDescriptor* QueryResult_QueryState_descriptor() {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_UserBitShared_2eproto::file_level_enum_descriptors[2];
-}
-bool QueryResult_QueryState_IsValid(int value) {
-  switch (value) {
-    case 0:
-    case 1:
-    case 2:
-    case 3:
-    case 4:
-    case 5:
-    case 6:
-    case 7:
-    case 8:
-      return true;
-    default:
-      return false;
-  }
-}
-
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
-const QueryResult_QueryState QueryResult::STARTING;
-const QueryResult_QueryState QueryResult::RUNNING;
-const QueryResult_QueryState QueryResult::COMPLETED;
-const QueryResult_QueryState QueryResult::CANCELED;
-const QueryResult_QueryState QueryResult::FAILED;
-const QueryResult_QueryState QueryResult::CANCELLATION_REQUESTED;
-const QueryResult_QueryState QueryResult::ENQUEUED;
-const QueryResult_QueryState QueryResult::PREPARING;
-const QueryResult_QueryState QueryResult::PLANNING;
-const QueryResult_QueryState QueryResult::QueryState_MIN;
-const QueryResult_QueryState QueryResult::QueryState_MAX;
-const int QueryResult::QueryState_ARRAYSIZE;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+} static_descriptor_initializer_UserBitShared_2eproto_;
 const ::google::protobuf::EnumDescriptor* RpcChannel_descriptor() {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_UserBitShared_2eproto::file_level_enum_descriptors[3];
+  protobuf_AssignDescriptorsOnce();
+  return RpcChannel_descriptor_;
 }
 bool RpcChannel_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1211,11 +871,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* QueryType_descriptor() {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_UserBitShared_2eproto::file_level_enum_descriptors[4];
+  protobuf_AssignDescriptorsOnce();
+  return QueryType_descriptor_;
 }
 bool QueryType_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 1:
     case 2:
     case 3:
@@ -1228,11 +888,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* FragmentState_descriptor() {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_UserBitShared_2eproto::file_level_enum_descriptors[5];
+  protobuf_AssignDescriptorsOnce();
+  return FragmentState_descriptor_;
 }
 bool FragmentState_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1247,11 +907,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* CoreOperatorType_descriptor() {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_UserBitShared_2eproto::file_level_enum_descriptors[6];
+  protobuf_AssignDescriptorsOnce();
+  return CoreOperatorType_descriptor_;
 }
 bool CoreOperatorType_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1322,11 +982,11 @@
 }
 
 const ::google::protobuf::EnumDescriptor* SaslStatus_descriptor() {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return protobuf_UserBitShared_2eproto::file_level_enum_descriptors[7];
+  protobuf_AssignDescriptorsOnce();
+  return SaslStatus_descriptor_;
 }
 bool SaslStatus_IsValid(int value) {
-  switch (value) {
+  switch(value) {
     case 0:
     case 1:
     case 2:
@@ -1341,443 +1001,390 @@
 
 // ===================================================================
 
-void UserCredentials::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int UserCredentials::kUserNameFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 UserCredentials::UserCredentials()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_UserCredentials.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.UserCredentials)
 }
+
+void UserCredentials::InitAsDefaultInstance() {
+}
+
 UserCredentials::UserCredentials(const UserCredentials& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  user_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_user_name()) {
-    user_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.user_name_);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.shared.UserCredentials)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void UserCredentials::SharedCtor() {
-  user_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  user_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 UserCredentials::~UserCredentials() {
-  // @@protoc_insertion_point(destructor:exec.shared.UserCredentials)
   SharedDtor();
 }
 
 void UserCredentials::SharedDtor() {
-  user_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (user_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete user_name_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void UserCredentials::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* UserCredentials::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return UserCredentials_descriptor_;
 }
 
 const UserCredentials& UserCredentials::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_UserCredentials.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+UserCredentials* UserCredentials::default_instance_ = NULL;
+
+UserCredentials* UserCredentials::New() const {
+  return new UserCredentials;
+}
 
 void UserCredentials::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.UserCredentials)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    user_name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_user_name()) {
+      if (user_name_ != &::google::protobuf::internal::kEmptyString) {
+        user_name_->clear();
+      }
+    }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool UserCredentials::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.UserCredentials)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string user_name = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_user_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->user_name().data(), static_cast<int>(this->user_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.UserCredentials.user_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->user_name().data(), this->user_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.UserCredentials)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.UserCredentials)
-  return false;
 #undef DO_
 }
 
 void UserCredentials::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.UserCredentials)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string user_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->user_name().data(), static_cast<int>(this->user_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.UserCredentials.user_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_user_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->user_name().data(), this->user_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->user_name(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.UserCredentials)
 }
 
-::google::protobuf::uint8* UserCredentials::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.UserCredentials)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* UserCredentials::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string user_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->user_name().data(), static_cast<int>(this->user_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.UserCredentials.user_name");
+  if (has_user_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->user_name().data(), this->user_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->user_name(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.UserCredentials)
   return target;
 }
 
-size_t UserCredentials::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.UserCredentials)
-  size_t total_size = 0;
+int UserCredentials::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional string user_name = 1;
+    if (has_user_name()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->user_name());
+    }
+
+  }
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // optional string user_name = 1;
-  if (has_user_name()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::StringSize(
-        this->user_name());
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void UserCredentials::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.UserCredentials)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const UserCredentials* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const UserCredentials>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const UserCredentials*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.UserCredentials)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.UserCredentials)
     MergeFrom(*source);
   }
 }
 
 void UserCredentials::MergeFrom(const UserCredentials& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.UserCredentials)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  if (from.has_user_name()) {
-    set_has_user_name();
-    user_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.user_name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_user_name()) {
+      set_user_name(from.user_name());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void UserCredentials::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.UserCredentials)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void UserCredentials::CopyFrom(const UserCredentials& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.UserCredentials)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool UserCredentials::IsInitialized() const {
+
   return true;
 }
 
 void UserCredentials::Swap(UserCredentials* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void UserCredentials::InternalSwap(UserCredentials* other) {
-  using std::swap;
-  user_name_.Swap(&other->user_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(user_name_, other->user_name_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata UserCredentials::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = UserCredentials_descriptor_;
+  metadata.reflection = UserCredentials_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void QueryId::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int QueryId::kPart1FieldNumber;
 const int QueryId::kPart2FieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 QueryId::QueryId()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_QueryId.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.QueryId)
 }
+
+void QueryId::InitAsDefaultInstance() {
+}
+
 QueryId::QueryId(const QueryId& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&part1_, &from.part1_,
-    static_cast<size_t>(reinterpret_cast<char*>(&part2_) -
-    reinterpret_cast<char*>(&part1_)) + sizeof(part2_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.QueryId)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void QueryId::SharedCtor() {
-  ::memset(&part1_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&part2_) -
-      reinterpret_cast<char*>(&part1_)) + sizeof(part2_));
+  _cached_size_ = 0;
+  part1_ = GOOGLE_LONGLONG(0);
+  part2_ = GOOGLE_LONGLONG(0);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 QueryId::~QueryId() {
-  // @@protoc_insertion_point(destructor:exec.shared.QueryId)
   SharedDtor();
 }
 
 void QueryId::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void QueryId::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* QueryId::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return QueryId_descriptor_;
 }
 
 const QueryId& QueryId::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_QueryId.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+QueryId* QueryId::default_instance_ = NULL;
+
+QueryId* QueryId::New() const {
+  return new QueryId;
+}
 
 void QueryId::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.QueryId)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    ::memset(&part1_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&part2_) -
-        reinterpret_cast<char*>(&part1_)) + sizeof(part2_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    part1_ = GOOGLE_LONGLONG(0);
+    part2_ = GOOGLE_LONGLONG(0);
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool QueryId::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.QueryId)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional sfixed64 part1 = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(9u /* 9 & 0xFF */)) {
-          set_has_part1();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED64) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_SFIXED64>(
                  input, &part1_)));
+          set_has_part1();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(17)) goto parse_part2;
         break;
       }
 
       // optional sfixed64 part2 = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(17u /* 17 & 0xFF */)) {
-          set_has_part2();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED64) {
+         parse_part2:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_SFIXED64>(
                  input, &part2_)));
+          set_has_part2();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.QueryId)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.QueryId)
-  return false;
 #undef DO_
 }
 
 void QueryId::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.QueryId)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional sfixed64 part1 = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_part1()) {
     ::google::protobuf::internal::WireFormatLite::WriteSFixed64(1, this->part1(), output);
   }
 
   // optional sfixed64 part2 = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_part2()) {
     ::google::protobuf::internal::WireFormatLite::WriteSFixed64(2, this->part2(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.QueryId)
 }
 
-::google::protobuf::uint8* QueryId::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.QueryId)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* QueryId::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional sfixed64 part1 = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_part1()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteSFixed64ToArray(1, this->part1(), target);
   }
 
   // optional sfixed64 part2 = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_part2()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteSFixed64ToArray(2, this->part2(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.QueryId)
   return target;
 }
 
-size_t QueryId::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.QueryId)
-  size_t total_size = 0;
+int QueryId::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 3u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional sfixed64 part1 = 1;
     if (has_part1()) {
       total_size += 1 + 8;
@@ -1789,242 +1396,264 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void QueryId::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.QueryId)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const QueryId* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const QueryId>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const QueryId*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.QueryId)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.QueryId)
     MergeFrom(*source);
   }
 }
 
 void QueryId::MergeFrom(const QueryId& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.QueryId)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      part1_ = from.part1_;
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_part1()) {
+      set_part1(from.part1());
     }
-    if (cached_has_bits & 0x00000002u) {
-      part2_ = from.part2_;
+    if (from.has_part2()) {
+      set_part2(from.part2());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void QueryId::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.QueryId)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void QueryId::CopyFrom(const QueryId& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.QueryId)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool QueryId::IsInitialized() const {
+
   return true;
 }
 
 void QueryId::Swap(QueryId* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void QueryId::InternalSwap(QueryId* other) {
-  using std::swap;
-  swap(part1_, other->part1_);
-  swap(part2_, other->part2_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(part1_, other->part1_);
+    std::swap(part2_, other->part2_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata QueryId::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = QueryId_descriptor_;
+  metadata.reflection = QueryId_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void DrillPBError::InitAsDefaultInstance() {
-  ::exec::shared::_DrillPBError_default_instance_._instance.get_mutable()->endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(
-      ::exec::DrillbitEndpoint::internal_default_instance());
-  ::exec::shared::_DrillPBError_default_instance_._instance.get_mutable()->exception_ = const_cast< ::exec::shared::ExceptionWrapper*>(
-      ::exec::shared::ExceptionWrapper::internal_default_instance());
+const ::google::protobuf::EnumDescriptor* DrillPBError_ErrorType_descriptor() {
+  protobuf_AssignDescriptorsOnce();
+  return DrillPBError_ErrorType_descriptor_;
 }
-void DrillPBError::clear_endpoint() {
-  if (endpoint_ != NULL) endpoint_->Clear();
-  clear_has_endpoint();
+bool DrillPBError_ErrorType_IsValid(int value) {
+  switch(value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+    case 9:
+    case 10:
+    case 11:
+    case 12:
+    case 13:
+      return true;
+    default:
+      return false;
+  }
 }
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+
+#ifndef _MSC_VER
+const DrillPBError_ErrorType DrillPBError::CONNECTION;
+const DrillPBError_ErrorType DrillPBError::DATA_READ;
+const DrillPBError_ErrorType DrillPBError::DATA_WRITE;
+const DrillPBError_ErrorType DrillPBError::FUNCTION;
+const DrillPBError_ErrorType DrillPBError::PARSE;
+const DrillPBError_ErrorType DrillPBError::PERMISSION;
+const DrillPBError_ErrorType DrillPBError::PLAN;
+const DrillPBError_ErrorType DrillPBError::RESOURCE;
+const DrillPBError_ErrorType DrillPBError::SYSTEM;
+const DrillPBError_ErrorType DrillPBError::UNSUPPORTED_OPERATION;
+const DrillPBError_ErrorType DrillPBError::VALIDATION;
+const DrillPBError_ErrorType DrillPBError::EXECUTION_ERROR;
+const DrillPBError_ErrorType DrillPBError::INTERNAL_ERROR;
+const DrillPBError_ErrorType DrillPBError::UNSPECIFIED_ERROR;
+const DrillPBError_ErrorType DrillPBError::ErrorType_MIN;
+const DrillPBError_ErrorType DrillPBError::ErrorType_MAX;
+const int DrillPBError::ErrorType_ARRAYSIZE;
+#endif  // _MSC_VER
+#ifndef _MSC_VER
 const int DrillPBError::kErrorIdFieldNumber;
 const int DrillPBError::kEndpointFieldNumber;
 const int DrillPBError::kErrorTypeFieldNumber;
 const int DrillPBError::kMessageFieldNumber;
 const int DrillPBError::kExceptionFieldNumber;
 const int DrillPBError::kParsingErrorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 DrillPBError::DrillPBError()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.DrillPBError)
 }
+
+void DrillPBError::InitAsDefaultInstance() {
+  endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(&::exec::DrillbitEndpoint::default_instance());
+  exception_ = const_cast< ::exec::shared::ExceptionWrapper*>(&::exec::shared::ExceptionWrapper::default_instance());
+}
+
 DrillPBError::DrillPBError(const DrillPBError& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      parsing_error_(from.parsing_error_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  error_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_error_id()) {
-    error_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.error_id_);
-  }
-  message_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_message()) {
-    message_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.message_);
-  }
-  if (from.has_endpoint()) {
-    endpoint_ = new ::exec::DrillbitEndpoint(*from.endpoint_);
-  } else {
-    endpoint_ = NULL;
-  }
-  if (from.has_exception()) {
-    exception_ = new ::exec::shared::ExceptionWrapper(*from.exception_);
-  } else {
-    exception_ = NULL;
-  }
-  error_type_ = from.error_type_;
-  // @@protoc_insertion_point(copy_constructor:exec.shared.DrillPBError)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void DrillPBError::SharedCtor() {
-  error_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  message_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&endpoint_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&error_type_) -
-      reinterpret_cast<char*>(&endpoint_)) + sizeof(error_type_));
+  _cached_size_ = 0;
+  error_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  endpoint_ = NULL;
+  error_type_ = 0;
+  message_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  exception_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 DrillPBError::~DrillPBError() {
-  // @@protoc_insertion_point(destructor:exec.shared.DrillPBError)
   SharedDtor();
 }
 
 void DrillPBError::SharedDtor() {
-  error_id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  message_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete endpoint_;
-  if (this != internal_default_instance()) delete exception_;
+  if (error_id_ != &::google::protobuf::internal::kEmptyString) {
+    delete error_id_;
+  }
+  if (message_ != &::google::protobuf::internal::kEmptyString) {
+    delete message_;
+  }
+  if (this != default_instance_) {
+    delete endpoint_;
+    delete exception_;
+  }
 }
 
 void DrillPBError::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* DrillPBError::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return DrillPBError_descriptor_;
 }
 
 const DrillPBError& DrillPBError::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_DrillPBError.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+DrillPBError* DrillPBError::default_instance_ = NULL;
+
+DrillPBError* DrillPBError::New() const {
+  return new DrillPBError;
+}
 
 void DrillPBError::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.DrillPBError)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  parsing_error_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
-      error_id_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_error_id()) {
+      if (error_id_ != &::google::protobuf::internal::kEmptyString) {
+        error_id_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      message_.ClearNonDefaultToEmptyNoArena();
+    if (has_endpoint()) {
+      if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
     }
-    if (cached_has_bits & 0x00000004u) {
-      GOOGLE_DCHECK(endpoint_ != NULL);
-      endpoint_->Clear();
+    error_type_ = 0;
+    if (has_message()) {
+      if (message_ != &::google::protobuf::internal::kEmptyString) {
+        message_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000008u) {
-      GOOGLE_DCHECK(exception_ != NULL);
-      exception_->Clear();
+    if (has_exception()) {
+      if (exception_ != NULL) exception_->::exec::shared::ExceptionWrapper::Clear();
     }
   }
-  error_type_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  parsing_error_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool DrillPBError::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.DrillPBError)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string error_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_error_id()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->error_id().data(), static_cast<int>(this->error_id().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.DrillPBError.error_id");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->error_id().data(), this->error_id().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_endpoint;
         break;
       }
 
       // optional .exec.DrillbitEndpoint endpoint = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_endpoint:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_endpoint()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_error_type;
         break;
       }
 
       // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_error_type:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -2032,223 +1661,187 @@
           if (::exec::shared::DrillPBError_ErrorType_IsValid(value)) {
             set_error_type(static_cast< ::exec::shared::DrillPBError_ErrorType >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                3, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(3, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_message;
         break;
       }
 
       // optional string message = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_message:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_message()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->message().data(), static_cast<int>(this->message().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.DrillPBError.message");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->message().data(), this->message().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(42)) goto parse_exception;
         break;
       }
 
       // optional .exec.shared.ExceptionWrapper exception = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_exception:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_exception()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_parsing_error;
         break;
       }
 
       // repeated .exec.shared.ParsingError parsing_error = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_parsing_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_parsing_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_parsing_error;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.DrillPBError)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.DrillPBError)
-  return false;
 #undef DO_
 }
 
 void DrillPBError::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.DrillPBError)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string error_id = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->error_id().data(), static_cast<int>(this->error_id().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.DrillPBError.error_id");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_error_id()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->error_id().data(), this->error_id().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->error_id(), output);
   }
 
   // optional .exec.DrillbitEndpoint endpoint = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_endpoint()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_endpoint(), output);
+      2, this->endpoint(), output);
   }
 
   // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_error_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       3, this->error_type(), output);
   }
 
   // optional string message = 4;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->message().data(), static_cast<int>(this->message().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.DrillPBError.message");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_message()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->message().data(), this->message().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->message(), output);
   }
 
   // optional .exec.shared.ExceptionWrapper exception = 5;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_exception()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      5, this->_internal_exception(), output);
+      5, this->exception(), output);
   }
 
   // repeated .exec.shared.ParsingError parsing_error = 6;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->parsing_error_size()); i < n; i++) {
+  for (int i = 0; i < this->parsing_error_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      6,
-      this->parsing_error(static_cast<int>(i)),
-      output);
+      6, this->parsing_error(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.DrillPBError)
 }
 
-::google::protobuf::uint8* DrillPBError::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.DrillPBError)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* DrillPBError::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string error_id = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->error_id().data(), static_cast<int>(this->error_id().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.DrillPBError.error_id");
+  if (has_error_id()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->error_id().data(), this->error_id().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->error_id(), target);
   }
 
   // optional .exec.DrillbitEndpoint endpoint = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_endpoint()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_endpoint(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->endpoint(), target);
   }
 
   // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_error_type()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       3, this->error_type(), target);
   }
 
   // optional string message = 4;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->message().data(), static_cast<int>(this->message().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.DrillPBError.message");
+  if (has_message()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->message().data(), this->message().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->message(), target);
   }
 
   // optional .exec.shared.ExceptionWrapper exception = 5;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_exception()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        5, this->_internal_exception(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        5, this->exception(), target);
   }
 
   // repeated .exec.shared.ParsingError parsing_error = 6;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->parsing_error_size()); i < n; i++) {
+  for (int i = 0; i < this->parsing_error_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        6, this->parsing_error(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        6, this->parsing_error(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.DrillPBError)
   return target;
 }
 
-size_t DrillPBError::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.DrillPBError)
-  size_t total_size = 0;
+int DrillPBError::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.shared.ParsingError parsing_error = 6;
-  {
-    unsigned int count = static_cast<unsigned int>(this->parsing_error_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->parsing_error(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 31u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string error_id = 1;
     if (has_error_id()) {
       total_size += 1 +
@@ -2256,6 +1849,19 @@
           this->error_id());
     }
 
+    // optional .exec.DrillbitEndpoint endpoint = 2;
+    if (has_endpoint()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->endpoint());
+    }
+
+    // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
+    if (has_error_type()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->error_type());
+    }
+
     // optional string message = 4;
     if (has_message()) {
       total_size += 1 +
@@ -2263,426 +1869,367 @@
           this->message());
     }
 
-    // optional .exec.DrillbitEndpoint endpoint = 2;
-    if (has_endpoint()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *endpoint_);
-    }
-
     // optional .exec.shared.ExceptionWrapper exception = 5;
     if (has_exception()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *exception_);
-    }
-
-    // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
-    if (has_error_type()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::EnumSize(this->error_type());
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->exception());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.shared.ParsingError parsing_error = 6;
+  total_size += 1 * this->parsing_error_size();
+  for (int i = 0; i < this->parsing_error_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->parsing_error(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void DrillPBError::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.DrillPBError)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const DrillPBError* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const DrillPBError>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const DrillPBError*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.DrillPBError)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.DrillPBError)
     MergeFrom(*source);
   }
 }
 
 void DrillPBError::MergeFrom(const DrillPBError& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.DrillPBError)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   parsing_error_.MergeFrom(from.parsing_error_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 31u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_error_id();
-      error_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.error_id_);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_error_id()) {
+      set_error_id(from.error_id());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_message();
-      message_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.message_);
-    }
-    if (cached_has_bits & 0x00000004u) {
+    if (from.has_endpoint()) {
       mutable_endpoint()->::exec::DrillbitEndpoint::MergeFrom(from.endpoint());
     }
-    if (cached_has_bits & 0x00000008u) {
+    if (from.has_error_type()) {
+      set_error_type(from.error_type());
+    }
+    if (from.has_message()) {
+      set_message(from.message());
+    }
+    if (from.has_exception()) {
       mutable_exception()->::exec::shared::ExceptionWrapper::MergeFrom(from.exception());
     }
-    if (cached_has_bits & 0x00000010u) {
-      error_type_ = from.error_type_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void DrillPBError::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.DrillPBError)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void DrillPBError::CopyFrom(const DrillPBError& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.DrillPBError)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool DrillPBError::IsInitialized() const {
+
   return true;
 }
 
 void DrillPBError::Swap(DrillPBError* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void DrillPBError::InternalSwap(DrillPBError* other) {
-  using std::swap;
-  CastToBase(&parsing_error_)->InternalSwap(CastToBase(&other->parsing_error_));
-  error_id_.Swap(&other->error_id_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  message_.Swap(&other->message_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(endpoint_, other->endpoint_);
-  swap(exception_, other->exception_);
-  swap(error_type_, other->error_type_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(error_id_, other->error_id_);
+    std::swap(endpoint_, other->endpoint_);
+    std::swap(error_type_, other->error_type_);
+    std::swap(message_, other->message_);
+    std::swap(exception_, other->exception_);
+    parsing_error_.Swap(&other->parsing_error_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata DrillPBError::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = DrillPBError_descriptor_;
+  metadata.reflection = DrillPBError_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void ExceptionWrapper::InitAsDefaultInstance() {
-  ::exec::shared::_ExceptionWrapper_default_instance_._instance.get_mutable()->cause_ = const_cast< ::exec::shared::ExceptionWrapper*>(
-      ::exec::shared::ExceptionWrapper::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int ExceptionWrapper::kExceptionClassFieldNumber;
 const int ExceptionWrapper::kMessageFieldNumber;
 const int ExceptionWrapper::kStackTraceFieldNumber;
 const int ExceptionWrapper::kCauseFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 ExceptionWrapper::ExceptionWrapper()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_ExceptionWrapper.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.ExceptionWrapper)
 }
+
+void ExceptionWrapper::InitAsDefaultInstance() {
+  cause_ = const_cast< ::exec::shared::ExceptionWrapper*>(&::exec::shared::ExceptionWrapper::default_instance());
+}
+
 ExceptionWrapper::ExceptionWrapper(const ExceptionWrapper& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      stack_trace_(from.stack_trace_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  exception_class_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_exception_class()) {
-    exception_class_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.exception_class_);
-  }
-  message_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_message()) {
-    message_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.message_);
-  }
-  if (from.has_cause()) {
-    cause_ = new ::exec::shared::ExceptionWrapper(*from.cause_);
-  } else {
-    cause_ = NULL;
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.shared.ExceptionWrapper)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void ExceptionWrapper::SharedCtor() {
-  exception_class_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  message_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  exception_class_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  message_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   cause_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 ExceptionWrapper::~ExceptionWrapper() {
-  // @@protoc_insertion_point(destructor:exec.shared.ExceptionWrapper)
   SharedDtor();
 }
 
 void ExceptionWrapper::SharedDtor() {
-  exception_class_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  message_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete cause_;
+  if (exception_class_ != &::google::protobuf::internal::kEmptyString) {
+    delete exception_class_;
+  }
+  if (message_ != &::google::protobuf::internal::kEmptyString) {
+    delete message_;
+  }
+  if (this != default_instance_) {
+    delete cause_;
+  }
 }
 
 void ExceptionWrapper::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* ExceptionWrapper::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return ExceptionWrapper_descriptor_;
 }
 
 const ExceptionWrapper& ExceptionWrapper::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_ExceptionWrapper.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+ExceptionWrapper* ExceptionWrapper::default_instance_ = NULL;
+
+ExceptionWrapper* ExceptionWrapper::New() const {
+  return new ExceptionWrapper;
+}
 
 void ExceptionWrapper::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.ExceptionWrapper)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  stack_trace_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      exception_class_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_exception_class()) {
+      if (exception_class_ != &::google::protobuf::internal::kEmptyString) {
+        exception_class_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      message_.ClearNonDefaultToEmptyNoArena();
+    if (has_message()) {
+      if (message_ != &::google::protobuf::internal::kEmptyString) {
+        message_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      GOOGLE_DCHECK(cause_ != NULL);
-      cause_->Clear();
+    if (has_cause()) {
+      if (cause_ != NULL) cause_->::exec::shared::ExceptionWrapper::Clear();
     }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  stack_trace_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool ExceptionWrapper::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.ExceptionWrapper)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string exception_class = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_exception_class()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->exception_class().data(), static_cast<int>(this->exception_class().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.ExceptionWrapper.exception_class");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->exception_class().data(), this->exception_class().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_message;
         break;
       }
 
       // optional string message = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_message:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_message()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->message().data(), static_cast<int>(this->message().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.ExceptionWrapper.message");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->message().data(), this->message().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_stack_trace;
         break;
       }
 
       // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_stack_trace:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_stack_trace()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_stack_trace;
+        if (input->ExpectTag(34)) goto parse_cause;
         break;
       }
 
       // optional .exec.shared.ExceptionWrapper cause = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_cause:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_cause()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.ExceptionWrapper)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.ExceptionWrapper)
-  return false;
 #undef DO_
 }
 
 void ExceptionWrapper::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.ExceptionWrapper)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string exception_class = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->exception_class().data(), static_cast<int>(this->exception_class().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.ExceptionWrapper.exception_class");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_exception_class()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->exception_class().data(), this->exception_class().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->exception_class(), output);
   }
 
   // optional string message = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->message().data(), static_cast<int>(this->message().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.ExceptionWrapper.message");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_message()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->message().data(), this->message().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->message(), output);
   }
 
   // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->stack_trace_size()); i < n; i++) {
+  for (int i = 0; i < this->stack_trace_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3,
-      this->stack_trace(static_cast<int>(i)),
-      output);
+      3, this->stack_trace(i), output);
   }
 
   // optional .exec.shared.ExceptionWrapper cause = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_cause()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      4, this->_internal_cause(), output);
+      4, this->cause(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.ExceptionWrapper)
 }
 
-::google::protobuf::uint8* ExceptionWrapper::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.ExceptionWrapper)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* ExceptionWrapper::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string exception_class = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->exception_class().data(), static_cast<int>(this->exception_class().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.ExceptionWrapper.exception_class");
+  if (has_exception_class()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->exception_class().data(), this->exception_class().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->exception_class(), target);
   }
 
   // optional string message = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->message().data(), static_cast<int>(this->message().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.ExceptionWrapper.message");
+  if (has_message()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->message().data(), this->message().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->message(), target);
   }
 
   // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->stack_trace_size()); i < n; i++) {
+  for (int i = 0; i < this->stack_trace_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->stack_trace(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->stack_trace(i), target);
   }
 
   // optional .exec.shared.ExceptionWrapper cause = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_cause()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        4, this->_internal_cause(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        4, this->cause(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.ExceptionWrapper)
   return target;
 }
 
-size_t ExceptionWrapper::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.ExceptionWrapper)
-  size_t total_size = 0;
+int ExceptionWrapper::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
-  {
-    unsigned int count = static_cast<unsigned int>(this->stack_trace_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->stack_trace(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string exception_class = 1;
     if (has_exception_class()) {
       total_size += 1 +
@@ -2700,427 +2247,396 @@
     // optional .exec.shared.ExceptionWrapper cause = 4;
     if (has_cause()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *cause_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->cause());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
+  total_size += 1 * this->stack_trace_size();
+  for (int i = 0; i < this->stack_trace_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->stack_trace(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void ExceptionWrapper::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.ExceptionWrapper)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const ExceptionWrapper* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const ExceptionWrapper>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const ExceptionWrapper*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.ExceptionWrapper)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.ExceptionWrapper)
     MergeFrom(*source);
   }
 }
 
 void ExceptionWrapper::MergeFrom(const ExceptionWrapper& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.ExceptionWrapper)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   stack_trace_.MergeFrom(from.stack_trace_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_exception_class();
-      exception_class_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.exception_class_);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_exception_class()) {
+      set_exception_class(from.exception_class());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_message();
-      message_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.message_);
+    if (from.has_message()) {
+      set_message(from.message());
     }
-    if (cached_has_bits & 0x00000004u) {
+    if (from.has_cause()) {
       mutable_cause()->::exec::shared::ExceptionWrapper::MergeFrom(from.cause());
     }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void ExceptionWrapper::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.ExceptionWrapper)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void ExceptionWrapper::CopyFrom(const ExceptionWrapper& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.ExceptionWrapper)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool ExceptionWrapper::IsInitialized() const {
+
   return true;
 }
 
 void ExceptionWrapper::Swap(ExceptionWrapper* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void ExceptionWrapper::InternalSwap(ExceptionWrapper* other) {
-  using std::swap;
-  CastToBase(&stack_trace_)->InternalSwap(CastToBase(&other->stack_trace_));
-  exception_class_.Swap(&other->exception_class_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  message_.Swap(&other->message_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(cause_, other->cause_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(exception_class_, other->exception_class_);
+    std::swap(message_, other->message_);
+    stack_trace_.Swap(&other->stack_trace_);
+    std::swap(cause_, other->cause_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata ExceptionWrapper::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = ExceptionWrapper_descriptor_;
+  metadata.reflection = ExceptionWrapper_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void StackTraceElementWrapper::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int StackTraceElementWrapper::kClassNameFieldNumber;
 const int StackTraceElementWrapper::kFileNameFieldNumber;
 const int StackTraceElementWrapper::kLineNumberFieldNumber;
 const int StackTraceElementWrapper::kMethodNameFieldNumber;
 const int StackTraceElementWrapper::kIsNativeMethodFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 StackTraceElementWrapper::StackTraceElementWrapper()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_StackTraceElementWrapper.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.StackTraceElementWrapper)
 }
+
+void StackTraceElementWrapper::InitAsDefaultInstance() {
+}
+
 StackTraceElementWrapper::StackTraceElementWrapper(const StackTraceElementWrapper& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  class_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_class_name()) {
-    class_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.class_name_);
-  }
-  file_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_file_name()) {
-    file_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.file_name_);
-  }
-  method_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_method_name()) {
-    method_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.method_name_);
-  }
-  ::memcpy(&line_number_, &from.line_number_,
-    static_cast<size_t>(reinterpret_cast<char*>(&is_native_method_) -
-    reinterpret_cast<char*>(&line_number_)) + sizeof(is_native_method_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.StackTraceElementWrapper)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void StackTraceElementWrapper::SharedCtor() {
-  class_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  file_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  method_name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&line_number_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&is_native_method_) -
-      reinterpret_cast<char*>(&line_number_)) + sizeof(is_native_method_));
+  _cached_size_ = 0;
+  class_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  file_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  line_number_ = 0;
+  method_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  is_native_method_ = false;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 StackTraceElementWrapper::~StackTraceElementWrapper() {
-  // @@protoc_insertion_point(destructor:exec.shared.StackTraceElementWrapper)
   SharedDtor();
 }
 
 void StackTraceElementWrapper::SharedDtor() {
-  class_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  file_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  method_name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (class_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete class_name_;
+  }
+  if (file_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete file_name_;
+  }
+  if (method_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete method_name_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void StackTraceElementWrapper::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* StackTraceElementWrapper::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return StackTraceElementWrapper_descriptor_;
 }
 
 const StackTraceElementWrapper& StackTraceElementWrapper::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_StackTraceElementWrapper.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+StackTraceElementWrapper* StackTraceElementWrapper::default_instance_ = NULL;
+
+StackTraceElementWrapper* StackTraceElementWrapper::New() const {
+  return new StackTraceElementWrapper;
+}
 
 void StackTraceElementWrapper::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.StackTraceElementWrapper)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      class_name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_class_name()) {
+      if (class_name_ != &::google::protobuf::internal::kEmptyString) {
+        class_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      file_name_.ClearNonDefaultToEmptyNoArena();
+    if (has_file_name()) {
+      if (file_name_ != &::google::protobuf::internal::kEmptyString) {
+        file_name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      method_name_.ClearNonDefaultToEmptyNoArena();
+    line_number_ = 0;
+    if (has_method_name()) {
+      if (method_name_ != &::google::protobuf::internal::kEmptyString) {
+        method_name_->clear();
+      }
     }
+    is_native_method_ = false;
   }
-  if (cached_has_bits & 24u) {
-    ::memset(&line_number_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&is_native_method_) -
-        reinterpret_cast<char*>(&line_number_)) + sizeof(is_native_method_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool StackTraceElementWrapper::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.StackTraceElementWrapper)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string class_name = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_class_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->class_name().data(), static_cast<int>(this->class_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.StackTraceElementWrapper.class_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->class_name().data(), this->class_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_file_name;
         break;
       }
 
       // optional string file_name = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_file_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_file_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->file_name().data(), static_cast<int>(this->file_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.StackTraceElementWrapper.file_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->file_name().data(), this->file_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_line_number;
         break;
       }
 
       // optional int32 line_number = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_line_number();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_line_number:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &line_number_)));
+          set_has_line_number();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_method_name;
         break;
       }
 
       // optional string method_name = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_method_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_method_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->method_name().data(), static_cast<int>(this->method_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.StackTraceElementWrapper.method_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->method_name().data(), this->method_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_is_native_method;
         break;
       }
 
       // optional bool is_native_method = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_is_native_method();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_is_native_method:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &is_native_method_)));
+          set_has_is_native_method();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.StackTraceElementWrapper)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.StackTraceElementWrapper)
-  return false;
 #undef DO_
 }
 
 void StackTraceElementWrapper::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.StackTraceElementWrapper)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string class_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->class_name().data(), static_cast<int>(this->class_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.StackTraceElementWrapper.class_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_class_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->class_name().data(), this->class_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->class_name(), output);
   }
 
   // optional string file_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->file_name().data(), static_cast<int>(this->file_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.StackTraceElementWrapper.file_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_file_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->file_name().data(), this->file_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->file_name(), output);
   }
 
   // optional int32 line_number = 3;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_line_number()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->line_number(), output);
   }
 
   // optional string method_name = 4;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->method_name().data(), static_cast<int>(this->method_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.StackTraceElementWrapper.method_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_method_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->method_name().data(), this->method_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->method_name(), output);
   }
 
   // optional bool is_native_method = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_is_native_method()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(5, this->is_native_method(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.StackTraceElementWrapper)
 }
 
-::google::protobuf::uint8* StackTraceElementWrapper::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.StackTraceElementWrapper)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* StackTraceElementWrapper::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string class_name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->class_name().data(), static_cast<int>(this->class_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.StackTraceElementWrapper.class_name");
+  if (has_class_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->class_name().data(), this->class_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->class_name(), target);
   }
 
   // optional string file_name = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->file_name().data(), static_cast<int>(this->file_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.StackTraceElementWrapper.file_name");
+  if (has_file_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->file_name().data(), this->file_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->file_name(), target);
   }
 
   // optional int32 line_number = 3;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_line_number()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->line_number(), target);
   }
 
   // optional string method_name = 4;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->method_name().data(), static_cast<int>(this->method_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.StackTraceElementWrapper.method_name");
+  if (has_method_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->method_name().data(), this->method_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->method_name(), target);
   }
 
   // optional bool is_native_method = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_is_native_method()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(5, this->is_native_method(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.StackTraceElementWrapper)
   return target;
 }
 
-size_t StackTraceElementWrapper::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.StackTraceElementWrapper)
-  size_t total_size = 0;
+int StackTraceElementWrapper::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 31u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string class_name = 1;
     if (has_class_name()) {
       total_size += 1 +
@@ -3135,13 +2651,6 @@
           this->file_name());
     }
 
-    // optional string method_name = 4;
-    if (has_method_name()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->method_name());
-    }
-
     // optional int32 line_number = 3;
     if (has_line_number()) {
       total_size += 1 +
@@ -3149,344 +2658,322 @@
           this->line_number());
     }
 
+    // optional string method_name = 4;
+    if (has_method_name()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->method_name());
+    }
+
     // optional bool is_native_method = 5;
     if (has_is_native_method()) {
       total_size += 1 + 1;
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void StackTraceElementWrapper::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.StackTraceElementWrapper)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const StackTraceElementWrapper* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const StackTraceElementWrapper>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const StackTraceElementWrapper*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.StackTraceElementWrapper)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.StackTraceElementWrapper)
     MergeFrom(*source);
   }
 }
 
 void StackTraceElementWrapper::MergeFrom(const StackTraceElementWrapper& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.StackTraceElementWrapper)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 31u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_class_name();
-      class_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.class_name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_class_name()) {
+      set_class_name(from.class_name());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_file_name();
-      file_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.file_name_);
+    if (from.has_file_name()) {
+      set_file_name(from.file_name());
     }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_method_name();
-      method_name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.method_name_);
+    if (from.has_line_number()) {
+      set_line_number(from.line_number());
     }
-    if (cached_has_bits & 0x00000008u) {
-      line_number_ = from.line_number_;
+    if (from.has_method_name()) {
+      set_method_name(from.method_name());
     }
-    if (cached_has_bits & 0x00000010u) {
-      is_native_method_ = from.is_native_method_;
+    if (from.has_is_native_method()) {
+      set_is_native_method(from.is_native_method());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void StackTraceElementWrapper::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.StackTraceElementWrapper)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void StackTraceElementWrapper::CopyFrom(const StackTraceElementWrapper& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.StackTraceElementWrapper)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool StackTraceElementWrapper::IsInitialized() const {
+
   return true;
 }
 
 void StackTraceElementWrapper::Swap(StackTraceElementWrapper* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void StackTraceElementWrapper::InternalSwap(StackTraceElementWrapper* other) {
-  using std::swap;
-  class_name_.Swap(&other->class_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  file_name_.Swap(&other->file_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  method_name_.Swap(&other->method_name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(line_number_, other->line_number_);
-  swap(is_native_method_, other->is_native_method_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(class_name_, other->class_name_);
+    std::swap(file_name_, other->file_name_);
+    std::swap(line_number_, other->line_number_);
+    std::swap(method_name_, other->method_name_);
+    std::swap(is_native_method_, other->is_native_method_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata StackTraceElementWrapper::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = StackTraceElementWrapper_descriptor_;
+  metadata.reflection = StackTraceElementWrapper_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void ParsingError::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int ParsingError::kStartColumnFieldNumber;
 const int ParsingError::kStartRowFieldNumber;
 const int ParsingError::kEndColumnFieldNumber;
 const int ParsingError::kEndRowFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 ParsingError::ParsingError()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_ParsingError.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.ParsingError)
 }
+
+void ParsingError::InitAsDefaultInstance() {
+}
+
 ParsingError::ParsingError(const ParsingError& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&start_column_, &from.start_column_,
-    static_cast<size_t>(reinterpret_cast<char*>(&end_row_) -
-    reinterpret_cast<char*>(&start_column_)) + sizeof(end_row_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.ParsingError)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void ParsingError::SharedCtor() {
-  ::memset(&start_column_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&end_row_) -
-      reinterpret_cast<char*>(&start_column_)) + sizeof(end_row_));
+  _cached_size_ = 0;
+  start_column_ = 0;
+  start_row_ = 0;
+  end_column_ = 0;
+  end_row_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 ParsingError::~ParsingError() {
-  // @@protoc_insertion_point(destructor:exec.shared.ParsingError)
   SharedDtor();
 }
 
 void ParsingError::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void ParsingError::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* ParsingError::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return ParsingError_descriptor_;
 }
 
 const ParsingError& ParsingError::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_ParsingError.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+ParsingError* ParsingError::default_instance_ = NULL;
+
+ParsingError* ParsingError::New() const {
+  return new ParsingError;
+}
 
 void ParsingError::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.ParsingError)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 15u) {
-    ::memset(&start_column_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&end_row_) -
-        reinterpret_cast<char*>(&start_column_)) + sizeof(end_row_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    start_column_ = 0;
+    start_row_ = 0;
+    end_column_ = 0;
+    end_row_ = 0;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool ParsingError::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.ParsingError)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 start_column = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_start_column();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &start_column_)));
+          set_has_start_column();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_start_row;
         break;
       }
 
       // optional int32 start_row = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_start_row();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_start_row:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &start_row_)));
+          set_has_start_row();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_end_column;
         break;
       }
 
       // optional int32 end_column = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_end_column();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_end_column:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &end_column_)));
+          set_has_end_column();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_end_row;
         break;
       }
 
       // optional int32 end_row = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_end_row();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_end_row:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &end_row_)));
+          set_has_end_row();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.ParsingError)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.ParsingError)
-  return false;
 #undef DO_
 }
 
 void ParsingError::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.ParsingError)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 start_column = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_start_column()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->start_column(), output);
   }
 
   // optional int32 start_row = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_start_row()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->start_row(), output);
   }
 
   // optional int32 end_column = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_end_column()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->end_column(), output);
   }
 
   // optional int32 end_row = 5;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_end_row()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->end_row(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.ParsingError)
 }
 
-::google::protobuf::uint8* ParsingError::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.ParsingError)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* ParsingError::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 start_column = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_start_column()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->start_column(), target);
   }
 
   // optional int32 start_row = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_start_row()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->start_row(), target);
   }
 
   // optional int32 end_column = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_end_column()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->end_column(), target);
   }
 
   // optional int32 end_row = 5;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_end_row()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(5, this->end_row(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.ParsingError)
   return target;
 }
 
-size_t ParsingError::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.ParsingError)
-  size_t total_size = 0;
+int ParsingError::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 15u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional int32 start_column = 2;
     if (has_start_column()) {
       total_size += 1 +
@@ -3516,346 +3003,306 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void ParsingError::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.ParsingError)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const ParsingError* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const ParsingError>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const ParsingError*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.ParsingError)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.ParsingError)
     MergeFrom(*source);
   }
 }
 
 void ParsingError::MergeFrom(const ParsingError& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.ParsingError)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
-      start_column_ = from.start_column_;
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_start_column()) {
+      set_start_column(from.start_column());
     }
-    if (cached_has_bits & 0x00000002u) {
-      start_row_ = from.start_row_;
+    if (from.has_start_row()) {
+      set_start_row(from.start_row());
     }
-    if (cached_has_bits & 0x00000004u) {
-      end_column_ = from.end_column_;
+    if (from.has_end_column()) {
+      set_end_column(from.end_column());
     }
-    if (cached_has_bits & 0x00000008u) {
-      end_row_ = from.end_row_;
+    if (from.has_end_row()) {
+      set_end_row(from.end_row());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void ParsingError::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.ParsingError)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void ParsingError::CopyFrom(const ParsingError& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.ParsingError)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool ParsingError::IsInitialized() const {
+
   return true;
 }
 
 void ParsingError::Swap(ParsingError* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void ParsingError::InternalSwap(ParsingError* other) {
-  using std::swap;
-  swap(start_column_, other->start_column_);
-  swap(start_row_, other->start_row_);
-  swap(end_column_, other->end_column_);
-  swap(end_row_, other->end_row_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(start_column_, other->start_column_);
+    std::swap(start_row_, other->start_row_);
+    std::swap(end_column_, other->end_column_);
+    std::swap(end_row_, other->end_row_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata ParsingError::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = ParsingError_descriptor_;
+  metadata.reflection = ParsingError_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void RecordBatchDef::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int RecordBatchDef::kRecordCountFieldNumber;
 const int RecordBatchDef::kFieldFieldNumber;
 const int RecordBatchDef::kCarriesTwoByteSelectionVectorFieldNumber;
 const int RecordBatchDef::kAffectedRowsCountFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 RecordBatchDef::RecordBatchDef()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_RecordBatchDef.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.RecordBatchDef)
 }
+
+void RecordBatchDef::InitAsDefaultInstance() {
+}
+
 RecordBatchDef::RecordBatchDef(const RecordBatchDef& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      field_(from.field_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&record_count_, &from.record_count_,
-    static_cast<size_t>(reinterpret_cast<char*>(&affected_rows_count_) -
-    reinterpret_cast<char*>(&record_count_)) + sizeof(affected_rows_count_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.RecordBatchDef)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void RecordBatchDef::SharedCtor() {
-  ::memset(&record_count_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&affected_rows_count_) -
-      reinterpret_cast<char*>(&record_count_)) + sizeof(affected_rows_count_));
+  _cached_size_ = 0;
+  record_count_ = 0;
+  carries_two_byte_selection_vector_ = false;
+  affected_rows_count_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 RecordBatchDef::~RecordBatchDef() {
-  // @@protoc_insertion_point(destructor:exec.shared.RecordBatchDef)
   SharedDtor();
 }
 
 void RecordBatchDef::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void RecordBatchDef::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* RecordBatchDef::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return RecordBatchDef_descriptor_;
 }
 
 const RecordBatchDef& RecordBatchDef::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_RecordBatchDef.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+RecordBatchDef* RecordBatchDef::default_instance_ = NULL;
+
+RecordBatchDef* RecordBatchDef::New() const {
+  return new RecordBatchDef;
+}
 
 void RecordBatchDef::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.RecordBatchDef)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  field_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    ::memset(&record_count_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&affected_rows_count_) -
-        reinterpret_cast<char*>(&record_count_)) + sizeof(affected_rows_count_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    record_count_ = 0;
+    carries_two_byte_selection_vector_ = false;
+    affected_rows_count_ = 0;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  field_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool RecordBatchDef::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.RecordBatchDef)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 record_count = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_record_count();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &record_count_)));
+          set_has_record_count();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_field;
         break;
       }
 
       // repeated .exec.shared.SerializedField field = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_field:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_field()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_field;
+        if (input->ExpectTag(24)) goto parse_carries_two_byte_selection_vector;
         break;
       }
 
       // optional bool carries_two_byte_selection_vector = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_carries_two_byte_selection_vector();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_carries_two_byte_selection_vector:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
                  input, &carries_two_byte_selection_vector_)));
+          set_has_carries_two_byte_selection_vector();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_affected_rows_count;
         break;
       }
 
       // optional int32 affected_rows_count = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_affected_rows_count();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_affected_rows_count:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &affected_rows_count_)));
+          set_has_affected_rows_count();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.RecordBatchDef)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.RecordBatchDef)
-  return false;
 #undef DO_
 }
 
 void RecordBatchDef::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.RecordBatchDef)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 record_count = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_record_count()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->record_count(), output);
   }
 
   // repeated .exec.shared.SerializedField field = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->field_size()); i < n; i++) {
+  for (int i = 0; i < this->field_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2,
-      this->field(static_cast<int>(i)),
-      output);
+      2, this->field(i), output);
   }
 
   // optional bool carries_two_byte_selection_vector = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_carries_two_byte_selection_vector()) {
     ::google::protobuf::internal::WireFormatLite::WriteBool(3, this->carries_two_byte_selection_vector(), output);
   }
 
   // optional int32 affected_rows_count = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_affected_rows_count()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->affected_rows_count(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.RecordBatchDef)
 }
 
-::google::protobuf::uint8* RecordBatchDef::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.RecordBatchDef)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* RecordBatchDef::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 record_count = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_record_count()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->record_count(), target);
   }
 
   // repeated .exec.shared.SerializedField field = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->field_size()); i < n; i++) {
+  for (int i = 0; i < this->field_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->field(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->field(i), target);
   }
 
   // optional bool carries_two_byte_selection_vector = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_carries_two_byte_selection_vector()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteBoolToArray(3, this->carries_two_byte_selection_vector(), target);
   }
 
   // optional int32 affected_rows_count = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_affected_rows_count()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->affected_rows_count(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.RecordBatchDef)
   return target;
 }
 
-size_t RecordBatchDef::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.RecordBatchDef)
-  size_t total_size = 0;
+int RecordBatchDef::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.shared.SerializedField field = 2;
-  {
-    unsigned int count = static_cast<unsigned int>(this->field_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->field(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional int32 record_count = 1;
     if (has_record_count()) {
       total_size += 1 +
@@ -3876,190 +3323,204 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.shared.SerializedField field = 2;
+  total_size += 1 * this->field_size();
+  for (int i = 0; i < this->field_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->field(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void RecordBatchDef::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.RecordBatchDef)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const RecordBatchDef* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const RecordBatchDef>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const RecordBatchDef*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.RecordBatchDef)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.RecordBatchDef)
     MergeFrom(*source);
   }
 }
 
 void RecordBatchDef::MergeFrom(const RecordBatchDef& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.RecordBatchDef)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   field_.MergeFrom(from.field_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      record_count_ = from.record_count_;
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_record_count()) {
+      set_record_count(from.record_count());
     }
-    if (cached_has_bits & 0x00000002u) {
-      carries_two_byte_selection_vector_ = from.carries_two_byte_selection_vector_;
+    if (from.has_carries_two_byte_selection_vector()) {
+      set_carries_two_byte_selection_vector(from.carries_two_byte_selection_vector());
     }
-    if (cached_has_bits & 0x00000004u) {
-      affected_rows_count_ = from.affected_rows_count_;
+    if (from.has_affected_rows_count()) {
+      set_affected_rows_count(from.affected_rows_count());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void RecordBatchDef::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.RecordBatchDef)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void RecordBatchDef::CopyFrom(const RecordBatchDef& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.RecordBatchDef)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool RecordBatchDef::IsInitialized() const {
+
   return true;
 }
 
 void RecordBatchDef::Swap(RecordBatchDef* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void RecordBatchDef::InternalSwap(RecordBatchDef* other) {
-  using std::swap;
-  CastToBase(&field_)->InternalSwap(CastToBase(&other->field_));
-  swap(record_count_, other->record_count_);
-  swap(carries_two_byte_selection_vector_, other->carries_two_byte_selection_vector_);
-  swap(affected_rows_count_, other->affected_rows_count_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(record_count_, other->record_count_);
+    field_.Swap(&other->field_);
+    std::swap(carries_two_byte_selection_vector_, other->carries_two_byte_selection_vector_);
+    std::swap(affected_rows_count_, other->affected_rows_count_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata RecordBatchDef::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = RecordBatchDef_descriptor_;
+  metadata.reflection = RecordBatchDef_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void NamePart::InitAsDefaultInstance() {
-  ::exec::shared::_NamePart_default_instance_._instance.get_mutable()->child_ = const_cast< ::exec::shared::NamePart*>(
-      ::exec::shared::NamePart::internal_default_instance());
+const ::google::protobuf::EnumDescriptor* NamePart_Type_descriptor() {
+  protobuf_AssignDescriptorsOnce();
+  return NamePart_Type_descriptor_;
 }
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+bool NamePart_Type_IsValid(int value) {
+  switch(value) {
+    case 0:
+    case 1:
+      return true;
+    default:
+      return false;
+  }
+}
+
+#ifndef _MSC_VER
+const NamePart_Type NamePart::NAME;
+const NamePart_Type NamePart::ARRAY;
+const NamePart_Type NamePart::Type_MIN;
+const NamePart_Type NamePart::Type_MAX;
+const int NamePart::Type_ARRAYSIZE;
+#endif  // _MSC_VER
+#ifndef _MSC_VER
 const int NamePart::kTypeFieldNumber;
 const int NamePart::kNameFieldNumber;
 const int NamePart::kChildFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 NamePart::NamePart()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_NamePart.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.NamePart)
 }
+
+void NamePart::InitAsDefaultInstance() {
+  child_ = const_cast< ::exec::shared::NamePart*>(&::exec::shared::NamePart::default_instance());
+}
+
 NamePart::NamePart(const NamePart& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_name()) {
-    name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
-  }
-  if (from.has_child()) {
-    child_ = new ::exec::shared::NamePart(*from.child_);
-  } else {
-    child_ = NULL;
-  }
-  type_ = from.type_;
-  // @@protoc_insertion_point(copy_constructor:exec.shared.NamePart)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void NamePart::SharedCtor() {
-  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&child_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&type_) -
-      reinterpret_cast<char*>(&child_)) + sizeof(type_));
+  _cached_size_ = 0;
+  type_ = 0;
+  name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  child_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 NamePart::~NamePart() {
-  // @@protoc_insertion_point(destructor:exec.shared.NamePart)
   SharedDtor();
 }
 
 void NamePart::SharedDtor() {
-  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete child_;
+  if (name_ != &::google::protobuf::internal::kEmptyString) {
+    delete name_;
+  }
+  if (this != default_instance_) {
+    delete child_;
+  }
 }
 
 void NamePart::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* NamePart::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return NamePart_descriptor_;
 }
 
 const NamePart& NamePart::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_NamePart.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+NamePart* NamePart::default_instance_ = NULL;
+
+NamePart* NamePart::New() const {
+  return new NamePart;
+}
 
 void NamePart::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.NamePart)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    type_ = 0;
+    if (has_name()) {
+      if (name_ != &::google::protobuf::internal::kEmptyString) {
+        name_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(child_ != NULL);
-      child_->Clear();
+    if (has_child()) {
+      if (child_ != NULL) child_->::exec::shared::NamePart::Clear();
     }
   }
-  type_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool NamePart::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.NamePart)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.NamePart.Type type = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -4067,149 +3528,133 @@
           if (::exec::shared::NamePart_Type_IsValid(value)) {
             set_type(static_cast< ::exec::shared::NamePart_Type >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_name;
         break;
       }
 
       // optional string name = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->name().data(), static_cast<int>(this->name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.NamePart.name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->name().data(), this->name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_child;
         break;
       }
 
       // optional .exec.shared.NamePart child = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_child:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_child()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.NamePart)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.NamePart)
-  return false;
 #undef DO_
 }
 
 void NamePart::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.NamePart)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.NamePart.Type type = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->type(), output);
   }
 
   // optional string name = 2;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->name().data(), static_cast<int>(this->name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.NamePart.name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->name().data(), this->name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->name(), output);
   }
 
   // optional .exec.shared.NamePart child = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_child()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_child(), output);
+      3, this->child(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.NamePart)
 }
 
-::google::protobuf::uint8* NamePart::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.NamePart)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* NamePart::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.NamePart.Type type = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_type()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->type(), target);
   }
 
   // optional string name = 2;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->name().data(), static_cast<int>(this->name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.NamePart.name");
+  if (has_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->name().data(), this->name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         2, this->name(), target);
   }
 
   // optional .exec.shared.NamePart child = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_child()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_child(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->child(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.NamePart)
   return target;
 }
 
-size_t NamePart::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.NamePart)
-  size_t total_size = 0;
+int NamePart::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional .exec.shared.NamePart.Type type = 1;
+    if (has_type()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
+    }
+
     // optional string name = 2;
     if (has_name()) {
       total_size += 1 +
@@ -4220,449 +3665,387 @@
     // optional .exec.shared.NamePart child = 3;
     if (has_child()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *child_);
-    }
-
-    // optional .exec.shared.NamePart.Type type = 1;
-    if (has_type()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->child());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void NamePart::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.NamePart)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const NamePart* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const NamePart>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const NamePart*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.NamePart)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.NamePart)
     MergeFrom(*source);
   }
 }
 
 void NamePart::MergeFrom(const NamePart& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.NamePart)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_name();
-      name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_type()) {
+      set_type(from.type());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_name()) {
+      set_name(from.name());
+    }
+    if (from.has_child()) {
       mutable_child()->::exec::shared::NamePart::MergeFrom(from.child());
     }
-    if (cached_has_bits & 0x00000004u) {
-      type_ = from.type_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void NamePart::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.NamePart)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void NamePart::CopyFrom(const NamePart& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.NamePart)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool NamePart::IsInitialized() const {
+
   return true;
 }
 
 void NamePart::Swap(NamePart* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void NamePart::InternalSwap(NamePart* other) {
-  using std::swap;
-  name_.Swap(&other->name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(child_, other->child_);
-  swap(type_, other->type_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(type_, other->type_);
+    std::swap(name_, other->name_);
+    std::swap(child_, other->child_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata NamePart::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = NamePart_descriptor_;
+  metadata.reflection = NamePart_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void SerializedField::InitAsDefaultInstance() {
-  ::exec::shared::_SerializedField_default_instance_._instance.get_mutable()->major_type_ = const_cast< ::common::MajorType*>(
-      ::common::MajorType::internal_default_instance());
-  ::exec::shared::_SerializedField_default_instance_._instance.get_mutable()->name_part_ = const_cast< ::exec::shared::NamePart*>(
-      ::exec::shared::NamePart::internal_default_instance());
-}
-void SerializedField::clear_major_type() {
-  if (major_type_ != NULL) major_type_->Clear();
-  clear_has_major_type();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int SerializedField::kMajorTypeFieldNumber;
 const int SerializedField::kNamePartFieldNumber;
 const int SerializedField::kChildFieldNumber;
 const int SerializedField::kValueCountFieldNumber;
 const int SerializedField::kVarByteLengthFieldNumber;
 const int SerializedField::kBufferLengthFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 SerializedField::SerializedField()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_SerializedField.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.SerializedField)
 }
+
+void SerializedField::InitAsDefaultInstance() {
+  major_type_ = const_cast< ::common::MajorType*>(&::common::MajorType::default_instance());
+  name_part_ = const_cast< ::exec::shared::NamePart*>(&::exec::shared::NamePart::default_instance());
+}
+
 SerializedField::SerializedField(const SerializedField& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      child_(from.child_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_major_type()) {
-    major_type_ = new ::common::MajorType(*from.major_type_);
-  } else {
-    major_type_ = NULL;
-  }
-  if (from.has_name_part()) {
-    name_part_ = new ::exec::shared::NamePart(*from.name_part_);
-  } else {
-    name_part_ = NULL;
-  }
-  ::memcpy(&value_count_, &from.value_count_,
-    static_cast<size_t>(reinterpret_cast<char*>(&buffer_length_) -
-    reinterpret_cast<char*>(&value_count_)) + sizeof(buffer_length_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.SerializedField)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void SerializedField::SharedCtor() {
-  ::memset(&major_type_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&buffer_length_) -
-      reinterpret_cast<char*>(&major_type_)) + sizeof(buffer_length_));
+  _cached_size_ = 0;
+  major_type_ = NULL;
+  name_part_ = NULL;
+  value_count_ = 0;
+  var_byte_length_ = 0;
+  buffer_length_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 SerializedField::~SerializedField() {
-  // @@protoc_insertion_point(destructor:exec.shared.SerializedField)
   SharedDtor();
 }
 
 void SerializedField::SharedDtor() {
-  if (this != internal_default_instance()) delete major_type_;
-  if (this != internal_default_instance()) delete name_part_;
+  if (this != default_instance_) {
+    delete major_type_;
+    delete name_part_;
+  }
 }
 
 void SerializedField::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* SerializedField::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return SerializedField_descriptor_;
 }
 
 const SerializedField& SerializedField::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_SerializedField.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+SerializedField* SerializedField::default_instance_ = NULL;
+
+SerializedField* SerializedField::New() const {
+  return new SerializedField;
+}
 
 void SerializedField::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.SerializedField)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_major_type()) {
+      if (major_type_ != NULL) major_type_->::common::MajorType::Clear();
+    }
+    if (has_name_part()) {
+      if (name_part_ != NULL) name_part_->::exec::shared::NamePart::Clear();
+    }
+    value_count_ = 0;
+    var_byte_length_ = 0;
+    buffer_length_ = 0;
+  }
   child_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(major_type_ != NULL);
-      major_type_->Clear();
-    }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(name_part_ != NULL);
-      name_part_->Clear();
-    }
-  }
-  if (cached_has_bits & 28u) {
-    ::memset(&value_count_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&buffer_length_) -
-        reinterpret_cast<char*>(&value_count_)) + sizeof(buffer_length_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool SerializedField::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.SerializedField)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .common.MajorType major_type = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_major_type()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_name_part;
         break;
       }
 
       // optional .exec.shared.NamePart name_part = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_name_part:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_name_part()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_child;
         break;
       }
 
       // repeated .exec.shared.SerializedField child = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_child:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_child()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_child;
+        if (input->ExpectTag(32)) goto parse_value_count;
         break;
       }
 
       // optional int32 value_count = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_value_count();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_value_count:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &value_count_)));
+          set_has_value_count();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_var_byte_length;
         break;
       }
 
       // optional int32 var_byte_length = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_var_byte_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_var_byte_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &var_byte_length_)));
+          set_has_var_byte_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_buffer_length;
         break;
       }
 
       // optional int32 buffer_length = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_buffer_length();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_buffer_length:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &buffer_length_)));
+          set_has_buffer_length();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.SerializedField)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.SerializedField)
-  return false;
 #undef DO_
 }
 
 void SerializedField::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.SerializedField)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .common.MajorType major_type = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_major_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_major_type(), output);
+      1, this->major_type(), output);
   }
 
   // optional .exec.shared.NamePart name_part = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_name_part()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_name_part(), output);
+      2, this->name_part(), output);
   }
 
   // repeated .exec.shared.SerializedField child = 3;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->child_size()); i < n; i++) {
+  for (int i = 0; i < this->child_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3,
-      this->child(static_cast<int>(i)),
-      output);
+      3, this->child(i), output);
   }
 
   // optional int32 value_count = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_value_count()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->value_count(), output);
   }
 
   // optional int32 var_byte_length = 5;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_var_byte_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(5, this->var_byte_length(), output);
   }
 
   // optional int32 buffer_length = 7;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_buffer_length()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(7, this->buffer_length(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.SerializedField)
 }
 
-::google::protobuf::uint8* SerializedField::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.SerializedField)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* SerializedField::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .common.MajorType major_type = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_major_type()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_major_type(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->major_type(), target);
   }
 
   // optional .exec.shared.NamePart name_part = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_name_part()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_name_part(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->name_part(), target);
   }
 
   // repeated .exec.shared.SerializedField child = 3;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->child_size()); i < n; i++) {
+  for (int i = 0; i < this->child_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->child(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->child(i), target);
   }
 
   // optional int32 value_count = 4;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_value_count()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->value_count(), target);
   }
 
   // optional int32 var_byte_length = 5;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_var_byte_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(5, this->var_byte_length(), target);
   }
 
   // optional int32 buffer_length = 7;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_buffer_length()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(7, this->buffer_length(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.SerializedField)
   return target;
 }
 
-size_t SerializedField::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.SerializedField)
-  size_t total_size = 0;
+int SerializedField::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.shared.SerializedField child = 3;
-  {
-    unsigned int count = static_cast<unsigned int>(this->child_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->child(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 31u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .common.MajorType major_type = 1;
     if (has_major_type()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *major_type_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->major_type());
     }
 
     // optional .exec.shared.NamePart name_part = 2;
     if (has_name_part()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *name_part_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->name_part());
     }
 
     // optional int32 value_count = 4;
@@ -4687,291 +4070,261 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.shared.SerializedField child = 3;
+  total_size += 1 * this->child_size();
+  for (int i = 0; i < this->child_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->child(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void SerializedField::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.SerializedField)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const SerializedField* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const SerializedField>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const SerializedField*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.SerializedField)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.SerializedField)
     MergeFrom(*source);
   }
 }
 
 void SerializedField::MergeFrom(const SerializedField& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.SerializedField)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   child_.MergeFrom(from.child_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 31u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_major_type()) {
       mutable_major_type()->::common::MajorType::MergeFrom(from.major_type());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_name_part()) {
       mutable_name_part()->::exec::shared::NamePart::MergeFrom(from.name_part());
     }
-    if (cached_has_bits & 0x00000004u) {
-      value_count_ = from.value_count_;
+    if (from.has_value_count()) {
+      set_value_count(from.value_count());
     }
-    if (cached_has_bits & 0x00000008u) {
-      var_byte_length_ = from.var_byte_length_;
+    if (from.has_var_byte_length()) {
+      set_var_byte_length(from.var_byte_length());
     }
-    if (cached_has_bits & 0x00000010u) {
-      buffer_length_ = from.buffer_length_;
+    if (from.has_buffer_length()) {
+      set_buffer_length(from.buffer_length());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void SerializedField::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.SerializedField)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void SerializedField::CopyFrom(const SerializedField& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.SerializedField)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool SerializedField::IsInitialized() const {
+
   return true;
 }
 
 void SerializedField::Swap(SerializedField* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void SerializedField::InternalSwap(SerializedField* other) {
-  using std::swap;
-  CastToBase(&child_)->InternalSwap(CastToBase(&other->child_));
-  swap(major_type_, other->major_type_);
-  swap(name_part_, other->name_part_);
-  swap(value_count_, other->value_count_);
-  swap(var_byte_length_, other->var_byte_length_);
-  swap(buffer_length_, other->buffer_length_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(major_type_, other->major_type_);
+    std::swap(name_part_, other->name_part_);
+    child_.Swap(&other->child_);
+    std::swap(value_count_, other->value_count_);
+    std::swap(var_byte_length_, other->var_byte_length_);
+    std::swap(buffer_length_, other->buffer_length_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata SerializedField::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = SerializedField_descriptor_;
+  metadata.reflection = SerializedField_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void NodeStatus::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int NodeStatus::kNodeIdFieldNumber;
 const int NodeStatus::kMemoryFootprintFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 NodeStatus::NodeStatus()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_NodeStatus.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.NodeStatus)
 }
+
+void NodeStatus::InitAsDefaultInstance() {
+}
+
 NodeStatus::NodeStatus(const NodeStatus& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&memory_footprint_, &from.memory_footprint_,
-    static_cast<size_t>(reinterpret_cast<char*>(&node_id_) -
-    reinterpret_cast<char*>(&memory_footprint_)) + sizeof(node_id_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.NodeStatus)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void NodeStatus::SharedCtor() {
-  ::memset(&memory_footprint_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&node_id_) -
-      reinterpret_cast<char*>(&memory_footprint_)) + sizeof(node_id_));
+  _cached_size_ = 0;
+  node_id_ = 0;
+  memory_footprint_ = GOOGLE_LONGLONG(0);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 NodeStatus::~NodeStatus() {
-  // @@protoc_insertion_point(destructor:exec.shared.NodeStatus)
   SharedDtor();
 }
 
 void NodeStatus::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void NodeStatus::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* NodeStatus::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return NodeStatus_descriptor_;
 }
 
 const NodeStatus& NodeStatus::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_NodeStatus.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+NodeStatus* NodeStatus::default_instance_ = NULL;
+
+NodeStatus* NodeStatus::New() const {
+  return new NodeStatus;
+}
 
 void NodeStatus::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.NodeStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    ::memset(&memory_footprint_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&node_id_) -
-        reinterpret_cast<char*>(&memory_footprint_)) + sizeof(node_id_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    node_id_ = 0;
+    memory_footprint_ = GOOGLE_LONGLONG(0);
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool NodeStatus::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.NodeStatus)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 node_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_node_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &node_id_)));
+          set_has_node_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_memory_footprint;
         break;
       }
 
       // optional int64 memory_footprint = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_memory_footprint();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_memory_footprint:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &memory_footprint_)));
+          set_has_memory_footprint();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.NodeStatus)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.NodeStatus)
-  return false;
 #undef DO_
 }
 
 void NodeStatus::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.NodeStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 node_id = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_node_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->node_id(), output);
   }
 
   // optional int64 memory_footprint = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_memory_footprint()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(2, this->memory_footprint(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.NodeStatus)
 }
 
-::google::protobuf::uint8* NodeStatus::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.NodeStatus)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* NodeStatus::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 node_id = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_node_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->node_id(), target);
   }
 
   // optional int64 memory_footprint = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_memory_footprint()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(2, this->memory_footprint(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.NodeStatus)
   return target;
 }
 
-size_t NodeStatus::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.NodeStatus)
-  size_t total_size = 0;
+int NodeStatus::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 3u) {
-    // optional int64 memory_footprint = 2;
-    if (has_memory_footprint()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int64Size(
-          this->memory_footprint());
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional int32 node_id = 1;
     if (has_node_id()) {
       total_size += 1 +
@@ -4979,176 +4332,204 @@
           this->node_id());
     }
 
+    // optional int64 memory_footprint = 2;
+    if (has_memory_footprint()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int64Size(
+          this->memory_footprint());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void NodeStatus::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.NodeStatus)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const NodeStatus* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const NodeStatus>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const NodeStatus*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.NodeStatus)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.NodeStatus)
     MergeFrom(*source);
   }
 }
 
 void NodeStatus::MergeFrom(const NodeStatus& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.NodeStatus)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      memory_footprint_ = from.memory_footprint_;
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_node_id()) {
+      set_node_id(from.node_id());
     }
-    if (cached_has_bits & 0x00000002u) {
-      node_id_ = from.node_id_;
+    if (from.has_memory_footprint()) {
+      set_memory_footprint(from.memory_footprint());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void NodeStatus::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.NodeStatus)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void NodeStatus::CopyFrom(const NodeStatus& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.NodeStatus)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool NodeStatus::IsInitialized() const {
+
   return true;
 }
 
 void NodeStatus::Swap(NodeStatus* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void NodeStatus::InternalSwap(NodeStatus* other) {
-  using std::swap;
-  swap(memory_footprint_, other->memory_footprint_);
-  swap(node_id_, other->node_id_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(node_id_, other->node_id_);
+    std::swap(memory_footprint_, other->memory_footprint_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata NodeStatus::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = NodeStatus_descriptor_;
+  metadata.reflection = NodeStatus_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void QueryResult::InitAsDefaultInstance() {
-  ::exec::shared::_QueryResult_default_instance_._instance.get_mutable()->query_id_ = const_cast< ::exec::shared::QueryId*>(
-      ::exec::shared::QueryId::internal_default_instance());
+const ::google::protobuf::EnumDescriptor* QueryResult_QueryState_descriptor() {
+  protobuf_AssignDescriptorsOnce();
+  return QueryResult_QueryState_descriptor_;
 }
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+bool QueryResult_QueryState_IsValid(int value) {
+  switch(value) {
+    case 0:
+    case 1:
+    case 2:
+    case 3:
+    case 4:
+    case 5:
+    case 6:
+    case 7:
+    case 8:
+      return true;
+    default:
+      return false;
+  }
+}
+
+#ifndef _MSC_VER
+const QueryResult_QueryState QueryResult::STARTING;
+const QueryResult_QueryState QueryResult::RUNNING;
+const QueryResult_QueryState QueryResult::COMPLETED;
+const QueryResult_QueryState QueryResult::CANCELED;
+const QueryResult_QueryState QueryResult::FAILED;
+const QueryResult_QueryState QueryResult::CANCELLATION_REQUESTED;
+const QueryResult_QueryState QueryResult::ENQUEUED;
+const QueryResult_QueryState QueryResult::PREPARING;
+const QueryResult_QueryState QueryResult::PLANNING;
+const QueryResult_QueryState QueryResult::QueryState_MIN;
+const QueryResult_QueryState QueryResult::QueryState_MAX;
+const int QueryResult::QueryState_ARRAYSIZE;
+#endif  // _MSC_VER
+#ifndef _MSC_VER
 const int QueryResult::kQueryStateFieldNumber;
 const int QueryResult::kQueryIdFieldNumber;
 const int QueryResult::kErrorFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 QueryResult::QueryResult()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_QueryResult.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.QueryResult)
 }
+
+void QueryResult::InitAsDefaultInstance() {
+  query_id_ = const_cast< ::exec::shared::QueryId*>(&::exec::shared::QueryId::default_instance());
+}
+
 QueryResult::QueryResult(const QueryResult& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      error_(from.error_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_query_id()) {
-    query_id_ = new ::exec::shared::QueryId(*from.query_id_);
-  } else {
-    query_id_ = NULL;
-  }
-  query_state_ = from.query_state_;
-  // @@protoc_insertion_point(copy_constructor:exec.shared.QueryResult)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void QueryResult::SharedCtor() {
-  ::memset(&query_id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&query_state_) -
-      reinterpret_cast<char*>(&query_id_)) + sizeof(query_state_));
+  _cached_size_ = 0;
+  query_state_ = 0;
+  query_id_ = NULL;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 QueryResult::~QueryResult() {
-  // @@protoc_insertion_point(destructor:exec.shared.QueryResult)
   SharedDtor();
 }
 
 void QueryResult::SharedDtor() {
-  if (this != internal_default_instance()) delete query_id_;
+  if (this != default_instance_) {
+    delete query_id_;
+  }
 }
 
 void QueryResult::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* QueryResult::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return QueryResult_descriptor_;
 }
 
 const QueryResult& QueryResult::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_QueryResult.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+QueryResult* QueryResult::default_instance_ = NULL;
+
+QueryResult* QueryResult::New() const {
+  return new QueryResult;
+}
 
 void QueryResult::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.QueryResult)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  error_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    GOOGLE_DCHECK(query_id_ != NULL);
-    query_id_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    query_state_ = 0;
+    if (has_query_id()) {
+      if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
+    }
   }
-  query_state_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  error_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool QueryResult::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.QueryResult)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.QueryResult.QueryState query_state = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -5156,522 +4537,449 @@
           if (::exec::shared::QueryResult_QueryState_IsValid(value)) {
             set_query_state(static_cast< ::exec::shared::QueryResult_QueryState >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_query_id;
         break;
       }
 
       // optional .exec.shared.QueryId query_id = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_query_id:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_query_id()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_error;
         break;
       }
 
       // repeated .exec.shared.DrillPBError error = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_error;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.QueryResult)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.QueryResult)
-  return false;
 #undef DO_
 }
 
 void QueryResult::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.QueryResult)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.QueryResult.QueryState query_state = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_query_state()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->query_state(), output);
   }
 
   // optional .exec.shared.QueryId query_id = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_query_id(), output);
+      2, this->query_id(), output);
   }
 
   // repeated .exec.shared.DrillPBError error = 3;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->error_size()); i < n; i++) {
+  for (int i = 0; i < this->error_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3,
-      this->error(static_cast<int>(i)),
-      output);
+      3, this->error(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.QueryResult)
 }
 
-::google::protobuf::uint8* QueryResult::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.QueryResult)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* QueryResult::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.QueryResult.QueryState query_state = 1;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_query_state()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->query_state(), target);
   }
 
   // optional .exec.shared.QueryId query_id = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_query_id(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->query_id(), target);
   }
 
   // repeated .exec.shared.DrillPBError error = 3;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->error_size()); i < n; i++) {
+  for (int i = 0; i < this->error_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->error(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->error(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.QueryResult)
   return target;
 }
 
-size_t QueryResult::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.QueryResult)
-  size_t total_size = 0;
+int QueryResult::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.shared.DrillPBError error = 3;
-  {
-    unsigned int count = static_cast<unsigned int>(this->error_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->error(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 3u) {
-    // optional .exec.shared.QueryId query_id = 2;
-    if (has_query_id()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *query_id_);
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.shared.QueryResult.QueryState query_state = 1;
     if (has_query_state()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->query_state());
     }
 
+    // optional .exec.shared.QueryId query_id = 2;
+    if (has_query_id()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->query_id());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.shared.DrillPBError error = 3;
+  total_size += 1 * this->error_size();
+  for (int i = 0; i < this->error_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->error(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void QueryResult::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.QueryResult)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const QueryResult* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const QueryResult>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const QueryResult*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.QueryResult)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.QueryResult)
     MergeFrom(*source);
   }
 }
 
 void QueryResult::MergeFrom(const QueryResult& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.QueryResult)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   error_.MergeFrom(from.error_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_query_state()) {
+      set_query_state(from.query_state());
+    }
+    if (from.has_query_id()) {
       mutable_query_id()->::exec::shared::QueryId::MergeFrom(from.query_id());
     }
-    if (cached_has_bits & 0x00000002u) {
-      query_state_ = from.query_state_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void QueryResult::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.QueryResult)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void QueryResult::CopyFrom(const QueryResult& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.QueryResult)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool QueryResult::IsInitialized() const {
+
   return true;
 }
 
 void QueryResult::Swap(QueryResult* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void QueryResult::InternalSwap(QueryResult* other) {
-  using std::swap;
-  CastToBase(&error_)->InternalSwap(CastToBase(&other->error_));
-  swap(query_id_, other->query_id_);
-  swap(query_state_, other->query_state_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(query_state_, other->query_state_);
+    std::swap(query_id_, other->query_id_);
+    error_.Swap(&other->error_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata QueryResult::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = QueryResult_descriptor_;
+  metadata.reflection = QueryResult_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void QueryData::InitAsDefaultInstance() {
-  ::exec::shared::_QueryData_default_instance_._instance.get_mutable()->query_id_ = const_cast< ::exec::shared::QueryId*>(
-      ::exec::shared::QueryId::internal_default_instance());
-  ::exec::shared::_QueryData_default_instance_._instance.get_mutable()->def_ = const_cast< ::exec::shared::RecordBatchDef*>(
-      ::exec::shared::RecordBatchDef::internal_default_instance());
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int QueryData::kQueryIdFieldNumber;
 const int QueryData::kRowCountFieldNumber;
 const int QueryData::kDefFieldNumber;
 const int QueryData::kAffectedRowsCountFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 QueryData::QueryData()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_QueryData.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.QueryData)
 }
+
+void QueryData::InitAsDefaultInstance() {
+  query_id_ = const_cast< ::exec::shared::QueryId*>(&::exec::shared::QueryId::default_instance());
+  def_ = const_cast< ::exec::shared::RecordBatchDef*>(&::exec::shared::RecordBatchDef::default_instance());
+}
+
 QueryData::QueryData(const QueryData& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_query_id()) {
-    query_id_ = new ::exec::shared::QueryId(*from.query_id_);
-  } else {
-    query_id_ = NULL;
-  }
-  if (from.has_def()) {
-    def_ = new ::exec::shared::RecordBatchDef(*from.def_);
-  } else {
-    def_ = NULL;
-  }
-  ::memcpy(&row_count_, &from.row_count_,
-    static_cast<size_t>(reinterpret_cast<char*>(&affected_rows_count_) -
-    reinterpret_cast<char*>(&row_count_)) + sizeof(affected_rows_count_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.QueryData)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void QueryData::SharedCtor() {
-  ::memset(&query_id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&affected_rows_count_) -
-      reinterpret_cast<char*>(&query_id_)) + sizeof(affected_rows_count_));
+  _cached_size_ = 0;
+  query_id_ = NULL;
+  row_count_ = 0;
+  def_ = NULL;
+  affected_rows_count_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 QueryData::~QueryData() {
-  // @@protoc_insertion_point(destructor:exec.shared.QueryData)
   SharedDtor();
 }
 
 void QueryData::SharedDtor() {
-  if (this != internal_default_instance()) delete query_id_;
-  if (this != internal_default_instance()) delete def_;
+  if (this != default_instance_) {
+    delete query_id_;
+    delete def_;
+  }
 }
 
 void QueryData::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* QueryData::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return QueryData_descriptor_;
 }
 
 const QueryData& QueryData::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_QueryData.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+QueryData* QueryData::default_instance_ = NULL;
+
+QueryData* QueryData::New() const {
+  return new QueryData;
+}
 
 void QueryData::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.QueryData)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(query_id_ != NULL);
-      query_id_->Clear();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_query_id()) {
+      if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(def_ != NULL);
-      def_->Clear();
+    row_count_ = 0;
+    if (has_def()) {
+      if (def_ != NULL) def_->::exec::shared::RecordBatchDef::Clear();
     }
+    affected_rows_count_ = 0;
   }
-  if (cached_has_bits & 12u) {
-    ::memset(&row_count_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&affected_rows_count_) -
-        reinterpret_cast<char*>(&row_count_)) + sizeof(affected_rows_count_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool QueryData::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.QueryData)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.QueryId query_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_query_id()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_row_count;
         break;
       }
 
       // optional int32 row_count = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_row_count();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_row_count:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &row_count_)));
+          set_has_row_count();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(26)) goto parse_def;
         break;
       }
 
       // optional .exec.shared.RecordBatchDef def = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(26u /* 26 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_def:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_def()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_affected_rows_count;
         break;
       }
 
       // optional int32 affected_rows_count = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_affected_rows_count();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_affected_rows_count:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &affected_rows_count_)));
+          set_has_affected_rows_count();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.QueryData)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.QueryData)
-  return false;
 #undef DO_
 }
 
 void QueryData::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.QueryData)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_query_id(), output);
+      1, this->query_id(), output);
   }
 
   // optional int32 row_count = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_row_count()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(2, this->row_count(), output);
   }
 
   // optional .exec.shared.RecordBatchDef def = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_def()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      3, this->_internal_def(), output);
+      3, this->def(), output);
   }
 
   // optional int32 affected_rows_count = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_affected_rows_count()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->affected_rows_count(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.QueryData)
 }
 
-::google::protobuf::uint8* QueryData::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.QueryData)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* QueryData::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.QueryId query_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_query_id()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_query_id(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->query_id(), target);
   }
 
   // optional int32 row_count = 2;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_row_count()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(2, this->row_count(), target);
   }
 
   // optional .exec.shared.RecordBatchDef def = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_def()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        3, this->_internal_def(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        3, this->def(), target);
   }
 
   // optional int32 affected_rows_count = 4;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_affected_rows_count()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->affected_rows_count(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.QueryData)
   return target;
 }
 
-size_t QueryData::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.QueryData)
-  size_t total_size = 0;
+int QueryData::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 15u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.shared.QueryId query_id = 1;
     if (has_query_id()) {
       total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *query_id_);
-    }
-
-    // optional .exec.shared.RecordBatchDef def = 3;
-    if (has_def()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *def_);
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->query_id());
     }
 
     // optional int32 row_count = 2;
@@ -5681,6 +4989,13 @@
           this->row_count());
     }
 
+    // optional .exec.shared.RecordBatchDef def = 3;
+    if (has_def()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->def());
+    }
+
     // optional int32 affected_rows_count = 4;
     if (has_affected_rows_count()) {
       total_size += 1 +
@@ -5689,102 +5004,91 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void QueryData::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.QueryData)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const QueryData* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const QueryData>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const QueryData*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.QueryData)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.QueryData)
     MergeFrom(*source);
   }
 }
 
 void QueryData::MergeFrom(const QueryData& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.QueryData)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 15u) {
-    if (cached_has_bits & 0x00000001u) {
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_query_id()) {
       mutable_query_id()->::exec::shared::QueryId::MergeFrom(from.query_id());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_row_count()) {
+      set_row_count(from.row_count());
+    }
+    if (from.has_def()) {
       mutable_def()->::exec::shared::RecordBatchDef::MergeFrom(from.def());
     }
-    if (cached_has_bits & 0x00000004u) {
-      row_count_ = from.row_count_;
+    if (from.has_affected_rows_count()) {
+      set_affected_rows_count(from.affected_rows_count());
     }
-    if (cached_has_bits & 0x00000008u) {
-      affected_rows_count_ = from.affected_rows_count_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void QueryData::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.QueryData)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void QueryData::CopyFrom(const QueryData& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.QueryData)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool QueryData::IsInitialized() const {
+
   return true;
 }
 
 void QueryData::Swap(QueryData* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void QueryData::InternalSwap(QueryData* other) {
-  using std::swap;
-  swap(query_id_, other->query_id_);
-  swap(def_, other->def_);
-  swap(row_count_, other->row_count_);
-  swap(affected_rows_count_, other->affected_rows_count_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(query_id_, other->query_id_);
+    std::swap(row_count_, other->row_count_);
+    std::swap(def_, other->def_);
+    std::swap(affected_rows_count_, other->affected_rows_count_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata QueryData::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = QueryData_descriptor_;
+  metadata.reflection = QueryData_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void QueryInfo::InitAsDefaultInstance() {
-  ::exec::shared::_QueryInfo_default_instance_._instance.get_mutable()->foreman_ = const_cast< ::exec::DrillbitEndpoint*>(
-      ::exec::DrillbitEndpoint::internal_default_instance());
-}
-::google::protobuf::internal::ExplicitlyConstructed<::std::string> QueryInfo::_i_give_permission_to_break_this_code_default_user_;
-void QueryInfo::clear_foreman() {
-  if (foreman_ != NULL) foreman_->Clear();
-  clear_has_foreman();
-}
-::google::protobuf::internal::ExplicitlyConstructed<::std::string> QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_;
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+::std::string* QueryInfo::_default_user_ = NULL;
+::std::string* QueryInfo::_default_queue_name_ = NULL;
+#ifndef _MSC_VER
 const int QueryInfo::kQueryFieldNumber;
 const int QueryInfo::kStartFieldNumber;
 const int QueryInfo::kStateFieldNumber;
@@ -5793,162 +5097,155 @@
 const int QueryInfo::kOptionsJsonFieldNumber;
 const int QueryInfo::kTotalCostFieldNumber;
 const int QueryInfo::kQueueNameFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 QueryInfo::QueryInfo()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_QueryInfo.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.QueryInfo)
 }
+
+void QueryInfo::InitAsDefaultInstance() {
+  foreman_ = const_cast< ::exec::DrillbitEndpoint*>(&::exec::DrillbitEndpoint::default_instance());
+}
+
 QueryInfo::QueryInfo(const QueryInfo& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_query()) {
-    query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.query_);
-  }
-  user_.UnsafeSetDefault(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get());
-  if (from.has_user()) {
-    user_.AssignWithDefault(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get(), from.user_);
-  }
-  options_json_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_options_json()) {
-    options_json_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.options_json_);
-  }
-  queue_name_.UnsafeSetDefault(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get());
-  if (from.has_queue_name()) {
-    queue_name_.AssignWithDefault(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get(), from.queue_name_);
-  }
-  if (from.has_foreman()) {
-    foreman_ = new ::exec::DrillbitEndpoint(*from.foreman_);
-  } else {
-    foreman_ = NULL;
-  }
-  ::memcpy(&start_, &from.start_,
-    static_cast<size_t>(reinterpret_cast<char*>(&state_) -
-    reinterpret_cast<char*>(&start_)) + sizeof(state_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.QueryInfo)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void QueryInfo::SharedCtor() {
-  query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  user_.UnsafeSetDefault(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get());
-  options_json_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  queue_name_.UnsafeSetDefault(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get());
-  ::memset(&foreman_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&state_) -
-      reinterpret_cast<char*>(&foreman_)) + sizeof(state_));
+  _cached_size_ = 0;
+  query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  start_ = GOOGLE_LONGLONG(0);
+  state_ = 0;
+  user_ = const_cast< ::std::string*>(_default_user_);
+  foreman_ = NULL;
+  options_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  total_cost_ = 0;
+  queue_name_ = const_cast< ::std::string*>(_default_queue_name_);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 QueryInfo::~QueryInfo() {
-  // @@protoc_insertion_point(destructor:exec.shared.QueryInfo)
   SharedDtor();
 }
 
 void QueryInfo::SharedDtor() {
-  query_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  user_.DestroyNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get());
-  options_json_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  queue_name_.DestroyNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get());
-  if (this != internal_default_instance()) delete foreman_;
+  if (query_ != &::google::protobuf::internal::kEmptyString) {
+    delete query_;
+  }
+  if (user_ != _default_user_) {
+    delete user_;
+  }
+  if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+    delete options_json_;
+  }
+  if (queue_name_ != _default_queue_name_) {
+    delete queue_name_;
+  }
+  if (this != default_instance_) {
+    delete foreman_;
+  }
 }
 
 void QueryInfo::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* QueryInfo::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return QueryInfo_descriptor_;
 }
 
 const QueryInfo& QueryInfo::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_QueryInfo.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+QueryInfo* QueryInfo::default_instance_ = NULL;
+
+QueryInfo* QueryInfo::New() const {
+  return new QueryInfo;
+}
 
 void QueryInfo::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.QueryInfo)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 31u) {
-    if (cached_has_bits & 0x00000001u) {
-      query_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_query()) {
+      if (query_ != &::google::protobuf::internal::kEmptyString) {
+        query_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      user_.UnsafeMutablePointer()->assign(*&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get());
+    start_ = GOOGLE_LONGLONG(0);
+    state_ = 0;
+    if (has_user()) {
+      if (user_ != _default_user_) {
+        user_->assign(*_default_user_);
+      }
     }
-    if (cached_has_bits & 0x00000004u) {
-      options_json_.ClearNonDefaultToEmptyNoArena();
+    if (has_foreman()) {
+      if (foreman_ != NULL) foreman_->::exec::DrillbitEndpoint::Clear();
     }
-    if (cached_has_bits & 0x00000008u) {
-      queue_name_.UnsafeMutablePointer()->assign(*&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get());
+    if (has_options_json()) {
+      if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+        options_json_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000010u) {
-      GOOGLE_DCHECK(foreman_ != NULL);
-      foreman_->Clear();
+    total_cost_ = 0;
+    if (has_queue_name()) {
+      if (queue_name_ != _default_queue_name_) {
+        queue_name_->assign(*_default_queue_name_);
+      }
     }
   }
-  if (cached_has_bits & 224u) {
-    ::memset(&start_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&state_) -
-        reinterpret_cast<char*>(&start_)) + sizeof(state_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool QueryInfo::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.QueryInfo)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string query = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_query()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->query().data(), static_cast<int>(this->query().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryInfo.query");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->query().data(), this->query().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_start;
         break;
       }
 
       // optional int64 start = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_start();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_start:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &start_)));
+          set_has_start();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_state;
         break;
       }
 
       // optional .exec.shared.QueryResult.QueryState state = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_state:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -5956,278 +5253,254 @@
           if (::exec::shared::QueryResult_QueryState_IsValid(value)) {
             set_state(static_cast< ::exec::shared::QueryResult_QueryState >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                3, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(3, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_user;
         break;
       }
 
       // optional string user = 4 [default = "-"];
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_user:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_user()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->user().data(), static_cast<int>(this->user().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryInfo.user");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->user().data(), this->user().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(42)) goto parse_foreman;
         break;
       }
 
       // optional .exec.DrillbitEndpoint foreman = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_foreman:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_foreman()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_options_json;
         break;
       }
 
       // optional string options_json = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_options_json:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_options_json()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->options_json().data(), static_cast<int>(this->options_json().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryInfo.options_json");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->options_json().data(), this->options_json().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(57)) goto parse_total_cost;
         break;
       }
 
       // optional double total_cost = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(57u /* 57 & 0xFF */)) {
-          set_has_total_cost();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED64) {
+         parse_total_cost:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>(
                  input, &total_cost_)));
+          set_has_total_cost();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(66)) goto parse_queue_name;
         break;
       }
 
       // optional string queue_name = 8 [default = "-"];
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(66u /* 66 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_queue_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_queue_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->queue_name().data(), static_cast<int>(this->queue_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryInfo.queue_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->queue_name().data(), this->queue_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.QueryInfo)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.QueryInfo)
-  return false;
 #undef DO_
 }
 
 void QueryInfo::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.QueryInfo)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string query = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->query().data(), static_cast<int>(this->query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryInfo.query");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->query().data(), this->query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->query(), output);
   }
 
   // optional int64 start = 2;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_start()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(2, this->start(), output);
   }
 
   // optional .exec.shared.QueryResult.QueryState state = 3;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_state()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       3, this->state(), output);
   }
 
   // optional string user = 4 [default = "-"];
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->user().data(), static_cast<int>(this->user().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryInfo.user");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_user()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->user().data(), this->user().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       4, this->user(), output);
   }
 
   // optional .exec.DrillbitEndpoint foreman = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_foreman()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      5, this->_internal_foreman(), output);
+      5, this->foreman(), output);
   }
 
   // optional string options_json = 6;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->options_json().data(), static_cast<int>(this->options_json().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryInfo.options_json");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_options_json()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->options_json().data(), this->options_json().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       6, this->options_json(), output);
   }
 
   // optional double total_cost = 7;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_total_cost()) {
     ::google::protobuf::internal::WireFormatLite::WriteDouble(7, this->total_cost(), output);
   }
 
   // optional string queue_name = 8 [default = "-"];
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->queue_name().data(), static_cast<int>(this->queue_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryInfo.queue_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_queue_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->queue_name().data(), this->queue_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       8, this->queue_name(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.QueryInfo)
 }
 
-::google::protobuf::uint8* QueryInfo::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.QueryInfo)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* QueryInfo::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string query = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->query().data(), static_cast<int>(this->query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryInfo.query");
+  if (has_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->query().data(), this->query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->query(), target);
   }
 
   // optional int64 start = 2;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_start()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(2, this->start(), target);
   }
 
   // optional .exec.shared.QueryResult.QueryState state = 3;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_state()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       3, this->state(), target);
   }
 
   // optional string user = 4 [default = "-"];
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->user().data(), static_cast<int>(this->user().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryInfo.user");
+  if (has_user()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->user().data(), this->user().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         4, this->user(), target);
   }
 
   // optional .exec.DrillbitEndpoint foreman = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_foreman()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        5, this->_internal_foreman(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        5, this->foreman(), target);
   }
 
   // optional string options_json = 6;
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->options_json().data(), static_cast<int>(this->options_json().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryInfo.options_json");
+  if (has_options_json()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->options_json().data(), this->options_json().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         6, this->options_json(), target);
   }
 
   // optional double total_cost = 7;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_total_cost()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(7, this->total_cost(), target);
   }
 
   // optional string queue_name = 8 [default = "-"];
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->queue_name().data(), static_cast<int>(this->queue_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryInfo.queue_name");
+  if (has_queue_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->queue_name().data(), this->queue_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         8, this->queue_name(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.QueryInfo)
   return target;
 }
 
-size_t QueryInfo::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.QueryInfo)
-  size_t total_size = 0;
+int QueryInfo::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 255u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string query = 1;
     if (has_query()) {
       total_size += 1 +
@@ -6235,34 +5508,6 @@
           this->query());
     }
 
-    // optional string user = 4 [default = "-"];
-    if (has_user()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->user());
-    }
-
-    // optional string options_json = 6;
-    if (has_options_json()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->options_json());
-    }
-
-    // optional string queue_name = 8 [default = "-"];
-    if (has_queue_name()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->queue_name());
-    }
-
-    // optional .exec.DrillbitEndpoint foreman = 5;
-    if (has_foreman()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *foreman_);
-    }
-
     // optional int64 start = 2;
     if (has_start()) {
       total_size += 1 +
@@ -6270,140 +5515,147 @@
           this->start());
     }
 
-    // optional double total_cost = 7;
-    if (has_total_cost()) {
-      total_size += 1 + 8;
-    }
-
     // optional .exec.shared.QueryResult.QueryState state = 3;
     if (has_state()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->state());
     }
 
+    // optional string user = 4 [default = "-"];
+    if (has_user()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->user());
+    }
+
+    // optional .exec.DrillbitEndpoint foreman = 5;
+    if (has_foreman()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->foreman());
+    }
+
+    // optional string options_json = 6;
+    if (has_options_json()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->options_json());
+    }
+
+    // optional double total_cost = 7;
+    if (has_total_cost()) {
+      total_size += 1 + 8;
+    }
+
+    // optional string queue_name = 8 [default = "-"];
+    if (has_queue_name()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->queue_name());
+    }
+
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void QueryInfo::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.QueryInfo)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const QueryInfo* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const QueryInfo>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const QueryInfo*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.QueryInfo)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.QueryInfo)
     MergeFrom(*source);
   }
 }
 
 void QueryInfo::MergeFrom(const QueryInfo& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.QueryInfo)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_query();
-      query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.query_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_query()) {
+      set_query(from.query());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_user();
-      user_.AssignWithDefault(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get(), from.user_);
+    if (from.has_start()) {
+      set_start(from.start());
     }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_options_json();
-      options_json_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.options_json_);
+    if (from.has_state()) {
+      set_state(from.state());
     }
-    if (cached_has_bits & 0x00000008u) {
-      set_has_queue_name();
-      queue_name_.AssignWithDefault(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get(), from.queue_name_);
+    if (from.has_user()) {
+      set_user(from.user());
     }
-    if (cached_has_bits & 0x00000010u) {
+    if (from.has_foreman()) {
       mutable_foreman()->::exec::DrillbitEndpoint::MergeFrom(from.foreman());
     }
-    if (cached_has_bits & 0x00000020u) {
-      start_ = from.start_;
+    if (from.has_options_json()) {
+      set_options_json(from.options_json());
     }
-    if (cached_has_bits & 0x00000040u) {
-      total_cost_ = from.total_cost_;
+    if (from.has_total_cost()) {
+      set_total_cost(from.total_cost());
     }
-    if (cached_has_bits & 0x00000080u) {
-      state_ = from.state_;
+    if (from.has_queue_name()) {
+      set_queue_name(from.queue_name());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void QueryInfo::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.QueryInfo)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void QueryInfo::CopyFrom(const QueryInfo& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.QueryInfo)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool QueryInfo::IsInitialized() const {
+
   return true;
 }
 
 void QueryInfo::Swap(QueryInfo* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void QueryInfo::InternalSwap(QueryInfo* other) {
-  using std::swap;
-  query_.Swap(&other->query_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  user_.Swap(&other->user_, &::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get(),
-    GetArenaNoVirtual());
-  options_json_.Swap(&other->options_json_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  queue_name_.Swap(&other->queue_name_, &::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get(),
-    GetArenaNoVirtual());
-  swap(foreman_, other->foreman_);
-  swap(start_, other->start_);
-  swap(total_cost_, other->total_cost_);
-  swap(state_, other->state_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(query_, other->query_);
+    std::swap(start_, other->start_);
+    std::swap(state_, other->state_);
+    std::swap(user_, other->user_);
+    std::swap(foreman_, other->foreman_);
+    std::swap(options_json_, other->options_json_);
+    std::swap(total_cost_, other->total_cost_);
+    std::swap(queue_name_, other->queue_name_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata QueryInfo::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = QueryInfo_descriptor_;
+  metadata.reflection = QueryInfo_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void QueryProfile::InitAsDefaultInstance() {
-  ::exec::shared::_QueryProfile_default_instance_._instance.get_mutable()->id_ = const_cast< ::exec::shared::QueryId*>(
-      ::exec::shared::QueryId::internal_default_instance());
-  ::exec::shared::_QueryProfile_default_instance_._instance.get_mutable()->foreman_ = const_cast< ::exec::DrillbitEndpoint*>(
-      ::exec::DrillbitEndpoint::internal_default_instance());
-}
-void QueryProfile::clear_foreman() {
-  if (foreman_ != NULL) foreman_->Clear();
-  clear_has_foreman();
-}
-::google::protobuf::internal::ExplicitlyConstructed<::std::string> QueryProfile::_i_give_permission_to_break_this_code_default_user_;
-::google::protobuf::internal::ExplicitlyConstructed<::std::string> QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_;
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+::std::string* QueryProfile::_default_user_ = NULL;
+::std::string* QueryProfile::_default_queue_name_ = NULL;
+#ifndef _MSC_VER
 const int QueryProfile::kIdFieldNumber;
 const int QueryProfile::kTypeFieldNumber;
 const int QueryProfile::kStartFieldNumber;
@@ -6427,219 +5679,215 @@
 const int QueryProfile::kQueueNameFieldNumber;
 const int QueryProfile::kQueryIdFieldNumber;
 const int QueryProfile::kAutoLimitFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 QueryProfile::QueryProfile()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_QueryProfile.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.QueryProfile)
 }
+
+void QueryProfile::InitAsDefaultInstance() {
+  id_ = const_cast< ::exec::shared::QueryId*>(&::exec::shared::QueryId::default_instance());
+  foreman_ = const_cast< ::exec::DrillbitEndpoint*>(&::exec::DrillbitEndpoint::default_instance());
+}
+
 QueryProfile::QueryProfile(const QueryProfile& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      fragment_profile_(from.fragment_profile_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_query()) {
-    query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.query_);
-  }
-  plan_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_plan()) {
-    plan_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.plan_);
-  }
-  user_.UnsafeSetDefault(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get());
-  if (from.has_user()) {
-    user_.AssignWithDefault(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get(), from.user_);
-  }
-  error_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_error()) {
-    error_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.error_);
-  }
-  verboseerror_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_verboseerror()) {
-    verboseerror_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.verboseerror_);
-  }
-  error_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_error_id()) {
-    error_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.error_id_);
-  }
-  error_node_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_error_node()) {
-    error_node_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.error_node_);
-  }
-  options_json_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_options_json()) {
-    options_json_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.options_json_);
-  }
-  queue_name_.UnsafeSetDefault(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get());
-  if (from.has_queue_name()) {
-    queue_name_.AssignWithDefault(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get(), from.queue_name_);
-  }
-  queryid_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_queryid()) {
-    queryid_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.queryid_);
-  }
-  if (from.has_id()) {
-    id_ = new ::exec::shared::QueryId(*from.id_);
-  } else {
-    id_ = NULL;
-  }
-  if (from.has_foreman()) {
-    foreman_ = new ::exec::DrillbitEndpoint(*from.foreman_);
-  } else {
-    foreman_ = NULL;
-  }
-  ::memcpy(&start_, &from.start_,
-    static_cast<size_t>(reinterpret_cast<char*>(&type_) -
-    reinterpret_cast<char*>(&start_)) + sizeof(type_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.QueryProfile)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void QueryProfile::SharedCtor() {
-  query_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  plan_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  user_.UnsafeSetDefault(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get());
-  error_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  verboseerror_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  error_id_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  error_node_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  options_json_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  queue_name_.UnsafeSetDefault(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get());
-  queryid_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  ::memset(&id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&total_cost_) -
-      reinterpret_cast<char*>(&id_)) + sizeof(total_cost_));
+  _cached_size_ = 0;
+  id_ = NULL;
   type_ = 1;
+  start_ = GOOGLE_LONGLONG(0);
+  end_ = GOOGLE_LONGLONG(0);
+  query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  plan_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  foreman_ = NULL;
+  state_ = 0;
+  total_fragments_ = 0;
+  finished_fragments_ = 0;
+  user_ = const_cast< ::std::string*>(_default_user_);
+  error_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  verboseerror_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  error_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  error_node_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  options_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  planend_ = GOOGLE_LONGLONG(0);
+  queuewaitend_ = GOOGLE_LONGLONG(0);
+  total_cost_ = 0;
+  queue_name_ = const_cast< ::std::string*>(_default_queue_name_);
+  queryid_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  autolimit_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 QueryProfile::~QueryProfile() {
-  // @@protoc_insertion_point(destructor:exec.shared.QueryProfile)
   SharedDtor();
 }
 
 void QueryProfile::SharedDtor() {
-  query_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  plan_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  user_.DestroyNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get());
-  error_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  verboseerror_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  error_id_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  error_node_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  options_json_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  queue_name_.DestroyNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get());
-  queryid_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (this != internal_default_instance()) delete id_;
-  if (this != internal_default_instance()) delete foreman_;
+  if (query_ != &::google::protobuf::internal::kEmptyString) {
+    delete query_;
+  }
+  if (plan_ != &::google::protobuf::internal::kEmptyString) {
+    delete plan_;
+  }
+  if (user_ != _default_user_) {
+    delete user_;
+  }
+  if (error_ != &::google::protobuf::internal::kEmptyString) {
+    delete error_;
+  }
+  if (verboseerror_ != &::google::protobuf::internal::kEmptyString) {
+    delete verboseerror_;
+  }
+  if (error_id_ != &::google::protobuf::internal::kEmptyString) {
+    delete error_id_;
+  }
+  if (error_node_ != &::google::protobuf::internal::kEmptyString) {
+    delete error_node_;
+  }
+  if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+    delete options_json_;
+  }
+  if (queue_name_ != _default_queue_name_) {
+    delete queue_name_;
+  }
+  if (queryid_ != &::google::protobuf::internal::kEmptyString) {
+    delete queryid_;
+  }
+  if (this != default_instance_) {
+    delete id_;
+    delete foreman_;
+  }
 }
 
 void QueryProfile::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* QueryProfile::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return QueryProfile_descriptor_;
 }
 
 const QueryProfile& QueryProfile::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_QueryProfile.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+QueryProfile* QueryProfile::default_instance_ = NULL;
+
+QueryProfile* QueryProfile::New() const {
+  return new QueryProfile;
+}
 
 void QueryProfile::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.QueryProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  fragment_profile_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      query_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_id()) {
+      if (id_ != NULL) id_->::exec::shared::QueryId::Clear();
     }
-    if (cached_has_bits & 0x00000002u) {
-      plan_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000004u) {
-      user_.UnsafeMutablePointer()->assign(*&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get());
-    }
-    if (cached_has_bits & 0x00000008u) {
-      error_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000010u) {
-      verboseerror_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000020u) {
-      error_id_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000040u) {
-      error_node_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000080u) {
-      options_json_.ClearNonDefaultToEmptyNoArena();
-    }
-  }
-  if (cached_has_bits & 3840u) {
-    if (cached_has_bits & 0x00000100u) {
-      queue_name_.UnsafeMutablePointer()->assign(*&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get());
-    }
-    if (cached_has_bits & 0x00000200u) {
-      queryid_.ClearNonDefaultToEmptyNoArena();
-    }
-    if (cached_has_bits & 0x00000400u) {
-      GOOGLE_DCHECK(id_ != NULL);
-      id_->Clear();
-    }
-    if (cached_has_bits & 0x00000800u) {
-      GOOGLE_DCHECK(foreman_ != NULL);
-      foreman_->Clear();
-    }
-  }
-  if (cached_has_bits & 61440u) {
-    ::memset(&start_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&total_fragments_) -
-        reinterpret_cast<char*>(&start_)) + sizeof(total_fragments_));
-  }
-  if (cached_has_bits & 4128768u) {
-    ::memset(&finished_fragments_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&total_cost_) -
-        reinterpret_cast<char*>(&finished_fragments_)) + sizeof(total_cost_));
     type_ = 1;
+    start_ = GOOGLE_LONGLONG(0);
+    end_ = GOOGLE_LONGLONG(0);
+    if (has_query()) {
+      if (query_ != &::google::protobuf::internal::kEmptyString) {
+        query_->clear();
+      }
+    }
+    if (has_plan()) {
+      if (plan_ != &::google::protobuf::internal::kEmptyString) {
+        plan_->clear();
+      }
+    }
+    if (has_foreman()) {
+      if (foreman_ != NULL) foreman_->::exec::DrillbitEndpoint::Clear();
+    }
+    state_ = 0;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    total_fragments_ = 0;
+    finished_fragments_ = 0;
+    if (has_user()) {
+      if (user_ != _default_user_) {
+        user_->assign(*_default_user_);
+      }
+    }
+    if (has_error()) {
+      if (error_ != &::google::protobuf::internal::kEmptyString) {
+        error_->clear();
+      }
+    }
+    if (has_verboseerror()) {
+      if (verboseerror_ != &::google::protobuf::internal::kEmptyString) {
+        verboseerror_->clear();
+      }
+    }
+    if (has_error_id()) {
+      if (error_id_ != &::google::protobuf::internal::kEmptyString) {
+        error_id_->clear();
+      }
+    }
+    if (has_error_node()) {
+      if (error_node_ != &::google::protobuf::internal::kEmptyString) {
+        error_node_->clear();
+      }
+    }
+  }
+  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
+    if (has_options_json()) {
+      if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+        options_json_->clear();
+      }
+    }
+    planend_ = GOOGLE_LONGLONG(0);
+    queuewaitend_ = GOOGLE_LONGLONG(0);
+    total_cost_ = 0;
+    if (has_queue_name()) {
+      if (queue_name_ != _default_queue_name_) {
+        queue_name_->assign(*_default_queue_name_);
+      }
+    }
+    if (has_queryid()) {
+      if (queryid_ != &::google::protobuf::internal::kEmptyString) {
+        queryid_->clear();
+      }
+    }
+    autolimit_ = 0;
+  }
+  fragment_profile_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool QueryProfile::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.QueryProfile)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(16383u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.QueryId id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_id()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_type;
         break;
       }
 
       // optional .exec.shared.QueryType type = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_type:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -6647,91 +5895,100 @@
           if (::exec::shared::QueryType_IsValid(value)) {
             set_type(static_cast< ::exec::shared::QueryType >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                2, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(2, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_start;
         break;
       }
 
       // optional int64 start = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_start();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_start:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &start_)));
+          set_has_start();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_end;
         break;
       }
 
       // optional int64 end = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_end();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_end:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &end_)));
+          set_has_end();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(42)) goto parse_query;
         break;
       }
 
       // optional string query = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(42u /* 42 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_query:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_query()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->query().data(), static_cast<int>(this->query().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.query");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->query().data(), this->query().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(50)) goto parse_plan;
         break;
       }
 
       // optional string plan = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(50u /* 50 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_plan:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_plan()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->plan().data(), static_cast<int>(this->plan().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.plan");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->plan().data(), this->plan().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(58)) goto parse_foreman;
         break;
       }
 
       // optional .exec.DrillbitEndpoint foreman = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(58u /* 58 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_foreman:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_foreman()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(64)) goto parse_state;
         break;
       }
 
       // optional .exec.shared.QueryResult.QueryState state = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(64u /* 64 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_state:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -6739,667 +5996,659 @@
           if (::exec::shared::QueryResult_QueryState_IsValid(value)) {
             set_state(static_cast< ::exec::shared::QueryResult_QueryState >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                8, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(8, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(72)) goto parse_total_fragments;
         break;
       }
 
       // optional int32 total_fragments = 9;
       case 9: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(72u /* 72 & 0xFF */)) {
-          set_has_total_fragments();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_total_fragments:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &total_fragments_)));
+          set_has_total_fragments();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(80)) goto parse_finished_fragments;
         break;
       }
 
       // optional int32 finished_fragments = 10;
       case 10: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(80u /* 80 & 0xFF */)) {
-          set_has_finished_fragments();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_finished_fragments:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &finished_fragments_)));
+          set_has_finished_fragments();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(90)) goto parse_fragment_profile;
         break;
       }
 
       // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
       case 11: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(90u /* 90 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_fragment_profile:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_fragment_profile()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(90)) goto parse_fragment_profile;
+        if (input->ExpectTag(98)) goto parse_user;
         break;
       }
 
       // optional string user = 12 [default = "-"];
       case 12: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(98u /* 98 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_user:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_user()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->user().data(), static_cast<int>(this->user().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.user");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->user().data(), this->user().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(106)) goto parse_error;
         break;
       }
 
       // optional string error = 13;
       case 13: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(106u /* 106 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_error()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->error().data(), static_cast<int>(this->error().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.error");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->error().data(), this->error().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(114)) goto parse_verboseError;
         break;
       }
 
       // optional string verboseError = 14;
       case 14: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(114u /* 114 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_verboseError:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_verboseerror()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->verboseerror().data(), static_cast<int>(this->verboseerror().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.verboseError");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->verboseerror().data(), this->verboseerror().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(122)) goto parse_error_id;
         break;
       }
 
       // optional string error_id = 15;
       case 15: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(122u /* 122 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error_id:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_error_id()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->error_id().data(), static_cast<int>(this->error_id().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.error_id");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->error_id().data(), this->error_id().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(130)) goto parse_error_node;
         break;
       }
 
       // optional string error_node = 16;
       case 16: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(130u /* 130 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error_node:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_error_node()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->error_node().data(), static_cast<int>(this->error_node().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.error_node");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->error_node().data(), this->error_node().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(138)) goto parse_options_json;
         break;
       }
 
       // optional string options_json = 17;
       case 17: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(138u /* 138 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_options_json:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_options_json()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->options_json().data(), static_cast<int>(this->options_json().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.options_json");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->options_json().data(), this->options_json().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(144)) goto parse_planEnd;
         break;
       }
 
       // optional int64 planEnd = 18;
       case 18: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(144u /* 144 & 0xFF */)) {
-          set_has_planend();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_planEnd:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &planend_)));
+          set_has_planend();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(152)) goto parse_queueWaitEnd;
         break;
       }
 
       // optional int64 queueWaitEnd = 19;
       case 19: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(152u /* 152 & 0xFF */)) {
-          set_has_queuewaitend();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_queueWaitEnd:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &queuewaitend_)));
+          set_has_queuewaitend();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(161)) goto parse_total_cost;
         break;
       }
 
       // optional double total_cost = 20;
       case 20: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(161u /* 161 & 0xFF */)) {
-          set_has_total_cost();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED64) {
+         parse_total_cost:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>(
                  input, &total_cost_)));
+          set_has_total_cost();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(170)) goto parse_queue_name;
         break;
       }
 
       // optional string queue_name = 21 [default = "-"];
       case 21: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(170u /* 170 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_queue_name:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_queue_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->queue_name().data(), static_cast<int>(this->queue_name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.queue_name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->queue_name().data(), this->queue_name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(178)) goto parse_queryId;
         break;
       }
 
       // optional string queryId = 22;
       case 22: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(178u /* 178 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_queryId:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_queryid()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->queryid().data(), static_cast<int>(this->queryid().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.QueryProfile.queryId");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->queryid().data(), this->queryid().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(184)) goto parse_autoLimit;
         break;
       }
 
       // optional int32 autoLimit = 23;
       case 23: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(184u /* 184 & 0xFF */)) {
-          set_has_autolimit();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_autoLimit:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &autolimit_)));
+          set_has_autolimit();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.QueryProfile)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.QueryProfile)
-  return false;
 #undef DO_
 }
 
 void QueryProfile::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.QueryProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.QueryId id = 1;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1, this->_internal_id(), output);
+      1, this->id(), output);
   }
 
   // optional .exec.shared.QueryType type = 2;
-  if (cached_has_bits & 0x00200000u) {
+  if (has_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       2, this->type(), output);
   }
 
   // optional int64 start = 3;
-  if (cached_has_bits & 0x00001000u) {
+  if (has_start()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(3, this->start(), output);
   }
 
   // optional int64 end = 4;
-  if (cached_has_bits & 0x00002000u) {
+  if (has_end()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(4, this->end(), output);
   }
 
   // optional string query = 5;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->query().data(), static_cast<int>(this->query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.query");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->query().data(), this->query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       5, this->query(), output);
   }
 
   // optional string plan = 6;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->plan().data(), static_cast<int>(this->plan().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.plan");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_plan()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->plan().data(), this->plan().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       6, this->plan(), output);
   }
 
   // optional .exec.DrillbitEndpoint foreman = 7;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_foreman()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      7, this->_internal_foreman(), output);
+      7, this->foreman(), output);
   }
 
   // optional .exec.shared.QueryResult.QueryState state = 8;
-  if (cached_has_bits & 0x00004000u) {
+  if (has_state()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       8, this->state(), output);
   }
 
   // optional int32 total_fragments = 9;
-  if (cached_has_bits & 0x00008000u) {
+  if (has_total_fragments()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(9, this->total_fragments(), output);
   }
 
   // optional int32 finished_fragments = 10;
-  if (cached_has_bits & 0x00010000u) {
+  if (has_finished_fragments()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(10, this->finished_fragments(), output);
   }
 
   // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragment_profile_size()); i < n; i++) {
+  for (int i = 0; i < this->fragment_profile_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      11,
-      this->fragment_profile(static_cast<int>(i)),
-      output);
+      11, this->fragment_profile(i), output);
   }
 
   // optional string user = 12 [default = "-"];
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->user().data(), static_cast<int>(this->user().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.user");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_user()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->user().data(), this->user().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       12, this->user(), output);
   }
 
   // optional string error = 13;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->error().data(), static_cast<int>(this->error().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.error");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_error()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->error().data(), this->error().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       13, this->error(), output);
   }
 
   // optional string verboseError = 14;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->verboseerror().data(), static_cast<int>(this->verboseerror().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.verboseError");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_verboseerror()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->verboseerror().data(), this->verboseerror().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       14, this->verboseerror(), output);
   }
 
   // optional string error_id = 15;
-  if (cached_has_bits & 0x00000020u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->error_id().data(), static_cast<int>(this->error_id().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.error_id");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_error_id()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->error_id().data(), this->error_id().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       15, this->error_id(), output);
   }
 
   // optional string error_node = 16;
-  if (cached_has_bits & 0x00000040u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->error_node().data(), static_cast<int>(this->error_node().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.error_node");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_error_node()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->error_node().data(), this->error_node().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       16, this->error_node(), output);
   }
 
   // optional string options_json = 17;
-  if (cached_has_bits & 0x00000080u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->options_json().data(), static_cast<int>(this->options_json().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.options_json");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_options_json()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->options_json().data(), this->options_json().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       17, this->options_json(), output);
   }
 
   // optional int64 planEnd = 18;
-  if (cached_has_bits & 0x00040000u) {
+  if (has_planend()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(18, this->planend(), output);
   }
 
   // optional int64 queueWaitEnd = 19;
-  if (cached_has_bits & 0x00080000u) {
+  if (has_queuewaitend()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(19, this->queuewaitend(), output);
   }
 
   // optional double total_cost = 20;
-  if (cached_has_bits & 0x00100000u) {
+  if (has_total_cost()) {
     ::google::protobuf::internal::WireFormatLite::WriteDouble(20, this->total_cost(), output);
   }
 
   // optional string queue_name = 21 [default = "-"];
-  if (cached_has_bits & 0x00000100u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->queue_name().data(), static_cast<int>(this->queue_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.queue_name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_queue_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->queue_name().data(), this->queue_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       21, this->queue_name(), output);
   }
 
   // optional string queryId = 22;
-  if (cached_has_bits & 0x00000200u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->queryid().data(), static_cast<int>(this->queryid().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.queryId");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_queryid()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->queryid().data(), this->queryid().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       22, this->queryid(), output);
   }
 
   // optional int32 autoLimit = 23;
-  if (cached_has_bits & 0x00020000u) {
+  if (has_autolimit()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(23, this->autolimit(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.QueryProfile)
 }
 
-::google::protobuf::uint8* QueryProfile::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.QueryProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* QueryProfile::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.QueryId id = 1;
-  if (cached_has_bits & 0x00000400u) {
+  if (has_id()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->_internal_id(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->id(), target);
   }
 
   // optional .exec.shared.QueryType type = 2;
-  if (cached_has_bits & 0x00200000u) {
+  if (has_type()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       2, this->type(), target);
   }
 
   // optional int64 start = 3;
-  if (cached_has_bits & 0x00001000u) {
+  if (has_start()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(3, this->start(), target);
   }
 
   // optional int64 end = 4;
-  if (cached_has_bits & 0x00002000u) {
+  if (has_end()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(4, this->end(), target);
   }
 
   // optional string query = 5;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->query().data(), static_cast<int>(this->query().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.query");
+  if (has_query()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->query().data(), this->query().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         5, this->query(), target);
   }
 
   // optional string plan = 6;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->plan().data(), static_cast<int>(this->plan().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.plan");
+  if (has_plan()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->plan().data(), this->plan().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         6, this->plan(), target);
   }
 
   // optional .exec.DrillbitEndpoint foreman = 7;
-  if (cached_has_bits & 0x00000800u) {
+  if (has_foreman()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        7, this->_internal_foreman(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        7, this->foreman(), target);
   }
 
   // optional .exec.shared.QueryResult.QueryState state = 8;
-  if (cached_has_bits & 0x00004000u) {
+  if (has_state()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       8, this->state(), target);
   }
 
   // optional int32 total_fragments = 9;
-  if (cached_has_bits & 0x00008000u) {
+  if (has_total_fragments()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(9, this->total_fragments(), target);
   }
 
   // optional int32 finished_fragments = 10;
-  if (cached_has_bits & 0x00010000u) {
+  if (has_finished_fragments()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(10, this->finished_fragments(), target);
   }
 
   // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->fragment_profile_size()); i < n; i++) {
+  for (int i = 0; i < this->fragment_profile_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        11, this->fragment_profile(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        11, this->fragment_profile(i), target);
   }
 
   // optional string user = 12 [default = "-"];
-  if (cached_has_bits & 0x00000004u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->user().data(), static_cast<int>(this->user().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.user");
+  if (has_user()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->user().data(), this->user().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         12, this->user(), target);
   }
 
   // optional string error = 13;
-  if (cached_has_bits & 0x00000008u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->error().data(), static_cast<int>(this->error().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.error");
+  if (has_error()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->error().data(), this->error().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         13, this->error(), target);
   }
 
   // optional string verboseError = 14;
-  if (cached_has_bits & 0x00000010u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->verboseerror().data(), static_cast<int>(this->verboseerror().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.verboseError");
+  if (has_verboseerror()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->verboseerror().data(), this->verboseerror().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         14, this->verboseerror(), target);
   }
 
   // optional string error_id = 15;
-  if (cached_has_bits & 0x00000020u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->error_id().data(), static_cast<int>(this->error_id().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.error_id");
+  if (has_error_id()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->error_id().data(), this->error_id().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         15, this->error_id(), target);
   }
 
   // optional string error_node = 16;
-  if (cached_has_bits & 0x00000040u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->error_node().data(), static_cast<int>(this->error_node().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.error_node");
+  if (has_error_node()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->error_node().data(), this->error_node().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         16, this->error_node(), target);
   }
 
   // optional string options_json = 17;
-  if (cached_has_bits & 0x00000080u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->options_json().data(), static_cast<int>(this->options_json().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.options_json");
+  if (has_options_json()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->options_json().data(), this->options_json().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         17, this->options_json(), target);
   }
 
   // optional int64 planEnd = 18;
-  if (cached_has_bits & 0x00040000u) {
+  if (has_planend()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(18, this->planend(), target);
   }
 
   // optional int64 queueWaitEnd = 19;
-  if (cached_has_bits & 0x00080000u) {
+  if (has_queuewaitend()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(19, this->queuewaitend(), target);
   }
 
   // optional double total_cost = 20;
-  if (cached_has_bits & 0x00100000u) {
+  if (has_total_cost()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(20, this->total_cost(), target);
   }
 
   // optional string queue_name = 21 [default = "-"];
-  if (cached_has_bits & 0x00000100u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->queue_name().data(), static_cast<int>(this->queue_name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.queue_name");
+  if (has_queue_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->queue_name().data(), this->queue_name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         21, this->queue_name(), target);
   }
 
   // optional string queryId = 22;
-  if (cached_has_bits & 0x00000200u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->queryid().data(), static_cast<int>(this->queryid().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.QueryProfile.queryId");
+  if (has_queryid()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->queryid().data(), this->queryid().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         22, this->queryid(), target);
   }
 
   // optional int32 autoLimit = 23;
-  if (cached_has_bits & 0x00020000u) {
+  if (has_autolimit()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(23, this->autolimit(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.QueryProfile)
   return target;
 }
 
-size_t QueryProfile::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.QueryProfile)
-  size_t total_size = 0;
+int QueryProfile::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
-  {
-    unsigned int count = static_cast<unsigned int>(this->fragment_profile_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->fragment_profile(static_cast<int>(i)));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional .exec.shared.QueryId id = 1;
+    if (has_id()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->id());
     }
-  }
 
-  if (_has_bits_[0 / 32] & 255u) {
+    // optional .exec.shared.QueryType type = 2;
+    if (has_type()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
+    }
+
+    // optional int64 start = 3;
+    if (has_start()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int64Size(
+          this->start());
+    }
+
+    // optional int64 end = 4;
+    if (has_end()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int64Size(
+          this->end());
+    }
+
     // optional string query = 5;
     if (has_query()) {
       total_size += 1 +
@@ -7414,6 +6663,35 @@
           this->plan());
     }
 
+    // optional .exec.DrillbitEndpoint foreman = 7;
+    if (has_foreman()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->foreman());
+    }
+
+    // optional .exec.shared.QueryResult.QueryState state = 8;
+    if (has_state()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::EnumSize(this->state());
+    }
+
+  }
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    // optional int32 total_fragments = 9;
+    if (has_total_fragments()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->total_fragments());
+    }
+
+    // optional int32 finished_fragments = 10;
+    if (has_finished_fragments()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->finished_fragments());
+    }
+
     // optional string user = 12 [default = "-"];
     if (has_user()) {
       total_size += 1 +
@@ -7449,6 +6727,8 @@
           this->error_node());
     }
 
+  }
+  if (_has_bits_[16 / 32] & (0xffu << (16 % 32))) {
     // optional string options_json = 17;
     if (has_options_json()) {
       total_size += 2 +
@@ -7456,79 +6736,6 @@
           this->options_json());
     }
 
-  }
-  if (_has_bits_[8 / 32] & 65280u) {
-    // optional string queue_name = 21 [default = "-"];
-    if (has_queue_name()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->queue_name());
-    }
-
-    // optional string queryId = 22;
-    if (has_queryid()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::StringSize(
-          this->queryid());
-    }
-
-    // optional .exec.shared.QueryId id = 1;
-    if (has_id()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *id_);
-    }
-
-    // optional .exec.DrillbitEndpoint foreman = 7;
-    if (has_foreman()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *foreman_);
-    }
-
-    // optional int64 start = 3;
-    if (has_start()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int64Size(
-          this->start());
-    }
-
-    // optional int64 end = 4;
-    if (has_end()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int64Size(
-          this->end());
-    }
-
-    // optional .exec.shared.QueryResult.QueryState state = 8;
-    if (has_state()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::EnumSize(this->state());
-    }
-
-    // optional int32 total_fragments = 9;
-    if (has_total_fragments()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int32Size(
-          this->total_fragments());
-    }
-
-  }
-  if (_has_bits_[16 / 32] & 4128768u) {
-    // optional int32 finished_fragments = 10;
-    if (has_finished_fragments()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int32Size(
-          this->finished_fragments());
-    }
-
-    // optional int32 autoLimit = 23;
-    if (has_autolimit()) {
-      total_size += 2 +
-        ::google::protobuf::internal::WireFormatLite::Int32Size(
-          this->autolimit());
-    }
-
     // optional int64 planEnd = 18;
     if (has_planend()) {
       total_size += 2 +
@@ -7548,481 +6755,445 @@
       total_size += 2 + 8;
     }
 
-    // optional .exec.shared.QueryType type = 2;
-    if (has_type()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
+    // optional string queue_name = 21 [default = "-"];
+    if (has_queue_name()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->queue_name());
+    }
+
+    // optional string queryId = 22;
+    if (has_queryid()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->queryid());
+    }
+
+    // optional int32 autoLimit = 23;
+    if (has_autolimit()) {
+      total_size += 2 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->autolimit());
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
+  total_size += 1 * this->fragment_profile_size();
+  for (int i = 0; i < this->fragment_profile_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->fragment_profile(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void QueryProfile::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.QueryProfile)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const QueryProfile* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const QueryProfile>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const QueryProfile*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.QueryProfile)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.QueryProfile)
     MergeFrom(*source);
   }
 }
 
 void QueryProfile::MergeFrom(const QueryProfile& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.QueryProfile)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   fragment_profile_.MergeFrom(from.fragment_profile_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_query();
-      query_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.query_);
-    }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_plan();
-      plan_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.plan_);
-    }
-    if (cached_has_bits & 0x00000004u) {
-      set_has_user();
-      user_.AssignWithDefault(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get(), from.user_);
-    }
-    if (cached_has_bits & 0x00000008u) {
-      set_has_error();
-      error_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.error_);
-    }
-    if (cached_has_bits & 0x00000010u) {
-      set_has_verboseerror();
-      verboseerror_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.verboseerror_);
-    }
-    if (cached_has_bits & 0x00000020u) {
-      set_has_error_id();
-      error_id_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.error_id_);
-    }
-    if (cached_has_bits & 0x00000040u) {
-      set_has_error_node();
-      error_node_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.error_node_);
-    }
-    if (cached_has_bits & 0x00000080u) {
-      set_has_options_json();
-      options_json_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.options_json_);
-    }
-  }
-  if (cached_has_bits & 65280u) {
-    if (cached_has_bits & 0x00000100u) {
-      set_has_queue_name();
-      queue_name_.AssignWithDefault(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get(), from.queue_name_);
-    }
-    if (cached_has_bits & 0x00000200u) {
-      set_has_queryid();
-      queryid_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.queryid_);
-    }
-    if (cached_has_bits & 0x00000400u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_id()) {
       mutable_id()->::exec::shared::QueryId::MergeFrom(from.id());
     }
-    if (cached_has_bits & 0x00000800u) {
+    if (from.has_type()) {
+      set_type(from.type());
+    }
+    if (from.has_start()) {
+      set_start(from.start());
+    }
+    if (from.has_end()) {
+      set_end(from.end());
+    }
+    if (from.has_query()) {
+      set_query(from.query());
+    }
+    if (from.has_plan()) {
+      set_plan(from.plan());
+    }
+    if (from.has_foreman()) {
       mutable_foreman()->::exec::DrillbitEndpoint::MergeFrom(from.foreman());
     }
-    if (cached_has_bits & 0x00001000u) {
-      start_ = from.start_;
+    if (from.has_state()) {
+      set_state(from.state());
     }
-    if (cached_has_bits & 0x00002000u) {
-      end_ = from.end_;
-    }
-    if (cached_has_bits & 0x00004000u) {
-      state_ = from.state_;
-    }
-    if (cached_has_bits & 0x00008000u) {
-      total_fragments_ = from.total_fragments_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 4128768u) {
-    if (cached_has_bits & 0x00010000u) {
-      finished_fragments_ = from.finished_fragments_;
+  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (from.has_total_fragments()) {
+      set_total_fragments(from.total_fragments());
     }
-    if (cached_has_bits & 0x00020000u) {
-      autolimit_ = from.autolimit_;
+    if (from.has_finished_fragments()) {
+      set_finished_fragments(from.finished_fragments());
     }
-    if (cached_has_bits & 0x00040000u) {
-      planend_ = from.planend_;
+    if (from.has_user()) {
+      set_user(from.user());
     }
-    if (cached_has_bits & 0x00080000u) {
-      queuewaitend_ = from.queuewaitend_;
+    if (from.has_error()) {
+      set_error(from.error());
     }
-    if (cached_has_bits & 0x00100000u) {
-      total_cost_ = from.total_cost_;
+    if (from.has_verboseerror()) {
+      set_verboseerror(from.verboseerror());
     }
-    if (cached_has_bits & 0x00200000u) {
-      type_ = from.type_;
+    if (from.has_error_id()) {
+      set_error_id(from.error_id());
     }
-    _has_bits_[0] |= cached_has_bits;
+    if (from.has_error_node()) {
+      set_error_node(from.error_node());
+    }
   }
+  if (from._has_bits_[16 / 32] & (0xffu << (16 % 32))) {
+    if (from.has_options_json()) {
+      set_options_json(from.options_json());
+    }
+    if (from.has_planend()) {
+      set_planend(from.planend());
+    }
+    if (from.has_queuewaitend()) {
+      set_queuewaitend(from.queuewaitend());
+    }
+    if (from.has_total_cost()) {
+      set_total_cost(from.total_cost());
+    }
+    if (from.has_queue_name()) {
+      set_queue_name(from.queue_name());
+    }
+    if (from.has_queryid()) {
+      set_queryid(from.queryid());
+    }
+    if (from.has_autolimit()) {
+      set_autolimit(from.autolimit());
+    }
+  }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void QueryProfile::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.QueryProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void QueryProfile::CopyFrom(const QueryProfile& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.QueryProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool QueryProfile::IsInitialized() const {
+
   return true;
 }
 
 void QueryProfile::Swap(QueryProfile* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void QueryProfile::InternalSwap(QueryProfile* other) {
-  using std::swap;
-  CastToBase(&fragment_profile_)->InternalSwap(CastToBase(&other->fragment_profile_));
-  query_.Swap(&other->query_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  plan_.Swap(&other->plan_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  user_.Swap(&other->user_, &::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get(),
-    GetArenaNoVirtual());
-  error_.Swap(&other->error_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  verboseerror_.Swap(&other->verboseerror_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  error_id_.Swap(&other->error_id_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  error_node_.Swap(&other->error_node_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  options_json_.Swap(&other->options_json_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  queue_name_.Swap(&other->queue_name_, &::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get(),
-    GetArenaNoVirtual());
-  queryid_.Swap(&other->queryid_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(id_, other->id_);
-  swap(foreman_, other->foreman_);
-  swap(start_, other->start_);
-  swap(end_, other->end_);
-  swap(state_, other->state_);
-  swap(total_fragments_, other->total_fragments_);
-  swap(finished_fragments_, other->finished_fragments_);
-  swap(autolimit_, other->autolimit_);
-  swap(planend_, other->planend_);
-  swap(queuewaitend_, other->queuewaitend_);
-  swap(total_cost_, other->total_cost_);
-  swap(type_, other->type_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(id_, other->id_);
+    std::swap(type_, other->type_);
+    std::swap(start_, other->start_);
+    std::swap(end_, other->end_);
+    std::swap(query_, other->query_);
+    std::swap(plan_, other->plan_);
+    std::swap(foreman_, other->foreman_);
+    std::swap(state_, other->state_);
+    std::swap(total_fragments_, other->total_fragments_);
+    std::swap(finished_fragments_, other->finished_fragments_);
+    fragment_profile_.Swap(&other->fragment_profile_);
+    std::swap(user_, other->user_);
+    std::swap(error_, other->error_);
+    std::swap(verboseerror_, other->verboseerror_);
+    std::swap(error_id_, other->error_id_);
+    std::swap(error_node_, other->error_node_);
+    std::swap(options_json_, other->options_json_);
+    std::swap(planend_, other->planend_);
+    std::swap(queuewaitend_, other->queuewaitend_);
+    std::swap(total_cost_, other->total_cost_);
+    std::swap(queue_name_, other->queue_name_);
+    std::swap(queryid_, other->queryid_);
+    std::swap(autolimit_, other->autolimit_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata QueryProfile::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = QueryProfile_descriptor_;
+  metadata.reflection = QueryProfile_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void MajorFragmentProfile::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int MajorFragmentProfile::kMajorFragmentIdFieldNumber;
 const int MajorFragmentProfile::kMinorFragmentProfileFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 MajorFragmentProfile::MajorFragmentProfile()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_MajorFragmentProfile.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.MajorFragmentProfile)
 }
+
+void MajorFragmentProfile::InitAsDefaultInstance() {
+}
+
 MajorFragmentProfile::MajorFragmentProfile(const MajorFragmentProfile& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      minor_fragment_profile_(from.minor_fragment_profile_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  major_fragment_id_ = from.major_fragment_id_;
-  // @@protoc_insertion_point(copy_constructor:exec.shared.MajorFragmentProfile)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void MajorFragmentProfile::SharedCtor() {
+  _cached_size_ = 0;
   major_fragment_id_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 MajorFragmentProfile::~MajorFragmentProfile() {
-  // @@protoc_insertion_point(destructor:exec.shared.MajorFragmentProfile)
   SharedDtor();
 }
 
 void MajorFragmentProfile::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void MajorFragmentProfile::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* MajorFragmentProfile::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return MajorFragmentProfile_descriptor_;
 }
 
 const MajorFragmentProfile& MajorFragmentProfile::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_MajorFragmentProfile.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+MajorFragmentProfile* MajorFragmentProfile::default_instance_ = NULL;
+
+MajorFragmentProfile* MajorFragmentProfile::New() const {
+  return new MajorFragmentProfile;
+}
 
 void MajorFragmentProfile::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.MajorFragmentProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    major_fragment_id_ = 0;
+  }
   minor_fragment_profile_.Clear();
-  major_fragment_id_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool MajorFragmentProfile::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.MajorFragmentProfile)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 major_fragment_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_major_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &major_fragment_id_)));
+          set_has_major_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_minor_fragment_profile;
         break;
       }
 
       // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_minor_fragment_profile:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_minor_fragment_profile()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_minor_fragment_profile;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.MajorFragmentProfile)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.MajorFragmentProfile)
-  return false;
 #undef DO_
 }
 
 void MajorFragmentProfile::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.MajorFragmentProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 major_fragment_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_major_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->major_fragment_id(), output);
   }
 
   // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->minor_fragment_profile_size()); i < n; i++) {
+  for (int i = 0; i < this->minor_fragment_profile_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2,
-      this->minor_fragment_profile(static_cast<int>(i)),
-      output);
+      2, this->minor_fragment_profile(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.MajorFragmentProfile)
 }
 
-::google::protobuf::uint8* MajorFragmentProfile::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.MajorFragmentProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* MajorFragmentProfile::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 major_fragment_id = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_major_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->major_fragment_id(), target);
   }
 
   // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->minor_fragment_profile_size()); i < n; i++) {
+  for (int i = 0; i < this->minor_fragment_profile_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->minor_fragment_profile(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->minor_fragment_profile(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.MajorFragmentProfile)
   return target;
 }
 
-size_t MajorFragmentProfile::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.MajorFragmentProfile)
-  size_t total_size = 0;
+int MajorFragmentProfile::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional int32 major_fragment_id = 1;
+    if (has_major_fragment_id()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->major_fragment_id());
+    }
+
   }
   // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
-  {
-    unsigned int count = static_cast<unsigned int>(this->minor_fragment_profile_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->minor_fragment_profile(static_cast<int>(i)));
-    }
+  total_size += 1 * this->minor_fragment_profile_size();
+  for (int i = 0; i < this->minor_fragment_profile_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->minor_fragment_profile(i));
   }
 
-  // optional int32 major_fragment_id = 1;
-  if (has_major_fragment_id()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::Int32Size(
-        this->major_fragment_id());
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
   }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void MajorFragmentProfile::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.MajorFragmentProfile)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const MajorFragmentProfile* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const MajorFragmentProfile>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const MajorFragmentProfile*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.MajorFragmentProfile)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.MajorFragmentProfile)
     MergeFrom(*source);
   }
 }
 
 void MajorFragmentProfile::MergeFrom(const MajorFragmentProfile& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.MajorFragmentProfile)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   minor_fragment_profile_.MergeFrom(from.minor_fragment_profile_);
-  if (from.has_major_fragment_id()) {
-    set_major_fragment_id(from.major_fragment_id());
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_major_fragment_id()) {
+      set_major_fragment_id(from.major_fragment_id());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void MajorFragmentProfile::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.MajorFragmentProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void MajorFragmentProfile::CopyFrom(const MajorFragmentProfile& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.MajorFragmentProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool MajorFragmentProfile::IsInitialized() const {
+
   return true;
 }
 
 void MajorFragmentProfile::Swap(MajorFragmentProfile* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void MajorFragmentProfile::InternalSwap(MajorFragmentProfile* other) {
-  using std::swap;
-  CastToBase(&minor_fragment_profile_)->InternalSwap(CastToBase(&other->minor_fragment_profile_));
-  swap(major_fragment_id_, other->major_fragment_id_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(major_fragment_id_, other->major_fragment_id_);
+    minor_fragment_profile_.Swap(&other->minor_fragment_profile_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata MajorFragmentProfile::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = MajorFragmentProfile_descriptor_;
+  metadata.reflection = MajorFragmentProfile_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void MinorFragmentProfile::InitAsDefaultInstance() {
-  ::exec::shared::_MinorFragmentProfile_default_instance_._instance.get_mutable()->error_ = const_cast< ::exec::shared::DrillPBError*>(
-      ::exec::shared::DrillPBError::internal_default_instance());
-  ::exec::shared::_MinorFragmentProfile_default_instance_._instance.get_mutable()->endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(
-      ::exec::DrillbitEndpoint::internal_default_instance());
-}
-void MinorFragmentProfile::clear_endpoint() {
-  if (endpoint_ != NULL) endpoint_->Clear();
-  clear_has_endpoint();
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int MinorFragmentProfile::kStateFieldNumber;
 const int MinorFragmentProfile::kErrorFieldNumber;
 const int MinorFragmentProfile::kMinorFragmentIdFieldNumber;
@@ -8034,113 +7205,105 @@
 const int MinorFragmentProfile::kEndpointFieldNumber;
 const int MinorFragmentProfile::kLastUpdateFieldNumber;
 const int MinorFragmentProfile::kLastProgressFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 MinorFragmentProfile::MinorFragmentProfile()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_MinorFragmentProfile.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.MinorFragmentProfile)
 }
+
+void MinorFragmentProfile::InitAsDefaultInstance() {
+  error_ = const_cast< ::exec::shared::DrillPBError*>(&::exec::shared::DrillPBError::default_instance());
+  endpoint_ = const_cast< ::exec::DrillbitEndpoint*>(&::exec::DrillbitEndpoint::default_instance());
+}
+
 MinorFragmentProfile::MinorFragmentProfile(const MinorFragmentProfile& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      operator_profile_(from.operator_profile_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  if (from.has_error()) {
-    error_ = new ::exec::shared::DrillPBError(*from.error_);
-  } else {
-    error_ = NULL;
-  }
-  if (from.has_endpoint()) {
-    endpoint_ = new ::exec::DrillbitEndpoint(*from.endpoint_);
-  } else {
-    endpoint_ = NULL;
-  }
-  ::memcpy(&state_, &from.state_,
-    static_cast<size_t>(reinterpret_cast<char*>(&last_progress_) -
-    reinterpret_cast<char*>(&state_)) + sizeof(last_progress_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.MinorFragmentProfile)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void MinorFragmentProfile::SharedCtor() {
-  ::memset(&error_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&last_progress_) -
-      reinterpret_cast<char*>(&error_)) + sizeof(last_progress_));
+  _cached_size_ = 0;
+  state_ = 0;
+  error_ = NULL;
+  minor_fragment_id_ = 0;
+  start_time_ = GOOGLE_LONGLONG(0);
+  end_time_ = GOOGLE_LONGLONG(0);
+  memory_used_ = GOOGLE_LONGLONG(0);
+  max_memory_used_ = GOOGLE_LONGLONG(0);
+  endpoint_ = NULL;
+  last_update_ = GOOGLE_LONGLONG(0);
+  last_progress_ = GOOGLE_LONGLONG(0);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 MinorFragmentProfile::~MinorFragmentProfile() {
-  // @@protoc_insertion_point(destructor:exec.shared.MinorFragmentProfile)
   SharedDtor();
 }
 
 void MinorFragmentProfile::SharedDtor() {
-  if (this != internal_default_instance()) delete error_;
-  if (this != internal_default_instance()) delete endpoint_;
+  if (this != default_instance_) {
+    delete error_;
+    delete endpoint_;
+  }
 }
 
 void MinorFragmentProfile::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* MinorFragmentProfile::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return MinorFragmentProfile_descriptor_;
 }
 
 const MinorFragmentProfile& MinorFragmentProfile::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_MinorFragmentProfile.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+MinorFragmentProfile* MinorFragmentProfile::default_instance_ = NULL;
+
+MinorFragmentProfile* MinorFragmentProfile::New() const {
+  return new MinorFragmentProfile;
+}
 
 void MinorFragmentProfile::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.MinorFragmentProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    state_ = 0;
+    if (has_error()) {
+      if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
+    }
+    minor_fragment_id_ = 0;
+    start_time_ = GOOGLE_LONGLONG(0);
+    end_time_ = GOOGLE_LONGLONG(0);
+    memory_used_ = GOOGLE_LONGLONG(0);
+    max_memory_used_ = GOOGLE_LONGLONG(0);
+  }
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (has_endpoint()) {
+      if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
+    }
+    last_update_ = GOOGLE_LONGLONG(0);
+    last_progress_ = GOOGLE_LONGLONG(0);
+  }
   operator_profile_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      GOOGLE_DCHECK(error_ != NULL);
-      error_->Clear();
-    }
-    if (cached_has_bits & 0x00000002u) {
-      GOOGLE_DCHECK(endpoint_ != NULL);
-      endpoint_->Clear();
-    }
-  }
-  if (cached_has_bits & 252u) {
-    ::memset(&state_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&max_memory_used_) -
-        reinterpret_cast<char*>(&state_)) + sizeof(max_memory_used_));
-  }
-  if (cached_has_bits & 768u) {
-    ::memset(&last_update_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&last_progress_) -
-        reinterpret_cast<char*>(&last_update_)) + sizeof(last_progress_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool MinorFragmentProfile::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.MinorFragmentProfile)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional .exec.shared.FragmentState state = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -8148,365 +7311,341 @@
           if (::exec::shared::FragmentState_IsValid(value)) {
             set_state(static_cast< ::exec::shared::FragmentState >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                1, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(1, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_error;
         break;
       }
 
       // optional .exec.shared.DrillPBError error = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_error:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_error()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_minor_fragment_id;
         break;
       }
 
       // optional int32 minor_fragment_id = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_minor_fragment_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_minor_fragment_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &minor_fragment_id_)));
+          set_has_minor_fragment_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_operator_profile;
         break;
       }
 
       // repeated .exec.shared.OperatorProfile operator_profile = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(34u /* 34 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_operator_profile:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_operator_profile()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(34)) goto parse_operator_profile;
+        if (input->ExpectTag(40)) goto parse_start_time;
         break;
       }
 
       // optional int64 start_time = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_start_time();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_start_time:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &start_time_)));
+          set_has_start_time();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(48)) goto parse_end_time;
         break;
       }
 
       // optional int64 end_time = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(48u /* 48 & 0xFF */)) {
-          set_has_end_time();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_end_time:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &end_time_)));
+          set_has_end_time();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_memory_used;
         break;
       }
 
       // optional int64 memory_used = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_memory_used();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_memory_used:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &memory_used_)));
+          set_has_memory_used();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(64)) goto parse_max_memory_used;
         break;
       }
 
       // optional int64 max_memory_used = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(64u /* 64 & 0xFF */)) {
-          set_has_max_memory_used();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_max_memory_used:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &max_memory_used_)));
+          set_has_max_memory_used();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(74)) goto parse_endpoint;
         break;
       }
 
       // optional .exec.DrillbitEndpoint endpoint = 9;
       case 9: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(74u /* 74 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_endpoint:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                input, mutable_endpoint()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(80)) goto parse_last_update;
         break;
       }
 
       // optional int64 last_update = 10;
       case 10: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(80u /* 80 & 0xFF */)) {
-          set_has_last_update();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_last_update:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &last_update_)));
+          set_has_last_update();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(88)) goto parse_last_progress;
         break;
       }
 
       // optional int64 last_progress = 11;
       case 11: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(88u /* 88 & 0xFF */)) {
-          set_has_last_progress();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_last_progress:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &last_progress_)));
+          set_has_last_progress();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.MinorFragmentProfile)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.MinorFragmentProfile)
-  return false;
 #undef DO_
 }
 
 void MinorFragmentProfile::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.MinorFragmentProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional .exec.shared.FragmentState state = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_state()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       1, this->state(), output);
   }
 
   // optional .exec.shared.DrillPBError error = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      2, this->_internal_error(), output);
+      2, this->error(), output);
   }
 
   // optional int32 minor_fragment_id = 3;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_minor_fragment_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->minor_fragment_id(), output);
   }
 
   // repeated .exec.shared.OperatorProfile operator_profile = 4;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->operator_profile_size()); i < n; i++) {
+  for (int i = 0; i < this->operator_profile_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      4,
-      this->operator_profile(static_cast<int>(i)),
-      output);
+      4, this->operator_profile(i), output);
   }
 
   // optional int64 start_time = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_start_time()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(5, this->start_time(), output);
   }
 
   // optional int64 end_time = 6;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_end_time()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(6, this->end_time(), output);
   }
 
   // optional int64 memory_used = 7;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_memory_used()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(7, this->memory_used(), output);
   }
 
   // optional int64 max_memory_used = 8;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_max_memory_used()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(8, this->max_memory_used(), output);
   }
 
   // optional .exec.DrillbitEndpoint endpoint = 9;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_endpoint()) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      9, this->_internal_endpoint(), output);
+      9, this->endpoint(), output);
   }
 
   // optional int64 last_update = 10;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_last_update()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(10, this->last_update(), output);
   }
 
   // optional int64 last_progress = 11;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_last_progress()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(11, this->last_progress(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.MinorFragmentProfile)
 }
 
-::google::protobuf::uint8* MinorFragmentProfile::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.MinorFragmentProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* MinorFragmentProfile::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional .exec.shared.FragmentState state = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_state()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       1, this->state(), target);
   }
 
   // optional .exec.shared.DrillPBError error = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_error()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        2, this->_internal_error(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        2, this->error(), target);
   }
 
   // optional int32 minor_fragment_id = 3;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_minor_fragment_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->minor_fragment_id(), target);
   }
 
   // repeated .exec.shared.OperatorProfile operator_profile = 4;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->operator_profile_size()); i < n; i++) {
+  for (int i = 0; i < this->operator_profile_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        4, this->operator_profile(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        4, this->operator_profile(i), target);
   }
 
   // optional int64 start_time = 5;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_start_time()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(5, this->start_time(), target);
   }
 
   // optional int64 end_time = 6;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_end_time()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(6, this->end_time(), target);
   }
 
   // optional int64 memory_used = 7;
-  if (cached_has_bits & 0x00000040u) {
+  if (has_memory_used()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(7, this->memory_used(), target);
   }
 
   // optional int64 max_memory_used = 8;
-  if (cached_has_bits & 0x00000080u) {
+  if (has_max_memory_used()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(8, this->max_memory_used(), target);
   }
 
   // optional .exec.DrillbitEndpoint endpoint = 9;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_endpoint()) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        9, this->_internal_endpoint(), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        9, this->endpoint(), target);
   }
 
   // optional int64 last_update = 10;
-  if (cached_has_bits & 0x00000100u) {
+  if (has_last_update()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(10, this->last_update(), target);
   }
 
   // optional int64 last_progress = 11;
-  if (cached_has_bits & 0x00000200u) {
+  if (has_last_progress()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(11, this->last_progress(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.MinorFragmentProfile)
   return target;
 }
 
-size_t MinorFragmentProfile::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.MinorFragmentProfile)
-  size_t total_size = 0;
+int MinorFragmentProfile::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.shared.OperatorProfile operator_profile = 4;
-  {
-    unsigned int count = static_cast<unsigned int>(this->operator_profile_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->operator_profile(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 255u) {
-    // optional .exec.shared.DrillPBError error = 2;
-    if (has_error()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *error_);
-    }
-
-    // optional .exec.DrillbitEndpoint endpoint = 9;
-    if (has_endpoint()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          *endpoint_);
-    }
-
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional .exec.shared.FragmentState state = 1;
     if (has_state()) {
       total_size += 1 +
         ::google::protobuf::internal::WireFormatLite::EnumSize(this->state());
     }
 
+    // optional .exec.shared.DrillPBError error = 2;
+    if (has_error()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->error());
+    }
+
     // optional int32 minor_fragment_id = 3;
     if (has_minor_fragment_id()) {
       total_size += 1 +
@@ -8543,7 +7682,14 @@
     }
 
   }
-  if (_has_bits_[8 / 32] & 768u) {
+  if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    // optional .exec.DrillbitEndpoint endpoint = 9;
+    if (has_endpoint()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+          this->endpoint());
+    }
+
     // optional int64 last_update = 10;
     if (has_last_update()) {
       total_size += 1 +
@@ -8559,123 +7705,125 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.shared.OperatorProfile operator_profile = 4;
+  total_size += 1 * this->operator_profile_size();
+  for (int i = 0; i < this->operator_profile_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->operator_profile(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void MinorFragmentProfile::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.MinorFragmentProfile)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const MinorFragmentProfile* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const MinorFragmentProfile>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const MinorFragmentProfile*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.MinorFragmentProfile)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.MinorFragmentProfile)
     MergeFrom(*source);
   }
 }
 
 void MinorFragmentProfile::MergeFrom(const MinorFragmentProfile& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.MinorFragmentProfile)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   operator_profile_.MergeFrom(from.operator_profile_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 255u) {
-    if (cached_has_bits & 0x00000001u) {
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_state()) {
+      set_state(from.state());
+    }
+    if (from.has_error()) {
       mutable_error()->::exec::shared::DrillPBError::MergeFrom(from.error());
     }
-    if (cached_has_bits & 0x00000002u) {
+    if (from.has_minor_fragment_id()) {
+      set_minor_fragment_id(from.minor_fragment_id());
+    }
+    if (from.has_start_time()) {
+      set_start_time(from.start_time());
+    }
+    if (from.has_end_time()) {
+      set_end_time(from.end_time());
+    }
+    if (from.has_memory_used()) {
+      set_memory_used(from.memory_used());
+    }
+    if (from.has_max_memory_used()) {
+      set_max_memory_used(from.max_memory_used());
+    }
+  }
+  if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) {
+    if (from.has_endpoint()) {
       mutable_endpoint()->::exec::DrillbitEndpoint::MergeFrom(from.endpoint());
     }
-    if (cached_has_bits & 0x00000004u) {
-      state_ = from.state_;
+    if (from.has_last_update()) {
+      set_last_update(from.last_update());
     }
-    if (cached_has_bits & 0x00000008u) {
-      minor_fragment_id_ = from.minor_fragment_id_;
+    if (from.has_last_progress()) {
+      set_last_progress(from.last_progress());
     }
-    if (cached_has_bits & 0x00000010u) {
-      start_time_ = from.start_time_;
-    }
-    if (cached_has_bits & 0x00000020u) {
-      end_time_ = from.end_time_;
-    }
-    if (cached_has_bits & 0x00000040u) {
-      memory_used_ = from.memory_used_;
-    }
-    if (cached_has_bits & 0x00000080u) {
-      max_memory_used_ = from.max_memory_used_;
-    }
-    _has_bits_[0] |= cached_has_bits;
   }
-  if (cached_has_bits & 768u) {
-    if (cached_has_bits & 0x00000100u) {
-      last_update_ = from.last_update_;
-    }
-    if (cached_has_bits & 0x00000200u) {
-      last_progress_ = from.last_progress_;
-    }
-    _has_bits_[0] |= cached_has_bits;
-  }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void MinorFragmentProfile::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.MinorFragmentProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void MinorFragmentProfile::CopyFrom(const MinorFragmentProfile& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.MinorFragmentProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool MinorFragmentProfile::IsInitialized() const {
+
   return true;
 }
 
 void MinorFragmentProfile::Swap(MinorFragmentProfile* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void MinorFragmentProfile::InternalSwap(MinorFragmentProfile* other) {
-  using std::swap;
-  CastToBase(&operator_profile_)->InternalSwap(CastToBase(&other->operator_profile_));
-  swap(error_, other->error_);
-  swap(endpoint_, other->endpoint_);
-  swap(state_, other->state_);
-  swap(minor_fragment_id_, other->minor_fragment_id_);
-  swap(start_time_, other->start_time_);
-  swap(end_time_, other->end_time_);
-  swap(memory_used_, other->memory_used_);
-  swap(max_memory_used_, other->max_memory_used_);
-  swap(last_update_, other->last_update_);
-  swap(last_progress_, other->last_progress_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(state_, other->state_);
+    std::swap(error_, other->error_);
+    std::swap(minor_fragment_id_, other->minor_fragment_id_);
+    operator_profile_.Swap(&other->operator_profile_);
+    std::swap(start_time_, other->start_time_);
+    std::swap(end_time_, other->end_time_);
+    std::swap(memory_used_, other->memory_used_);
+    std::swap(max_memory_used_, other->max_memory_used_);
+    std::swap(endpoint_, other->endpoint_);
+    std::swap(last_update_, other->last_update_);
+    std::swap(last_progress_, other->last_progress_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata MinorFragmentProfile::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = MinorFragmentProfile_descriptor_;
+  metadata.reflection = MinorFragmentProfile_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void OperatorProfile::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int OperatorProfile::kInputProfileFieldNumber;
 const int OperatorProfile::kOperatorIdFieldNumber;
 const int OperatorProfile::kOperatorTypeFieldNumber;
@@ -8684,368 +7832,333 @@
 const int OperatorProfile::kPeakLocalMemoryAllocatedFieldNumber;
 const int OperatorProfile::kMetricFieldNumber;
 const int OperatorProfile::kWaitNanosFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 OperatorProfile::OperatorProfile()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_OperatorProfile.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.OperatorProfile)
 }
+
+void OperatorProfile::InitAsDefaultInstance() {
+}
+
 OperatorProfile::OperatorProfile(const OperatorProfile& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      input_profile_(from.input_profile_),
-      metric_(from.metric_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&operator_id_, &from.operator_id_,
-    static_cast<size_t>(reinterpret_cast<char*>(&wait_nanos_) -
-    reinterpret_cast<char*>(&operator_id_)) + sizeof(wait_nanos_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.OperatorProfile)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void OperatorProfile::SharedCtor() {
-  ::memset(&operator_id_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&wait_nanos_) -
-      reinterpret_cast<char*>(&operator_id_)) + sizeof(wait_nanos_));
+  _cached_size_ = 0;
+  operator_id_ = 0;
+  operator_type_ = 0;
+  setup_nanos_ = GOOGLE_LONGLONG(0);
+  process_nanos_ = GOOGLE_LONGLONG(0);
+  peak_local_memory_allocated_ = GOOGLE_LONGLONG(0);
+  wait_nanos_ = GOOGLE_LONGLONG(0);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 OperatorProfile::~OperatorProfile() {
-  // @@protoc_insertion_point(destructor:exec.shared.OperatorProfile)
   SharedDtor();
 }
 
 void OperatorProfile::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void OperatorProfile::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* OperatorProfile::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return OperatorProfile_descriptor_;
 }
 
 const OperatorProfile& OperatorProfile::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_OperatorProfile.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+OperatorProfile* OperatorProfile::default_instance_ = NULL;
+
+OperatorProfile* OperatorProfile::New() const {
+  return new OperatorProfile;
+}
 
 void OperatorProfile::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.OperatorProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
+  if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) {
+    operator_id_ = 0;
+    operator_type_ = 0;
+    setup_nanos_ = GOOGLE_LONGLONG(0);
+    process_nanos_ = GOOGLE_LONGLONG(0);
+    peak_local_memory_allocated_ = GOOGLE_LONGLONG(0);
+    wait_nanos_ = GOOGLE_LONGLONG(0);
+  }
   input_profile_.Clear();
   metric_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 63u) {
-    ::memset(&operator_id_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&wait_nanos_) -
-        reinterpret_cast<char*>(&operator_id_)) + sizeof(wait_nanos_));
-  }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool OperatorProfile::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.OperatorProfile)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // repeated .exec.shared.StreamProfile input_profile = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_input_profile:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_input_profile()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(10)) goto parse_input_profile;
+        if (input->ExpectTag(24)) goto parse_operator_id;
         break;
       }
 
       // optional int32 operator_id = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_operator_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_operator_id:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &operator_id_)));
+          set_has_operator_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(32)) goto parse_operator_type;
         break;
       }
 
       // optional int32 operator_type = 4;
       case 4: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(32u /* 32 & 0xFF */)) {
-          set_has_operator_type();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_operator_type:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &operator_type_)));
+          set_has_operator_type();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(40)) goto parse_setup_nanos;
         break;
       }
 
       // optional int64 setup_nanos = 5;
       case 5: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(40u /* 40 & 0xFF */)) {
-          set_has_setup_nanos();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_setup_nanos:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &setup_nanos_)));
+          set_has_setup_nanos();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(48)) goto parse_process_nanos;
         break;
       }
 
       // optional int64 process_nanos = 6;
       case 6: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(48u /* 48 & 0xFF */)) {
-          set_has_process_nanos();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_process_nanos:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &process_nanos_)));
+          set_has_process_nanos();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(56)) goto parse_peak_local_memory_allocated;
         break;
       }
 
       // optional int64 peak_local_memory_allocated = 7;
       case 7: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(56u /* 56 & 0xFF */)) {
-          set_has_peak_local_memory_allocated();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_peak_local_memory_allocated:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &peak_local_memory_allocated_)));
+          set_has_peak_local_memory_allocated();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(66)) goto parse_metric;
         break;
       }
 
       // repeated .exec.shared.MetricValue metric = 8;
       case 8: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(66u /* 66 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_metric:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_metric()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(66)) goto parse_metric;
+        if (input->ExpectTag(72)) goto parse_wait_nanos;
         break;
       }
 
       // optional int64 wait_nanos = 9;
       case 9: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(72u /* 72 & 0xFF */)) {
-          set_has_wait_nanos();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_wait_nanos:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &wait_nanos_)));
+          set_has_wait_nanos();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.OperatorProfile)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.OperatorProfile)
-  return false;
 #undef DO_
 }
 
 void OperatorProfile::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.OperatorProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
   // repeated .exec.shared.StreamProfile input_profile = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->input_profile_size()); i < n; i++) {
+  for (int i = 0; i < this->input_profile_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1,
-      this->input_profile(static_cast<int>(i)),
-      output);
+      1, this->input_profile(i), output);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional int32 operator_id = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_operator_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(3, this->operator_id(), output);
   }
 
   // optional int32 operator_type = 4;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_operator_type()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(4, this->operator_type(), output);
   }
 
   // optional int64 setup_nanos = 5;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_setup_nanos()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(5, this->setup_nanos(), output);
   }
 
   // optional int64 process_nanos = 6;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_process_nanos()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(6, this->process_nanos(), output);
   }
 
   // optional int64 peak_local_memory_allocated = 7;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_peak_local_memory_allocated()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(7, this->peak_local_memory_allocated(), output);
   }
 
   // repeated .exec.shared.MetricValue metric = 8;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->metric_size()); i < n; i++) {
+  for (int i = 0; i < this->metric_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      8,
-      this->metric(static_cast<int>(i)),
-      output);
+      8, this->metric(i), output);
   }
 
   // optional int64 wait_nanos = 9;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_wait_nanos()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(9, this->wait_nanos(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.OperatorProfile)
 }
 
-::google::protobuf::uint8* OperatorProfile::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.OperatorProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+::google::protobuf::uint8* OperatorProfile::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // repeated .exec.shared.StreamProfile input_profile = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->input_profile_size()); i < n; i++) {
+  for (int i = 0; i < this->input_profile_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->input_profile(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->input_profile(i), target);
   }
 
-  cached_has_bits = _has_bits_[0];
   // optional int32 operator_id = 3;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_operator_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(3, this->operator_id(), target);
   }
 
   // optional int32 operator_type = 4;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_operator_type()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(4, this->operator_type(), target);
   }
 
   // optional int64 setup_nanos = 5;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_setup_nanos()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(5, this->setup_nanos(), target);
   }
 
   // optional int64 process_nanos = 6;
-  if (cached_has_bits & 0x00000008u) {
+  if (has_process_nanos()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(6, this->process_nanos(), target);
   }
 
   // optional int64 peak_local_memory_allocated = 7;
-  if (cached_has_bits & 0x00000010u) {
+  if (has_peak_local_memory_allocated()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(7, this->peak_local_memory_allocated(), target);
   }
 
   // repeated .exec.shared.MetricValue metric = 8;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->metric_size()); i < n; i++) {
+  for (int i = 0; i < this->metric_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        8, this->metric(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        8, this->metric(i), target);
   }
 
   // optional int64 wait_nanos = 9;
-  if (cached_has_bits & 0x00000020u) {
+  if (has_wait_nanos()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(9, this->wait_nanos(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.OperatorProfile)
   return target;
 }
 
-size_t OperatorProfile::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.OperatorProfile)
-  size_t total_size = 0;
+int OperatorProfile::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  // repeated .exec.shared.StreamProfile input_profile = 1;
-  {
-    unsigned int count = static_cast<unsigned int>(this->input_profile_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->input_profile(static_cast<int>(i)));
-    }
-  }
-
-  // repeated .exec.shared.MetricValue metric = 8;
-  {
-    unsigned int count = static_cast<unsigned int>(this->metric_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->metric(static_cast<int>(i)));
-    }
-  }
-
-  if (_has_bits_[0 / 32] & 63u) {
+  if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) {
     // optional int32 operator_id = 3;
     if (has_operator_id()) {
       total_size += 1 +
@@ -9089,315 +8202,304 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  // repeated .exec.shared.StreamProfile input_profile = 1;
+  total_size += 1 * this->input_profile_size();
+  for (int i = 0; i < this->input_profile_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->input_profile(i));
+  }
+
+  // repeated .exec.shared.MetricValue metric = 8;
+  total_size += 1 * this->metric_size();
+  for (int i = 0; i < this->metric_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->metric(i));
+  }
+
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void OperatorProfile::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.OperatorProfile)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const OperatorProfile* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const OperatorProfile>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const OperatorProfile*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.OperatorProfile)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.OperatorProfile)
     MergeFrom(*source);
   }
 }
 
 void OperatorProfile::MergeFrom(const OperatorProfile& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.OperatorProfile)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   input_profile_.MergeFrom(from.input_profile_);
   metric_.MergeFrom(from.metric_);
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 63u) {
-    if (cached_has_bits & 0x00000001u) {
-      operator_id_ = from.operator_id_;
+  if (from._has_bits_[1 / 32] & (0xffu << (1 % 32))) {
+    if (from.has_operator_id()) {
+      set_operator_id(from.operator_id());
     }
-    if (cached_has_bits & 0x00000002u) {
-      operator_type_ = from.operator_type_;
+    if (from.has_operator_type()) {
+      set_operator_type(from.operator_type());
     }
-    if (cached_has_bits & 0x00000004u) {
-      setup_nanos_ = from.setup_nanos_;
+    if (from.has_setup_nanos()) {
+      set_setup_nanos(from.setup_nanos());
     }
-    if (cached_has_bits & 0x00000008u) {
-      process_nanos_ = from.process_nanos_;
+    if (from.has_process_nanos()) {
+      set_process_nanos(from.process_nanos());
     }
-    if (cached_has_bits & 0x00000010u) {
-      peak_local_memory_allocated_ = from.peak_local_memory_allocated_;
+    if (from.has_peak_local_memory_allocated()) {
+      set_peak_local_memory_allocated(from.peak_local_memory_allocated());
     }
-    if (cached_has_bits & 0x00000020u) {
-      wait_nanos_ = from.wait_nanos_;
+    if (from.has_wait_nanos()) {
+      set_wait_nanos(from.wait_nanos());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void OperatorProfile::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.OperatorProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void OperatorProfile::CopyFrom(const OperatorProfile& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.OperatorProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool OperatorProfile::IsInitialized() const {
+
   return true;
 }
 
 void OperatorProfile::Swap(OperatorProfile* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void OperatorProfile::InternalSwap(OperatorProfile* other) {
-  using std::swap;
-  CastToBase(&input_profile_)->InternalSwap(CastToBase(&other->input_profile_));
-  CastToBase(&metric_)->InternalSwap(CastToBase(&other->metric_));
-  swap(operator_id_, other->operator_id_);
-  swap(operator_type_, other->operator_type_);
-  swap(setup_nanos_, other->setup_nanos_);
-  swap(process_nanos_, other->process_nanos_);
-  swap(peak_local_memory_allocated_, other->peak_local_memory_allocated_);
-  swap(wait_nanos_, other->wait_nanos_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    input_profile_.Swap(&other->input_profile_);
+    std::swap(operator_id_, other->operator_id_);
+    std::swap(operator_type_, other->operator_type_);
+    std::swap(setup_nanos_, other->setup_nanos_);
+    std::swap(process_nanos_, other->process_nanos_);
+    std::swap(peak_local_memory_allocated_, other->peak_local_memory_allocated_);
+    metric_.Swap(&other->metric_);
+    std::swap(wait_nanos_, other->wait_nanos_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata OperatorProfile::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = OperatorProfile_descriptor_;
+  metadata.reflection = OperatorProfile_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void StreamProfile::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int StreamProfile::kRecordsFieldNumber;
 const int StreamProfile::kBatchesFieldNumber;
 const int StreamProfile::kSchemasFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 StreamProfile::StreamProfile()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_StreamProfile.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.StreamProfile)
 }
+
+void StreamProfile::InitAsDefaultInstance() {
+}
+
 StreamProfile::StreamProfile(const StreamProfile& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&records_, &from.records_,
-    static_cast<size_t>(reinterpret_cast<char*>(&schemas_) -
-    reinterpret_cast<char*>(&records_)) + sizeof(schemas_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.StreamProfile)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void StreamProfile::SharedCtor() {
-  ::memset(&records_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&schemas_) -
-      reinterpret_cast<char*>(&records_)) + sizeof(schemas_));
+  _cached_size_ = 0;
+  records_ = GOOGLE_LONGLONG(0);
+  batches_ = GOOGLE_LONGLONG(0);
+  schemas_ = GOOGLE_LONGLONG(0);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 StreamProfile::~StreamProfile() {
-  // @@protoc_insertion_point(destructor:exec.shared.StreamProfile)
   SharedDtor();
 }
 
 void StreamProfile::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void StreamProfile::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* StreamProfile::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return StreamProfile_descriptor_;
 }
 
 const StreamProfile& StreamProfile::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_StreamProfile.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+StreamProfile* StreamProfile::default_instance_ = NULL;
+
+StreamProfile* StreamProfile::New() const {
+  return new StreamProfile;
+}
 
 void StreamProfile::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.StreamProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    ::memset(&records_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&schemas_) -
-        reinterpret_cast<char*>(&records_)) + sizeof(schemas_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    records_ = GOOGLE_LONGLONG(0);
+    batches_ = GOOGLE_LONGLONG(0);
+    schemas_ = GOOGLE_LONGLONG(0);
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool StreamProfile::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.StreamProfile)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int64 records = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_records();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &records_)));
+          set_has_records();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_batches;
         break;
       }
 
       // optional int64 batches = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_batches();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_batches:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &batches_)));
+          set_has_batches();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_schemas;
         break;
       }
 
       // optional int64 schemas = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
-          set_has_schemas();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_schemas:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &schemas_)));
+          set_has_schemas();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.StreamProfile)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.StreamProfile)
-  return false;
 #undef DO_
 }
 
 void StreamProfile::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.StreamProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int64 records = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_records()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(1, this->records(), output);
   }
 
   // optional int64 batches = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_batches()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(2, this->batches(), output);
   }
 
   // optional int64 schemas = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_schemas()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(3, this->schemas(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.StreamProfile)
 }
 
-::google::protobuf::uint8* StreamProfile::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.StreamProfile)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* StreamProfile::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int64 records = 1;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_records()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(1, this->records(), target);
   }
 
   // optional int64 batches = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_batches()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(2, this->batches(), target);
   }
 
   // optional int64 schemas = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_schemas()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(3, this->schemas(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.StreamProfile)
   return target;
 }
 
-size_t StreamProfile::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.StreamProfile)
-  size_t total_size = 0;
+int StreamProfile::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional int64 records = 1;
     if (has_records()) {
       total_size += 1 +
@@ -9420,299 +8522,279 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void StreamProfile::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.StreamProfile)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const StreamProfile* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const StreamProfile>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const StreamProfile*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.StreamProfile)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.StreamProfile)
     MergeFrom(*source);
   }
 }
 
 void StreamProfile::MergeFrom(const StreamProfile& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.StreamProfile)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      records_ = from.records_;
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_records()) {
+      set_records(from.records());
     }
-    if (cached_has_bits & 0x00000002u) {
-      batches_ = from.batches_;
+    if (from.has_batches()) {
+      set_batches(from.batches());
     }
-    if (cached_has_bits & 0x00000004u) {
-      schemas_ = from.schemas_;
+    if (from.has_schemas()) {
+      set_schemas(from.schemas());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void StreamProfile::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.StreamProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void StreamProfile::CopyFrom(const StreamProfile& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.StreamProfile)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool StreamProfile::IsInitialized() const {
+
   return true;
 }
 
 void StreamProfile::Swap(StreamProfile* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void StreamProfile::InternalSwap(StreamProfile* other) {
-  using std::swap;
-  swap(records_, other->records_);
-  swap(batches_, other->batches_);
-  swap(schemas_, other->schemas_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(records_, other->records_);
+    std::swap(batches_, other->batches_);
+    std::swap(schemas_, other->schemas_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata StreamProfile::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = StreamProfile_descriptor_;
+  metadata.reflection = StreamProfile_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void MetricValue::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int MetricValue::kMetricIdFieldNumber;
 const int MetricValue::kLongValueFieldNumber;
 const int MetricValue::kDoubleValueFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 MetricValue::MetricValue()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_MetricValue.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.MetricValue)
 }
+
+void MetricValue::InitAsDefaultInstance() {
+}
+
 MetricValue::MetricValue(const MetricValue& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::memcpy(&long_value_, &from.long_value_,
-    static_cast<size_t>(reinterpret_cast<char*>(&metric_id_) -
-    reinterpret_cast<char*>(&long_value_)) + sizeof(metric_id_));
-  // @@protoc_insertion_point(copy_constructor:exec.shared.MetricValue)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void MetricValue::SharedCtor() {
-  ::memset(&long_value_, 0, static_cast<size_t>(
-      reinterpret_cast<char*>(&metric_id_) -
-      reinterpret_cast<char*>(&long_value_)) + sizeof(metric_id_));
+  _cached_size_ = 0;
+  metric_id_ = 0;
+  long_value_ = GOOGLE_LONGLONG(0);
+  double_value_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 MetricValue::~MetricValue() {
-  // @@protoc_insertion_point(destructor:exec.shared.MetricValue)
   SharedDtor();
 }
 
 void MetricValue::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void MetricValue::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* MetricValue::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return MetricValue_descriptor_;
 }
 
 const MetricValue& MetricValue::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_MetricValue.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+MetricValue* MetricValue::default_instance_ = NULL;
+
+MetricValue* MetricValue::New() const {
+  return new MetricValue;
+}
 
 void MetricValue::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.MetricValue)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 7u) {
-    ::memset(&long_value_, 0, static_cast<size_t>(
-        reinterpret_cast<char*>(&metric_id_) -
-        reinterpret_cast<char*>(&long_value_)) + sizeof(metric_id_));
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    metric_id_ = 0;
+    long_value_ = GOOGLE_LONGLONG(0);
+    double_value_ = 0;
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool MetricValue::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.MetricValue)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional int32 metric_id = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(8u /* 8 & 0xFF */)) {
-          set_has_metric_id();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>(
                  input, &metric_id_)));
+          set_has_metric_id();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(16)) goto parse_long_value;
         break;
       }
 
       // optional int64 long_value = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(16u /* 16 & 0xFF */)) {
-          set_has_long_value();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_long_value:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>(
                  input, &long_value_)));
+          set_has_long_value();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(25)) goto parse_double_value;
         break;
       }
 
       // optional double double_value = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(25u /* 25 & 0xFF */)) {
-          set_has_double_value();
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED64) {
+         parse_double_value:
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>(
                  input, &double_value_)));
+          set_has_double_value();
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.MetricValue)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.MetricValue)
-  return false;
 #undef DO_
 }
 
 void MetricValue::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.MetricValue)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional int32 metric_id = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_metric_id()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt32(1, this->metric_id(), output);
   }
 
   // optional int64 long_value = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_long_value()) {
     ::google::protobuf::internal::WireFormatLite::WriteInt64(2, this->long_value(), output);
   }
 
   // optional double double_value = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_double_value()) {
     ::google::protobuf::internal::WireFormatLite::WriteDouble(3, this->double_value(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.MetricValue)
 }
 
-::google::protobuf::uint8* MetricValue::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.MetricValue)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* MetricValue::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional int32 metric_id = 1;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_metric_id()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt32ToArray(1, this->metric_id(), target);
   }
 
   // optional int64 long_value = 2;
-  if (cached_has_bits & 0x00000001u) {
+  if (has_long_value()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteInt64ToArray(2, this->long_value(), target);
   }
 
   // optional double double_value = 3;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_double_value()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteDoubleToArray(3, this->double_value(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.MetricValue)
   return target;
 }
 
-size_t MetricValue::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.MetricValue)
-  size_t total_size = 0;
+int MetricValue::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional int32 metric_id = 1;
+    if (has_metric_id()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::Int32Size(
+          this->metric_id());
+    }
+
     // optional int64 long_value = 2;
     if (has_long_value()) {
       total_size += 1 +
@@ -9725,751 +8807,684 @@
       total_size += 1 + 8;
     }
 
-    // optional int32 metric_id = 1;
-    if (has_metric_id()) {
-      total_size += 1 +
-        ::google::protobuf::internal::WireFormatLite::Int32Size(
-          this->metric_id());
-    }
-
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void MetricValue::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.MetricValue)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const MetricValue* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const MetricValue>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const MetricValue*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.MetricValue)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.MetricValue)
     MergeFrom(*source);
   }
 }
 
 void MetricValue::MergeFrom(const MetricValue& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.MetricValue)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      long_value_ = from.long_value_;
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_metric_id()) {
+      set_metric_id(from.metric_id());
     }
-    if (cached_has_bits & 0x00000002u) {
-      double_value_ = from.double_value_;
+    if (from.has_long_value()) {
+      set_long_value(from.long_value());
     }
-    if (cached_has_bits & 0x00000004u) {
-      metric_id_ = from.metric_id_;
+    if (from.has_double_value()) {
+      set_double_value(from.double_value());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void MetricValue::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.MetricValue)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void MetricValue::CopyFrom(const MetricValue& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.MetricValue)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool MetricValue::IsInitialized() const {
+
   return true;
 }
 
 void MetricValue::Swap(MetricValue* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void MetricValue::InternalSwap(MetricValue* other) {
-  using std::swap;
-  swap(long_value_, other->long_value_);
-  swap(double_value_, other->double_value_);
-  swap(metric_id_, other->metric_id_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(metric_id_, other->metric_id_);
+    std::swap(long_value_, other->long_value_);
+    std::swap(double_value_, other->double_value_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata MetricValue::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = MetricValue_descriptor_;
+  metadata.reflection = MetricValue_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void Registry::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int Registry::kJarFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 Registry::Registry()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_Registry.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.Registry)
 }
+
+void Registry::InitAsDefaultInstance() {
+}
+
 Registry::Registry(const Registry& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      jar_(from.jar_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  // @@protoc_insertion_point(copy_constructor:exec.shared.Registry)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void Registry::SharedCtor() {
+  _cached_size_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 Registry::~Registry() {
-  // @@protoc_insertion_point(destructor:exec.shared.Registry)
   SharedDtor();
 }
 
 void Registry::SharedDtor() {
+  if (this != default_instance_) {
+  }
 }
 
 void Registry::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* Registry::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return Registry_descriptor_;
 }
 
 const Registry& Registry::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_Registry.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+Registry* Registry::default_instance_ = NULL;
+
+Registry* Registry::New() const {
+  return new Registry;
+}
 
 void Registry::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.Registry)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
   jar_.Clear();
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool Registry::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.Registry)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // repeated .exec.shared.Jar jar = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
-          DO_(::google::protobuf::internal::WireFormatLite::ReadMessage(
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_jar:
+          DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
                 input, add_jar()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(10)) goto parse_jar;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.Registry)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.Registry)
-  return false;
 #undef DO_
 }
 
 void Registry::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.Registry)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
   // repeated .exec.shared.Jar jar = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->jar_size()); i < n; i++) {
+  for (int i = 0; i < this->jar_size(); i++) {
     ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
-      1,
-      this->jar(static_cast<int>(i)),
-      output);
+      1, this->jar(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.Registry)
 }
 
-::google::protobuf::uint8* Registry::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.Registry)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+::google::protobuf::uint8* Registry::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // repeated .exec.shared.Jar jar = 1;
-  for (unsigned int i = 0,
-      n = static_cast<unsigned int>(this->jar_size()); i < n; i++) {
+  for (int i = 0; i < this->jar_size(); i++) {
     target = ::google::protobuf::internal::WireFormatLite::
-      InternalWriteMessageToArray(
-        1, this->jar(static_cast<int>(i)), deterministic, target);
+      WriteMessageNoVirtualToArray(
+        1, this->jar(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.Registry)
   return target;
 }
 
-size_t Registry::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.Registry)
-  size_t total_size = 0;
+int Registry::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  // repeated .exec.shared.Jar jar = 1;
+  total_size += 1 * this->jar_size();
+  for (int i = 0; i < this->jar_size(); i++) {
+    total_size +=
+      ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
+        this->jar(i));
+  }
+
+  if (!unknown_fields().empty()) {
     total_size +=
       ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+        unknown_fields());
   }
-  // repeated .exec.shared.Jar jar = 1;
-  {
-    unsigned int count = static_cast<unsigned int>(this->jar_size());
-    total_size += 1UL * count;
-    for (unsigned int i = 0; i < count; i++) {
-      total_size +=
-        ::google::protobuf::internal::WireFormatLite::MessageSize(
-          this->jar(static_cast<int>(i)));
-    }
-  }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void Registry::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.Registry)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const Registry* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const Registry>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const Registry*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.Registry)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.Registry)
     MergeFrom(*source);
   }
 }
 
 void Registry::MergeFrom(const Registry& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.Registry)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   jar_.MergeFrom(from.jar_);
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void Registry::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.Registry)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void Registry::CopyFrom(const Registry& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.Registry)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool Registry::IsInitialized() const {
+
   return true;
 }
 
 void Registry::Swap(Registry* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void Registry::InternalSwap(Registry* other) {
-  using std::swap;
-  CastToBase(&jar_)->InternalSwap(CastToBase(&other->jar_));
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    jar_.Swap(&other->jar_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata Registry::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = Registry_descriptor_;
+  metadata.reflection = Registry_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void Jar::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int Jar::kNameFieldNumber;
 const int Jar::kFunctionSignatureFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 Jar::Jar()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_Jar.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.Jar)
 }
+
+void Jar::InitAsDefaultInstance() {
+}
+
 Jar::Jar(const Jar& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_),
-      function_signature_(from.function_signature_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_name()) {
-    name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
-  }
-  // @@protoc_insertion_point(copy_constructor:exec.shared.Jar)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void Jar::SharedCtor() {
-  name_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 Jar::~Jar() {
-  // @@protoc_insertion_point(destructor:exec.shared.Jar)
   SharedDtor();
 }
 
 void Jar::SharedDtor() {
-  name_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ != &::google::protobuf::internal::kEmptyString) {
+    delete name_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void Jar::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* Jar::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return Jar_descriptor_;
 }
 
 const Jar& Jar::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_Jar.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+Jar* Jar::default_instance_ = NULL;
+
+Jar* Jar::New() const {
+  return new Jar;
+}
 
 void Jar::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.Jar)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  function_signature_.Clear();
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 0x00000001u) {
-    name_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_name()) {
+      if (name_ != &::google::protobuf::internal::kEmptyString) {
+        name_->clear();
+      }
+    }
   }
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  function_signature_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool Jar::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.Jar)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string name = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_name()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->name().data(), static_cast<int>(this->name().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.Jar.name");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->name().data(), this->name().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_function_signature;
         break;
       }
 
       // repeated string function_signature = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_function_signature:
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->add_function_signature()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
             this->function_signature(this->function_signature_size() - 1).data(),
-            static_cast<int>(this->function_signature(this->function_signature_size() - 1).length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.Jar.function_signature");
+            this->function_signature(this->function_signature_size() - 1).length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_function_signature;
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.Jar)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.Jar)
-  return false;
 #undef DO_
 }
 
 void Jar::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.Jar)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->name().data(), static_cast<int>(this->name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.Jar.name");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->name().data(), this->name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->name(), output);
   }
 
   // repeated string function_signature = 2;
-  for (int i = 0, n = this->function_signature_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->function_signature(i).data(), static_cast<int>(this->function_signature(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.Jar.function_signature");
+  for (int i = 0; i < this->function_signature_size(); i++) {
+  ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+    this->function_signature(i).data(), this->function_signature(i).length(),
+    ::google::protobuf::internal::WireFormat::SERIALIZE);
     ::google::protobuf::internal::WireFormatLite::WriteString(
       2, this->function_signature(i), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.Jar)
 }
 
-::google::protobuf::uint8* Jar::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.Jar)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* Jar::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string name = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->name().data(), static_cast<int>(this->name().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.Jar.name");
+  if (has_name()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->name().data(), this->name().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->name(), target);
   }
 
   // repeated string function_signature = 2;
-  for (int i = 0, n = this->function_signature_size(); i < n; i++) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->function_signature(i).data(), static_cast<int>(this->function_signature(i).length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.Jar.function_signature");
+  for (int i = 0; i < this->function_signature_size(); i++) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->function_signature(i).data(), this->function_signature(i).length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target = ::google::protobuf::internal::WireFormatLite::
       WriteStringToArray(2, this->function_signature(i), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.Jar)
   return target;
 }
 
-size_t Jar::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.Jar)
-  size_t total_size = 0;
+int Jar::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    // optional string name = 1;
+    if (has_name()) {
+      total_size += 1 +
+        ::google::protobuf::internal::WireFormatLite::StringSize(
+          this->name());
+    }
+
   }
   // repeated string function_signature = 2;
-  total_size += 1 *
-      ::google::protobuf::internal::FromIntSize(this->function_signature_size());
-  for (int i = 0, n = this->function_signature_size(); i < n; i++) {
+  total_size += 1 * this->function_signature_size();
+  for (int i = 0; i < this->function_signature_size(); i++) {
     total_size += ::google::protobuf::internal::WireFormatLite::StringSize(
       this->function_signature(i));
   }
 
-  // optional string name = 1;
-  if (has_name()) {
-    total_size += 1 +
-      ::google::protobuf::internal::WireFormatLite::StringSize(
-        this->name());
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
   }
-
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void Jar::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.Jar)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const Jar* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const Jar>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const Jar*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.Jar)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.Jar)
     MergeFrom(*source);
   }
 }
 
 void Jar::MergeFrom(const Jar& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.Jar)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
+  GOOGLE_CHECK_NE(&from, this);
   function_signature_.MergeFrom(from.function_signature_);
-  if (from.has_name()) {
-    set_has_name();
-    name_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.name_);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_name()) {
+      set_name(from.name());
+    }
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void Jar::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.Jar)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void Jar::CopyFrom(const Jar& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.Jar)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool Jar::IsInitialized() const {
+
   return true;
 }
 
 void Jar::Swap(Jar* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void Jar::InternalSwap(Jar* other) {
-  using std::swap;
-  function_signature_.InternalSwap(CastToBase(&other->function_signature_));
-  name_.Swap(&other->name_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(name_, other->name_);
+    function_signature_.Swap(&other->function_signature_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata Jar::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = Jar_descriptor_;
+  metadata.reflection = Jar_reflection_;
+  return metadata;
 }
 
 
 // ===================================================================
 
-void SaslMessage::InitAsDefaultInstance() {
-}
-#if !defined(_MSC_VER) || _MSC_VER >= 1900
+#ifndef _MSC_VER
 const int SaslMessage::kMechanismFieldNumber;
 const int SaslMessage::kDataFieldNumber;
 const int SaslMessage::kStatusFieldNumber;
-#endif  // !defined(_MSC_VER) || _MSC_VER >= 1900
+#endif  // !_MSC_VER
 
 SaslMessage::SaslMessage()
-  : ::google::protobuf::Message(), _internal_metadata_(NULL) {
-  ::google::protobuf::internal::InitSCC(
-      &protobuf_UserBitShared_2eproto::scc_info_SaslMessage.base);
+  : ::google::protobuf::Message() {
   SharedCtor();
-  // @@protoc_insertion_point(constructor:exec.shared.SaslMessage)
 }
+
+void SaslMessage::InitAsDefaultInstance() {
+}
+
 SaslMessage::SaslMessage(const SaslMessage& from)
-  : ::google::protobuf::Message(),
-      _internal_metadata_(NULL),
-      _has_bits_(from._has_bits_) {
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  mechanism_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_mechanism()) {
-    mechanism_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.mechanism_);
-  }
-  data_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  if (from.has_data()) {
-    data_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.data_);
-  }
-  status_ = from.status_;
-  // @@protoc_insertion_point(copy_constructor:exec.shared.SaslMessage)
+  : ::google::protobuf::Message() {
+  SharedCtor();
+  MergeFrom(from);
 }
 
 void SaslMessage::SharedCtor() {
-  mechanism_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  data_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  _cached_size_ = 0;
+  mechanism_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+  data_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   status_ = 0;
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
 }
 
 SaslMessage::~SaslMessage() {
-  // @@protoc_insertion_point(destructor:exec.shared.SaslMessage)
   SharedDtor();
 }
 
 void SaslMessage::SharedDtor() {
-  mechanism_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
-  data_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (mechanism_ != &::google::protobuf::internal::kEmptyString) {
+    delete mechanism_;
+  }
+  if (data_ != &::google::protobuf::internal::kEmptyString) {
+    delete data_;
+  }
+  if (this != default_instance_) {
+  }
 }
 
 void SaslMessage::SetCachedSize(int size) const {
-  _cached_size_.Set(size);
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
 }
 const ::google::protobuf::Descriptor* SaslMessage::descriptor() {
-  ::protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages].descriptor;
+  protobuf_AssignDescriptorsOnce();
+  return SaslMessage_descriptor_;
 }
 
 const SaslMessage& SaslMessage::default_instance() {
-  ::google::protobuf::internal::InitSCC(&protobuf_UserBitShared_2eproto::scc_info_SaslMessage.base);
-  return *internal_default_instance();
+  if (default_instance_ == NULL) protobuf_AddDesc_UserBitShared_2eproto();
+  return *default_instance_;
 }
 
+SaslMessage* SaslMessage::default_instance_ = NULL;
+
+SaslMessage* SaslMessage::New() const {
+  return new SaslMessage;
+}
 
 void SaslMessage::Clear() {
-// @@protoc_insertion_point(message_clear_start:exec.shared.SaslMessage)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  // Prevent compiler warnings about cached_has_bits being unused
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
-  if (cached_has_bits & 3u) {
-    if (cached_has_bits & 0x00000001u) {
-      mechanism_.ClearNonDefaultToEmptyNoArena();
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (has_mechanism()) {
+      if (mechanism_ != &::google::protobuf::internal::kEmptyString) {
+        mechanism_->clear();
+      }
     }
-    if (cached_has_bits & 0x00000002u) {
-      data_.ClearNonDefaultToEmptyNoArena();
+    if (has_data()) {
+      if (data_ != &::google::protobuf::internal::kEmptyString) {
+        data_->clear();
+      }
     }
+    status_ = 0;
   }
-  status_ = 0;
-  _has_bits_.Clear();
-  _internal_metadata_.Clear();
+  ::memset(_has_bits_, 0, sizeof(_has_bits_));
+  mutable_unknown_fields()->Clear();
 }
 
 bool SaslMessage::MergePartialFromCodedStream(
     ::google::protobuf::io::CodedInputStream* input) {
-#define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure
+#define DO_(EXPRESSION) if (!(EXPRESSION)) return false
   ::google::protobuf::uint32 tag;
-  // @@protoc_insertion_point(parse_start:exec.shared.SaslMessage)
-  for (;;) {
-    ::std::pair<::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u);
-    tag = p.first;
-    if (!p.second) goto handle_unusual;
+  while ((tag = input->ReadTag()) != 0) {
     switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) {
       // optional string mechanism = 1;
       case 1: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(10u /* 10 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
           DO_(::google::protobuf::internal::WireFormatLite::ReadString(
                 input, this->mutable_mechanism()));
-          ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-            this->mechanism().data(), static_cast<int>(this->mechanism().length()),
-            ::google::protobuf::internal::WireFormat::PARSE,
-            "exec.shared.SaslMessage.mechanism");
+          ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+            this->mechanism().data(), this->mechanism().length(),
+            ::google::protobuf::internal::WireFormat::PARSE);
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(18)) goto parse_data;
         break;
       }
 
       // optional bytes data = 2;
       case 2: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(18u /* 18 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
+         parse_data:
           DO_(::google::protobuf::internal::WireFormatLite::ReadBytes(
                 input, this->mutable_data()));
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectTag(24)) goto parse_status;
         break;
       }
 
       // optional .exec.shared.SaslStatus status = 3;
       case 3: {
-        if (static_cast< ::google::protobuf::uint8>(tag) ==
-            static_cast< ::google::protobuf::uint8>(24u /* 24 & 0xFF */)) {
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
+         parse_status:
           int value;
           DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
                    int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>(
@@ -10477,121 +9492,96 @@
           if (::exec::shared::SaslStatus_IsValid(value)) {
             set_status(static_cast< ::exec::shared::SaslStatus >(value));
           } else {
-            mutable_unknown_fields()->AddVarint(
-                3, static_cast< ::google::protobuf::uint64>(value));
+            mutable_unknown_fields()->AddVarint(3, value);
           }
         } else {
-          goto handle_unusual;
+          goto handle_uninterpreted;
         }
+        if (input->ExpectAtEnd()) return true;
         break;
       }
 
       default: {
-      handle_unusual:
-        if (tag == 0) {
-          goto success;
+      handle_uninterpreted:
+        if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
+            ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) {
+          return true;
         }
         DO_(::google::protobuf::internal::WireFormat::SkipField(
-              input, tag, _internal_metadata_.mutable_unknown_fields()));
+              input, tag, mutable_unknown_fields()));
         break;
       }
     }
   }
-success:
-  // @@protoc_insertion_point(parse_success:exec.shared.SaslMessage)
   return true;
-failure:
-  // @@protoc_insertion_point(parse_failure:exec.shared.SaslMessage)
-  return false;
 #undef DO_
 }
 
 void SaslMessage::SerializeWithCachedSizes(
     ::google::protobuf::io::CodedOutputStream* output) const {
-  // @@protoc_insertion_point(serialize_start:exec.shared.SaslMessage)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
   // optional string mechanism = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->mechanism().data(), static_cast<int>(this->mechanism().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.SaslMessage.mechanism");
-    ::google::protobuf::internal::WireFormatLite::WriteStringMaybeAliased(
+  if (has_mechanism()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->mechanism().data(), this->mechanism().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
+    ::google::protobuf::internal::WireFormatLite::WriteString(
       1, this->mechanism(), output);
   }
 
   // optional bytes data = 2;
-  if (cached_has_bits & 0x00000002u) {
-    ::google::protobuf::internal::WireFormatLite::WriteBytesMaybeAliased(
+  if (has_data()) {
+    ::google::protobuf::internal::WireFormatLite::WriteBytes(
       2, this->data(), output);
   }
 
   // optional .exec.shared.SaslStatus status = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_status()) {
     ::google::protobuf::internal::WireFormatLite::WriteEnum(
       3, this->status(), output);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
-        _internal_metadata_.unknown_fields(), output);
+        unknown_fields(), output);
   }
-  // @@protoc_insertion_point(serialize_end:exec.shared.SaslMessage)
 }
 
-::google::protobuf::uint8* SaslMessage::InternalSerializeWithCachedSizesToArray(
-    bool deterministic, ::google::protobuf::uint8* target) const {
-  (void)deterministic; // Unused
-  // @@protoc_insertion_point(serialize_to_array_start:exec.shared.SaslMessage)
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = _has_bits_[0];
+::google::protobuf::uint8* SaslMessage::SerializeWithCachedSizesToArray(
+    ::google::protobuf::uint8* target) const {
   // optional string mechanism = 1;
-  if (cached_has_bits & 0x00000001u) {
-    ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(
-      this->mechanism().data(), static_cast<int>(this->mechanism().length()),
-      ::google::protobuf::internal::WireFormat::SERIALIZE,
-      "exec.shared.SaslMessage.mechanism");
+  if (has_mechanism()) {
+    ::google::protobuf::internal::WireFormat::VerifyUTF8String(
+      this->mechanism().data(), this->mechanism().length(),
+      ::google::protobuf::internal::WireFormat::SERIALIZE);
     target =
       ::google::protobuf::internal::WireFormatLite::WriteStringToArray(
         1, this->mechanism(), target);
   }
 
   // optional bytes data = 2;
-  if (cached_has_bits & 0x00000002u) {
+  if (has_data()) {
     target =
       ::google::protobuf::internal::WireFormatLite::WriteBytesToArray(
         2, this->data(), target);
   }
 
   // optional .exec.shared.SaslStatus status = 3;
-  if (cached_has_bits & 0x00000004u) {
+  if (has_status()) {
     target = ::google::protobuf::internal::WireFormatLite::WriteEnumToArray(
       3, this->status(), target);
   }
 
-  if (_internal_metadata_.have_unknown_fields()) {
+  if (!unknown_fields().empty()) {
     target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
-        _internal_metadata_.unknown_fields(), target);
+        unknown_fields(), target);
   }
-  // @@protoc_insertion_point(serialize_to_array_end:exec.shared.SaslMessage)
   return target;
 }
 
-size_t SaslMessage::ByteSizeLong() const {
-// @@protoc_insertion_point(message_byte_size_start:exec.shared.SaslMessage)
-  size_t total_size = 0;
+int SaslMessage::ByteSize() const {
+  int total_size = 0;
 
-  if (_internal_metadata_.have_unknown_fields()) {
-    total_size +=
-      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
-        _internal_metadata_.unknown_fields());
-  }
-  if (_has_bits_[0 / 32] & 7u) {
+  if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
     // optional string mechanism = 1;
     if (has_mechanism()) {
       total_size += 1 +
@@ -10613,161 +9603,85 @@
     }
 
   }
-  int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
-  SetCachedSize(cached_size);
+  if (!unknown_fields().empty()) {
+    total_size +=
+      ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize(
+        unknown_fields());
+  }
+  GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
+  _cached_size_ = total_size;
+  GOOGLE_SAFE_CONCURRENT_WRITES_END();
   return total_size;
 }
 
 void SaslMessage::MergeFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_merge_from_start:exec.shared.SaslMessage)
-  GOOGLE_DCHECK_NE(&from, this);
+  GOOGLE_CHECK_NE(&from, this);
   const SaslMessage* source =
-      ::google::protobuf::internal::DynamicCastToGenerated<const SaslMessage>(
-          &from);
+    ::google::protobuf::internal::dynamic_cast_if_available<const SaslMessage*>(
+      &from);
   if (source == NULL) {
-  // @@protoc_insertion_point(generalized_merge_from_cast_fail:exec.shared.SaslMessage)
     ::google::protobuf::internal::ReflectionOps::Merge(from, this);
   } else {
-  // @@protoc_insertion_point(generalized_merge_from_cast_success:exec.shared.SaslMessage)
     MergeFrom(*source);
   }
 }
 
 void SaslMessage::MergeFrom(const SaslMessage& from) {
-// @@protoc_insertion_point(class_specific_merge_from_start:exec.shared.SaslMessage)
-  GOOGLE_DCHECK_NE(&from, this);
-  _internal_metadata_.MergeFrom(from._internal_metadata_);
-  ::google::protobuf::uint32 cached_has_bits = 0;
-  (void) cached_has_bits;
-
-  cached_has_bits = from._has_bits_[0];
-  if (cached_has_bits & 7u) {
-    if (cached_has_bits & 0x00000001u) {
-      set_has_mechanism();
-      mechanism_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.mechanism_);
+  GOOGLE_CHECK_NE(&from, this);
+  if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) {
+    if (from.has_mechanism()) {
+      set_mechanism(from.mechanism());
     }
-    if (cached_has_bits & 0x00000002u) {
-      set_has_data();
-      data_.AssignWithDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), from.data_);
+    if (from.has_data()) {
+      set_data(from.data());
     }
-    if (cached_has_bits & 0x00000004u) {
-      status_ = from.status_;
+    if (from.has_status()) {
+      set_status(from.status());
     }
-    _has_bits_[0] |= cached_has_bits;
   }
+  mutable_unknown_fields()->MergeFrom(from.unknown_fields());
 }
 
 void SaslMessage::CopyFrom(const ::google::protobuf::Message& from) {
-// @@protoc_insertion_point(generalized_copy_from_start:exec.shared.SaslMessage)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 void SaslMessage::CopyFrom(const SaslMessage& from) {
-// @@protoc_insertion_point(class_specific_copy_from_start:exec.shared.SaslMessage)
   if (&from == this) return;
   Clear();
   MergeFrom(from);
 }
 
 bool SaslMessage::IsInitialized() const {
+
   return true;
 }
 
 void SaslMessage::Swap(SaslMessage* other) {
-  if (other == this) return;
-  InternalSwap(other);
-}
-void SaslMessage::InternalSwap(SaslMessage* other) {
-  using std::swap;
-  mechanism_.Swap(&other->mechanism_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  data_.Swap(&other->data_, &::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-    GetArenaNoVirtual());
-  swap(status_, other->status_);
-  swap(_has_bits_[0], other->_has_bits_[0]);
-  _internal_metadata_.Swap(&other->_internal_metadata_);
+  if (other != this) {
+    std::swap(mechanism_, other->mechanism_);
+    std::swap(data_, other->data_);
+    std::swap(status_, other->status_);
+    std::swap(_has_bits_[0], other->_has_bits_[0]);
+    _unknown_fields_.Swap(&other->_unknown_fields_);
+    std::swap(_cached_size_, other->_cached_size_);
+  }
 }
 
 ::google::protobuf::Metadata SaslMessage::GetMetadata() const {
-  protobuf_UserBitShared_2eproto::protobuf_AssignDescriptorsOnce();
-  return ::protobuf_UserBitShared_2eproto::file_level_metadata[kIndexInFileMessages];
+  protobuf_AssignDescriptorsOnce();
+  ::google::protobuf::Metadata metadata;
+  metadata.descriptor = SaslMessage_descriptor_;
+  metadata.reflection = SaslMessage_reflection_;
+  return metadata;
 }
 
 
 // @@protoc_insertion_point(namespace_scope)
+
 }  // namespace shared
 }  // namespace exec
-namespace google {
-namespace protobuf {
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::UserCredentials* Arena::CreateMaybeMessage< ::exec::shared::UserCredentials >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::UserCredentials >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::QueryId* Arena::CreateMaybeMessage< ::exec::shared::QueryId >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::QueryId >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::DrillPBError* Arena::CreateMaybeMessage< ::exec::shared::DrillPBError >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::DrillPBError >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::ExceptionWrapper* Arena::CreateMaybeMessage< ::exec::shared::ExceptionWrapper >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::ExceptionWrapper >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::StackTraceElementWrapper* Arena::CreateMaybeMessage< ::exec::shared::StackTraceElementWrapper >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::StackTraceElementWrapper >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::ParsingError* Arena::CreateMaybeMessage< ::exec::shared::ParsingError >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::ParsingError >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::RecordBatchDef* Arena::CreateMaybeMessage< ::exec::shared::RecordBatchDef >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::RecordBatchDef >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::NamePart* Arena::CreateMaybeMessage< ::exec::shared::NamePart >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::NamePart >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::SerializedField* Arena::CreateMaybeMessage< ::exec::shared::SerializedField >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::SerializedField >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::NodeStatus* Arena::CreateMaybeMessage< ::exec::shared::NodeStatus >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::NodeStatus >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::QueryResult* Arena::CreateMaybeMessage< ::exec::shared::QueryResult >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::QueryResult >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::QueryData* Arena::CreateMaybeMessage< ::exec::shared::QueryData >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::QueryData >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::QueryInfo* Arena::CreateMaybeMessage< ::exec::shared::QueryInfo >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::QueryInfo >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::QueryProfile* Arena::CreateMaybeMessage< ::exec::shared::QueryProfile >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::QueryProfile >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::MajorFragmentProfile* Arena::CreateMaybeMessage< ::exec::shared::MajorFragmentProfile >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::MajorFragmentProfile >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::MinorFragmentProfile* Arena::CreateMaybeMessage< ::exec::shared::MinorFragmentProfile >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::MinorFragmentProfile >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::OperatorProfile* Arena::CreateMaybeMessage< ::exec::shared::OperatorProfile >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::OperatorProfile >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::StreamProfile* Arena::CreateMaybeMessage< ::exec::shared::StreamProfile >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::StreamProfile >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::MetricValue* Arena::CreateMaybeMessage< ::exec::shared::MetricValue >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::MetricValue >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::Registry* Arena::CreateMaybeMessage< ::exec::shared::Registry >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::Registry >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::Jar* Arena::CreateMaybeMessage< ::exec::shared::Jar >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::Jar >(arena);
-}
-template<> GOOGLE_PROTOBUF_ATTRIBUTE_NOINLINE ::exec::shared::SaslMessage* Arena::CreateMaybeMessage< ::exec::shared::SaslMessage >(Arena* arena) {
-  return Arena::CreateInternal< ::exec::shared::SaslMessage >(arena);
-}
-}  // namespace protobuf
-}  // namespace google
 
 // @@protoc_insertion_point(global_scope)
diff --git a/contrib/native/client/src/protobuf/UserBitShared.pb.h b/contrib/native/client/src/protobuf/UserBitShared.pb.h
index e186f13..91826ac 100644
--- a/contrib/native/client/src/protobuf/UserBitShared.pb.h
+++ b/contrib/native/client/src/protobuf/UserBitShared.pb.h
@@ -1,152 +1,65 @@
 // Generated by the protocol buffer compiler.  DO NOT EDIT!
 // source: UserBitShared.proto
 
-#ifndef PROTOBUF_INCLUDED_UserBitShared_2eproto
-#define PROTOBUF_INCLUDED_UserBitShared_2eproto
+#ifndef PROTOBUF_UserBitShared_2eproto__INCLUDED
+#define PROTOBUF_UserBitShared_2eproto__INCLUDED
 
 #include <string>
 
 #include <google/protobuf/stubs/common.h>
 
-#if GOOGLE_PROTOBUF_VERSION < 3006001
+#if GOOGLE_PROTOBUF_VERSION < 2005000
 #error This file was generated by a newer version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please update
 #error your headers.
 #endif
-#if 3006001 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
+#if 2005000 < GOOGLE_PROTOBUF_MIN_PROTOC_VERSION
 #error This file was generated by an older version of protoc which is
 #error incompatible with your Protocol Buffer headers.  Please
 #error regenerate this file with a newer version of protoc.
 #endif
 
-#include <google/protobuf/io/coded_stream.h>
-#include <google/protobuf/arena.h>
-#include <google/protobuf/arenastring.h>
-#include <google/protobuf/generated_message_table_driven.h>
 #include <google/protobuf/generated_message_util.h>
-#include <google/protobuf/inlined_string_field.h>
-#include <google/protobuf/metadata.h>
 #include <google/protobuf/message.h>
-#include <google/protobuf/repeated_field.h>  // IWYU pragma: export
-#include <google/protobuf/extension_set.h>  // IWYU pragma: export
+#include <google/protobuf/repeated_field.h>
+#include <google/protobuf/extension_set.h>
 #include <google/protobuf/generated_enum_reflection.h>
 #include <google/protobuf/unknown_field_set.h>
 #include "Types.pb.h"
 #include "Coordination.pb.h"
 #include "SchemaDef.pb.h"
 // @@protoc_insertion_point(includes)
-#define PROTOBUF_INTERNAL_EXPORT_protobuf_UserBitShared_2eproto 
 
-namespace protobuf_UserBitShared_2eproto {
-// Internal implementation detail -- do not use these members.
-struct TableStruct {
-  static const ::google::protobuf::internal::ParseTableField entries[];
-  static const ::google::protobuf::internal::AuxillaryParseTableField aux[];
-  static const ::google::protobuf::internal::ParseTable schema[22];
-  static const ::google::protobuf::internal::FieldMetadata field_metadata[];
-  static const ::google::protobuf::internal::SerializationTable serialization_table[];
-  static const ::google::protobuf::uint32 offsets[];
-};
-void AddDescriptors();
-}  // namespace protobuf_UserBitShared_2eproto
 namespace exec {
 namespace shared {
-class DrillPBError;
-class DrillPBErrorDefaultTypeInternal;
-extern DrillPBErrorDefaultTypeInternal _DrillPBError_default_instance_;
-class ExceptionWrapper;
-class ExceptionWrapperDefaultTypeInternal;
-extern ExceptionWrapperDefaultTypeInternal _ExceptionWrapper_default_instance_;
-class Jar;
-class JarDefaultTypeInternal;
-extern JarDefaultTypeInternal _Jar_default_instance_;
-class MajorFragmentProfile;
-class MajorFragmentProfileDefaultTypeInternal;
-extern MajorFragmentProfileDefaultTypeInternal _MajorFragmentProfile_default_instance_;
-class MetricValue;
-class MetricValueDefaultTypeInternal;
-extern MetricValueDefaultTypeInternal _MetricValue_default_instance_;
-class MinorFragmentProfile;
-class MinorFragmentProfileDefaultTypeInternal;
-extern MinorFragmentProfileDefaultTypeInternal _MinorFragmentProfile_default_instance_;
-class NamePart;
-class NamePartDefaultTypeInternal;
-extern NamePartDefaultTypeInternal _NamePart_default_instance_;
-class NodeStatus;
-class NodeStatusDefaultTypeInternal;
-extern NodeStatusDefaultTypeInternal _NodeStatus_default_instance_;
-class OperatorProfile;
-class OperatorProfileDefaultTypeInternal;
-extern OperatorProfileDefaultTypeInternal _OperatorProfile_default_instance_;
-class ParsingError;
-class ParsingErrorDefaultTypeInternal;
-extern ParsingErrorDefaultTypeInternal _ParsingError_default_instance_;
-class QueryData;
-class QueryDataDefaultTypeInternal;
-extern QueryDataDefaultTypeInternal _QueryData_default_instance_;
-class QueryId;
-class QueryIdDefaultTypeInternal;
-extern QueryIdDefaultTypeInternal _QueryId_default_instance_;
-class QueryInfo;
-class QueryInfoDefaultTypeInternal;
-extern QueryInfoDefaultTypeInternal _QueryInfo_default_instance_;
-class QueryProfile;
-class QueryProfileDefaultTypeInternal;
-extern QueryProfileDefaultTypeInternal _QueryProfile_default_instance_;
-class QueryResult;
-class QueryResultDefaultTypeInternal;
-extern QueryResultDefaultTypeInternal _QueryResult_default_instance_;
-class RecordBatchDef;
-class RecordBatchDefDefaultTypeInternal;
-extern RecordBatchDefDefaultTypeInternal _RecordBatchDef_default_instance_;
-class Registry;
-class RegistryDefaultTypeInternal;
-extern RegistryDefaultTypeInternal _Registry_default_instance_;
-class SaslMessage;
-class SaslMessageDefaultTypeInternal;
-extern SaslMessageDefaultTypeInternal _SaslMessage_default_instance_;
-class SerializedField;
-class SerializedFieldDefaultTypeInternal;
-extern SerializedFieldDefaultTypeInternal _SerializedField_default_instance_;
-class StackTraceElementWrapper;
-class StackTraceElementWrapperDefaultTypeInternal;
-extern StackTraceElementWrapperDefaultTypeInternal _StackTraceElementWrapper_default_instance_;
-class StreamProfile;
-class StreamProfileDefaultTypeInternal;
-extern StreamProfileDefaultTypeInternal _StreamProfile_default_instance_;
+
+// Internal implementation detail -- do not call these.
+void  protobuf_AddDesc_UserBitShared_2eproto();
+void protobuf_AssignDesc_UserBitShared_2eproto();
+void protobuf_ShutdownFile_UserBitShared_2eproto();
+
 class UserCredentials;
-class UserCredentialsDefaultTypeInternal;
-extern UserCredentialsDefaultTypeInternal _UserCredentials_default_instance_;
-}  // namespace shared
-}  // namespace exec
-namespace google {
-namespace protobuf {
-template<> ::exec::shared::DrillPBError* Arena::CreateMaybeMessage<::exec::shared::DrillPBError>(Arena*);
-template<> ::exec::shared::ExceptionWrapper* Arena::CreateMaybeMessage<::exec::shared::ExceptionWrapper>(Arena*);
-template<> ::exec::shared::Jar* Arena::CreateMaybeMessage<::exec::shared::Jar>(Arena*);
-template<> ::exec::shared::MajorFragmentProfile* Arena::CreateMaybeMessage<::exec::shared::MajorFragmentProfile>(Arena*);
-template<> ::exec::shared::MetricValue* Arena::CreateMaybeMessage<::exec::shared::MetricValue>(Arena*);
-template<> ::exec::shared::MinorFragmentProfile* Arena::CreateMaybeMessage<::exec::shared::MinorFragmentProfile>(Arena*);
-template<> ::exec::shared::NamePart* Arena::CreateMaybeMessage<::exec::shared::NamePart>(Arena*);
-template<> ::exec::shared::NodeStatus* Arena::CreateMaybeMessage<::exec::shared::NodeStatus>(Arena*);
-template<> ::exec::shared::OperatorProfile* Arena::CreateMaybeMessage<::exec::shared::OperatorProfile>(Arena*);
-template<> ::exec::shared::ParsingError* Arena::CreateMaybeMessage<::exec::shared::ParsingError>(Arena*);
-template<> ::exec::shared::QueryData* Arena::CreateMaybeMessage<::exec::shared::QueryData>(Arena*);
-template<> ::exec::shared::QueryId* Arena::CreateMaybeMessage<::exec::shared::QueryId>(Arena*);
-template<> ::exec::shared::QueryInfo* Arena::CreateMaybeMessage<::exec::shared::QueryInfo>(Arena*);
-template<> ::exec::shared::QueryProfile* Arena::CreateMaybeMessage<::exec::shared::QueryProfile>(Arena*);
-template<> ::exec::shared::QueryResult* Arena::CreateMaybeMessage<::exec::shared::QueryResult>(Arena*);
-template<> ::exec::shared::RecordBatchDef* Arena::CreateMaybeMessage<::exec::shared::RecordBatchDef>(Arena*);
-template<> ::exec::shared::Registry* Arena::CreateMaybeMessage<::exec::shared::Registry>(Arena*);
-template<> ::exec::shared::SaslMessage* Arena::CreateMaybeMessage<::exec::shared::SaslMessage>(Arena*);
-template<> ::exec::shared::SerializedField* Arena::CreateMaybeMessage<::exec::shared::SerializedField>(Arena*);
-template<> ::exec::shared::StackTraceElementWrapper* Arena::CreateMaybeMessage<::exec::shared::StackTraceElementWrapper>(Arena*);
-template<> ::exec::shared::StreamProfile* Arena::CreateMaybeMessage<::exec::shared::StreamProfile>(Arena*);
-template<> ::exec::shared::UserCredentials* Arena::CreateMaybeMessage<::exec::shared::UserCredentials>(Arena*);
-}  // namespace protobuf
-}  // namespace google
-namespace exec {
-namespace shared {
+class QueryId;
+class DrillPBError;
+class ExceptionWrapper;
+class StackTraceElementWrapper;
+class ParsingError;
+class RecordBatchDef;
+class NamePart;
+class SerializedField;
+class NodeStatus;
+class QueryResult;
+class QueryData;
+class QueryInfo;
+class QueryProfile;
+class MajorFragmentProfile;
+class MinorFragmentProfile;
+class OperatorProfile;
+class StreamProfile;
+class MetricValue;
+class Registry;
+class Jar;
+class SaslMessage;
 
 enum DrillPBError_ErrorType {
   DrillPBError_ErrorType_CONNECTION = 0,
@@ -394,7 +307,7 @@
 }
 // ===================================================================
 
-class UserCredentials : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.UserCredentials) */ {
+class UserCredentials : public ::google::protobuf::Message {
  public:
   UserCredentials();
   virtual ~UserCredentials();
@@ -405,118 +318,83 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  UserCredentials(UserCredentials&& from) noexcept
-    : UserCredentials() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline UserCredentials& operator=(UserCredentials&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const UserCredentials& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const UserCredentials* internal_default_instance() {
-    return reinterpret_cast<const UserCredentials*>(
-               &_UserCredentials_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    0;
-
   void Swap(UserCredentials* other);
-  friend void swap(UserCredentials& a, UserCredentials& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline UserCredentials* New() const final {
-    return CreateMaybeMessage<UserCredentials>(NULL);
-  }
-
-  UserCredentials* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<UserCredentials>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  UserCredentials* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const UserCredentials& from);
   void MergeFrom(const UserCredentials& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(UserCredentials* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string user_name = 1;
-  bool has_user_name() const;
-  void clear_user_name();
+  inline bool has_user_name() const;
+  inline void clear_user_name();
   static const int kUserNameFieldNumber = 1;
-  const ::std::string& user_name() const;
-  void set_user_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_user_name(::std::string&& value);
-  #endif
-  void set_user_name(const char* value);
-  void set_user_name(const char* value, size_t size);
-  ::std::string* mutable_user_name();
-  ::std::string* release_user_name();
-  void set_allocated_user_name(::std::string* user_name);
+  inline const ::std::string& user_name() const;
+  inline void set_user_name(const ::std::string& value);
+  inline void set_user_name(const char* value);
+  inline void set_user_name(const char* value, size_t size);
+  inline ::std::string* mutable_user_name();
+  inline ::std::string* release_user_name();
+  inline void set_allocated_user_name(::std::string* user_name);
 
   // @@protoc_insertion_point(class_scope:exec.shared.UserCredentials)
  private:
-  void set_has_user_name();
-  void clear_has_user_name();
+  inline void set_has_user_name();
+  inline void clear_has_user_name();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr user_name_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* user_name_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static UserCredentials* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class QueryId : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.QueryId) */ {
+class QueryId : public ::google::protobuf::Message {
  public:
   QueryId();
   virtual ~QueryId();
@@ -527,120 +405,88 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  QueryId(QueryId&& from) noexcept
-    : QueryId() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline QueryId& operator=(QueryId&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const QueryId& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const QueryId* internal_default_instance() {
-    return reinterpret_cast<const QueryId*>(
-               &_QueryId_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    1;
-
   void Swap(QueryId* other);
-  friend void swap(QueryId& a, QueryId& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline QueryId* New() const final {
-    return CreateMaybeMessage<QueryId>(NULL);
-  }
-
-  QueryId* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<QueryId>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  QueryId* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const QueryId& from);
   void MergeFrom(const QueryId& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(QueryId* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional sfixed64 part1 = 1;
-  bool has_part1() const;
-  void clear_part1();
+  inline bool has_part1() const;
+  inline void clear_part1();
   static const int kPart1FieldNumber = 1;
-  ::google::protobuf::int64 part1() const;
-  void set_part1(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 part1() const;
+  inline void set_part1(::google::protobuf::int64 value);
 
   // optional sfixed64 part2 = 2;
-  bool has_part2() const;
-  void clear_part2();
+  inline bool has_part2() const;
+  inline void clear_part2();
   static const int kPart2FieldNumber = 2;
-  ::google::protobuf::int64 part2() const;
-  void set_part2(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 part2() const;
+  inline void set_part2(::google::protobuf::int64 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.QueryId)
  private:
-  void set_has_part1();
-  void clear_has_part1();
-  void set_has_part2();
-  void clear_has_part2();
+  inline void set_has_part1();
+  inline void clear_has_part1();
+  inline void set_has_part2();
+  inline void clear_has_part2();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::int64 part1_;
   ::google::protobuf::int64 part2_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static QueryId* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class DrillPBError : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.DrillPBError) */ {
+class DrillPBError : public ::google::protobuf::Message {
  public:
   DrillPBError();
   virtual ~DrillPBError();
@@ -651,116 +497,62 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  DrillPBError(DrillPBError&& from) noexcept
-    : DrillPBError() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline DrillPBError& operator=(DrillPBError&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const DrillPBError& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const DrillPBError* internal_default_instance() {
-    return reinterpret_cast<const DrillPBError*>(
-               &_DrillPBError_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    2;
-
   void Swap(DrillPBError* other);
-  friend void swap(DrillPBError& a, DrillPBError& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline DrillPBError* New() const final {
-    return CreateMaybeMessage<DrillPBError>(NULL);
-  }
-
-  DrillPBError* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<DrillPBError>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  DrillPBError* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const DrillPBError& from);
   void MergeFrom(const DrillPBError& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(DrillPBError* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   typedef DrillPBError_ErrorType ErrorType;
-  static const ErrorType CONNECTION =
-    DrillPBError_ErrorType_CONNECTION;
-  static const ErrorType DATA_READ =
-    DrillPBError_ErrorType_DATA_READ;
-  static const ErrorType DATA_WRITE =
-    DrillPBError_ErrorType_DATA_WRITE;
-  static const ErrorType FUNCTION =
-    DrillPBError_ErrorType_FUNCTION;
-  static const ErrorType PARSE =
-    DrillPBError_ErrorType_PARSE;
-  static const ErrorType PERMISSION =
-    DrillPBError_ErrorType_PERMISSION;
-  static const ErrorType PLAN =
-    DrillPBError_ErrorType_PLAN;
-  static const ErrorType RESOURCE =
-    DrillPBError_ErrorType_RESOURCE;
-  static const ErrorType SYSTEM =
-    DrillPBError_ErrorType_SYSTEM;
-  static const ErrorType UNSUPPORTED_OPERATION =
-    DrillPBError_ErrorType_UNSUPPORTED_OPERATION;
-  static const ErrorType VALIDATION =
-    DrillPBError_ErrorType_VALIDATION;
-  static const ErrorType EXECUTION_ERROR =
-    DrillPBError_ErrorType_EXECUTION_ERROR;
-  static const ErrorType INTERNAL_ERROR =
-    DrillPBError_ErrorType_INTERNAL_ERROR;
-  static const ErrorType UNSPECIFIED_ERROR =
-    DrillPBError_ErrorType_UNSPECIFIED_ERROR;
+  static const ErrorType CONNECTION = DrillPBError_ErrorType_CONNECTION;
+  static const ErrorType DATA_READ = DrillPBError_ErrorType_DATA_READ;
+  static const ErrorType DATA_WRITE = DrillPBError_ErrorType_DATA_WRITE;
+  static const ErrorType FUNCTION = DrillPBError_ErrorType_FUNCTION;
+  static const ErrorType PARSE = DrillPBError_ErrorType_PARSE;
+  static const ErrorType PERMISSION = DrillPBError_ErrorType_PERMISSION;
+  static const ErrorType PLAN = DrillPBError_ErrorType_PLAN;
+  static const ErrorType RESOURCE = DrillPBError_ErrorType_RESOURCE;
+  static const ErrorType SYSTEM = DrillPBError_ErrorType_SYSTEM;
+  static const ErrorType UNSUPPORTED_OPERATION = DrillPBError_ErrorType_UNSUPPORTED_OPERATION;
+  static const ErrorType VALIDATION = DrillPBError_ErrorType_VALIDATION;
+  static const ErrorType EXECUTION_ERROR = DrillPBError_ErrorType_EXECUTION_ERROR;
+  static const ErrorType INTERNAL_ERROR = DrillPBError_ErrorType_INTERNAL_ERROR;
+  static const ErrorType UNSPECIFIED_ERROR = DrillPBError_ErrorType_UNSPECIFIED_ERROR;
   static inline bool ErrorType_IsValid(int value) {
     return DrillPBError_ErrorType_IsValid(value);
   }
@@ -784,106 +576,102 @@
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.shared.ParsingError parsing_error = 6;
-  int parsing_error_size() const;
-  void clear_parsing_error();
-  static const int kParsingErrorFieldNumber = 6;
-  ::exec::shared::ParsingError* mutable_parsing_error(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::ParsingError >*
-      mutable_parsing_error();
-  const ::exec::shared::ParsingError& parsing_error(int index) const;
-  ::exec::shared::ParsingError* add_parsing_error();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::ParsingError >&
-      parsing_error() const;
-
   // optional string error_id = 1;
-  bool has_error_id() const;
-  void clear_error_id();
+  inline bool has_error_id() const;
+  inline void clear_error_id();
   static const int kErrorIdFieldNumber = 1;
-  const ::std::string& error_id() const;
-  void set_error_id(const ::std::string& value);
-  #if LANG_CXX11
-  void set_error_id(::std::string&& value);
-  #endif
-  void set_error_id(const char* value);
-  void set_error_id(const char* value, size_t size);
-  ::std::string* mutable_error_id();
-  ::std::string* release_error_id();
-  void set_allocated_error_id(::std::string* error_id);
-
-  // optional string message = 4;
-  bool has_message() const;
-  void clear_message();
-  static const int kMessageFieldNumber = 4;
-  const ::std::string& message() const;
-  void set_message(const ::std::string& value);
-  #if LANG_CXX11
-  void set_message(::std::string&& value);
-  #endif
-  void set_message(const char* value);
-  void set_message(const char* value, size_t size);
-  ::std::string* mutable_message();
-  ::std::string* release_message();
-  void set_allocated_message(::std::string* message);
+  inline const ::std::string& error_id() const;
+  inline void set_error_id(const ::std::string& value);
+  inline void set_error_id(const char* value);
+  inline void set_error_id(const char* value, size_t size);
+  inline ::std::string* mutable_error_id();
+  inline ::std::string* release_error_id();
+  inline void set_allocated_error_id(::std::string* error_id);
 
   // optional .exec.DrillbitEndpoint endpoint = 2;
-  bool has_endpoint() const;
-  void clear_endpoint();
+  inline bool has_endpoint() const;
+  inline void clear_endpoint();
   static const int kEndpointFieldNumber = 2;
-  private:
-  const ::exec::DrillbitEndpoint& _internal_endpoint() const;
-  public:
-  const ::exec::DrillbitEndpoint& endpoint() const;
-  ::exec::DrillbitEndpoint* release_endpoint();
-  ::exec::DrillbitEndpoint* mutable_endpoint();
-  void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
-
-  // optional .exec.shared.ExceptionWrapper exception = 5;
-  bool has_exception() const;
-  void clear_exception();
-  static const int kExceptionFieldNumber = 5;
-  private:
-  const ::exec::shared::ExceptionWrapper& _internal_exception() const;
-  public:
-  const ::exec::shared::ExceptionWrapper& exception() const;
-  ::exec::shared::ExceptionWrapper* release_exception();
-  ::exec::shared::ExceptionWrapper* mutable_exception();
-  void set_allocated_exception(::exec::shared::ExceptionWrapper* exception);
+  inline const ::exec::DrillbitEndpoint& endpoint() const;
+  inline ::exec::DrillbitEndpoint* mutable_endpoint();
+  inline ::exec::DrillbitEndpoint* release_endpoint();
+  inline void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
 
   // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
-  bool has_error_type() const;
-  void clear_error_type();
+  inline bool has_error_type() const;
+  inline void clear_error_type();
   static const int kErrorTypeFieldNumber = 3;
-  ::exec::shared::DrillPBError_ErrorType error_type() const;
-  void set_error_type(::exec::shared::DrillPBError_ErrorType value);
+  inline ::exec::shared::DrillPBError_ErrorType error_type() const;
+  inline void set_error_type(::exec::shared::DrillPBError_ErrorType value);
+
+  // optional string message = 4;
+  inline bool has_message() const;
+  inline void clear_message();
+  static const int kMessageFieldNumber = 4;
+  inline const ::std::string& message() const;
+  inline void set_message(const ::std::string& value);
+  inline void set_message(const char* value);
+  inline void set_message(const char* value, size_t size);
+  inline ::std::string* mutable_message();
+  inline ::std::string* release_message();
+  inline void set_allocated_message(::std::string* message);
+
+  // optional .exec.shared.ExceptionWrapper exception = 5;
+  inline bool has_exception() const;
+  inline void clear_exception();
+  static const int kExceptionFieldNumber = 5;
+  inline const ::exec::shared::ExceptionWrapper& exception() const;
+  inline ::exec::shared::ExceptionWrapper* mutable_exception();
+  inline ::exec::shared::ExceptionWrapper* release_exception();
+  inline void set_allocated_exception(::exec::shared::ExceptionWrapper* exception);
+
+  // repeated .exec.shared.ParsingError parsing_error = 6;
+  inline int parsing_error_size() const;
+  inline void clear_parsing_error();
+  static const int kParsingErrorFieldNumber = 6;
+  inline const ::exec::shared::ParsingError& parsing_error(int index) const;
+  inline ::exec::shared::ParsingError* mutable_parsing_error(int index);
+  inline ::exec::shared::ParsingError* add_parsing_error();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::ParsingError >&
+      parsing_error() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::ParsingError >*
+      mutable_parsing_error();
 
   // @@protoc_insertion_point(class_scope:exec.shared.DrillPBError)
  private:
-  void set_has_error_id();
-  void clear_has_error_id();
-  void set_has_endpoint();
-  void clear_has_endpoint();
-  void set_has_error_type();
-  void clear_has_error_type();
-  void set_has_message();
-  void clear_has_message();
-  void set_has_exception();
-  void clear_has_exception();
+  inline void set_has_error_id();
+  inline void clear_has_error_id();
+  inline void set_has_endpoint();
+  inline void clear_has_endpoint();
+  inline void set_has_error_type();
+  inline void clear_has_error_type();
+  inline void set_has_message();
+  inline void clear_has_message();
+  inline void set_has_exception();
+  inline void clear_has_exception();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::ParsingError > parsing_error_;
-  ::google::protobuf::internal::ArenaStringPtr error_id_;
-  ::google::protobuf::internal::ArenaStringPtr message_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* error_id_;
   ::exec::DrillbitEndpoint* endpoint_;
+  ::std::string* message_;
   ::exec::shared::ExceptionWrapper* exception_;
+  ::google::protobuf::RepeatedPtrField< ::exec::shared::ParsingError > parsing_error_;
   int error_type_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(6 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static DrillPBError* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class ExceptionWrapper : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.ExceptionWrapper) */ {
+class ExceptionWrapper : public ::google::protobuf::Message {
  public:
   ExceptionWrapper();
   virtual ~ExceptionWrapper();
@@ -894,164 +682,123 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  ExceptionWrapper(ExceptionWrapper&& from) noexcept
-    : ExceptionWrapper() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline ExceptionWrapper& operator=(ExceptionWrapper&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const ExceptionWrapper& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const ExceptionWrapper* internal_default_instance() {
-    return reinterpret_cast<const ExceptionWrapper*>(
-               &_ExceptionWrapper_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    3;
-
   void Swap(ExceptionWrapper* other);
-  friend void swap(ExceptionWrapper& a, ExceptionWrapper& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline ExceptionWrapper* New() const final {
-    return CreateMaybeMessage<ExceptionWrapper>(NULL);
-  }
-
-  ExceptionWrapper* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<ExceptionWrapper>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  ExceptionWrapper* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const ExceptionWrapper& from);
   void MergeFrom(const ExceptionWrapper& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(ExceptionWrapper* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
-  int stack_trace_size() const;
-  void clear_stack_trace();
-  static const int kStackTraceFieldNumber = 3;
-  ::exec::shared::StackTraceElementWrapper* mutable_stack_trace(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::StackTraceElementWrapper >*
-      mutable_stack_trace();
-  const ::exec::shared::StackTraceElementWrapper& stack_trace(int index) const;
-  ::exec::shared::StackTraceElementWrapper* add_stack_trace();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::StackTraceElementWrapper >&
-      stack_trace() const;
-
   // optional string exception_class = 1;
-  bool has_exception_class() const;
-  void clear_exception_class();
+  inline bool has_exception_class() const;
+  inline void clear_exception_class();
   static const int kExceptionClassFieldNumber = 1;
-  const ::std::string& exception_class() const;
-  void set_exception_class(const ::std::string& value);
-  #if LANG_CXX11
-  void set_exception_class(::std::string&& value);
-  #endif
-  void set_exception_class(const char* value);
-  void set_exception_class(const char* value, size_t size);
-  ::std::string* mutable_exception_class();
-  ::std::string* release_exception_class();
-  void set_allocated_exception_class(::std::string* exception_class);
+  inline const ::std::string& exception_class() const;
+  inline void set_exception_class(const ::std::string& value);
+  inline void set_exception_class(const char* value);
+  inline void set_exception_class(const char* value, size_t size);
+  inline ::std::string* mutable_exception_class();
+  inline ::std::string* release_exception_class();
+  inline void set_allocated_exception_class(::std::string* exception_class);
 
   // optional string message = 2;
-  bool has_message() const;
-  void clear_message();
+  inline bool has_message() const;
+  inline void clear_message();
   static const int kMessageFieldNumber = 2;
-  const ::std::string& message() const;
-  void set_message(const ::std::string& value);
-  #if LANG_CXX11
-  void set_message(::std::string&& value);
-  #endif
-  void set_message(const char* value);
-  void set_message(const char* value, size_t size);
-  ::std::string* mutable_message();
-  ::std::string* release_message();
-  void set_allocated_message(::std::string* message);
+  inline const ::std::string& message() const;
+  inline void set_message(const ::std::string& value);
+  inline void set_message(const char* value);
+  inline void set_message(const char* value, size_t size);
+  inline ::std::string* mutable_message();
+  inline ::std::string* release_message();
+  inline void set_allocated_message(::std::string* message);
+
+  // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
+  inline int stack_trace_size() const;
+  inline void clear_stack_trace();
+  static const int kStackTraceFieldNumber = 3;
+  inline const ::exec::shared::StackTraceElementWrapper& stack_trace(int index) const;
+  inline ::exec::shared::StackTraceElementWrapper* mutable_stack_trace(int index);
+  inline ::exec::shared::StackTraceElementWrapper* add_stack_trace();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::StackTraceElementWrapper >&
+      stack_trace() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::StackTraceElementWrapper >*
+      mutable_stack_trace();
 
   // optional .exec.shared.ExceptionWrapper cause = 4;
-  bool has_cause() const;
-  void clear_cause();
+  inline bool has_cause() const;
+  inline void clear_cause();
   static const int kCauseFieldNumber = 4;
-  private:
-  const ::exec::shared::ExceptionWrapper& _internal_cause() const;
-  public:
-  const ::exec::shared::ExceptionWrapper& cause() const;
-  ::exec::shared::ExceptionWrapper* release_cause();
-  ::exec::shared::ExceptionWrapper* mutable_cause();
-  void set_allocated_cause(::exec::shared::ExceptionWrapper* cause);
+  inline const ::exec::shared::ExceptionWrapper& cause() const;
+  inline ::exec::shared::ExceptionWrapper* mutable_cause();
+  inline ::exec::shared::ExceptionWrapper* release_cause();
+  inline void set_allocated_cause(::exec::shared::ExceptionWrapper* cause);
 
   // @@protoc_insertion_point(class_scope:exec.shared.ExceptionWrapper)
  private:
-  void set_has_exception_class();
-  void clear_has_exception_class();
-  void set_has_message();
-  void clear_has_message();
-  void set_has_cause();
-  void clear_has_cause();
+  inline void set_has_exception_class();
+  inline void clear_has_exception_class();
+  inline void set_has_message();
+  inline void clear_has_message();
+  inline void set_has_cause();
+  inline void clear_has_cause();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* exception_class_;
+  ::std::string* message_;
   ::google::protobuf::RepeatedPtrField< ::exec::shared::StackTraceElementWrapper > stack_trace_;
-  ::google::protobuf::internal::ArenaStringPtr exception_class_;
-  ::google::protobuf::internal::ArenaStringPtr message_;
   ::exec::shared::ExceptionWrapper* cause_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static ExceptionWrapper* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class StackTraceElementWrapper : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.StackTraceElementWrapper) */ {
+class StackTraceElementWrapper : public ::google::protobuf::Message {
  public:
   StackTraceElementWrapper();
   virtual ~StackTraceElementWrapper();
@@ -1062,174 +809,133 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  StackTraceElementWrapper(StackTraceElementWrapper&& from) noexcept
-    : StackTraceElementWrapper() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline StackTraceElementWrapper& operator=(StackTraceElementWrapper&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const StackTraceElementWrapper& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const StackTraceElementWrapper* internal_default_instance() {
-    return reinterpret_cast<const StackTraceElementWrapper*>(
-               &_StackTraceElementWrapper_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    4;
-
   void Swap(StackTraceElementWrapper* other);
-  friend void swap(StackTraceElementWrapper& a, StackTraceElementWrapper& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline StackTraceElementWrapper* New() const final {
-    return CreateMaybeMessage<StackTraceElementWrapper>(NULL);
-  }
-
-  StackTraceElementWrapper* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<StackTraceElementWrapper>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  StackTraceElementWrapper* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const StackTraceElementWrapper& from);
   void MergeFrom(const StackTraceElementWrapper& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(StackTraceElementWrapper* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string class_name = 1;
-  bool has_class_name() const;
-  void clear_class_name();
+  inline bool has_class_name() const;
+  inline void clear_class_name();
   static const int kClassNameFieldNumber = 1;
-  const ::std::string& class_name() const;
-  void set_class_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_class_name(::std::string&& value);
-  #endif
-  void set_class_name(const char* value);
-  void set_class_name(const char* value, size_t size);
-  ::std::string* mutable_class_name();
-  ::std::string* release_class_name();
-  void set_allocated_class_name(::std::string* class_name);
+  inline const ::std::string& class_name() const;
+  inline void set_class_name(const ::std::string& value);
+  inline void set_class_name(const char* value);
+  inline void set_class_name(const char* value, size_t size);
+  inline ::std::string* mutable_class_name();
+  inline ::std::string* release_class_name();
+  inline void set_allocated_class_name(::std::string* class_name);
 
   // optional string file_name = 2;
-  bool has_file_name() const;
-  void clear_file_name();
+  inline bool has_file_name() const;
+  inline void clear_file_name();
   static const int kFileNameFieldNumber = 2;
-  const ::std::string& file_name() const;
-  void set_file_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_file_name(::std::string&& value);
-  #endif
-  void set_file_name(const char* value);
-  void set_file_name(const char* value, size_t size);
-  ::std::string* mutable_file_name();
-  ::std::string* release_file_name();
-  void set_allocated_file_name(::std::string* file_name);
-
-  // optional string method_name = 4;
-  bool has_method_name() const;
-  void clear_method_name();
-  static const int kMethodNameFieldNumber = 4;
-  const ::std::string& method_name() const;
-  void set_method_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_method_name(::std::string&& value);
-  #endif
-  void set_method_name(const char* value);
-  void set_method_name(const char* value, size_t size);
-  ::std::string* mutable_method_name();
-  ::std::string* release_method_name();
-  void set_allocated_method_name(::std::string* method_name);
+  inline const ::std::string& file_name() const;
+  inline void set_file_name(const ::std::string& value);
+  inline void set_file_name(const char* value);
+  inline void set_file_name(const char* value, size_t size);
+  inline ::std::string* mutable_file_name();
+  inline ::std::string* release_file_name();
+  inline void set_allocated_file_name(::std::string* file_name);
 
   // optional int32 line_number = 3;
-  bool has_line_number() const;
-  void clear_line_number();
+  inline bool has_line_number() const;
+  inline void clear_line_number();
   static const int kLineNumberFieldNumber = 3;
-  ::google::protobuf::int32 line_number() const;
-  void set_line_number(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 line_number() const;
+  inline void set_line_number(::google::protobuf::int32 value);
+
+  // optional string method_name = 4;
+  inline bool has_method_name() const;
+  inline void clear_method_name();
+  static const int kMethodNameFieldNumber = 4;
+  inline const ::std::string& method_name() const;
+  inline void set_method_name(const ::std::string& value);
+  inline void set_method_name(const char* value);
+  inline void set_method_name(const char* value, size_t size);
+  inline ::std::string* mutable_method_name();
+  inline ::std::string* release_method_name();
+  inline void set_allocated_method_name(::std::string* method_name);
 
   // optional bool is_native_method = 5;
-  bool has_is_native_method() const;
-  void clear_is_native_method();
+  inline bool has_is_native_method() const;
+  inline void clear_is_native_method();
   static const int kIsNativeMethodFieldNumber = 5;
-  bool is_native_method() const;
-  void set_is_native_method(bool value);
+  inline bool is_native_method() const;
+  inline void set_is_native_method(bool value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.StackTraceElementWrapper)
  private:
-  void set_has_class_name();
-  void clear_has_class_name();
-  void set_has_file_name();
-  void clear_has_file_name();
-  void set_has_line_number();
-  void clear_has_line_number();
-  void set_has_method_name();
-  void clear_has_method_name();
-  void set_has_is_native_method();
-  void clear_has_is_native_method();
+  inline void set_has_class_name();
+  inline void clear_has_class_name();
+  inline void set_has_file_name();
+  inline void clear_has_file_name();
+  inline void set_has_line_number();
+  inline void clear_has_line_number();
+  inline void set_has_method_name();
+  inline void clear_has_method_name();
+  inline void set_has_is_native_method();
+  inline void clear_has_is_native_method();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr class_name_;
-  ::google::protobuf::internal::ArenaStringPtr file_name_;
-  ::google::protobuf::internal::ArenaStringPtr method_name_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* class_name_;
+  ::std::string* file_name_;
+  ::std::string* method_name_;
   ::google::protobuf::int32 line_number_;
   bool is_native_method_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(5 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static StackTraceElementWrapper* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class ParsingError : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.ParsingError) */ {
+class ParsingError : public ::google::protobuf::Message {
  public:
   ParsingError();
   virtual ~ParsingError();
@@ -1240,140 +946,108 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  ParsingError(ParsingError&& from) noexcept
-    : ParsingError() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline ParsingError& operator=(ParsingError&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const ParsingError& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const ParsingError* internal_default_instance() {
-    return reinterpret_cast<const ParsingError*>(
-               &_ParsingError_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    5;
-
   void Swap(ParsingError* other);
-  friend void swap(ParsingError& a, ParsingError& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline ParsingError* New() const final {
-    return CreateMaybeMessage<ParsingError>(NULL);
-  }
-
-  ParsingError* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<ParsingError>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  ParsingError* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const ParsingError& from);
   void MergeFrom(const ParsingError& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(ParsingError* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional int32 start_column = 2;
-  bool has_start_column() const;
-  void clear_start_column();
+  inline bool has_start_column() const;
+  inline void clear_start_column();
   static const int kStartColumnFieldNumber = 2;
-  ::google::protobuf::int32 start_column() const;
-  void set_start_column(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 start_column() const;
+  inline void set_start_column(::google::protobuf::int32 value);
 
   // optional int32 start_row = 3;
-  bool has_start_row() const;
-  void clear_start_row();
+  inline bool has_start_row() const;
+  inline void clear_start_row();
   static const int kStartRowFieldNumber = 3;
-  ::google::protobuf::int32 start_row() const;
-  void set_start_row(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 start_row() const;
+  inline void set_start_row(::google::protobuf::int32 value);
 
   // optional int32 end_column = 4;
-  bool has_end_column() const;
-  void clear_end_column();
+  inline bool has_end_column() const;
+  inline void clear_end_column();
   static const int kEndColumnFieldNumber = 4;
-  ::google::protobuf::int32 end_column() const;
-  void set_end_column(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 end_column() const;
+  inline void set_end_column(::google::protobuf::int32 value);
 
   // optional int32 end_row = 5;
-  bool has_end_row() const;
-  void clear_end_row();
+  inline bool has_end_row() const;
+  inline void clear_end_row();
   static const int kEndRowFieldNumber = 5;
-  ::google::protobuf::int32 end_row() const;
-  void set_end_row(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 end_row() const;
+  inline void set_end_row(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.ParsingError)
  private:
-  void set_has_start_column();
-  void clear_has_start_column();
-  void set_has_start_row();
-  void clear_has_start_row();
-  void set_has_end_column();
-  void clear_has_end_column();
-  void set_has_end_row();
-  void clear_has_end_row();
+  inline void set_has_start_column();
+  inline void clear_has_start_column();
+  inline void set_has_start_row();
+  inline void clear_has_start_row();
+  inline void set_has_end_column();
+  inline void clear_has_end_column();
+  inline void set_has_end_row();
+  inline void clear_has_end_row();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::int32 start_column_;
   ::google::protobuf::int32 start_row_;
   ::google::protobuf::int32 end_column_;
   ::google::protobuf::int32 end_row_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static ParsingError* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class RecordBatchDef : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.RecordBatchDef) */ {
+class RecordBatchDef : public ::google::protobuf::Message {
  public:
   RecordBatchDef();
   virtual ~RecordBatchDef();
@@ -1384,143 +1058,111 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  RecordBatchDef(RecordBatchDef&& from) noexcept
-    : RecordBatchDef() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline RecordBatchDef& operator=(RecordBatchDef&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const RecordBatchDef& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const RecordBatchDef* internal_default_instance() {
-    return reinterpret_cast<const RecordBatchDef*>(
-               &_RecordBatchDef_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    6;
-
   void Swap(RecordBatchDef* other);
-  friend void swap(RecordBatchDef& a, RecordBatchDef& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline RecordBatchDef* New() const final {
-    return CreateMaybeMessage<RecordBatchDef>(NULL);
-  }
-
-  RecordBatchDef* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<RecordBatchDef>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  RecordBatchDef* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const RecordBatchDef& from);
   void MergeFrom(const RecordBatchDef& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(RecordBatchDef* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.shared.SerializedField field = 2;
-  int field_size() const;
-  void clear_field();
-  static const int kFieldFieldNumber = 2;
-  ::exec::shared::SerializedField* mutable_field(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >*
-      mutable_field();
-  const ::exec::shared::SerializedField& field(int index) const;
-  ::exec::shared::SerializedField* add_field();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >&
-      field() const;
-
   // optional int32 record_count = 1;
-  bool has_record_count() const;
-  void clear_record_count();
+  inline bool has_record_count() const;
+  inline void clear_record_count();
   static const int kRecordCountFieldNumber = 1;
-  ::google::protobuf::int32 record_count() const;
-  void set_record_count(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 record_count() const;
+  inline void set_record_count(::google::protobuf::int32 value);
+
+  // repeated .exec.shared.SerializedField field = 2;
+  inline int field_size() const;
+  inline void clear_field();
+  static const int kFieldFieldNumber = 2;
+  inline const ::exec::shared::SerializedField& field(int index) const;
+  inline ::exec::shared::SerializedField* mutable_field(int index);
+  inline ::exec::shared::SerializedField* add_field();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >&
+      field() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >*
+      mutable_field();
 
   // optional bool carries_two_byte_selection_vector = 3;
-  bool has_carries_two_byte_selection_vector() const;
-  void clear_carries_two_byte_selection_vector();
+  inline bool has_carries_two_byte_selection_vector() const;
+  inline void clear_carries_two_byte_selection_vector();
   static const int kCarriesTwoByteSelectionVectorFieldNumber = 3;
-  bool carries_two_byte_selection_vector() const;
-  void set_carries_two_byte_selection_vector(bool value);
+  inline bool carries_two_byte_selection_vector() const;
+  inline void set_carries_two_byte_selection_vector(bool value);
 
   // optional int32 affected_rows_count = 4;
-  bool has_affected_rows_count() const;
-  void clear_affected_rows_count();
+  inline bool has_affected_rows_count() const;
+  inline void clear_affected_rows_count();
   static const int kAffectedRowsCountFieldNumber = 4;
-  ::google::protobuf::int32 affected_rows_count() const;
-  void set_affected_rows_count(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 affected_rows_count() const;
+  inline void set_affected_rows_count(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.RecordBatchDef)
  private:
-  void set_has_record_count();
-  void clear_has_record_count();
-  void set_has_carries_two_byte_selection_vector();
-  void clear_has_carries_two_byte_selection_vector();
-  void set_has_affected_rows_count();
-  void clear_has_affected_rows_count();
+  inline void set_has_record_count();
+  inline void clear_has_record_count();
+  inline void set_has_carries_two_byte_selection_vector();
+  inline void clear_has_carries_two_byte_selection_vector();
+  inline void set_has_affected_rows_count();
+  inline void clear_has_affected_rows_count();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField > field_;
   ::google::protobuf::int32 record_count_;
   bool carries_two_byte_selection_vector_;
   ::google::protobuf::int32 affected_rows_count_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static RecordBatchDef* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class NamePart : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.NamePart) */ {
+class NamePart : public ::google::protobuf::Message {
  public:
   NamePart();
   virtual ~NamePart();
@@ -1531,92 +1173,50 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  NamePart(NamePart&& from) noexcept
-    : NamePart() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline NamePart& operator=(NamePart&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const NamePart& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const NamePart* internal_default_instance() {
-    return reinterpret_cast<const NamePart*>(
-               &_NamePart_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    7;
-
   void Swap(NamePart* other);
-  friend void swap(NamePart& a, NamePart& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline NamePart* New() const final {
-    return CreateMaybeMessage<NamePart>(NULL);
-  }
-
-  NamePart* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<NamePart>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  NamePart* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const NamePart& from);
   void MergeFrom(const NamePart& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(NamePart* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   typedef NamePart_Type Type;
-  static const Type NAME =
-    NamePart_Type_NAME;
-  static const Type ARRAY =
-    NamePart_Type_ARRAY;
+  static const Type NAME = NamePart_Type_NAME;
+  static const Type ARRAY = NamePart_Type_ARRAY;
   static inline bool Type_IsValid(int value) {
     return NamePart_Type_IsValid(value);
   }
@@ -1640,60 +1240,62 @@
 
   // accessors -------------------------------------------------------
 
+  // optional .exec.shared.NamePart.Type type = 1;
+  inline bool has_type() const;
+  inline void clear_type();
+  static const int kTypeFieldNumber = 1;
+  inline ::exec::shared::NamePart_Type type() const;
+  inline void set_type(::exec::shared::NamePart_Type value);
+
   // optional string name = 2;
-  bool has_name() const;
-  void clear_name();
+  inline bool has_name() const;
+  inline void clear_name();
   static const int kNameFieldNumber = 2;
-  const ::std::string& name() const;
-  void set_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_name(::std::string&& value);
-  #endif
-  void set_name(const char* value);
-  void set_name(const char* value, size_t size);
-  ::std::string* mutable_name();
-  ::std::string* release_name();
-  void set_allocated_name(::std::string* name);
+  inline const ::std::string& name() const;
+  inline void set_name(const ::std::string& value);
+  inline void set_name(const char* value);
+  inline void set_name(const char* value, size_t size);
+  inline ::std::string* mutable_name();
+  inline ::std::string* release_name();
+  inline void set_allocated_name(::std::string* name);
 
   // optional .exec.shared.NamePart child = 3;
-  bool has_child() const;
-  void clear_child();
+  inline bool has_child() const;
+  inline void clear_child();
   static const int kChildFieldNumber = 3;
-  private:
-  const ::exec::shared::NamePart& _internal_child() const;
-  public:
-  const ::exec::shared::NamePart& child() const;
-  ::exec::shared::NamePart* release_child();
-  ::exec::shared::NamePart* mutable_child();
-  void set_allocated_child(::exec::shared::NamePart* child);
-
-  // optional .exec.shared.NamePart.Type type = 1;
-  bool has_type() const;
-  void clear_type();
-  static const int kTypeFieldNumber = 1;
-  ::exec::shared::NamePart_Type type() const;
-  void set_type(::exec::shared::NamePart_Type value);
+  inline const ::exec::shared::NamePart& child() const;
+  inline ::exec::shared::NamePart* mutable_child();
+  inline ::exec::shared::NamePart* release_child();
+  inline void set_allocated_child(::exec::shared::NamePart* child);
 
   // @@protoc_insertion_point(class_scope:exec.shared.NamePart)
  private:
-  void set_has_type();
-  void clear_has_type();
-  void set_has_name();
-  void clear_has_name();
-  void set_has_child();
-  void clear_has_child();
+  inline void set_has_type();
+  inline void clear_has_type();
+  inline void set_has_name();
+  inline void clear_has_name();
+  inline void set_has_child();
+  inline void clear_has_child();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr name_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* name_;
   ::exec::shared::NamePart* child_;
   int type_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static NamePart* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class SerializedField : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.SerializedField) */ {
+class SerializedField : public ::google::protobuf::Message {
  public:
   SerializedField();
   virtual ~SerializedField();
@@ -1704,173 +1306,135 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  SerializedField(SerializedField&& from) noexcept
-    : SerializedField() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline SerializedField& operator=(SerializedField&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const SerializedField& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const SerializedField* internal_default_instance() {
-    return reinterpret_cast<const SerializedField*>(
-               &_SerializedField_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    8;
-
   void Swap(SerializedField* other);
-  friend void swap(SerializedField& a, SerializedField& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline SerializedField* New() const final {
-    return CreateMaybeMessage<SerializedField>(NULL);
-  }
-
-  SerializedField* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<SerializedField>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  SerializedField* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const SerializedField& from);
   void MergeFrom(const SerializedField& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(SerializedField* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.shared.SerializedField child = 3;
-  int child_size() const;
-  void clear_child();
-  static const int kChildFieldNumber = 3;
-  ::exec::shared::SerializedField* mutable_child(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >*
-      mutable_child();
-  const ::exec::shared::SerializedField& child(int index) const;
-  ::exec::shared::SerializedField* add_child();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >&
-      child() const;
-
   // optional .common.MajorType major_type = 1;
-  bool has_major_type() const;
-  void clear_major_type();
+  inline bool has_major_type() const;
+  inline void clear_major_type();
   static const int kMajorTypeFieldNumber = 1;
-  private:
-  const ::common::MajorType& _internal_major_type() const;
-  public:
-  const ::common::MajorType& major_type() const;
-  ::common::MajorType* release_major_type();
-  ::common::MajorType* mutable_major_type();
-  void set_allocated_major_type(::common::MajorType* major_type);
+  inline const ::common::MajorType& major_type() const;
+  inline ::common::MajorType* mutable_major_type();
+  inline ::common::MajorType* release_major_type();
+  inline void set_allocated_major_type(::common::MajorType* major_type);
 
   // optional .exec.shared.NamePart name_part = 2;
-  bool has_name_part() const;
-  void clear_name_part();
+  inline bool has_name_part() const;
+  inline void clear_name_part();
   static const int kNamePartFieldNumber = 2;
-  private:
-  const ::exec::shared::NamePart& _internal_name_part() const;
-  public:
-  const ::exec::shared::NamePart& name_part() const;
-  ::exec::shared::NamePart* release_name_part();
-  ::exec::shared::NamePart* mutable_name_part();
-  void set_allocated_name_part(::exec::shared::NamePart* name_part);
+  inline const ::exec::shared::NamePart& name_part() const;
+  inline ::exec::shared::NamePart* mutable_name_part();
+  inline ::exec::shared::NamePart* release_name_part();
+  inline void set_allocated_name_part(::exec::shared::NamePart* name_part);
+
+  // repeated .exec.shared.SerializedField child = 3;
+  inline int child_size() const;
+  inline void clear_child();
+  static const int kChildFieldNumber = 3;
+  inline const ::exec::shared::SerializedField& child(int index) const;
+  inline ::exec::shared::SerializedField* mutable_child(int index);
+  inline ::exec::shared::SerializedField* add_child();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >&
+      child() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >*
+      mutable_child();
 
   // optional int32 value_count = 4;
-  bool has_value_count() const;
-  void clear_value_count();
+  inline bool has_value_count() const;
+  inline void clear_value_count();
   static const int kValueCountFieldNumber = 4;
-  ::google::protobuf::int32 value_count() const;
-  void set_value_count(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 value_count() const;
+  inline void set_value_count(::google::protobuf::int32 value);
 
   // optional int32 var_byte_length = 5;
-  bool has_var_byte_length() const;
-  void clear_var_byte_length();
+  inline bool has_var_byte_length() const;
+  inline void clear_var_byte_length();
   static const int kVarByteLengthFieldNumber = 5;
-  ::google::protobuf::int32 var_byte_length() const;
-  void set_var_byte_length(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 var_byte_length() const;
+  inline void set_var_byte_length(::google::protobuf::int32 value);
 
   // optional int32 buffer_length = 7;
-  bool has_buffer_length() const;
-  void clear_buffer_length();
+  inline bool has_buffer_length() const;
+  inline void clear_buffer_length();
   static const int kBufferLengthFieldNumber = 7;
-  ::google::protobuf::int32 buffer_length() const;
-  void set_buffer_length(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 buffer_length() const;
+  inline void set_buffer_length(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.SerializedField)
  private:
-  void set_has_major_type();
-  void clear_has_major_type();
-  void set_has_name_part();
-  void clear_has_name_part();
-  void set_has_value_count();
-  void clear_has_value_count();
-  void set_has_var_byte_length();
-  void clear_has_var_byte_length();
-  void set_has_buffer_length();
-  void clear_has_buffer_length();
+  inline void set_has_major_type();
+  inline void clear_has_major_type();
+  inline void set_has_name_part();
+  inline void clear_has_name_part();
+  inline void set_has_value_count();
+  inline void clear_has_value_count();
+  inline void set_has_var_byte_length();
+  inline void clear_has_var_byte_length();
+  inline void set_has_buffer_length();
+  inline void clear_has_buffer_length();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField > child_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::common::MajorType* major_type_;
   ::exec::shared::NamePart* name_part_;
+  ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField > child_;
   ::google::protobuf::int32 value_count_;
   ::google::protobuf::int32 var_byte_length_;
   ::google::protobuf::int32 buffer_length_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(6 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static SerializedField* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class NodeStatus : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.NodeStatus) */ {
+class NodeStatus : public ::google::protobuf::Message {
  public:
   NodeStatus();
   virtual ~NodeStatus();
@@ -1881,120 +1445,88 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  NodeStatus(NodeStatus&& from) noexcept
-    : NodeStatus() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline NodeStatus& operator=(NodeStatus&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const NodeStatus& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const NodeStatus* internal_default_instance() {
-    return reinterpret_cast<const NodeStatus*>(
-               &_NodeStatus_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    9;
-
   void Swap(NodeStatus* other);
-  friend void swap(NodeStatus& a, NodeStatus& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline NodeStatus* New() const final {
-    return CreateMaybeMessage<NodeStatus>(NULL);
-  }
-
-  NodeStatus* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<NodeStatus>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  NodeStatus* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const NodeStatus& from);
   void MergeFrom(const NodeStatus& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(NodeStatus* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // optional int64 memory_footprint = 2;
-  bool has_memory_footprint() const;
-  void clear_memory_footprint();
-  static const int kMemoryFootprintFieldNumber = 2;
-  ::google::protobuf::int64 memory_footprint() const;
-  void set_memory_footprint(::google::protobuf::int64 value);
-
   // optional int32 node_id = 1;
-  bool has_node_id() const;
-  void clear_node_id();
+  inline bool has_node_id() const;
+  inline void clear_node_id();
   static const int kNodeIdFieldNumber = 1;
-  ::google::protobuf::int32 node_id() const;
-  void set_node_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 node_id() const;
+  inline void set_node_id(::google::protobuf::int32 value);
+
+  // optional int64 memory_footprint = 2;
+  inline bool has_memory_footprint() const;
+  inline void clear_memory_footprint();
+  static const int kMemoryFootprintFieldNumber = 2;
+  inline ::google::protobuf::int64 memory_footprint() const;
+  inline void set_memory_footprint(::google::protobuf::int64 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.NodeStatus)
  private:
-  void set_has_node_id();
-  void clear_has_node_id();
-  void set_has_memory_footprint();
-  void clear_has_memory_footprint();
+  inline void set_has_node_id();
+  inline void clear_has_node_id();
+  inline void set_has_memory_footprint();
+  inline void clear_has_memory_footprint();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::int64 memory_footprint_;
   ::google::protobuf::int32 node_id_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static NodeStatus* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class QueryResult : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.QueryResult) */ {
+class QueryResult : public ::google::protobuf::Message {
  public:
   QueryResult();
   virtual ~QueryResult();
@@ -2005,106 +1537,57 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  QueryResult(QueryResult&& from) noexcept
-    : QueryResult() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline QueryResult& operator=(QueryResult&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const QueryResult& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const QueryResult* internal_default_instance() {
-    return reinterpret_cast<const QueryResult*>(
-               &_QueryResult_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    10;
-
   void Swap(QueryResult* other);
-  friend void swap(QueryResult& a, QueryResult& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline QueryResult* New() const final {
-    return CreateMaybeMessage<QueryResult>(NULL);
-  }
-
-  QueryResult* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<QueryResult>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  QueryResult* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const QueryResult& from);
   void MergeFrom(const QueryResult& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(QueryResult* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   typedef QueryResult_QueryState QueryState;
-  static const QueryState STARTING =
-    QueryResult_QueryState_STARTING;
-  static const QueryState RUNNING =
-    QueryResult_QueryState_RUNNING;
-  static const QueryState COMPLETED =
-    QueryResult_QueryState_COMPLETED;
-  static const QueryState CANCELED =
-    QueryResult_QueryState_CANCELED;
-  static const QueryState FAILED =
-    QueryResult_QueryState_FAILED;
-  static const QueryState CANCELLATION_REQUESTED =
-    QueryResult_QueryState_CANCELLATION_REQUESTED;
-  static const QueryState ENQUEUED =
-    QueryResult_QueryState_ENQUEUED;
-  static const QueryState PREPARING =
-    QueryResult_QueryState_PREPARING;
-  static const QueryState PLANNING =
-    QueryResult_QueryState_PLANNING;
+  static const QueryState STARTING = QueryResult_QueryState_STARTING;
+  static const QueryState RUNNING = QueryResult_QueryState_RUNNING;
+  static const QueryState COMPLETED = QueryResult_QueryState_COMPLETED;
+  static const QueryState CANCELED = QueryResult_QueryState_CANCELED;
+  static const QueryState FAILED = QueryResult_QueryState_FAILED;
+  static const QueryState CANCELLATION_REQUESTED = QueryResult_QueryState_CANCELLATION_REQUESTED;
+  static const QueryState ENQUEUED = QueryResult_QueryState_ENQUEUED;
+  static const QueryState PREPARING = QueryResult_QueryState_PREPARING;
+  static const QueryState PLANNING = QueryResult_QueryState_PLANNING;
   static inline bool QueryState_IsValid(int value) {
     return QueryResult_QueryState_IsValid(value);
   }
@@ -2128,55 +1611,60 @@
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.shared.DrillPBError error = 3;
-  int error_size() const;
-  void clear_error();
-  static const int kErrorFieldNumber = 3;
-  ::exec::shared::DrillPBError* mutable_error(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::DrillPBError >*
-      mutable_error();
-  const ::exec::shared::DrillPBError& error(int index) const;
-  ::exec::shared::DrillPBError* add_error();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::DrillPBError >&
-      error() const;
+  // optional .exec.shared.QueryResult.QueryState query_state = 1;
+  inline bool has_query_state() const;
+  inline void clear_query_state();
+  static const int kQueryStateFieldNumber = 1;
+  inline ::exec::shared::QueryResult_QueryState query_state() const;
+  inline void set_query_state(::exec::shared::QueryResult_QueryState value);
 
   // optional .exec.shared.QueryId query_id = 2;
-  bool has_query_id() const;
-  void clear_query_id();
+  inline bool has_query_id() const;
+  inline void clear_query_id();
   static const int kQueryIdFieldNumber = 2;
-  private:
-  const ::exec::shared::QueryId& _internal_query_id() const;
-  public:
-  const ::exec::shared::QueryId& query_id() const;
-  ::exec::shared::QueryId* release_query_id();
-  ::exec::shared::QueryId* mutable_query_id();
-  void set_allocated_query_id(::exec::shared::QueryId* query_id);
+  inline const ::exec::shared::QueryId& query_id() const;
+  inline ::exec::shared::QueryId* mutable_query_id();
+  inline ::exec::shared::QueryId* release_query_id();
+  inline void set_allocated_query_id(::exec::shared::QueryId* query_id);
 
-  // optional .exec.shared.QueryResult.QueryState query_state = 1;
-  bool has_query_state() const;
-  void clear_query_state();
-  static const int kQueryStateFieldNumber = 1;
-  ::exec::shared::QueryResult_QueryState query_state() const;
-  void set_query_state(::exec::shared::QueryResult_QueryState value);
+  // repeated .exec.shared.DrillPBError error = 3;
+  inline int error_size() const;
+  inline void clear_error();
+  static const int kErrorFieldNumber = 3;
+  inline const ::exec::shared::DrillPBError& error(int index) const;
+  inline ::exec::shared::DrillPBError* mutable_error(int index);
+  inline ::exec::shared::DrillPBError* add_error();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::DrillPBError >&
+      error() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::DrillPBError >*
+      mutable_error();
 
   // @@protoc_insertion_point(class_scope:exec.shared.QueryResult)
  private:
-  void set_has_query_state();
-  void clear_has_query_state();
-  void set_has_query_id();
-  void clear_has_query_id();
+  inline void set_has_query_state();
+  inline void clear_has_query_state();
+  inline void set_has_query_id();
+  inline void clear_has_query_id();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::DrillPBError > error_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::QueryId* query_id_;
+  ::google::protobuf::RepeatedPtrField< ::exec::shared::DrillPBError > error_;
   int query_state_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static QueryResult* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class QueryData : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.QueryData) */ {
+class QueryData : public ::google::protobuf::Message {
  public:
   QueryData();
   virtual ~QueryData();
@@ -2187,150 +1675,112 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  QueryData(QueryData&& from) noexcept
-    : QueryData() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline QueryData& operator=(QueryData&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const QueryData& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const QueryData* internal_default_instance() {
-    return reinterpret_cast<const QueryData*>(
-               &_QueryData_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    11;
-
   void Swap(QueryData* other);
-  friend void swap(QueryData& a, QueryData& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline QueryData* New() const final {
-    return CreateMaybeMessage<QueryData>(NULL);
-  }
-
-  QueryData* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<QueryData>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  QueryData* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const QueryData& from);
   void MergeFrom(const QueryData& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(QueryData* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional .exec.shared.QueryId query_id = 1;
-  bool has_query_id() const;
-  void clear_query_id();
+  inline bool has_query_id() const;
+  inline void clear_query_id();
   static const int kQueryIdFieldNumber = 1;
-  private:
-  const ::exec::shared::QueryId& _internal_query_id() const;
-  public:
-  const ::exec::shared::QueryId& query_id() const;
-  ::exec::shared::QueryId* release_query_id();
-  ::exec::shared::QueryId* mutable_query_id();
-  void set_allocated_query_id(::exec::shared::QueryId* query_id);
-
-  // optional .exec.shared.RecordBatchDef def = 3;
-  bool has_def() const;
-  void clear_def();
-  static const int kDefFieldNumber = 3;
-  private:
-  const ::exec::shared::RecordBatchDef& _internal_def() const;
-  public:
-  const ::exec::shared::RecordBatchDef& def() const;
-  ::exec::shared::RecordBatchDef* release_def();
-  ::exec::shared::RecordBatchDef* mutable_def();
-  void set_allocated_def(::exec::shared::RecordBatchDef* def);
+  inline const ::exec::shared::QueryId& query_id() const;
+  inline ::exec::shared::QueryId* mutable_query_id();
+  inline ::exec::shared::QueryId* release_query_id();
+  inline void set_allocated_query_id(::exec::shared::QueryId* query_id);
 
   // optional int32 row_count = 2;
-  bool has_row_count() const;
-  void clear_row_count();
+  inline bool has_row_count() const;
+  inline void clear_row_count();
   static const int kRowCountFieldNumber = 2;
-  ::google::protobuf::int32 row_count() const;
-  void set_row_count(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 row_count() const;
+  inline void set_row_count(::google::protobuf::int32 value);
+
+  // optional .exec.shared.RecordBatchDef def = 3;
+  inline bool has_def() const;
+  inline void clear_def();
+  static const int kDefFieldNumber = 3;
+  inline const ::exec::shared::RecordBatchDef& def() const;
+  inline ::exec::shared::RecordBatchDef* mutable_def();
+  inline ::exec::shared::RecordBatchDef* release_def();
+  inline void set_allocated_def(::exec::shared::RecordBatchDef* def);
 
   // optional int32 affected_rows_count = 4;
-  bool has_affected_rows_count() const;
-  void clear_affected_rows_count();
+  inline bool has_affected_rows_count() const;
+  inline void clear_affected_rows_count();
   static const int kAffectedRowsCountFieldNumber = 4;
-  ::google::protobuf::int32 affected_rows_count() const;
-  void set_affected_rows_count(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 affected_rows_count() const;
+  inline void set_affected_rows_count(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.QueryData)
  private:
-  void set_has_query_id();
-  void clear_has_query_id();
-  void set_has_row_count();
-  void clear_has_row_count();
-  void set_has_def();
-  void clear_has_def();
-  void set_has_affected_rows_count();
-  void clear_has_affected_rows_count();
+  inline void set_has_query_id();
+  inline void clear_has_query_id();
+  inline void set_has_row_count();
+  inline void clear_has_row_count();
+  inline void set_has_def();
+  inline void clear_has_def();
+  inline void set_has_affected_rows_count();
+  inline void clear_has_affected_rows_count();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::QueryId* query_id_;
   ::exec::shared::RecordBatchDef* def_;
   ::google::protobuf::int32 row_count_;
   ::google::protobuf::int32 affected_rows_count_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(4 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static QueryData* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class QueryInfo : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.QueryInfo) */ {
+class QueryInfo : public ::google::protobuf::Message {
  public:
   QueryInfo();
   virtual ~QueryInfo();
@@ -2341,223 +1791,172 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  QueryInfo(QueryInfo&& from) noexcept
-    : QueryInfo() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline QueryInfo& operator=(QueryInfo&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const QueryInfo& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const QueryInfo* internal_default_instance() {
-    return reinterpret_cast<const QueryInfo*>(
-               &_QueryInfo_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    12;
-
   void Swap(QueryInfo* other);
-  friend void swap(QueryInfo& a, QueryInfo& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline QueryInfo* New() const final {
-    return CreateMaybeMessage<QueryInfo>(NULL);
-  }
-
-  QueryInfo* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<QueryInfo>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  QueryInfo* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const QueryInfo& from);
   void MergeFrom(const QueryInfo& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(QueryInfo* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string query = 1;
-  bool has_query() const;
-  void clear_query();
+  inline bool has_query() const;
+  inline void clear_query();
   static const int kQueryFieldNumber = 1;
-  const ::std::string& query() const;
-  void set_query(const ::std::string& value);
-  #if LANG_CXX11
-  void set_query(::std::string&& value);
-  #endif
-  void set_query(const char* value);
-  void set_query(const char* value, size_t size);
-  ::std::string* mutable_query();
-  ::std::string* release_query();
-  void set_allocated_query(::std::string* query);
-
-  // optional string user = 4 [default = "-"];
-  bool has_user() const;
-  void clear_user();
-  static const int kUserFieldNumber = 4;
-  const ::std::string& user() const;
-  void set_user(const ::std::string& value);
-  #if LANG_CXX11
-  void set_user(::std::string&& value);
-  #endif
-  void set_user(const char* value);
-  void set_user(const char* value, size_t size);
-  ::std::string* mutable_user();
-  ::std::string* release_user();
-  void set_allocated_user(::std::string* user);
-
-  // optional string options_json = 6;
-  bool has_options_json() const;
-  void clear_options_json();
-  static const int kOptionsJsonFieldNumber = 6;
-  const ::std::string& options_json() const;
-  void set_options_json(const ::std::string& value);
-  #if LANG_CXX11
-  void set_options_json(::std::string&& value);
-  #endif
-  void set_options_json(const char* value);
-  void set_options_json(const char* value, size_t size);
-  ::std::string* mutable_options_json();
-  ::std::string* release_options_json();
-  void set_allocated_options_json(::std::string* options_json);
-
-  // optional string queue_name = 8 [default = "-"];
-  bool has_queue_name() const;
-  void clear_queue_name();
-  static const int kQueueNameFieldNumber = 8;
-  const ::std::string& queue_name() const;
-  void set_queue_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_queue_name(::std::string&& value);
-  #endif
-  void set_queue_name(const char* value);
-  void set_queue_name(const char* value, size_t size);
-  ::std::string* mutable_queue_name();
-  ::std::string* release_queue_name();
-  void set_allocated_queue_name(::std::string* queue_name);
-
-  // optional .exec.DrillbitEndpoint foreman = 5;
-  bool has_foreman() const;
-  void clear_foreman();
-  static const int kForemanFieldNumber = 5;
-  private:
-  const ::exec::DrillbitEndpoint& _internal_foreman() const;
-  public:
-  const ::exec::DrillbitEndpoint& foreman() const;
-  ::exec::DrillbitEndpoint* release_foreman();
-  ::exec::DrillbitEndpoint* mutable_foreman();
-  void set_allocated_foreman(::exec::DrillbitEndpoint* foreman);
+  inline const ::std::string& query() const;
+  inline void set_query(const ::std::string& value);
+  inline void set_query(const char* value);
+  inline void set_query(const char* value, size_t size);
+  inline ::std::string* mutable_query();
+  inline ::std::string* release_query();
+  inline void set_allocated_query(::std::string* query);
 
   // optional int64 start = 2;
-  bool has_start() const;
-  void clear_start();
+  inline bool has_start() const;
+  inline void clear_start();
   static const int kStartFieldNumber = 2;
-  ::google::protobuf::int64 start() const;
-  void set_start(::google::protobuf::int64 value);
-
-  // optional double total_cost = 7;
-  bool has_total_cost() const;
-  void clear_total_cost();
-  static const int kTotalCostFieldNumber = 7;
-  double total_cost() const;
-  void set_total_cost(double value);
+  inline ::google::protobuf::int64 start() const;
+  inline void set_start(::google::protobuf::int64 value);
 
   // optional .exec.shared.QueryResult.QueryState state = 3;
-  bool has_state() const;
-  void clear_state();
+  inline bool has_state() const;
+  inline void clear_state();
   static const int kStateFieldNumber = 3;
-  ::exec::shared::QueryResult_QueryState state() const;
-  void set_state(::exec::shared::QueryResult_QueryState value);
+  inline ::exec::shared::QueryResult_QueryState state() const;
+  inline void set_state(::exec::shared::QueryResult_QueryState value);
+
+  // optional string user = 4 [default = "-"];
+  inline bool has_user() const;
+  inline void clear_user();
+  static const int kUserFieldNumber = 4;
+  inline const ::std::string& user() const;
+  inline void set_user(const ::std::string& value);
+  inline void set_user(const char* value);
+  inline void set_user(const char* value, size_t size);
+  inline ::std::string* mutable_user();
+  inline ::std::string* release_user();
+  inline void set_allocated_user(::std::string* user);
+
+  // optional .exec.DrillbitEndpoint foreman = 5;
+  inline bool has_foreman() const;
+  inline void clear_foreman();
+  static const int kForemanFieldNumber = 5;
+  inline const ::exec::DrillbitEndpoint& foreman() const;
+  inline ::exec::DrillbitEndpoint* mutable_foreman();
+  inline ::exec::DrillbitEndpoint* release_foreman();
+  inline void set_allocated_foreman(::exec::DrillbitEndpoint* foreman);
+
+  // optional string options_json = 6;
+  inline bool has_options_json() const;
+  inline void clear_options_json();
+  static const int kOptionsJsonFieldNumber = 6;
+  inline const ::std::string& options_json() const;
+  inline void set_options_json(const ::std::string& value);
+  inline void set_options_json(const char* value);
+  inline void set_options_json(const char* value, size_t size);
+  inline ::std::string* mutable_options_json();
+  inline ::std::string* release_options_json();
+  inline void set_allocated_options_json(::std::string* options_json);
+
+  // optional double total_cost = 7;
+  inline bool has_total_cost() const;
+  inline void clear_total_cost();
+  static const int kTotalCostFieldNumber = 7;
+  inline double total_cost() const;
+  inline void set_total_cost(double value);
+
+  // optional string queue_name = 8 [default = "-"];
+  inline bool has_queue_name() const;
+  inline void clear_queue_name();
+  static const int kQueueNameFieldNumber = 8;
+  inline const ::std::string& queue_name() const;
+  inline void set_queue_name(const ::std::string& value);
+  inline void set_queue_name(const char* value);
+  inline void set_queue_name(const char* value, size_t size);
+  inline ::std::string* mutable_queue_name();
+  inline ::std::string* release_queue_name();
+  inline void set_allocated_queue_name(::std::string* queue_name);
 
   // @@protoc_insertion_point(class_scope:exec.shared.QueryInfo)
  private:
-  void set_has_query();
-  void clear_has_query();
-  void set_has_start();
-  void clear_has_start();
-  void set_has_state();
-  void clear_has_state();
-  void set_has_user();
-  void clear_has_user();
-  void set_has_foreman();
-  void clear_has_foreman();
-  void set_has_options_json();
-  void clear_has_options_json();
-  void set_has_total_cost();
-  void clear_has_total_cost();
-  void set_has_queue_name();
-  void clear_has_queue_name();
+  inline void set_has_query();
+  inline void clear_has_query();
+  inline void set_has_start();
+  inline void clear_has_start();
+  inline void set_has_state();
+  inline void clear_has_state();
+  inline void set_has_user();
+  inline void clear_has_user();
+  inline void set_has_foreman();
+  inline void clear_has_foreman();
+  inline void set_has_options_json();
+  inline void clear_has_options_json();
+  inline void set_has_total_cost();
+  inline void clear_has_total_cost();
+  inline void set_has_queue_name();
+  inline void clear_has_queue_name();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr query_;
-  public:
-  static ::google::protobuf::internal::ExplicitlyConstructed< ::std::string> _i_give_permission_to_break_this_code_default_user_;
-  private:
-  ::google::protobuf::internal::ArenaStringPtr user_;
-  ::google::protobuf::internal::ArenaStringPtr options_json_;
-  public:
-  static ::google::protobuf::internal::ExplicitlyConstructed< ::std::string> _i_give_permission_to_break_this_code_default_queue_name_;
-  private:
-  ::google::protobuf::internal::ArenaStringPtr queue_name_;
-  ::exec::DrillbitEndpoint* foreman_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* query_;
   ::google::protobuf::int64 start_;
+  ::std::string* user_;
+  static ::std::string* _default_user_;
+  ::exec::DrillbitEndpoint* foreman_;
+  ::std::string* options_json_;
   double total_cost_;
+  ::std::string* queue_name_;
+  static ::std::string* _default_queue_name_;
   int state_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(8 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static QueryInfo* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class QueryProfile : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.QueryProfile) */ {
+class QueryProfile : public ::google::protobuf::Message {
  public:
   QueryProfile();
   virtual ~QueryProfile();
@@ -2568,429 +1967,357 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  QueryProfile(QueryProfile&& from) noexcept
-    : QueryProfile() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline QueryProfile& operator=(QueryProfile&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const QueryProfile& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const QueryProfile* internal_default_instance() {
-    return reinterpret_cast<const QueryProfile*>(
-               &_QueryProfile_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    13;
-
   void Swap(QueryProfile* other);
-  friend void swap(QueryProfile& a, QueryProfile& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline QueryProfile* New() const final {
-    return CreateMaybeMessage<QueryProfile>(NULL);
-  }
-
-  QueryProfile* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<QueryProfile>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  QueryProfile* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const QueryProfile& from);
   void MergeFrom(const QueryProfile& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(QueryProfile* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
-  int fragment_profile_size() const;
-  void clear_fragment_profile();
-  static const int kFragmentProfileFieldNumber = 11;
-  ::exec::shared::MajorFragmentProfile* mutable_fragment_profile(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::MajorFragmentProfile >*
-      mutable_fragment_profile();
-  const ::exec::shared::MajorFragmentProfile& fragment_profile(int index) const;
-  ::exec::shared::MajorFragmentProfile* add_fragment_profile();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::MajorFragmentProfile >&
-      fragment_profile() const;
-
-  // optional string query = 5;
-  bool has_query() const;
-  void clear_query();
-  static const int kQueryFieldNumber = 5;
-  const ::std::string& query() const;
-  void set_query(const ::std::string& value);
-  #if LANG_CXX11
-  void set_query(::std::string&& value);
-  #endif
-  void set_query(const char* value);
-  void set_query(const char* value, size_t size);
-  ::std::string* mutable_query();
-  ::std::string* release_query();
-  void set_allocated_query(::std::string* query);
-
-  // optional string plan = 6;
-  bool has_plan() const;
-  void clear_plan();
-  static const int kPlanFieldNumber = 6;
-  const ::std::string& plan() const;
-  void set_plan(const ::std::string& value);
-  #if LANG_CXX11
-  void set_plan(::std::string&& value);
-  #endif
-  void set_plan(const char* value);
-  void set_plan(const char* value, size_t size);
-  ::std::string* mutable_plan();
-  ::std::string* release_plan();
-  void set_allocated_plan(::std::string* plan);
-
-  // optional string user = 12 [default = "-"];
-  bool has_user() const;
-  void clear_user();
-  static const int kUserFieldNumber = 12;
-  const ::std::string& user() const;
-  void set_user(const ::std::string& value);
-  #if LANG_CXX11
-  void set_user(::std::string&& value);
-  #endif
-  void set_user(const char* value);
-  void set_user(const char* value, size_t size);
-  ::std::string* mutable_user();
-  ::std::string* release_user();
-  void set_allocated_user(::std::string* user);
-
-  // optional string error = 13;
-  bool has_error() const;
-  void clear_error();
-  static const int kErrorFieldNumber = 13;
-  const ::std::string& error() const;
-  void set_error(const ::std::string& value);
-  #if LANG_CXX11
-  void set_error(::std::string&& value);
-  #endif
-  void set_error(const char* value);
-  void set_error(const char* value, size_t size);
-  ::std::string* mutable_error();
-  ::std::string* release_error();
-  void set_allocated_error(::std::string* error);
-
-  // optional string verboseError = 14;
-  bool has_verboseerror() const;
-  void clear_verboseerror();
-  static const int kVerboseErrorFieldNumber = 14;
-  const ::std::string& verboseerror() const;
-  void set_verboseerror(const ::std::string& value);
-  #if LANG_CXX11
-  void set_verboseerror(::std::string&& value);
-  #endif
-  void set_verboseerror(const char* value);
-  void set_verboseerror(const char* value, size_t size);
-  ::std::string* mutable_verboseerror();
-  ::std::string* release_verboseerror();
-  void set_allocated_verboseerror(::std::string* verboseerror);
-
-  // optional string error_id = 15;
-  bool has_error_id() const;
-  void clear_error_id();
-  static const int kErrorIdFieldNumber = 15;
-  const ::std::string& error_id() const;
-  void set_error_id(const ::std::string& value);
-  #if LANG_CXX11
-  void set_error_id(::std::string&& value);
-  #endif
-  void set_error_id(const char* value);
-  void set_error_id(const char* value, size_t size);
-  ::std::string* mutable_error_id();
-  ::std::string* release_error_id();
-  void set_allocated_error_id(::std::string* error_id);
-
-  // optional string error_node = 16;
-  bool has_error_node() const;
-  void clear_error_node();
-  static const int kErrorNodeFieldNumber = 16;
-  const ::std::string& error_node() const;
-  void set_error_node(const ::std::string& value);
-  #if LANG_CXX11
-  void set_error_node(::std::string&& value);
-  #endif
-  void set_error_node(const char* value);
-  void set_error_node(const char* value, size_t size);
-  ::std::string* mutable_error_node();
-  ::std::string* release_error_node();
-  void set_allocated_error_node(::std::string* error_node);
-
-  // optional string options_json = 17;
-  bool has_options_json() const;
-  void clear_options_json();
-  static const int kOptionsJsonFieldNumber = 17;
-  const ::std::string& options_json() const;
-  void set_options_json(const ::std::string& value);
-  #if LANG_CXX11
-  void set_options_json(::std::string&& value);
-  #endif
-  void set_options_json(const char* value);
-  void set_options_json(const char* value, size_t size);
-  ::std::string* mutable_options_json();
-  ::std::string* release_options_json();
-  void set_allocated_options_json(::std::string* options_json);
-
-  // optional string queue_name = 21 [default = "-"];
-  bool has_queue_name() const;
-  void clear_queue_name();
-  static const int kQueueNameFieldNumber = 21;
-  const ::std::string& queue_name() const;
-  void set_queue_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_queue_name(::std::string&& value);
-  #endif
-  void set_queue_name(const char* value);
-  void set_queue_name(const char* value, size_t size);
-  ::std::string* mutable_queue_name();
-  ::std::string* release_queue_name();
-  void set_allocated_queue_name(::std::string* queue_name);
-
-  // optional string queryId = 22;
-  bool has_queryid() const;
-  void clear_queryid();
-  static const int kQueryIdFieldNumber = 22;
-  const ::std::string& queryid() const;
-  void set_queryid(const ::std::string& value);
-  #if LANG_CXX11
-  void set_queryid(::std::string&& value);
-  #endif
-  void set_queryid(const char* value);
-  void set_queryid(const char* value, size_t size);
-  ::std::string* mutable_queryid();
-  ::std::string* release_queryid();
-  void set_allocated_queryid(::std::string* queryid);
-
   // optional .exec.shared.QueryId id = 1;
-  bool has_id() const;
-  void clear_id();
+  inline bool has_id() const;
+  inline void clear_id();
   static const int kIdFieldNumber = 1;
-  private:
-  const ::exec::shared::QueryId& _internal_id() const;
-  public:
-  const ::exec::shared::QueryId& id() const;
-  ::exec::shared::QueryId* release_id();
-  ::exec::shared::QueryId* mutable_id();
-  void set_allocated_id(::exec::shared::QueryId* id);
-
-  // optional .exec.DrillbitEndpoint foreman = 7;
-  bool has_foreman() const;
-  void clear_foreman();
-  static const int kForemanFieldNumber = 7;
-  private:
-  const ::exec::DrillbitEndpoint& _internal_foreman() const;
-  public:
-  const ::exec::DrillbitEndpoint& foreman() const;
-  ::exec::DrillbitEndpoint* release_foreman();
-  ::exec::DrillbitEndpoint* mutable_foreman();
-  void set_allocated_foreman(::exec::DrillbitEndpoint* foreman);
-
-  // optional int64 start = 3;
-  bool has_start() const;
-  void clear_start();
-  static const int kStartFieldNumber = 3;
-  ::google::protobuf::int64 start() const;
-  void set_start(::google::protobuf::int64 value);
-
-  // optional int64 end = 4;
-  bool has_end() const;
-  void clear_end();
-  static const int kEndFieldNumber = 4;
-  ::google::protobuf::int64 end() const;
-  void set_end(::google::protobuf::int64 value);
-
-  // optional .exec.shared.QueryResult.QueryState state = 8;
-  bool has_state() const;
-  void clear_state();
-  static const int kStateFieldNumber = 8;
-  ::exec::shared::QueryResult_QueryState state() const;
-  void set_state(::exec::shared::QueryResult_QueryState value);
-
-  // optional int32 total_fragments = 9;
-  bool has_total_fragments() const;
-  void clear_total_fragments();
-  static const int kTotalFragmentsFieldNumber = 9;
-  ::google::protobuf::int32 total_fragments() const;
-  void set_total_fragments(::google::protobuf::int32 value);
-
-  // optional int32 finished_fragments = 10;
-  bool has_finished_fragments() const;
-  void clear_finished_fragments();
-  static const int kFinishedFragmentsFieldNumber = 10;
-  ::google::protobuf::int32 finished_fragments() const;
-  void set_finished_fragments(::google::protobuf::int32 value);
-
-  // optional int32 autoLimit = 23;
-  bool has_autolimit() const;
-  void clear_autolimit();
-  static const int kAutoLimitFieldNumber = 23;
-  ::google::protobuf::int32 autolimit() const;
-  void set_autolimit(::google::protobuf::int32 value);
-
-  // optional int64 planEnd = 18;
-  bool has_planend() const;
-  void clear_planend();
-  static const int kPlanEndFieldNumber = 18;
-  ::google::protobuf::int64 planend() const;
-  void set_planend(::google::protobuf::int64 value);
-
-  // optional int64 queueWaitEnd = 19;
-  bool has_queuewaitend() const;
-  void clear_queuewaitend();
-  static const int kQueueWaitEndFieldNumber = 19;
-  ::google::protobuf::int64 queuewaitend() const;
-  void set_queuewaitend(::google::protobuf::int64 value);
-
-  // optional double total_cost = 20;
-  bool has_total_cost() const;
-  void clear_total_cost();
-  static const int kTotalCostFieldNumber = 20;
-  double total_cost() const;
-  void set_total_cost(double value);
+  inline const ::exec::shared::QueryId& id() const;
+  inline ::exec::shared::QueryId* mutable_id();
+  inline ::exec::shared::QueryId* release_id();
+  inline void set_allocated_id(::exec::shared::QueryId* id);
 
   // optional .exec.shared.QueryType type = 2;
-  bool has_type() const;
-  void clear_type();
+  inline bool has_type() const;
+  inline void clear_type();
   static const int kTypeFieldNumber = 2;
-  ::exec::shared::QueryType type() const;
-  void set_type(::exec::shared::QueryType value);
+  inline ::exec::shared::QueryType type() const;
+  inline void set_type(::exec::shared::QueryType value);
+
+  // optional int64 start = 3;
+  inline bool has_start() const;
+  inline void clear_start();
+  static const int kStartFieldNumber = 3;
+  inline ::google::protobuf::int64 start() const;
+  inline void set_start(::google::protobuf::int64 value);
+
+  // optional int64 end = 4;
+  inline bool has_end() const;
+  inline void clear_end();
+  static const int kEndFieldNumber = 4;
+  inline ::google::protobuf::int64 end() const;
+  inline void set_end(::google::protobuf::int64 value);
+
+  // optional string query = 5;
+  inline bool has_query() const;
+  inline void clear_query();
+  static const int kQueryFieldNumber = 5;
+  inline const ::std::string& query() const;
+  inline void set_query(const ::std::string& value);
+  inline void set_query(const char* value);
+  inline void set_query(const char* value, size_t size);
+  inline ::std::string* mutable_query();
+  inline ::std::string* release_query();
+  inline void set_allocated_query(::std::string* query);
+
+  // optional string plan = 6;
+  inline bool has_plan() const;
+  inline void clear_plan();
+  static const int kPlanFieldNumber = 6;
+  inline const ::std::string& plan() const;
+  inline void set_plan(const ::std::string& value);
+  inline void set_plan(const char* value);
+  inline void set_plan(const char* value, size_t size);
+  inline ::std::string* mutable_plan();
+  inline ::std::string* release_plan();
+  inline void set_allocated_plan(::std::string* plan);
+
+  // optional .exec.DrillbitEndpoint foreman = 7;
+  inline bool has_foreman() const;
+  inline void clear_foreman();
+  static const int kForemanFieldNumber = 7;
+  inline const ::exec::DrillbitEndpoint& foreman() const;
+  inline ::exec::DrillbitEndpoint* mutable_foreman();
+  inline ::exec::DrillbitEndpoint* release_foreman();
+  inline void set_allocated_foreman(::exec::DrillbitEndpoint* foreman);
+
+  // optional .exec.shared.QueryResult.QueryState state = 8;
+  inline bool has_state() const;
+  inline void clear_state();
+  static const int kStateFieldNumber = 8;
+  inline ::exec::shared::QueryResult_QueryState state() const;
+  inline void set_state(::exec::shared::QueryResult_QueryState value);
+
+  // optional int32 total_fragments = 9;
+  inline bool has_total_fragments() const;
+  inline void clear_total_fragments();
+  static const int kTotalFragmentsFieldNumber = 9;
+  inline ::google::protobuf::int32 total_fragments() const;
+  inline void set_total_fragments(::google::protobuf::int32 value);
+
+  // optional int32 finished_fragments = 10;
+  inline bool has_finished_fragments() const;
+  inline void clear_finished_fragments();
+  static const int kFinishedFragmentsFieldNumber = 10;
+  inline ::google::protobuf::int32 finished_fragments() const;
+  inline void set_finished_fragments(::google::protobuf::int32 value);
+
+  // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
+  inline int fragment_profile_size() const;
+  inline void clear_fragment_profile();
+  static const int kFragmentProfileFieldNumber = 11;
+  inline const ::exec::shared::MajorFragmentProfile& fragment_profile(int index) const;
+  inline ::exec::shared::MajorFragmentProfile* mutable_fragment_profile(int index);
+  inline ::exec::shared::MajorFragmentProfile* add_fragment_profile();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::MajorFragmentProfile >&
+      fragment_profile() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::MajorFragmentProfile >*
+      mutable_fragment_profile();
+
+  // optional string user = 12 [default = "-"];
+  inline bool has_user() const;
+  inline void clear_user();
+  static const int kUserFieldNumber = 12;
+  inline const ::std::string& user() const;
+  inline void set_user(const ::std::string& value);
+  inline void set_user(const char* value);
+  inline void set_user(const char* value, size_t size);
+  inline ::std::string* mutable_user();
+  inline ::std::string* release_user();
+  inline void set_allocated_user(::std::string* user);
+
+  // optional string error = 13;
+  inline bool has_error() const;
+  inline void clear_error();
+  static const int kErrorFieldNumber = 13;
+  inline const ::std::string& error() const;
+  inline void set_error(const ::std::string& value);
+  inline void set_error(const char* value);
+  inline void set_error(const char* value, size_t size);
+  inline ::std::string* mutable_error();
+  inline ::std::string* release_error();
+  inline void set_allocated_error(::std::string* error);
+
+  // optional string verboseError = 14;
+  inline bool has_verboseerror() const;
+  inline void clear_verboseerror();
+  static const int kVerboseErrorFieldNumber = 14;
+  inline const ::std::string& verboseerror() const;
+  inline void set_verboseerror(const ::std::string& value);
+  inline void set_verboseerror(const char* value);
+  inline void set_verboseerror(const char* value, size_t size);
+  inline ::std::string* mutable_verboseerror();
+  inline ::std::string* release_verboseerror();
+  inline void set_allocated_verboseerror(::std::string* verboseerror);
+
+  // optional string error_id = 15;
+  inline bool has_error_id() const;
+  inline void clear_error_id();
+  static const int kErrorIdFieldNumber = 15;
+  inline const ::std::string& error_id() const;
+  inline void set_error_id(const ::std::string& value);
+  inline void set_error_id(const char* value);
+  inline void set_error_id(const char* value, size_t size);
+  inline ::std::string* mutable_error_id();
+  inline ::std::string* release_error_id();
+  inline void set_allocated_error_id(::std::string* error_id);
+
+  // optional string error_node = 16;
+  inline bool has_error_node() const;
+  inline void clear_error_node();
+  static const int kErrorNodeFieldNumber = 16;
+  inline const ::std::string& error_node() const;
+  inline void set_error_node(const ::std::string& value);
+  inline void set_error_node(const char* value);
+  inline void set_error_node(const char* value, size_t size);
+  inline ::std::string* mutable_error_node();
+  inline ::std::string* release_error_node();
+  inline void set_allocated_error_node(::std::string* error_node);
+
+  // optional string options_json = 17;
+  inline bool has_options_json() const;
+  inline void clear_options_json();
+  static const int kOptionsJsonFieldNumber = 17;
+  inline const ::std::string& options_json() const;
+  inline void set_options_json(const ::std::string& value);
+  inline void set_options_json(const char* value);
+  inline void set_options_json(const char* value, size_t size);
+  inline ::std::string* mutable_options_json();
+  inline ::std::string* release_options_json();
+  inline void set_allocated_options_json(::std::string* options_json);
+
+  // optional int64 planEnd = 18;
+  inline bool has_planend() const;
+  inline void clear_planend();
+  static const int kPlanEndFieldNumber = 18;
+  inline ::google::protobuf::int64 planend() const;
+  inline void set_planend(::google::protobuf::int64 value);
+
+  // optional int64 queueWaitEnd = 19;
+  inline bool has_queuewaitend() const;
+  inline void clear_queuewaitend();
+  static const int kQueueWaitEndFieldNumber = 19;
+  inline ::google::protobuf::int64 queuewaitend() const;
+  inline void set_queuewaitend(::google::protobuf::int64 value);
+
+  // optional double total_cost = 20;
+  inline bool has_total_cost() const;
+  inline void clear_total_cost();
+  static const int kTotalCostFieldNumber = 20;
+  inline double total_cost() const;
+  inline void set_total_cost(double value);
+
+  // optional string queue_name = 21 [default = "-"];
+  inline bool has_queue_name() const;
+  inline void clear_queue_name();
+  static const int kQueueNameFieldNumber = 21;
+  inline const ::std::string& queue_name() const;
+  inline void set_queue_name(const ::std::string& value);
+  inline void set_queue_name(const char* value);
+  inline void set_queue_name(const char* value, size_t size);
+  inline ::std::string* mutable_queue_name();
+  inline ::std::string* release_queue_name();
+  inline void set_allocated_queue_name(::std::string* queue_name);
+
+  // optional string queryId = 22;
+  inline bool has_queryid() const;
+  inline void clear_queryid();
+  static const int kQueryIdFieldNumber = 22;
+  inline const ::std::string& queryid() const;
+  inline void set_queryid(const ::std::string& value);
+  inline void set_queryid(const char* value);
+  inline void set_queryid(const char* value, size_t size);
+  inline ::std::string* mutable_queryid();
+  inline ::std::string* release_queryid();
+  inline void set_allocated_queryid(::std::string* queryid);
+
+  // optional int32 autoLimit = 23;
+  inline bool has_autolimit() const;
+  inline void clear_autolimit();
+  static const int kAutoLimitFieldNumber = 23;
+  inline ::google::protobuf::int32 autolimit() const;
+  inline void set_autolimit(::google::protobuf::int32 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.QueryProfile)
  private:
-  void set_has_id();
-  void clear_has_id();
-  void set_has_type();
-  void clear_has_type();
-  void set_has_start();
-  void clear_has_start();
-  void set_has_end();
-  void clear_has_end();
-  void set_has_query();
-  void clear_has_query();
-  void set_has_plan();
-  void clear_has_plan();
-  void set_has_foreman();
-  void clear_has_foreman();
-  void set_has_state();
-  void clear_has_state();
-  void set_has_total_fragments();
-  void clear_has_total_fragments();
-  void set_has_finished_fragments();
-  void clear_has_finished_fragments();
-  void set_has_user();
-  void clear_has_user();
-  void set_has_error();
-  void clear_has_error();
-  void set_has_verboseerror();
-  void clear_has_verboseerror();
-  void set_has_error_id();
-  void clear_has_error_id();
-  void set_has_error_node();
-  void clear_has_error_node();
-  void set_has_options_json();
-  void clear_has_options_json();
-  void set_has_planend();
-  void clear_has_planend();
-  void set_has_queuewaitend();
-  void clear_has_queuewaitend();
-  void set_has_total_cost();
-  void clear_has_total_cost();
-  void set_has_queue_name();
-  void clear_has_queue_name();
-  void set_has_queryid();
-  void clear_has_queryid();
-  void set_has_autolimit();
-  void clear_has_autolimit();
+  inline void set_has_id();
+  inline void clear_has_id();
+  inline void set_has_type();
+  inline void clear_has_type();
+  inline void set_has_start();
+  inline void clear_has_start();
+  inline void set_has_end();
+  inline void clear_has_end();
+  inline void set_has_query();
+  inline void clear_has_query();
+  inline void set_has_plan();
+  inline void clear_has_plan();
+  inline void set_has_foreman();
+  inline void clear_has_foreman();
+  inline void set_has_state();
+  inline void clear_has_state();
+  inline void set_has_total_fragments();
+  inline void clear_has_total_fragments();
+  inline void set_has_finished_fragments();
+  inline void clear_has_finished_fragments();
+  inline void set_has_user();
+  inline void clear_has_user();
+  inline void set_has_error();
+  inline void clear_has_error();
+  inline void set_has_verboseerror();
+  inline void clear_has_verboseerror();
+  inline void set_has_error_id();
+  inline void clear_has_error_id();
+  inline void set_has_error_node();
+  inline void clear_has_error_node();
+  inline void set_has_options_json();
+  inline void clear_has_options_json();
+  inline void set_has_planend();
+  inline void clear_has_planend();
+  inline void set_has_queuewaitend();
+  inline void clear_has_queuewaitend();
+  inline void set_has_total_cost();
+  inline void clear_has_total_cost();
+  inline void set_has_queue_name();
+  inline void clear_has_queue_name();
+  inline void set_has_queryid();
+  inline void clear_has_queryid();
+  inline void set_has_autolimit();
+  inline void clear_has_autolimit();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::MajorFragmentProfile > fragment_profile_;
-  ::google::protobuf::internal::ArenaStringPtr query_;
-  ::google::protobuf::internal::ArenaStringPtr plan_;
-  public:
-  static ::google::protobuf::internal::ExplicitlyConstructed< ::std::string> _i_give_permission_to_break_this_code_default_user_;
-  private:
-  ::google::protobuf::internal::ArenaStringPtr user_;
-  ::google::protobuf::internal::ArenaStringPtr error_;
-  ::google::protobuf::internal::ArenaStringPtr verboseerror_;
-  ::google::protobuf::internal::ArenaStringPtr error_id_;
-  ::google::protobuf::internal::ArenaStringPtr error_node_;
-  ::google::protobuf::internal::ArenaStringPtr options_json_;
-  public:
-  static ::google::protobuf::internal::ExplicitlyConstructed< ::std::string> _i_give_permission_to_break_this_code_default_queue_name_;
-  private:
-  ::google::protobuf::internal::ArenaStringPtr queue_name_;
-  ::google::protobuf::internal::ArenaStringPtr queryid_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::QueryId* id_;
-  ::exec::DrillbitEndpoint* foreman_;
   ::google::protobuf::int64 start_;
   ::google::protobuf::int64 end_;
+  ::std::string* query_;
+  int type_;
   int state_;
+  ::std::string* plan_;
+  ::exec::DrillbitEndpoint* foreman_;
   ::google::protobuf::int32 total_fragments_;
   ::google::protobuf::int32 finished_fragments_;
-  ::google::protobuf::int32 autolimit_;
+  ::google::protobuf::RepeatedPtrField< ::exec::shared::MajorFragmentProfile > fragment_profile_;
+  ::std::string* user_;
+  static ::std::string* _default_user_;
+  ::std::string* error_;
+  ::std::string* verboseerror_;
+  ::std::string* error_id_;
+  ::std::string* error_node_;
+  ::std::string* options_json_;
   ::google::protobuf::int64 planend_;
   ::google::protobuf::int64 queuewaitend_;
   double total_cost_;
-  int type_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+  ::std::string* queue_name_;
+  static ::std::string* _default_queue_name_;
+  ::std::string* queryid_;
+  ::google::protobuf::int32 autolimit_;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(23 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static QueryProfile* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class MajorFragmentProfile : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.MajorFragmentProfile) */ {
+class MajorFragmentProfile : public ::google::protobuf::Message {
  public:
   MajorFragmentProfile();
   virtual ~MajorFragmentProfile();
@@ -3001,123 +2328,91 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  MajorFragmentProfile(MajorFragmentProfile&& from) noexcept
-    : MajorFragmentProfile() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline MajorFragmentProfile& operator=(MajorFragmentProfile&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const MajorFragmentProfile& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const MajorFragmentProfile* internal_default_instance() {
-    return reinterpret_cast<const MajorFragmentProfile*>(
-               &_MajorFragmentProfile_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    14;
-
   void Swap(MajorFragmentProfile* other);
-  friend void swap(MajorFragmentProfile& a, MajorFragmentProfile& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline MajorFragmentProfile* New() const final {
-    return CreateMaybeMessage<MajorFragmentProfile>(NULL);
-  }
-
-  MajorFragmentProfile* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<MajorFragmentProfile>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  MajorFragmentProfile* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const MajorFragmentProfile& from);
   void MergeFrom(const MajorFragmentProfile& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(MajorFragmentProfile* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
-  int minor_fragment_profile_size() const;
-  void clear_minor_fragment_profile();
-  static const int kMinorFragmentProfileFieldNumber = 2;
-  ::exec::shared::MinorFragmentProfile* mutable_minor_fragment_profile(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::MinorFragmentProfile >*
-      mutable_minor_fragment_profile();
-  const ::exec::shared::MinorFragmentProfile& minor_fragment_profile(int index) const;
-  ::exec::shared::MinorFragmentProfile* add_minor_fragment_profile();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::MinorFragmentProfile >&
-      minor_fragment_profile() const;
-
   // optional int32 major_fragment_id = 1;
-  bool has_major_fragment_id() const;
-  void clear_major_fragment_id();
+  inline bool has_major_fragment_id() const;
+  inline void clear_major_fragment_id();
   static const int kMajorFragmentIdFieldNumber = 1;
-  ::google::protobuf::int32 major_fragment_id() const;
-  void set_major_fragment_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 major_fragment_id() const;
+  inline void set_major_fragment_id(::google::protobuf::int32 value);
+
+  // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
+  inline int minor_fragment_profile_size() const;
+  inline void clear_minor_fragment_profile();
+  static const int kMinorFragmentProfileFieldNumber = 2;
+  inline const ::exec::shared::MinorFragmentProfile& minor_fragment_profile(int index) const;
+  inline ::exec::shared::MinorFragmentProfile* mutable_minor_fragment_profile(int index);
+  inline ::exec::shared::MinorFragmentProfile* add_minor_fragment_profile();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::MinorFragmentProfile >&
+      minor_fragment_profile() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::MinorFragmentProfile >*
+      mutable_minor_fragment_profile();
 
   // @@protoc_insertion_point(class_scope:exec.shared.MajorFragmentProfile)
  private:
-  void set_has_major_fragment_id();
-  void clear_has_major_fragment_id();
+  inline void set_has_major_fragment_id();
+  inline void clear_has_major_fragment_id();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::shared::MinorFragmentProfile > minor_fragment_profile_;
   ::google::protobuf::int32 major_fragment_id_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static MajorFragmentProfile* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class MinorFragmentProfile : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.MinorFragmentProfile) */ {
+class MinorFragmentProfile : public ::google::protobuf::Message {
  public:
   MinorFragmentProfile();
   virtual ~MinorFragmentProfile();
@@ -3128,223 +2423,185 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  MinorFragmentProfile(MinorFragmentProfile&& from) noexcept
-    : MinorFragmentProfile() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline MinorFragmentProfile& operator=(MinorFragmentProfile&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const MinorFragmentProfile& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const MinorFragmentProfile* internal_default_instance() {
-    return reinterpret_cast<const MinorFragmentProfile*>(
-               &_MinorFragmentProfile_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    15;
-
   void Swap(MinorFragmentProfile* other);
-  friend void swap(MinorFragmentProfile& a, MinorFragmentProfile& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline MinorFragmentProfile* New() const final {
-    return CreateMaybeMessage<MinorFragmentProfile>(NULL);
-  }
-
-  MinorFragmentProfile* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<MinorFragmentProfile>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  MinorFragmentProfile* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const MinorFragmentProfile& from);
   void MergeFrom(const MinorFragmentProfile& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(MinorFragmentProfile* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated .exec.shared.OperatorProfile operator_profile = 4;
-  int operator_profile_size() const;
-  void clear_operator_profile();
-  static const int kOperatorProfileFieldNumber = 4;
-  ::exec::shared::OperatorProfile* mutable_operator_profile(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::OperatorProfile >*
-      mutable_operator_profile();
-  const ::exec::shared::OperatorProfile& operator_profile(int index) const;
-  ::exec::shared::OperatorProfile* add_operator_profile();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::OperatorProfile >&
-      operator_profile() const;
+  // optional .exec.shared.FragmentState state = 1;
+  inline bool has_state() const;
+  inline void clear_state();
+  static const int kStateFieldNumber = 1;
+  inline ::exec::shared::FragmentState state() const;
+  inline void set_state(::exec::shared::FragmentState value);
 
   // optional .exec.shared.DrillPBError error = 2;
-  bool has_error() const;
-  void clear_error();
+  inline bool has_error() const;
+  inline void clear_error();
   static const int kErrorFieldNumber = 2;
-  private:
-  const ::exec::shared::DrillPBError& _internal_error() const;
-  public:
-  const ::exec::shared::DrillPBError& error() const;
-  ::exec::shared::DrillPBError* release_error();
-  ::exec::shared::DrillPBError* mutable_error();
-  void set_allocated_error(::exec::shared::DrillPBError* error);
-
-  // optional .exec.DrillbitEndpoint endpoint = 9;
-  bool has_endpoint() const;
-  void clear_endpoint();
-  static const int kEndpointFieldNumber = 9;
-  private:
-  const ::exec::DrillbitEndpoint& _internal_endpoint() const;
-  public:
-  const ::exec::DrillbitEndpoint& endpoint() const;
-  ::exec::DrillbitEndpoint* release_endpoint();
-  ::exec::DrillbitEndpoint* mutable_endpoint();
-  void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
-
-  // optional .exec.shared.FragmentState state = 1;
-  bool has_state() const;
-  void clear_state();
-  static const int kStateFieldNumber = 1;
-  ::exec::shared::FragmentState state() const;
-  void set_state(::exec::shared::FragmentState value);
+  inline const ::exec::shared::DrillPBError& error() const;
+  inline ::exec::shared::DrillPBError* mutable_error();
+  inline ::exec::shared::DrillPBError* release_error();
+  inline void set_allocated_error(::exec::shared::DrillPBError* error);
 
   // optional int32 minor_fragment_id = 3;
-  bool has_minor_fragment_id() const;
-  void clear_minor_fragment_id();
+  inline bool has_minor_fragment_id() const;
+  inline void clear_minor_fragment_id();
   static const int kMinorFragmentIdFieldNumber = 3;
-  ::google::protobuf::int32 minor_fragment_id() const;
-  void set_minor_fragment_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 minor_fragment_id() const;
+  inline void set_minor_fragment_id(::google::protobuf::int32 value);
+
+  // repeated .exec.shared.OperatorProfile operator_profile = 4;
+  inline int operator_profile_size() const;
+  inline void clear_operator_profile();
+  static const int kOperatorProfileFieldNumber = 4;
+  inline const ::exec::shared::OperatorProfile& operator_profile(int index) const;
+  inline ::exec::shared::OperatorProfile* mutable_operator_profile(int index);
+  inline ::exec::shared::OperatorProfile* add_operator_profile();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::OperatorProfile >&
+      operator_profile() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::OperatorProfile >*
+      mutable_operator_profile();
 
   // optional int64 start_time = 5;
-  bool has_start_time() const;
-  void clear_start_time();
+  inline bool has_start_time() const;
+  inline void clear_start_time();
   static const int kStartTimeFieldNumber = 5;
-  ::google::protobuf::int64 start_time() const;
-  void set_start_time(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 start_time() const;
+  inline void set_start_time(::google::protobuf::int64 value);
 
   // optional int64 end_time = 6;
-  bool has_end_time() const;
-  void clear_end_time();
+  inline bool has_end_time() const;
+  inline void clear_end_time();
   static const int kEndTimeFieldNumber = 6;
-  ::google::protobuf::int64 end_time() const;
-  void set_end_time(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 end_time() const;
+  inline void set_end_time(::google::protobuf::int64 value);
 
   // optional int64 memory_used = 7;
-  bool has_memory_used() const;
-  void clear_memory_used();
+  inline bool has_memory_used() const;
+  inline void clear_memory_used();
   static const int kMemoryUsedFieldNumber = 7;
-  ::google::protobuf::int64 memory_used() const;
-  void set_memory_used(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 memory_used() const;
+  inline void set_memory_used(::google::protobuf::int64 value);
 
   // optional int64 max_memory_used = 8;
-  bool has_max_memory_used() const;
-  void clear_max_memory_used();
+  inline bool has_max_memory_used() const;
+  inline void clear_max_memory_used();
   static const int kMaxMemoryUsedFieldNumber = 8;
-  ::google::protobuf::int64 max_memory_used() const;
-  void set_max_memory_used(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 max_memory_used() const;
+  inline void set_max_memory_used(::google::protobuf::int64 value);
+
+  // optional .exec.DrillbitEndpoint endpoint = 9;
+  inline bool has_endpoint() const;
+  inline void clear_endpoint();
+  static const int kEndpointFieldNumber = 9;
+  inline const ::exec::DrillbitEndpoint& endpoint() const;
+  inline ::exec::DrillbitEndpoint* mutable_endpoint();
+  inline ::exec::DrillbitEndpoint* release_endpoint();
+  inline void set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint);
 
   // optional int64 last_update = 10;
-  bool has_last_update() const;
-  void clear_last_update();
+  inline bool has_last_update() const;
+  inline void clear_last_update();
   static const int kLastUpdateFieldNumber = 10;
-  ::google::protobuf::int64 last_update() const;
-  void set_last_update(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 last_update() const;
+  inline void set_last_update(::google::protobuf::int64 value);
 
   // optional int64 last_progress = 11;
-  bool has_last_progress() const;
-  void clear_last_progress();
+  inline bool has_last_progress() const;
+  inline void clear_last_progress();
   static const int kLastProgressFieldNumber = 11;
-  ::google::protobuf::int64 last_progress() const;
-  void set_last_progress(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 last_progress() const;
+  inline void set_last_progress(::google::protobuf::int64 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.MinorFragmentProfile)
  private:
-  void set_has_state();
-  void clear_has_state();
-  void set_has_error();
-  void clear_has_error();
-  void set_has_minor_fragment_id();
-  void clear_has_minor_fragment_id();
-  void set_has_start_time();
-  void clear_has_start_time();
-  void set_has_end_time();
-  void clear_has_end_time();
-  void set_has_memory_used();
-  void clear_has_memory_used();
-  void set_has_max_memory_used();
-  void clear_has_max_memory_used();
-  void set_has_endpoint();
-  void clear_has_endpoint();
-  void set_has_last_update();
-  void clear_has_last_update();
-  void set_has_last_progress();
-  void clear_has_last_progress();
+  inline void set_has_state();
+  inline void clear_has_state();
+  inline void set_has_error();
+  inline void clear_has_error();
+  inline void set_has_minor_fragment_id();
+  inline void clear_has_minor_fragment_id();
+  inline void set_has_start_time();
+  inline void clear_has_start_time();
+  inline void set_has_end_time();
+  inline void clear_has_end_time();
+  inline void set_has_memory_used();
+  inline void clear_has_memory_used();
+  inline void set_has_max_memory_used();
+  inline void clear_has_max_memory_used();
+  inline void set_has_endpoint();
+  inline void clear_has_endpoint();
+  inline void set_has_last_update();
+  inline void clear_has_last_update();
+  inline void set_has_last_progress();
+  inline void clear_has_last_progress();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::OperatorProfile > operator_profile_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::exec::shared::DrillPBError* error_;
-  ::exec::DrillbitEndpoint* endpoint_;
   int state_;
   ::google::protobuf::int32 minor_fragment_id_;
+  ::google::protobuf::RepeatedPtrField< ::exec::shared::OperatorProfile > operator_profile_;
   ::google::protobuf::int64 start_time_;
   ::google::protobuf::int64 end_time_;
   ::google::protobuf::int64 memory_used_;
   ::google::protobuf::int64 max_memory_used_;
+  ::exec::DrillbitEndpoint* endpoint_;
   ::google::protobuf::int64 last_update_;
   ::google::protobuf::int64 last_progress_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(11 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static MinorFragmentProfile* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class OperatorProfile : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.OperatorProfile) */ {
+class OperatorProfile : public ::google::protobuf::Message {
  public:
   OperatorProfile();
   virtual ~OperatorProfile();
@@ -3355,186 +2612,154 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  OperatorProfile(OperatorProfile&& from) noexcept
-    : OperatorProfile() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline OperatorProfile& operator=(OperatorProfile&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const OperatorProfile& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const OperatorProfile* internal_default_instance() {
-    return reinterpret_cast<const OperatorProfile*>(
-               &_OperatorProfile_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    16;
-
   void Swap(OperatorProfile* other);
-  friend void swap(OperatorProfile& a, OperatorProfile& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline OperatorProfile* New() const final {
-    return CreateMaybeMessage<OperatorProfile>(NULL);
-  }
-
-  OperatorProfile* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<OperatorProfile>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  OperatorProfile* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const OperatorProfile& from);
   void MergeFrom(const OperatorProfile& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(OperatorProfile* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // repeated .exec.shared.StreamProfile input_profile = 1;
-  int input_profile_size() const;
-  void clear_input_profile();
+  inline int input_profile_size() const;
+  inline void clear_input_profile();
   static const int kInputProfileFieldNumber = 1;
-  ::exec::shared::StreamProfile* mutable_input_profile(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::StreamProfile >*
-      mutable_input_profile();
-  const ::exec::shared::StreamProfile& input_profile(int index) const;
-  ::exec::shared::StreamProfile* add_input_profile();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::StreamProfile >&
+  inline const ::exec::shared::StreamProfile& input_profile(int index) const;
+  inline ::exec::shared::StreamProfile* mutable_input_profile(int index);
+  inline ::exec::shared::StreamProfile* add_input_profile();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::StreamProfile >&
       input_profile() const;
-
-  // repeated .exec.shared.MetricValue metric = 8;
-  int metric_size() const;
-  void clear_metric();
-  static const int kMetricFieldNumber = 8;
-  ::exec::shared::MetricValue* mutable_metric(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::MetricValue >*
-      mutable_metric();
-  const ::exec::shared::MetricValue& metric(int index) const;
-  ::exec::shared::MetricValue* add_metric();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::MetricValue >&
-      metric() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::StreamProfile >*
+      mutable_input_profile();
 
   // optional int32 operator_id = 3;
-  bool has_operator_id() const;
-  void clear_operator_id();
+  inline bool has_operator_id() const;
+  inline void clear_operator_id();
   static const int kOperatorIdFieldNumber = 3;
-  ::google::protobuf::int32 operator_id() const;
-  void set_operator_id(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 operator_id() const;
+  inline void set_operator_id(::google::protobuf::int32 value);
 
   // optional int32 operator_type = 4;
-  bool has_operator_type() const;
-  void clear_operator_type();
+  inline bool has_operator_type() const;
+  inline void clear_operator_type();
   static const int kOperatorTypeFieldNumber = 4;
-  ::google::protobuf::int32 operator_type() const;
-  void set_operator_type(::google::protobuf::int32 value);
+  inline ::google::protobuf::int32 operator_type() const;
+  inline void set_operator_type(::google::protobuf::int32 value);
 
   // optional int64 setup_nanos = 5;
-  bool has_setup_nanos() const;
-  void clear_setup_nanos();
+  inline bool has_setup_nanos() const;
+  inline void clear_setup_nanos();
   static const int kSetupNanosFieldNumber = 5;
-  ::google::protobuf::int64 setup_nanos() const;
-  void set_setup_nanos(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 setup_nanos() const;
+  inline void set_setup_nanos(::google::protobuf::int64 value);
 
   // optional int64 process_nanos = 6;
-  bool has_process_nanos() const;
-  void clear_process_nanos();
+  inline bool has_process_nanos() const;
+  inline void clear_process_nanos();
   static const int kProcessNanosFieldNumber = 6;
-  ::google::protobuf::int64 process_nanos() const;
-  void set_process_nanos(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 process_nanos() const;
+  inline void set_process_nanos(::google::protobuf::int64 value);
 
   // optional int64 peak_local_memory_allocated = 7;
-  bool has_peak_local_memory_allocated() const;
-  void clear_peak_local_memory_allocated();
+  inline bool has_peak_local_memory_allocated() const;
+  inline void clear_peak_local_memory_allocated();
   static const int kPeakLocalMemoryAllocatedFieldNumber = 7;
-  ::google::protobuf::int64 peak_local_memory_allocated() const;
-  void set_peak_local_memory_allocated(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 peak_local_memory_allocated() const;
+  inline void set_peak_local_memory_allocated(::google::protobuf::int64 value);
+
+  // repeated .exec.shared.MetricValue metric = 8;
+  inline int metric_size() const;
+  inline void clear_metric();
+  static const int kMetricFieldNumber = 8;
+  inline const ::exec::shared::MetricValue& metric(int index) const;
+  inline ::exec::shared::MetricValue* mutable_metric(int index);
+  inline ::exec::shared::MetricValue* add_metric();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::MetricValue >&
+      metric() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::MetricValue >*
+      mutable_metric();
 
   // optional int64 wait_nanos = 9;
-  bool has_wait_nanos() const;
-  void clear_wait_nanos();
+  inline bool has_wait_nanos() const;
+  inline void clear_wait_nanos();
   static const int kWaitNanosFieldNumber = 9;
-  ::google::protobuf::int64 wait_nanos() const;
-  void set_wait_nanos(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 wait_nanos() const;
+  inline void set_wait_nanos(::google::protobuf::int64 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.OperatorProfile)
  private:
-  void set_has_operator_id();
-  void clear_has_operator_id();
-  void set_has_operator_type();
-  void clear_has_operator_type();
-  void set_has_setup_nanos();
-  void clear_has_setup_nanos();
-  void set_has_process_nanos();
-  void clear_has_process_nanos();
-  void set_has_peak_local_memory_allocated();
-  void clear_has_peak_local_memory_allocated();
-  void set_has_wait_nanos();
-  void clear_has_wait_nanos();
+  inline void set_has_operator_id();
+  inline void clear_has_operator_id();
+  inline void set_has_operator_type();
+  inline void clear_has_operator_type();
+  inline void set_has_setup_nanos();
+  inline void clear_has_setup_nanos();
+  inline void set_has_process_nanos();
+  inline void clear_has_process_nanos();
+  inline void set_has_peak_local_memory_allocated();
+  inline void clear_has_peak_local_memory_allocated();
+  inline void set_has_wait_nanos();
+  inline void clear_has_wait_nanos();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::shared::StreamProfile > input_profile_;
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::MetricValue > metric_;
   ::google::protobuf::int32 operator_id_;
   ::google::protobuf::int32 operator_type_;
   ::google::protobuf::int64 setup_nanos_;
   ::google::protobuf::int64 process_nanos_;
   ::google::protobuf::int64 peak_local_memory_allocated_;
+  ::google::protobuf::RepeatedPtrField< ::exec::shared::MetricValue > metric_;
   ::google::protobuf::int64 wait_nanos_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(8 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static OperatorProfile* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class StreamProfile : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.StreamProfile) */ {
+class StreamProfile : public ::google::protobuf::Message {
  public:
   StreamProfile();
   virtual ~StreamProfile();
@@ -3545,130 +2770,98 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  StreamProfile(StreamProfile&& from) noexcept
-    : StreamProfile() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline StreamProfile& operator=(StreamProfile&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const StreamProfile& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const StreamProfile* internal_default_instance() {
-    return reinterpret_cast<const StreamProfile*>(
-               &_StreamProfile_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    17;
-
   void Swap(StreamProfile* other);
-  friend void swap(StreamProfile& a, StreamProfile& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline StreamProfile* New() const final {
-    return CreateMaybeMessage<StreamProfile>(NULL);
-  }
-
-  StreamProfile* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<StreamProfile>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  StreamProfile* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const StreamProfile& from);
   void MergeFrom(const StreamProfile& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(StreamProfile* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional int64 records = 1;
-  bool has_records() const;
-  void clear_records();
+  inline bool has_records() const;
+  inline void clear_records();
   static const int kRecordsFieldNumber = 1;
-  ::google::protobuf::int64 records() const;
-  void set_records(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 records() const;
+  inline void set_records(::google::protobuf::int64 value);
 
   // optional int64 batches = 2;
-  bool has_batches() const;
-  void clear_batches();
+  inline bool has_batches() const;
+  inline void clear_batches();
   static const int kBatchesFieldNumber = 2;
-  ::google::protobuf::int64 batches() const;
-  void set_batches(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 batches() const;
+  inline void set_batches(::google::protobuf::int64 value);
 
   // optional int64 schemas = 3;
-  bool has_schemas() const;
-  void clear_schemas();
+  inline bool has_schemas() const;
+  inline void clear_schemas();
   static const int kSchemasFieldNumber = 3;
-  ::google::protobuf::int64 schemas() const;
-  void set_schemas(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 schemas() const;
+  inline void set_schemas(::google::protobuf::int64 value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.StreamProfile)
  private:
-  void set_has_records();
-  void clear_has_records();
-  void set_has_batches();
-  void clear_has_batches();
-  void set_has_schemas();
-  void clear_has_schemas();
+  inline void set_has_records();
+  inline void clear_has_records();
+  inline void set_has_batches();
+  inline void clear_has_batches();
+  inline void set_has_schemas();
+  inline void clear_has_schemas();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::int64 records_;
   ::google::protobuf::int64 batches_;
   ::google::protobuf::int64 schemas_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static StreamProfile* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class MetricValue : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.MetricValue) */ {
+class MetricValue : public ::google::protobuf::Message {
  public:
   MetricValue();
   virtual ~MetricValue();
@@ -3679,130 +2872,98 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  MetricValue(MetricValue&& from) noexcept
-    : MetricValue() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline MetricValue& operator=(MetricValue&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const MetricValue& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const MetricValue* internal_default_instance() {
-    return reinterpret_cast<const MetricValue*>(
-               &_MetricValue_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    18;
-
   void Swap(MetricValue* other);
-  friend void swap(MetricValue& a, MetricValue& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline MetricValue* New() const final {
-    return CreateMaybeMessage<MetricValue>(NULL);
-  }
-
-  MetricValue* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<MetricValue>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  MetricValue* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const MetricValue& from);
   void MergeFrom(const MetricValue& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(MetricValue* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
+  // optional int32 metric_id = 1;
+  inline bool has_metric_id() const;
+  inline void clear_metric_id();
+  static const int kMetricIdFieldNumber = 1;
+  inline ::google::protobuf::int32 metric_id() const;
+  inline void set_metric_id(::google::protobuf::int32 value);
+
   // optional int64 long_value = 2;
-  bool has_long_value() const;
-  void clear_long_value();
+  inline bool has_long_value() const;
+  inline void clear_long_value();
   static const int kLongValueFieldNumber = 2;
-  ::google::protobuf::int64 long_value() const;
-  void set_long_value(::google::protobuf::int64 value);
+  inline ::google::protobuf::int64 long_value() const;
+  inline void set_long_value(::google::protobuf::int64 value);
 
   // optional double double_value = 3;
-  bool has_double_value() const;
-  void clear_double_value();
+  inline bool has_double_value() const;
+  inline void clear_double_value();
   static const int kDoubleValueFieldNumber = 3;
-  double double_value() const;
-  void set_double_value(double value);
-
-  // optional int32 metric_id = 1;
-  bool has_metric_id() const;
-  void clear_metric_id();
-  static const int kMetricIdFieldNumber = 1;
-  ::google::protobuf::int32 metric_id() const;
-  void set_metric_id(::google::protobuf::int32 value);
+  inline double double_value() const;
+  inline void set_double_value(double value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.MetricValue)
  private:
-  void set_has_metric_id();
-  void clear_has_metric_id();
-  void set_has_long_value();
-  void clear_has_long_value();
-  void set_has_double_value();
-  void clear_has_double_value();
+  inline void set_has_metric_id();
+  inline void clear_has_metric_id();
+  inline void set_has_long_value();
+  inline void clear_has_long_value();
+  inline void set_has_double_value();
+  inline void clear_has_double_value();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::int64 long_value_;
   double double_value_;
   ::google::protobuf::int32 metric_id_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static MetricValue* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class Registry : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.Registry) */ {
+class Registry : public ::google::protobuf::Message {
  public:
   Registry();
   virtual ~Registry();
@@ -3813,113 +2974,81 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  Registry(Registry&& from) noexcept
-    : Registry() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline Registry& operator=(Registry&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const Registry& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const Registry* internal_default_instance() {
-    return reinterpret_cast<const Registry*>(
-               &_Registry_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    19;
-
   void Swap(Registry* other);
-  friend void swap(Registry& a, Registry& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline Registry* New() const final {
-    return CreateMaybeMessage<Registry>(NULL);
-  }
-
-  Registry* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<Registry>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  Registry* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const Registry& from);
   void MergeFrom(const Registry& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(Registry* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // repeated .exec.shared.Jar jar = 1;
-  int jar_size() const;
-  void clear_jar();
+  inline int jar_size() const;
+  inline void clear_jar();
   static const int kJarFieldNumber = 1;
-  ::exec::shared::Jar* mutable_jar(int index);
-  ::google::protobuf::RepeatedPtrField< ::exec::shared::Jar >*
-      mutable_jar();
-  const ::exec::shared::Jar& jar(int index) const;
-  ::exec::shared::Jar* add_jar();
-  const ::google::protobuf::RepeatedPtrField< ::exec::shared::Jar >&
+  inline const ::exec::shared::Jar& jar(int index) const;
+  inline ::exec::shared::Jar* mutable_jar(int index);
+  inline ::exec::shared::Jar* add_jar();
+  inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::Jar >&
       jar() const;
+  inline ::google::protobuf::RepeatedPtrField< ::exec::shared::Jar >*
+      mutable_jar();
 
   // @@protoc_insertion_point(class_scope:exec.shared.Registry)
  private:
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
   ::google::protobuf::RepeatedPtrField< ::exec::shared::Jar > jar_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(1 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static Registry* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class Jar : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.Jar) */ {
+class Jar : public ::google::protobuf::Message {
  public:
   Jar();
   virtual ~Jar();
@@ -3930,141 +3059,100 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  Jar(Jar&& from) noexcept
-    : Jar() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline Jar& operator=(Jar&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const Jar& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const Jar* internal_default_instance() {
-    return reinterpret_cast<const Jar*>(
-               &_Jar_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    20;
-
   void Swap(Jar* other);
-  friend void swap(Jar& a, Jar& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline Jar* New() const final {
-    return CreateMaybeMessage<Jar>(NULL);
-  }
-
-  Jar* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<Jar>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  Jar* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const Jar& from);
   void MergeFrom(const Jar& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(Jar* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
-  // repeated string function_signature = 2;
-  int function_signature_size() const;
-  void clear_function_signature();
-  static const int kFunctionSignatureFieldNumber = 2;
-  const ::std::string& function_signature(int index) const;
-  ::std::string* mutable_function_signature(int index);
-  void set_function_signature(int index, const ::std::string& value);
-  #if LANG_CXX11
-  void set_function_signature(int index, ::std::string&& value);
-  #endif
-  void set_function_signature(int index, const char* value);
-  void set_function_signature(int index, const char* value, size_t size);
-  ::std::string* add_function_signature();
-  void add_function_signature(const ::std::string& value);
-  #if LANG_CXX11
-  void add_function_signature(::std::string&& value);
-  #endif
-  void add_function_signature(const char* value);
-  void add_function_signature(const char* value, size_t size);
-  const ::google::protobuf::RepeatedPtrField< ::std::string>& function_signature() const;
-  ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_function_signature();
-
   // optional string name = 1;
-  bool has_name() const;
-  void clear_name();
+  inline bool has_name() const;
+  inline void clear_name();
   static const int kNameFieldNumber = 1;
-  const ::std::string& name() const;
-  void set_name(const ::std::string& value);
-  #if LANG_CXX11
-  void set_name(::std::string&& value);
-  #endif
-  void set_name(const char* value);
-  void set_name(const char* value, size_t size);
-  ::std::string* mutable_name();
-  ::std::string* release_name();
-  void set_allocated_name(::std::string* name);
+  inline const ::std::string& name() const;
+  inline void set_name(const ::std::string& value);
+  inline void set_name(const char* value);
+  inline void set_name(const char* value, size_t size);
+  inline ::std::string* mutable_name();
+  inline ::std::string* release_name();
+  inline void set_allocated_name(::std::string* name);
+
+  // repeated string function_signature = 2;
+  inline int function_signature_size() const;
+  inline void clear_function_signature();
+  static const int kFunctionSignatureFieldNumber = 2;
+  inline const ::std::string& function_signature(int index) const;
+  inline ::std::string* mutable_function_signature(int index);
+  inline void set_function_signature(int index, const ::std::string& value);
+  inline void set_function_signature(int index, const char* value);
+  inline void set_function_signature(int index, const char* value, size_t size);
+  inline ::std::string* add_function_signature();
+  inline void add_function_signature(const ::std::string& value);
+  inline void add_function_signature(const char* value);
+  inline void add_function_signature(const char* value, size_t size);
+  inline const ::google::protobuf::RepeatedPtrField< ::std::string>& function_signature() const;
+  inline ::google::protobuf::RepeatedPtrField< ::std::string>* mutable_function_signature();
 
   // @@protoc_insertion_point(class_scope:exec.shared.Jar)
  private:
-  void set_has_name();
-  void clear_has_name();
+  inline void set_has_name();
+  inline void clear_has_name();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* name_;
   ::google::protobuf::RepeatedPtrField< ::std::string> function_signature_;
-  ::google::protobuf::internal::ArenaStringPtr name_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static Jar* default_instance_;
 };
 // -------------------------------------------------------------------
 
-class SaslMessage : public ::google::protobuf::Message /* @@protoc_insertion_point(class_definition:exec.shared.SaslMessage) */ {
+class SaslMessage : public ::google::protobuf::Message {
  public:
   SaslMessage();
   virtual ~SaslMessage();
@@ -4075,152 +3163,110 @@
     CopyFrom(from);
     return *this;
   }
-  #if LANG_CXX11
-  SaslMessage(SaslMessage&& from) noexcept
-    : SaslMessage() {
-    *this = ::std::move(from);
+
+  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
+    return _unknown_fields_;
   }
 
-  inline SaslMessage& operator=(SaslMessage&& from) noexcept {
-    if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
-      if (this != &from) InternalSwap(&from);
-    } else {
-      CopyFrom(from);
-    }
-    return *this;
-  }
-  #endif
-  inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const {
-    return _internal_metadata_.unknown_fields();
-  }
   inline ::google::protobuf::UnknownFieldSet* mutable_unknown_fields() {
-    return _internal_metadata_.mutable_unknown_fields();
+    return &_unknown_fields_;
   }
 
   static const ::google::protobuf::Descriptor* descriptor();
   static const SaslMessage& default_instance();
 
-  static void InitAsDefaultInstance();  // FOR INTERNAL USE ONLY
-  static inline const SaslMessage* internal_default_instance() {
-    return reinterpret_cast<const SaslMessage*>(
-               &_SaslMessage_default_instance_);
-  }
-  static constexpr int kIndexInFileMessages =
-    21;
-
   void Swap(SaslMessage* other);
-  friend void swap(SaslMessage& a, SaslMessage& b) {
-    a.Swap(&b);
-  }
 
   // implements Message ----------------------------------------------
 
-  inline SaslMessage* New() const final {
-    return CreateMaybeMessage<SaslMessage>(NULL);
-  }
-
-  SaslMessage* New(::google::protobuf::Arena* arena) const final {
-    return CreateMaybeMessage<SaslMessage>(arena);
-  }
-  void CopyFrom(const ::google::protobuf::Message& from) final;
-  void MergeFrom(const ::google::protobuf::Message& from) final;
+  SaslMessage* New() const;
+  void CopyFrom(const ::google::protobuf::Message& from);
+  void MergeFrom(const ::google::protobuf::Message& from);
   void CopyFrom(const SaslMessage& from);
   void MergeFrom(const SaslMessage& from);
-  void Clear() final;
-  bool IsInitialized() const final;
+  void Clear();
+  bool IsInitialized() const;
 
-  size_t ByteSizeLong() const final;
+  int ByteSize() const;
   bool MergePartialFromCodedStream(
-      ::google::protobuf::io::CodedInputStream* input) final;
+      ::google::protobuf::io::CodedInputStream* input);
   void SerializeWithCachedSizes(
-      ::google::protobuf::io::CodedOutputStream* output) const final;
-  ::google::protobuf::uint8* InternalSerializeWithCachedSizesToArray(
-      bool deterministic, ::google::protobuf::uint8* target) const final;
-  int GetCachedSize() const final { return _cached_size_.Get(); }
-
+      ::google::protobuf::io::CodedOutputStream* output) const;
+  ::google::protobuf::uint8* SerializeWithCachedSizesToArray(::google::protobuf::uint8* output) const;
+  int GetCachedSize() const { return _cached_size_; }
   private:
   void SharedCtor();
   void SharedDtor();
-  void SetCachedSize(int size) const final;
-  void InternalSwap(SaslMessage* other);
-  private:
-  inline ::google::protobuf::Arena* GetArenaNoVirtual() const {
-    return NULL;
-  }
-  inline void* MaybeArenaPtr() const {
-    return NULL;
-  }
+  void SetCachedSize(int size) const;
   public:
 
-  ::google::protobuf::Metadata GetMetadata() const final;
+  ::google::protobuf::Metadata GetMetadata() const;
 
   // nested types ----------------------------------------------------
 
   // accessors -------------------------------------------------------
 
   // optional string mechanism = 1;
-  bool has_mechanism() const;
-  void clear_mechanism();
+  inline bool has_mechanism() const;
+  inline void clear_mechanism();
   static const int kMechanismFieldNumber = 1;
-  const ::std::string& mechanism() const;
-  void set_mechanism(const ::std::string& value);
-  #if LANG_CXX11
-  void set_mechanism(::std::string&& value);
-  #endif
-  void set_mechanism(const char* value);
-  void set_mechanism(const char* value, size_t size);
-  ::std::string* mutable_mechanism();
-  ::std::string* release_mechanism();
-  void set_allocated_mechanism(::std::string* mechanism);
+  inline const ::std::string& mechanism() const;
+  inline void set_mechanism(const ::std::string& value);
+  inline void set_mechanism(const char* value);
+  inline void set_mechanism(const char* value, size_t size);
+  inline ::std::string* mutable_mechanism();
+  inline ::std::string* release_mechanism();
+  inline void set_allocated_mechanism(::std::string* mechanism);
 
   // optional bytes data = 2;
-  bool has_data() const;
-  void clear_data();
+  inline bool has_data() const;
+  inline void clear_data();
   static const int kDataFieldNumber = 2;
-  const ::std::string& data() const;
-  void set_data(const ::std::string& value);
-  #if LANG_CXX11
-  void set_data(::std::string&& value);
-  #endif
-  void set_data(const char* value);
-  void set_data(const void* value, size_t size);
-  ::std::string* mutable_data();
-  ::std::string* release_data();
-  void set_allocated_data(::std::string* data);
+  inline const ::std::string& data() const;
+  inline void set_data(const ::std::string& value);
+  inline void set_data(const char* value);
+  inline void set_data(const void* value, size_t size);
+  inline ::std::string* mutable_data();
+  inline ::std::string* release_data();
+  inline void set_allocated_data(::std::string* data);
 
   // optional .exec.shared.SaslStatus status = 3;
-  bool has_status() const;
-  void clear_status();
+  inline bool has_status() const;
+  inline void clear_status();
   static const int kStatusFieldNumber = 3;
-  ::exec::shared::SaslStatus status() const;
-  void set_status(::exec::shared::SaslStatus value);
+  inline ::exec::shared::SaslStatus status() const;
+  inline void set_status(::exec::shared::SaslStatus value);
 
   // @@protoc_insertion_point(class_scope:exec.shared.SaslMessage)
  private:
-  void set_has_mechanism();
-  void clear_has_mechanism();
-  void set_has_data();
-  void clear_has_data();
-  void set_has_status();
-  void clear_has_status();
+  inline void set_has_mechanism();
+  inline void clear_has_mechanism();
+  inline void set_has_data();
+  inline void clear_has_data();
+  inline void set_has_status();
+  inline void clear_has_status();
 
-  ::google::protobuf::internal::InternalMetadataWithArena _internal_metadata_;
-  ::google::protobuf::internal::HasBits<1> _has_bits_;
-  mutable ::google::protobuf::internal::CachedSize _cached_size_;
-  ::google::protobuf::internal::ArenaStringPtr mechanism_;
-  ::google::protobuf::internal::ArenaStringPtr data_;
+  ::google::protobuf::UnknownFieldSet _unknown_fields_;
+
+  ::std::string* mechanism_;
+  ::std::string* data_;
   int status_;
-  friend struct ::protobuf_UserBitShared_2eproto::TableStruct;
+
+  mutable int _cached_size_;
+  ::google::protobuf::uint32 _has_bits_[(3 + 31) / 32];
+
+  friend void  protobuf_AddDesc_UserBitShared_2eproto();
+  friend void protobuf_AssignDesc_UserBitShared_2eproto();
+  friend void protobuf_ShutdownFile_UserBitShared_2eproto();
+
+  void InitAsDefaultInstance();
+  static SaslMessage* default_instance_;
 };
 // ===================================================================
 
 
 // ===================================================================
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic push
-  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
-#endif  // __GNUC__
 // UserCredentials
 
 // optional string user_name = 1;
@@ -4234,59 +3280,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void UserCredentials::clear_user_name() {
-  user_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (user_name_ != &::google::protobuf::internal::kEmptyString) {
+    user_name_->clear();
+  }
   clear_has_user_name();
 }
 inline const ::std::string& UserCredentials::user_name() const {
-  // @@protoc_insertion_point(field_get:exec.shared.UserCredentials.user_name)
-  return user_name_.GetNoArena();
+  return *user_name_;
 }
 inline void UserCredentials::set_user_name(const ::std::string& value) {
   set_has_user_name();
-  user_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.UserCredentials.user_name)
+  if (user_name_ == &::google::protobuf::internal::kEmptyString) {
+    user_name_ = new ::std::string;
+  }
+  user_name_->assign(value);
 }
-#if LANG_CXX11
-inline void UserCredentials::set_user_name(::std::string&& value) {
-  set_has_user_name();
-  user_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.UserCredentials.user_name)
-}
-#endif
 inline void UserCredentials::set_user_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_user_name();
-  user_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.UserCredentials.user_name)
+  if (user_name_ == &::google::protobuf::internal::kEmptyString) {
+    user_name_ = new ::std::string;
+  }
+  user_name_->assign(value);
 }
 inline void UserCredentials::set_user_name(const char* value, size_t size) {
   set_has_user_name();
-  user_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.UserCredentials.user_name)
+  if (user_name_ == &::google::protobuf::internal::kEmptyString) {
+    user_name_ = new ::std::string;
+  }
+  user_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* UserCredentials::mutable_user_name() {
   set_has_user_name();
-  // @@protoc_insertion_point(field_mutable:exec.shared.UserCredentials.user_name)
-  return user_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (user_name_ == &::google::protobuf::internal::kEmptyString) {
+    user_name_ = new ::std::string;
+  }
+  return user_name_;
 }
 inline ::std::string* UserCredentials::release_user_name() {
-  // @@protoc_insertion_point(field_release:exec.shared.UserCredentials.user_name)
-  if (!has_user_name()) {
-    return NULL;
-  }
   clear_has_user_name();
-  return user_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (user_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = user_name_;
+    user_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void UserCredentials::set_allocated_user_name(::std::string* user_name) {
-  if (user_name != NULL) {
+  if (user_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete user_name_;
+  }
+  if (user_name) {
     set_has_user_name();
+    user_name_ = user_name;
   } else {
     clear_has_user_name();
+    user_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  user_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), user_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.UserCredentials.user_name)
 }
 
 // -------------------------------------------------------------------
@@ -4308,13 +3358,11 @@
   clear_has_part1();
 }
 inline ::google::protobuf::int64 QueryId::part1() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryId.part1)
   return part1_;
 }
 inline void QueryId::set_part1(::google::protobuf::int64 value) {
   set_has_part1();
   part1_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryId.part1)
 }
 
 // optional sfixed64 part2 = 2;
@@ -4332,13 +3380,11 @@
   clear_has_part2();
 }
 inline ::google::protobuf::int64 QueryId::part2() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryId.part2)
   return part2_;
 }
 inline void QueryId::set_part2(::google::protobuf::int64 value) {
   set_has_part2();
   part2_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryId.part2)
 }
 
 // -------------------------------------------------------------------
@@ -4356,262 +3402,232 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void DrillPBError::clear_error_id() {
-  error_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_id_ != &::google::protobuf::internal::kEmptyString) {
+    error_id_->clear();
+  }
   clear_has_error_id();
 }
 inline const ::std::string& DrillPBError::error_id() const {
-  // @@protoc_insertion_point(field_get:exec.shared.DrillPBError.error_id)
-  return error_id_.GetNoArena();
+  return *error_id_;
 }
 inline void DrillPBError::set_error_id(const ::std::string& value) {
   set_has_error_id();
-  error_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.DrillPBError.error_id)
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    error_id_ = new ::std::string;
+  }
+  error_id_->assign(value);
 }
-#if LANG_CXX11
-inline void DrillPBError::set_error_id(::std::string&& value) {
-  set_has_error_id();
-  error_id_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.DrillPBError.error_id)
-}
-#endif
 inline void DrillPBError::set_error_id(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_error_id();
-  error_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.DrillPBError.error_id)
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    error_id_ = new ::std::string;
+  }
+  error_id_->assign(value);
 }
 inline void DrillPBError::set_error_id(const char* value, size_t size) {
   set_has_error_id();
-  error_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.DrillPBError.error_id)
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    error_id_ = new ::std::string;
+  }
+  error_id_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* DrillPBError::mutable_error_id() {
   set_has_error_id();
-  // @@protoc_insertion_point(field_mutable:exec.shared.DrillPBError.error_id)
-  return error_id_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    error_id_ = new ::std::string;
+  }
+  return error_id_;
 }
 inline ::std::string* DrillPBError::release_error_id() {
-  // @@protoc_insertion_point(field_release:exec.shared.DrillPBError.error_id)
-  if (!has_error_id()) {
-    return NULL;
-  }
   clear_has_error_id();
-  return error_id_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = error_id_;
+    error_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void DrillPBError::set_allocated_error_id(::std::string* error_id) {
-  if (error_id != NULL) {
+  if (error_id_ != &::google::protobuf::internal::kEmptyString) {
+    delete error_id_;
+  }
+  if (error_id) {
     set_has_error_id();
+    error_id_ = error_id;
   } else {
     clear_has_error_id();
+    error_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  error_id_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), error_id);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.DrillPBError.error_id)
 }
 
 // optional .exec.DrillbitEndpoint endpoint = 2;
 inline bool DrillPBError::has_endpoint() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void DrillPBError::set_has_endpoint() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void DrillPBError::clear_has_endpoint() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000002u;
 }
-inline const ::exec::DrillbitEndpoint& DrillPBError::_internal_endpoint() const {
-  return *endpoint_;
+inline void DrillPBError::clear_endpoint() {
+  if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
+  clear_has_endpoint();
 }
 inline const ::exec::DrillbitEndpoint& DrillPBError::endpoint() const {
-  const ::exec::DrillbitEndpoint* p = endpoint_;
-  // @@protoc_insertion_point(field_get:exec.shared.DrillPBError.endpoint)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::DrillbitEndpoint*>(
-      &::exec::_DrillbitEndpoint_default_instance_);
+  return endpoint_ != NULL ? *endpoint_ : *default_instance_->endpoint_;
+}
+inline ::exec::DrillbitEndpoint* DrillPBError::mutable_endpoint() {
+  set_has_endpoint();
+  if (endpoint_ == NULL) endpoint_ = new ::exec::DrillbitEndpoint;
+  return endpoint_;
 }
 inline ::exec::DrillbitEndpoint* DrillPBError::release_endpoint() {
-  // @@protoc_insertion_point(field_release:exec.shared.DrillPBError.endpoint)
   clear_has_endpoint();
   ::exec::DrillbitEndpoint* temp = endpoint_;
   endpoint_ = NULL;
   return temp;
 }
-inline ::exec::DrillbitEndpoint* DrillPBError::mutable_endpoint() {
-  set_has_endpoint();
-  if (endpoint_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::DrillbitEndpoint>(GetArenaNoVirtual());
-    endpoint_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.DrillPBError.endpoint)
-  return endpoint_;
-}
 inline void DrillPBError::set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(endpoint_);
-  }
+  delete endpoint_;
+  endpoint_ = endpoint;
   if (endpoint) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      endpoint = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, endpoint, submessage_arena);
-    }
     set_has_endpoint();
   } else {
     clear_has_endpoint();
   }
-  endpoint_ = endpoint;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.DrillPBError.endpoint)
 }
 
 // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
 inline bool DrillPBError::has_error_type() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void DrillPBError::set_has_error_type() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void DrillPBError::clear_has_error_type() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void DrillPBError::clear_error_type() {
   error_type_ = 0;
   clear_has_error_type();
 }
 inline ::exec::shared::DrillPBError_ErrorType DrillPBError::error_type() const {
-  // @@protoc_insertion_point(field_get:exec.shared.DrillPBError.error_type)
   return static_cast< ::exec::shared::DrillPBError_ErrorType >(error_type_);
 }
 inline void DrillPBError::set_error_type(::exec::shared::DrillPBError_ErrorType value) {
   assert(::exec::shared::DrillPBError_ErrorType_IsValid(value));
   set_has_error_type();
   error_type_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.DrillPBError.error_type)
 }
 
 // optional string message = 4;
 inline bool DrillPBError::has_message() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void DrillPBError::set_has_message() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void DrillPBError::clear_has_message() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void DrillPBError::clear_message() {
-  message_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ != &::google::protobuf::internal::kEmptyString) {
+    message_->clear();
+  }
   clear_has_message();
 }
 inline const ::std::string& DrillPBError::message() const {
-  // @@protoc_insertion_point(field_get:exec.shared.DrillPBError.message)
-  return message_.GetNoArena();
+  return *message_;
 }
 inline void DrillPBError::set_message(const ::std::string& value) {
   set_has_message();
-  message_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.DrillPBError.message)
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  message_->assign(value);
 }
-#if LANG_CXX11
-inline void DrillPBError::set_message(::std::string&& value) {
-  set_has_message();
-  message_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.DrillPBError.message)
-}
-#endif
 inline void DrillPBError::set_message(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_message();
-  message_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.DrillPBError.message)
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  message_->assign(value);
 }
 inline void DrillPBError::set_message(const char* value, size_t size) {
   set_has_message();
-  message_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.DrillPBError.message)
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  message_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* DrillPBError::mutable_message() {
   set_has_message();
-  // @@protoc_insertion_point(field_mutable:exec.shared.DrillPBError.message)
-  return message_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  return message_;
 }
 inline ::std::string* DrillPBError::release_message() {
-  // @@protoc_insertion_point(field_release:exec.shared.DrillPBError.message)
-  if (!has_message()) {
-    return NULL;
-  }
   clear_has_message();
-  return message_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = message_;
+    message_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void DrillPBError::set_allocated_message(::std::string* message) {
-  if (message != NULL) {
+  if (message_ != &::google::protobuf::internal::kEmptyString) {
+    delete message_;
+  }
+  if (message) {
     set_has_message();
+    message_ = message;
   } else {
     clear_has_message();
+    message_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  message_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), message);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.DrillPBError.message)
 }
 
 // optional .exec.shared.ExceptionWrapper exception = 5;
 inline bool DrillPBError::has_exception() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void DrillPBError::set_has_exception() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void DrillPBError::clear_has_exception() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void DrillPBError::clear_exception() {
-  if (exception_ != NULL) exception_->Clear();
+  if (exception_ != NULL) exception_->::exec::shared::ExceptionWrapper::Clear();
   clear_has_exception();
 }
-inline const ::exec::shared::ExceptionWrapper& DrillPBError::_internal_exception() const {
-  return *exception_;
-}
 inline const ::exec::shared::ExceptionWrapper& DrillPBError::exception() const {
-  const ::exec::shared::ExceptionWrapper* p = exception_;
-  // @@protoc_insertion_point(field_get:exec.shared.DrillPBError.exception)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::ExceptionWrapper*>(
-      &::exec::shared::_ExceptionWrapper_default_instance_);
+  return exception_ != NULL ? *exception_ : *default_instance_->exception_;
+}
+inline ::exec::shared::ExceptionWrapper* DrillPBError::mutable_exception() {
+  set_has_exception();
+  if (exception_ == NULL) exception_ = new ::exec::shared::ExceptionWrapper;
+  return exception_;
 }
 inline ::exec::shared::ExceptionWrapper* DrillPBError::release_exception() {
-  // @@protoc_insertion_point(field_release:exec.shared.DrillPBError.exception)
   clear_has_exception();
   ::exec::shared::ExceptionWrapper* temp = exception_;
   exception_ = NULL;
   return temp;
 }
-inline ::exec::shared::ExceptionWrapper* DrillPBError::mutable_exception() {
-  set_has_exception();
-  if (exception_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::ExceptionWrapper>(GetArenaNoVirtual());
-    exception_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.DrillPBError.exception)
-  return exception_;
-}
 inline void DrillPBError::set_allocated_exception(::exec::shared::ExceptionWrapper* exception) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete exception_;
-  }
+  delete exception_;
+  exception_ = exception;
   if (exception) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      exception = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, exception, submessage_arena);
-    }
     set_has_exception();
   } else {
     clear_has_exception();
   }
-  exception_ = exception;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.DrillPBError.exception)
 }
 
 // repeated .exec.shared.ParsingError parsing_error = 6;
@@ -4621,28 +3637,23 @@
 inline void DrillPBError::clear_parsing_error() {
   parsing_error_.Clear();
 }
-inline ::exec::shared::ParsingError* DrillPBError::mutable_parsing_error(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.DrillPBError.parsing_error)
-  return parsing_error_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::ParsingError >*
-DrillPBError::mutable_parsing_error() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.DrillPBError.parsing_error)
-  return &parsing_error_;
-}
 inline const ::exec::shared::ParsingError& DrillPBError::parsing_error(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.DrillPBError.parsing_error)
   return parsing_error_.Get(index);
 }
+inline ::exec::shared::ParsingError* DrillPBError::mutable_parsing_error(int index) {
+  return parsing_error_.Mutable(index);
+}
 inline ::exec::shared::ParsingError* DrillPBError::add_parsing_error() {
-  // @@protoc_insertion_point(field_add:exec.shared.DrillPBError.parsing_error)
   return parsing_error_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::ParsingError >&
 DrillPBError::parsing_error() const {
-  // @@protoc_insertion_point(field_list:exec.shared.DrillPBError.parsing_error)
   return parsing_error_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::ParsingError >*
+DrillPBError::mutable_parsing_error() {
+  return &parsing_error_;
+}
 
 // -------------------------------------------------------------------
 
@@ -4659,59 +3670,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void ExceptionWrapper::clear_exception_class() {
-  exception_class_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (exception_class_ != &::google::protobuf::internal::kEmptyString) {
+    exception_class_->clear();
+  }
   clear_has_exception_class();
 }
 inline const ::std::string& ExceptionWrapper::exception_class() const {
-  // @@protoc_insertion_point(field_get:exec.shared.ExceptionWrapper.exception_class)
-  return exception_class_.GetNoArena();
+  return *exception_class_;
 }
 inline void ExceptionWrapper::set_exception_class(const ::std::string& value) {
   set_has_exception_class();
-  exception_class_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.ExceptionWrapper.exception_class)
+  if (exception_class_ == &::google::protobuf::internal::kEmptyString) {
+    exception_class_ = new ::std::string;
+  }
+  exception_class_->assign(value);
 }
-#if LANG_CXX11
-inline void ExceptionWrapper::set_exception_class(::std::string&& value) {
-  set_has_exception_class();
-  exception_class_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.ExceptionWrapper.exception_class)
-}
-#endif
 inline void ExceptionWrapper::set_exception_class(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_exception_class();
-  exception_class_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.ExceptionWrapper.exception_class)
+  if (exception_class_ == &::google::protobuf::internal::kEmptyString) {
+    exception_class_ = new ::std::string;
+  }
+  exception_class_->assign(value);
 }
 inline void ExceptionWrapper::set_exception_class(const char* value, size_t size) {
   set_has_exception_class();
-  exception_class_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.ExceptionWrapper.exception_class)
+  if (exception_class_ == &::google::protobuf::internal::kEmptyString) {
+    exception_class_ = new ::std::string;
+  }
+  exception_class_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ExceptionWrapper::mutable_exception_class() {
   set_has_exception_class();
-  // @@protoc_insertion_point(field_mutable:exec.shared.ExceptionWrapper.exception_class)
-  return exception_class_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (exception_class_ == &::google::protobuf::internal::kEmptyString) {
+    exception_class_ = new ::std::string;
+  }
+  return exception_class_;
 }
 inline ::std::string* ExceptionWrapper::release_exception_class() {
-  // @@protoc_insertion_point(field_release:exec.shared.ExceptionWrapper.exception_class)
-  if (!has_exception_class()) {
-    return NULL;
-  }
   clear_has_exception_class();
-  return exception_class_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (exception_class_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = exception_class_;
+    exception_class_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ExceptionWrapper::set_allocated_exception_class(::std::string* exception_class) {
-  if (exception_class != NULL) {
+  if (exception_class_ != &::google::protobuf::internal::kEmptyString) {
+    delete exception_class_;
+  }
+  if (exception_class) {
     set_has_exception_class();
+    exception_class_ = exception_class;
   } else {
     clear_has_exception_class();
+    exception_class_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  exception_class_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), exception_class);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.ExceptionWrapper.exception_class)
 }
 
 // optional string message = 2;
@@ -4725,59 +3740,63 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void ExceptionWrapper::clear_message() {
-  message_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ != &::google::protobuf::internal::kEmptyString) {
+    message_->clear();
+  }
   clear_has_message();
 }
 inline const ::std::string& ExceptionWrapper::message() const {
-  // @@protoc_insertion_point(field_get:exec.shared.ExceptionWrapper.message)
-  return message_.GetNoArena();
+  return *message_;
 }
 inline void ExceptionWrapper::set_message(const ::std::string& value) {
   set_has_message();
-  message_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.ExceptionWrapper.message)
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  message_->assign(value);
 }
-#if LANG_CXX11
-inline void ExceptionWrapper::set_message(::std::string&& value) {
-  set_has_message();
-  message_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.ExceptionWrapper.message)
-}
-#endif
 inline void ExceptionWrapper::set_message(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_message();
-  message_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.ExceptionWrapper.message)
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  message_->assign(value);
 }
 inline void ExceptionWrapper::set_message(const char* value, size_t size) {
   set_has_message();
-  message_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.ExceptionWrapper.message)
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  message_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* ExceptionWrapper::mutable_message() {
   set_has_message();
-  // @@protoc_insertion_point(field_mutable:exec.shared.ExceptionWrapper.message)
-  return message_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    message_ = new ::std::string;
+  }
+  return message_;
 }
 inline ::std::string* ExceptionWrapper::release_message() {
-  // @@protoc_insertion_point(field_release:exec.shared.ExceptionWrapper.message)
-  if (!has_message()) {
-    return NULL;
-  }
   clear_has_message();
-  return message_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (message_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = message_;
+    message_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void ExceptionWrapper::set_allocated_message(::std::string* message) {
-  if (message != NULL) {
+  if (message_ != &::google::protobuf::internal::kEmptyString) {
+    delete message_;
+  }
+  if (message) {
     set_has_message();
+    message_ = message;
   } else {
     clear_has_message();
+    message_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  message_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), message);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.ExceptionWrapper.message)
 }
 
 // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
@@ -4787,85 +3806,60 @@
 inline void ExceptionWrapper::clear_stack_trace() {
   stack_trace_.Clear();
 }
-inline ::exec::shared::StackTraceElementWrapper* ExceptionWrapper::mutable_stack_trace(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.ExceptionWrapper.stack_trace)
-  return stack_trace_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::StackTraceElementWrapper >*
-ExceptionWrapper::mutable_stack_trace() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.ExceptionWrapper.stack_trace)
-  return &stack_trace_;
-}
 inline const ::exec::shared::StackTraceElementWrapper& ExceptionWrapper::stack_trace(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.ExceptionWrapper.stack_trace)
   return stack_trace_.Get(index);
 }
+inline ::exec::shared::StackTraceElementWrapper* ExceptionWrapper::mutable_stack_trace(int index) {
+  return stack_trace_.Mutable(index);
+}
 inline ::exec::shared::StackTraceElementWrapper* ExceptionWrapper::add_stack_trace() {
-  // @@protoc_insertion_point(field_add:exec.shared.ExceptionWrapper.stack_trace)
   return stack_trace_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::StackTraceElementWrapper >&
 ExceptionWrapper::stack_trace() const {
-  // @@protoc_insertion_point(field_list:exec.shared.ExceptionWrapper.stack_trace)
   return stack_trace_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::StackTraceElementWrapper >*
+ExceptionWrapper::mutable_stack_trace() {
+  return &stack_trace_;
+}
 
 // optional .exec.shared.ExceptionWrapper cause = 4;
 inline bool ExceptionWrapper::has_cause() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void ExceptionWrapper::set_has_cause() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void ExceptionWrapper::clear_has_cause() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void ExceptionWrapper::clear_cause() {
-  if (cause_ != NULL) cause_->Clear();
+  if (cause_ != NULL) cause_->::exec::shared::ExceptionWrapper::Clear();
   clear_has_cause();
 }
-inline const ::exec::shared::ExceptionWrapper& ExceptionWrapper::_internal_cause() const {
-  return *cause_;
-}
 inline const ::exec::shared::ExceptionWrapper& ExceptionWrapper::cause() const {
-  const ::exec::shared::ExceptionWrapper* p = cause_;
-  // @@protoc_insertion_point(field_get:exec.shared.ExceptionWrapper.cause)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::ExceptionWrapper*>(
-      &::exec::shared::_ExceptionWrapper_default_instance_);
+  return cause_ != NULL ? *cause_ : *default_instance_->cause_;
+}
+inline ::exec::shared::ExceptionWrapper* ExceptionWrapper::mutable_cause() {
+  set_has_cause();
+  if (cause_ == NULL) cause_ = new ::exec::shared::ExceptionWrapper;
+  return cause_;
 }
 inline ::exec::shared::ExceptionWrapper* ExceptionWrapper::release_cause() {
-  // @@protoc_insertion_point(field_release:exec.shared.ExceptionWrapper.cause)
   clear_has_cause();
   ::exec::shared::ExceptionWrapper* temp = cause_;
   cause_ = NULL;
   return temp;
 }
-inline ::exec::shared::ExceptionWrapper* ExceptionWrapper::mutable_cause() {
-  set_has_cause();
-  if (cause_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::ExceptionWrapper>(GetArenaNoVirtual());
-    cause_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.ExceptionWrapper.cause)
-  return cause_;
-}
 inline void ExceptionWrapper::set_allocated_cause(::exec::shared::ExceptionWrapper* cause) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete cause_;
-  }
+  delete cause_;
+  cause_ = cause;
   if (cause) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      cause = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, cause, submessage_arena);
-    }
     set_has_cause();
   } else {
     clear_has_cause();
   }
-  cause_ = cause;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.ExceptionWrapper.cause)
 }
 
 // -------------------------------------------------------------------
@@ -4883,59 +3877,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void StackTraceElementWrapper::clear_class_name() {
-  class_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (class_name_ != &::google::protobuf::internal::kEmptyString) {
+    class_name_->clear();
+  }
   clear_has_class_name();
 }
 inline const ::std::string& StackTraceElementWrapper::class_name() const {
-  // @@protoc_insertion_point(field_get:exec.shared.StackTraceElementWrapper.class_name)
-  return class_name_.GetNoArena();
+  return *class_name_;
 }
 inline void StackTraceElementWrapper::set_class_name(const ::std::string& value) {
   set_has_class_name();
-  class_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.StackTraceElementWrapper.class_name)
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    class_name_ = new ::std::string;
+  }
+  class_name_->assign(value);
 }
-#if LANG_CXX11
-inline void StackTraceElementWrapper::set_class_name(::std::string&& value) {
-  set_has_class_name();
-  class_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.StackTraceElementWrapper.class_name)
-}
-#endif
 inline void StackTraceElementWrapper::set_class_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_class_name();
-  class_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.StackTraceElementWrapper.class_name)
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    class_name_ = new ::std::string;
+  }
+  class_name_->assign(value);
 }
 inline void StackTraceElementWrapper::set_class_name(const char* value, size_t size) {
   set_has_class_name();
-  class_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.StackTraceElementWrapper.class_name)
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    class_name_ = new ::std::string;
+  }
+  class_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* StackTraceElementWrapper::mutable_class_name() {
   set_has_class_name();
-  // @@protoc_insertion_point(field_mutable:exec.shared.StackTraceElementWrapper.class_name)
-  return class_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    class_name_ = new ::std::string;
+  }
+  return class_name_;
 }
 inline ::std::string* StackTraceElementWrapper::release_class_name() {
-  // @@protoc_insertion_point(field_release:exec.shared.StackTraceElementWrapper.class_name)
-  if (!has_class_name()) {
-    return NULL;
-  }
   clear_has_class_name();
-  return class_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (class_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = class_name_;
+    class_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void StackTraceElementWrapper::set_allocated_class_name(::std::string* class_name) {
-  if (class_name != NULL) {
+  if (class_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete class_name_;
+  }
+  if (class_name) {
     set_has_class_name();
+    class_name_ = class_name;
   } else {
     clear_has_class_name();
+    class_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  class_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), class_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.StackTraceElementWrapper.class_name)
 }
 
 // optional string file_name = 2;
@@ -4949,149 +3947,155 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void StackTraceElementWrapper::clear_file_name() {
-  file_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (file_name_ != &::google::protobuf::internal::kEmptyString) {
+    file_name_->clear();
+  }
   clear_has_file_name();
 }
 inline const ::std::string& StackTraceElementWrapper::file_name() const {
-  // @@protoc_insertion_point(field_get:exec.shared.StackTraceElementWrapper.file_name)
-  return file_name_.GetNoArena();
+  return *file_name_;
 }
 inline void StackTraceElementWrapper::set_file_name(const ::std::string& value) {
   set_has_file_name();
-  file_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.StackTraceElementWrapper.file_name)
+  if (file_name_ == &::google::protobuf::internal::kEmptyString) {
+    file_name_ = new ::std::string;
+  }
+  file_name_->assign(value);
 }
-#if LANG_CXX11
-inline void StackTraceElementWrapper::set_file_name(::std::string&& value) {
-  set_has_file_name();
-  file_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.StackTraceElementWrapper.file_name)
-}
-#endif
 inline void StackTraceElementWrapper::set_file_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_file_name();
-  file_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.StackTraceElementWrapper.file_name)
+  if (file_name_ == &::google::protobuf::internal::kEmptyString) {
+    file_name_ = new ::std::string;
+  }
+  file_name_->assign(value);
 }
 inline void StackTraceElementWrapper::set_file_name(const char* value, size_t size) {
   set_has_file_name();
-  file_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.StackTraceElementWrapper.file_name)
+  if (file_name_ == &::google::protobuf::internal::kEmptyString) {
+    file_name_ = new ::std::string;
+  }
+  file_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* StackTraceElementWrapper::mutable_file_name() {
   set_has_file_name();
-  // @@protoc_insertion_point(field_mutable:exec.shared.StackTraceElementWrapper.file_name)
-  return file_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (file_name_ == &::google::protobuf::internal::kEmptyString) {
+    file_name_ = new ::std::string;
+  }
+  return file_name_;
 }
 inline ::std::string* StackTraceElementWrapper::release_file_name() {
-  // @@protoc_insertion_point(field_release:exec.shared.StackTraceElementWrapper.file_name)
-  if (!has_file_name()) {
-    return NULL;
-  }
   clear_has_file_name();
-  return file_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (file_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = file_name_;
+    file_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void StackTraceElementWrapper::set_allocated_file_name(::std::string* file_name) {
-  if (file_name != NULL) {
+  if (file_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete file_name_;
+  }
+  if (file_name) {
     set_has_file_name();
+    file_name_ = file_name;
   } else {
     clear_has_file_name();
+    file_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  file_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), file_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.StackTraceElementWrapper.file_name)
 }
 
 // optional int32 line_number = 3;
 inline bool StackTraceElementWrapper::has_line_number() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void StackTraceElementWrapper::set_has_line_number() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void StackTraceElementWrapper::clear_has_line_number() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void StackTraceElementWrapper::clear_line_number() {
   line_number_ = 0;
   clear_has_line_number();
 }
 inline ::google::protobuf::int32 StackTraceElementWrapper::line_number() const {
-  // @@protoc_insertion_point(field_get:exec.shared.StackTraceElementWrapper.line_number)
   return line_number_;
 }
 inline void StackTraceElementWrapper::set_line_number(::google::protobuf::int32 value) {
   set_has_line_number();
   line_number_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.StackTraceElementWrapper.line_number)
 }
 
 // optional string method_name = 4;
 inline bool StackTraceElementWrapper::has_method_name() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void StackTraceElementWrapper::set_has_method_name() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void StackTraceElementWrapper::clear_has_method_name() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void StackTraceElementWrapper::clear_method_name() {
-  method_name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (method_name_ != &::google::protobuf::internal::kEmptyString) {
+    method_name_->clear();
+  }
   clear_has_method_name();
 }
 inline const ::std::string& StackTraceElementWrapper::method_name() const {
-  // @@protoc_insertion_point(field_get:exec.shared.StackTraceElementWrapper.method_name)
-  return method_name_.GetNoArena();
+  return *method_name_;
 }
 inline void StackTraceElementWrapper::set_method_name(const ::std::string& value) {
   set_has_method_name();
-  method_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.StackTraceElementWrapper.method_name)
+  if (method_name_ == &::google::protobuf::internal::kEmptyString) {
+    method_name_ = new ::std::string;
+  }
+  method_name_->assign(value);
 }
-#if LANG_CXX11
-inline void StackTraceElementWrapper::set_method_name(::std::string&& value) {
-  set_has_method_name();
-  method_name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.StackTraceElementWrapper.method_name)
-}
-#endif
 inline void StackTraceElementWrapper::set_method_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_method_name();
-  method_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.StackTraceElementWrapper.method_name)
+  if (method_name_ == &::google::protobuf::internal::kEmptyString) {
+    method_name_ = new ::std::string;
+  }
+  method_name_->assign(value);
 }
 inline void StackTraceElementWrapper::set_method_name(const char* value, size_t size) {
   set_has_method_name();
-  method_name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.StackTraceElementWrapper.method_name)
+  if (method_name_ == &::google::protobuf::internal::kEmptyString) {
+    method_name_ = new ::std::string;
+  }
+  method_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* StackTraceElementWrapper::mutable_method_name() {
   set_has_method_name();
-  // @@protoc_insertion_point(field_mutable:exec.shared.StackTraceElementWrapper.method_name)
-  return method_name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (method_name_ == &::google::protobuf::internal::kEmptyString) {
+    method_name_ = new ::std::string;
+  }
+  return method_name_;
 }
 inline ::std::string* StackTraceElementWrapper::release_method_name() {
-  // @@protoc_insertion_point(field_release:exec.shared.StackTraceElementWrapper.method_name)
-  if (!has_method_name()) {
-    return NULL;
-  }
   clear_has_method_name();
-  return method_name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (method_name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = method_name_;
+    method_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void StackTraceElementWrapper::set_allocated_method_name(::std::string* method_name) {
-  if (method_name != NULL) {
+  if (method_name_ != &::google::protobuf::internal::kEmptyString) {
+    delete method_name_;
+  }
+  if (method_name) {
     set_has_method_name();
+    method_name_ = method_name;
   } else {
     clear_has_method_name();
+    method_name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  method_name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), method_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.StackTraceElementWrapper.method_name)
 }
 
 // optional bool is_native_method = 5;
@@ -5109,13 +4113,11 @@
   clear_has_is_native_method();
 }
 inline bool StackTraceElementWrapper::is_native_method() const {
-  // @@protoc_insertion_point(field_get:exec.shared.StackTraceElementWrapper.is_native_method)
   return is_native_method_;
 }
 inline void StackTraceElementWrapper::set_is_native_method(bool value) {
   set_has_is_native_method();
   is_native_method_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.StackTraceElementWrapper.is_native_method)
 }
 
 // -------------------------------------------------------------------
@@ -5137,13 +4139,11 @@
   clear_has_start_column();
 }
 inline ::google::protobuf::int32 ParsingError::start_column() const {
-  // @@protoc_insertion_point(field_get:exec.shared.ParsingError.start_column)
   return start_column_;
 }
 inline void ParsingError::set_start_column(::google::protobuf::int32 value) {
   set_has_start_column();
   start_column_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.ParsingError.start_column)
 }
 
 // optional int32 start_row = 3;
@@ -5161,13 +4161,11 @@
   clear_has_start_row();
 }
 inline ::google::protobuf::int32 ParsingError::start_row() const {
-  // @@protoc_insertion_point(field_get:exec.shared.ParsingError.start_row)
   return start_row_;
 }
 inline void ParsingError::set_start_row(::google::protobuf::int32 value) {
   set_has_start_row();
   start_row_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.ParsingError.start_row)
 }
 
 // optional int32 end_column = 4;
@@ -5185,13 +4183,11 @@
   clear_has_end_column();
 }
 inline ::google::protobuf::int32 ParsingError::end_column() const {
-  // @@protoc_insertion_point(field_get:exec.shared.ParsingError.end_column)
   return end_column_;
 }
 inline void ParsingError::set_end_column(::google::protobuf::int32 value) {
   set_has_end_column();
   end_column_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.ParsingError.end_column)
 }
 
 // optional int32 end_row = 5;
@@ -5209,13 +4205,11 @@
   clear_has_end_row();
 }
 inline ::google::protobuf::int32 ParsingError::end_row() const {
-  // @@protoc_insertion_point(field_get:exec.shared.ParsingError.end_row)
   return end_row_;
 }
 inline void ParsingError::set_end_row(::google::protobuf::int32 value) {
   set_has_end_row();
   end_row_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.ParsingError.end_row)
 }
 
 // -------------------------------------------------------------------
@@ -5237,13 +4231,11 @@
   clear_has_record_count();
 }
 inline ::google::protobuf::int32 RecordBatchDef::record_count() const {
-  // @@protoc_insertion_point(field_get:exec.shared.RecordBatchDef.record_count)
   return record_count_;
 }
 inline void RecordBatchDef::set_record_count(::google::protobuf::int32 value) {
   set_has_record_count();
   record_count_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.RecordBatchDef.record_count)
 }
 
 // repeated .exec.shared.SerializedField field = 2;
@@ -5253,75 +4245,66 @@
 inline void RecordBatchDef::clear_field() {
   field_.Clear();
 }
-inline ::exec::shared::SerializedField* RecordBatchDef::mutable_field(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.RecordBatchDef.field)
-  return field_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >*
-RecordBatchDef::mutable_field() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.RecordBatchDef.field)
-  return &field_;
-}
 inline const ::exec::shared::SerializedField& RecordBatchDef::field(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.RecordBatchDef.field)
   return field_.Get(index);
 }
+inline ::exec::shared::SerializedField* RecordBatchDef::mutable_field(int index) {
+  return field_.Mutable(index);
+}
 inline ::exec::shared::SerializedField* RecordBatchDef::add_field() {
-  // @@protoc_insertion_point(field_add:exec.shared.RecordBatchDef.field)
   return field_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >&
 RecordBatchDef::field() const {
-  // @@protoc_insertion_point(field_list:exec.shared.RecordBatchDef.field)
   return field_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >*
+RecordBatchDef::mutable_field() {
+  return &field_;
+}
 
 // optional bool carries_two_byte_selection_vector = 3;
 inline bool RecordBatchDef::has_carries_two_byte_selection_vector() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void RecordBatchDef::set_has_carries_two_byte_selection_vector() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void RecordBatchDef::clear_has_carries_two_byte_selection_vector() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void RecordBatchDef::clear_carries_two_byte_selection_vector() {
   carries_two_byte_selection_vector_ = false;
   clear_has_carries_two_byte_selection_vector();
 }
 inline bool RecordBatchDef::carries_two_byte_selection_vector() const {
-  // @@protoc_insertion_point(field_get:exec.shared.RecordBatchDef.carries_two_byte_selection_vector)
   return carries_two_byte_selection_vector_;
 }
 inline void RecordBatchDef::set_carries_two_byte_selection_vector(bool value) {
   set_has_carries_two_byte_selection_vector();
   carries_two_byte_selection_vector_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.RecordBatchDef.carries_two_byte_selection_vector)
 }
 
 // optional int32 affected_rows_count = 4;
 inline bool RecordBatchDef::has_affected_rows_count() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void RecordBatchDef::set_has_affected_rows_count() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void RecordBatchDef::clear_has_affected_rows_count() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void RecordBatchDef::clear_affected_rows_count() {
   affected_rows_count_ = 0;
   clear_has_affected_rows_count();
 }
 inline ::google::protobuf::int32 RecordBatchDef::affected_rows_count() const {
-  // @@protoc_insertion_point(field_get:exec.shared.RecordBatchDef.affected_rows_count)
   return affected_rows_count_;
 }
 inline void RecordBatchDef::set_affected_rows_count(::google::protobuf::int32 value) {
   set_has_affected_rows_count();
   affected_rows_count_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.RecordBatchDef.affected_rows_count)
 }
 
 // -------------------------------------------------------------------
@@ -5330,151 +4313,133 @@
 
 // optional .exec.shared.NamePart.Type type = 1;
 inline bool NamePart::has_type() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void NamePart::set_has_type() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void NamePart::clear_has_type() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void NamePart::clear_type() {
   type_ = 0;
   clear_has_type();
 }
 inline ::exec::shared::NamePart_Type NamePart::type() const {
-  // @@protoc_insertion_point(field_get:exec.shared.NamePart.type)
   return static_cast< ::exec::shared::NamePart_Type >(type_);
 }
 inline void NamePart::set_type(::exec::shared::NamePart_Type value) {
   assert(::exec::shared::NamePart_Type_IsValid(value));
   set_has_type();
   type_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.NamePart.type)
 }
 
 // optional string name = 2;
 inline bool NamePart::has_name() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void NamePart::set_has_name() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void NamePart::clear_has_name() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void NamePart::clear_name() {
-  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ != &::google::protobuf::internal::kEmptyString) {
+    name_->clear();
+  }
   clear_has_name();
 }
 inline const ::std::string& NamePart::name() const {
-  // @@protoc_insertion_point(field_get:exec.shared.NamePart.name)
-  return name_.GetNoArena();
+  return *name_;
 }
 inline void NamePart::set_name(const ::std::string& value) {
   set_has_name();
-  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.NamePart.name)
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  name_->assign(value);
 }
-#if LANG_CXX11
-inline void NamePart::set_name(::std::string&& value) {
-  set_has_name();
-  name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.NamePart.name)
-}
-#endif
 inline void NamePart::set_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_name();
-  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.NamePart.name)
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  name_->assign(value);
 }
 inline void NamePart::set_name(const char* value, size_t size) {
   set_has_name();
-  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.NamePart.name)
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* NamePart::mutable_name() {
   set_has_name();
-  // @@protoc_insertion_point(field_mutable:exec.shared.NamePart.name)
-  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  return name_;
 }
 inline ::std::string* NamePart::release_name() {
-  // @@protoc_insertion_point(field_release:exec.shared.NamePart.name)
-  if (!has_name()) {
-    return NULL;
-  }
   clear_has_name();
-  return name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = name_;
+    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void NamePart::set_allocated_name(::std::string* name) {
-  if (name != NULL) {
+  if (name_ != &::google::protobuf::internal::kEmptyString) {
+    delete name_;
+  }
+  if (name) {
     set_has_name();
+    name_ = name;
   } else {
     clear_has_name();
+    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.NamePart.name)
 }
 
 // optional .exec.shared.NamePart child = 3;
 inline bool NamePart::has_child() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void NamePart::set_has_child() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void NamePart::clear_has_child() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void NamePart::clear_child() {
-  if (child_ != NULL) child_->Clear();
+  if (child_ != NULL) child_->::exec::shared::NamePart::Clear();
   clear_has_child();
 }
-inline const ::exec::shared::NamePart& NamePart::_internal_child() const {
-  return *child_;
-}
 inline const ::exec::shared::NamePart& NamePart::child() const {
-  const ::exec::shared::NamePart* p = child_;
-  // @@protoc_insertion_point(field_get:exec.shared.NamePart.child)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::NamePart*>(
-      &::exec::shared::_NamePart_default_instance_);
+  return child_ != NULL ? *child_ : *default_instance_->child_;
+}
+inline ::exec::shared::NamePart* NamePart::mutable_child() {
+  set_has_child();
+  if (child_ == NULL) child_ = new ::exec::shared::NamePart;
+  return child_;
 }
 inline ::exec::shared::NamePart* NamePart::release_child() {
-  // @@protoc_insertion_point(field_release:exec.shared.NamePart.child)
   clear_has_child();
   ::exec::shared::NamePart* temp = child_;
   child_ = NULL;
   return temp;
 }
-inline ::exec::shared::NamePart* NamePart::mutable_child() {
-  set_has_child();
-  if (child_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::NamePart>(GetArenaNoVirtual());
-    child_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.NamePart.child)
-  return child_;
-}
 inline void NamePart::set_allocated_child(::exec::shared::NamePart* child) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete child_;
-  }
+  delete child_;
+  child_ = child;
   if (child) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      child = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, child, submessage_arena);
-    }
     set_has_child();
   } else {
     clear_has_child();
   }
-  child_ = child;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.NamePart.child)
 }
 
 // -------------------------------------------------------------------
@@ -5491,48 +4456,32 @@
 inline void SerializedField::clear_has_major_type() {
   _has_bits_[0] &= ~0x00000001u;
 }
-inline const ::common::MajorType& SerializedField::_internal_major_type() const {
-  return *major_type_;
+inline void SerializedField::clear_major_type() {
+  if (major_type_ != NULL) major_type_->::common::MajorType::Clear();
+  clear_has_major_type();
 }
 inline const ::common::MajorType& SerializedField::major_type() const {
-  const ::common::MajorType* p = major_type_;
-  // @@protoc_insertion_point(field_get:exec.shared.SerializedField.major_type)
-  return p != NULL ? *p : *reinterpret_cast<const ::common::MajorType*>(
-      &::common::_MajorType_default_instance_);
+  return major_type_ != NULL ? *major_type_ : *default_instance_->major_type_;
+}
+inline ::common::MajorType* SerializedField::mutable_major_type() {
+  set_has_major_type();
+  if (major_type_ == NULL) major_type_ = new ::common::MajorType;
+  return major_type_;
 }
 inline ::common::MajorType* SerializedField::release_major_type() {
-  // @@protoc_insertion_point(field_release:exec.shared.SerializedField.major_type)
   clear_has_major_type();
   ::common::MajorType* temp = major_type_;
   major_type_ = NULL;
   return temp;
 }
-inline ::common::MajorType* SerializedField::mutable_major_type() {
-  set_has_major_type();
-  if (major_type_ == NULL) {
-    auto* p = CreateMaybeMessage<::common::MajorType>(GetArenaNoVirtual());
-    major_type_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.SerializedField.major_type)
-  return major_type_;
-}
 inline void SerializedField::set_allocated_major_type(::common::MajorType* major_type) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(major_type_);
-  }
+  delete major_type_;
+  major_type_ = major_type;
   if (major_type) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      major_type = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, major_type, submessage_arena);
-    }
     set_has_major_type();
   } else {
     clear_has_major_type();
   }
-  major_type_ = major_type;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.SerializedField.major_type)
 }
 
 // optional .exec.shared.NamePart name_part = 2;
@@ -5546,51 +4495,31 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void SerializedField::clear_name_part() {
-  if (name_part_ != NULL) name_part_->Clear();
+  if (name_part_ != NULL) name_part_->::exec::shared::NamePart::Clear();
   clear_has_name_part();
 }
-inline const ::exec::shared::NamePart& SerializedField::_internal_name_part() const {
-  return *name_part_;
-}
 inline const ::exec::shared::NamePart& SerializedField::name_part() const {
-  const ::exec::shared::NamePart* p = name_part_;
-  // @@protoc_insertion_point(field_get:exec.shared.SerializedField.name_part)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::NamePart*>(
-      &::exec::shared::_NamePart_default_instance_);
+  return name_part_ != NULL ? *name_part_ : *default_instance_->name_part_;
+}
+inline ::exec::shared::NamePart* SerializedField::mutable_name_part() {
+  set_has_name_part();
+  if (name_part_ == NULL) name_part_ = new ::exec::shared::NamePart;
+  return name_part_;
 }
 inline ::exec::shared::NamePart* SerializedField::release_name_part() {
-  // @@protoc_insertion_point(field_release:exec.shared.SerializedField.name_part)
   clear_has_name_part();
   ::exec::shared::NamePart* temp = name_part_;
   name_part_ = NULL;
   return temp;
 }
-inline ::exec::shared::NamePart* SerializedField::mutable_name_part() {
-  set_has_name_part();
-  if (name_part_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::NamePart>(GetArenaNoVirtual());
-    name_part_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.SerializedField.name_part)
-  return name_part_;
-}
 inline void SerializedField::set_allocated_name_part(::exec::shared::NamePart* name_part) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete name_part_;
-  }
+  delete name_part_;
+  name_part_ = name_part;
   if (name_part) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      name_part = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, name_part, submessage_arena);
-    }
     set_has_name_part();
   } else {
     clear_has_name_part();
   }
-  name_part_ = name_part;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.SerializedField.name_part)
 }
 
 // repeated .exec.shared.SerializedField child = 3;
@@ -5600,99 +4529,88 @@
 inline void SerializedField::clear_child() {
   child_.Clear();
 }
-inline ::exec::shared::SerializedField* SerializedField::mutable_child(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.SerializedField.child)
-  return child_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >*
-SerializedField::mutable_child() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.SerializedField.child)
-  return &child_;
-}
 inline const ::exec::shared::SerializedField& SerializedField::child(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.SerializedField.child)
   return child_.Get(index);
 }
+inline ::exec::shared::SerializedField* SerializedField::mutable_child(int index) {
+  return child_.Mutable(index);
+}
 inline ::exec::shared::SerializedField* SerializedField::add_child() {
-  // @@protoc_insertion_point(field_add:exec.shared.SerializedField.child)
   return child_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >&
 SerializedField::child() const {
-  // @@protoc_insertion_point(field_list:exec.shared.SerializedField.child)
   return child_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::SerializedField >*
+SerializedField::mutable_child() {
+  return &child_;
+}
 
 // optional int32 value_count = 4;
 inline bool SerializedField::has_value_count() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void SerializedField::set_has_value_count() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void SerializedField::clear_has_value_count() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void SerializedField::clear_value_count() {
   value_count_ = 0;
   clear_has_value_count();
 }
 inline ::google::protobuf::int32 SerializedField::value_count() const {
-  // @@protoc_insertion_point(field_get:exec.shared.SerializedField.value_count)
   return value_count_;
 }
 inline void SerializedField::set_value_count(::google::protobuf::int32 value) {
   set_has_value_count();
   value_count_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.SerializedField.value_count)
 }
 
 // optional int32 var_byte_length = 5;
 inline bool SerializedField::has_var_byte_length() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void SerializedField::set_has_var_byte_length() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void SerializedField::clear_has_var_byte_length() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void SerializedField::clear_var_byte_length() {
   var_byte_length_ = 0;
   clear_has_var_byte_length();
 }
 inline ::google::protobuf::int32 SerializedField::var_byte_length() const {
-  // @@protoc_insertion_point(field_get:exec.shared.SerializedField.var_byte_length)
   return var_byte_length_;
 }
 inline void SerializedField::set_var_byte_length(::google::protobuf::int32 value) {
   set_has_var_byte_length();
   var_byte_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.SerializedField.var_byte_length)
 }
 
 // optional int32 buffer_length = 7;
 inline bool SerializedField::has_buffer_length() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void SerializedField::set_has_buffer_length() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void SerializedField::clear_has_buffer_length() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000020u;
 }
 inline void SerializedField::clear_buffer_length() {
   buffer_length_ = 0;
   clear_has_buffer_length();
 }
 inline ::google::protobuf::int32 SerializedField::buffer_length() const {
-  // @@protoc_insertion_point(field_get:exec.shared.SerializedField.buffer_length)
   return buffer_length_;
 }
 inline void SerializedField::set_buffer_length(::google::protobuf::int32 value) {
   set_has_buffer_length();
   buffer_length_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.SerializedField.buffer_length)
 }
 
 // -------------------------------------------------------------------
@@ -5701,50 +4619,46 @@
 
 // optional int32 node_id = 1;
 inline bool NodeStatus::has_node_id() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void NodeStatus::set_has_node_id() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void NodeStatus::clear_has_node_id() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void NodeStatus::clear_node_id() {
   node_id_ = 0;
   clear_has_node_id();
 }
 inline ::google::protobuf::int32 NodeStatus::node_id() const {
-  // @@protoc_insertion_point(field_get:exec.shared.NodeStatus.node_id)
   return node_id_;
 }
 inline void NodeStatus::set_node_id(::google::protobuf::int32 value) {
   set_has_node_id();
   node_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.NodeStatus.node_id)
 }
 
 // optional int64 memory_footprint = 2;
 inline bool NodeStatus::has_memory_footprint() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void NodeStatus::set_has_memory_footprint() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void NodeStatus::clear_has_memory_footprint() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void NodeStatus::clear_memory_footprint() {
   memory_footprint_ = GOOGLE_LONGLONG(0);
   clear_has_memory_footprint();
 }
 inline ::google::protobuf::int64 NodeStatus::memory_footprint() const {
-  // @@protoc_insertion_point(field_get:exec.shared.NodeStatus.memory_footprint)
   return memory_footprint_;
 }
 inline void NodeStatus::set_memory_footprint(::google::protobuf::int64 value) {
   set_has_memory_footprint();
   memory_footprint_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.NodeStatus.memory_footprint)
 }
 
 // -------------------------------------------------------------------
@@ -5753,85 +4667,63 @@
 
 // optional .exec.shared.QueryResult.QueryState query_state = 1;
 inline bool QueryResult::has_query_state() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void QueryResult::set_has_query_state() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void QueryResult::clear_has_query_state() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void QueryResult::clear_query_state() {
   query_state_ = 0;
   clear_has_query_state();
 }
 inline ::exec::shared::QueryResult_QueryState QueryResult::query_state() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryResult.query_state)
   return static_cast< ::exec::shared::QueryResult_QueryState >(query_state_);
 }
 inline void QueryResult::set_query_state(::exec::shared::QueryResult_QueryState value) {
   assert(::exec::shared::QueryResult_QueryState_IsValid(value));
   set_has_query_state();
   query_state_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryResult.query_state)
 }
 
 // optional .exec.shared.QueryId query_id = 2;
 inline bool QueryResult::has_query_id() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void QueryResult::set_has_query_id() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void QueryResult::clear_has_query_id() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void QueryResult::clear_query_id() {
-  if (query_id_ != NULL) query_id_->Clear();
+  if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
   clear_has_query_id();
 }
-inline const ::exec::shared::QueryId& QueryResult::_internal_query_id() const {
-  return *query_id_;
-}
 inline const ::exec::shared::QueryId& QueryResult::query_id() const {
-  const ::exec::shared::QueryId* p = query_id_;
-  // @@protoc_insertion_point(field_get:exec.shared.QueryResult.query_id)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::QueryId*>(
-      &::exec::shared::_QueryId_default_instance_);
+  return query_id_ != NULL ? *query_id_ : *default_instance_->query_id_;
+}
+inline ::exec::shared::QueryId* QueryResult::mutable_query_id() {
+  set_has_query_id();
+  if (query_id_ == NULL) query_id_ = new ::exec::shared::QueryId;
+  return query_id_;
 }
 inline ::exec::shared::QueryId* QueryResult::release_query_id() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryResult.query_id)
   clear_has_query_id();
   ::exec::shared::QueryId* temp = query_id_;
   query_id_ = NULL;
   return temp;
 }
-inline ::exec::shared::QueryId* QueryResult::mutable_query_id() {
-  set_has_query_id();
-  if (query_id_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::QueryId>(GetArenaNoVirtual());
-    query_id_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryResult.query_id)
-  return query_id_;
-}
 inline void QueryResult::set_allocated_query_id(::exec::shared::QueryId* query_id) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete query_id_;
-  }
+  delete query_id_;
+  query_id_ = query_id;
   if (query_id) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      query_id = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, query_id, submessage_arena);
-    }
     set_has_query_id();
   } else {
     clear_has_query_id();
   }
-  query_id_ = query_id;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryResult.query_id)
 }
 
 // repeated .exec.shared.DrillPBError error = 3;
@@ -5841,28 +4733,23 @@
 inline void QueryResult::clear_error() {
   error_.Clear();
 }
-inline ::exec::shared::DrillPBError* QueryResult::mutable_error(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryResult.error)
-  return error_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::DrillPBError >*
-QueryResult::mutable_error() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.QueryResult.error)
-  return &error_;
-}
 inline const ::exec::shared::DrillPBError& QueryResult::error(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryResult.error)
   return error_.Get(index);
 }
+inline ::exec::shared::DrillPBError* QueryResult::mutable_error(int index) {
+  return error_.Mutable(index);
+}
 inline ::exec::shared::DrillPBError* QueryResult::add_error() {
-  // @@protoc_insertion_point(field_add:exec.shared.QueryResult.error)
   return error_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::DrillPBError >&
 QueryResult::error() const {
-  // @@protoc_insertion_point(field_list:exec.shared.QueryResult.error)
   return error_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::DrillPBError >*
+QueryResult::mutable_error() {
+  return &error_;
+}
 
 // -------------------------------------------------------------------
 
@@ -5879,133 +4766,91 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void QueryData::clear_query_id() {
-  if (query_id_ != NULL) query_id_->Clear();
+  if (query_id_ != NULL) query_id_->::exec::shared::QueryId::Clear();
   clear_has_query_id();
 }
-inline const ::exec::shared::QueryId& QueryData::_internal_query_id() const {
-  return *query_id_;
-}
 inline const ::exec::shared::QueryId& QueryData::query_id() const {
-  const ::exec::shared::QueryId* p = query_id_;
-  // @@protoc_insertion_point(field_get:exec.shared.QueryData.query_id)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::QueryId*>(
-      &::exec::shared::_QueryId_default_instance_);
+  return query_id_ != NULL ? *query_id_ : *default_instance_->query_id_;
+}
+inline ::exec::shared::QueryId* QueryData::mutable_query_id() {
+  set_has_query_id();
+  if (query_id_ == NULL) query_id_ = new ::exec::shared::QueryId;
+  return query_id_;
 }
 inline ::exec::shared::QueryId* QueryData::release_query_id() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryData.query_id)
   clear_has_query_id();
   ::exec::shared::QueryId* temp = query_id_;
   query_id_ = NULL;
   return temp;
 }
-inline ::exec::shared::QueryId* QueryData::mutable_query_id() {
-  set_has_query_id();
-  if (query_id_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::QueryId>(GetArenaNoVirtual());
-    query_id_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryData.query_id)
-  return query_id_;
-}
 inline void QueryData::set_allocated_query_id(::exec::shared::QueryId* query_id) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete query_id_;
-  }
+  delete query_id_;
+  query_id_ = query_id;
   if (query_id) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      query_id = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, query_id, submessage_arena);
-    }
     set_has_query_id();
   } else {
     clear_has_query_id();
   }
-  query_id_ = query_id;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryData.query_id)
 }
 
 // optional int32 row_count = 2;
 inline bool QueryData::has_row_count() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void QueryData::set_has_row_count() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void QueryData::clear_has_row_count() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void QueryData::clear_row_count() {
   row_count_ = 0;
   clear_has_row_count();
 }
 inline ::google::protobuf::int32 QueryData::row_count() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryData.row_count)
   return row_count_;
 }
 inline void QueryData::set_row_count(::google::protobuf::int32 value) {
   set_has_row_count();
   row_count_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryData.row_count)
 }
 
 // optional .exec.shared.RecordBatchDef def = 3;
 inline bool QueryData::has_def() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void QueryData::set_has_def() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void QueryData::clear_has_def() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void QueryData::clear_def() {
-  if (def_ != NULL) def_->Clear();
+  if (def_ != NULL) def_->::exec::shared::RecordBatchDef::Clear();
   clear_has_def();
 }
-inline const ::exec::shared::RecordBatchDef& QueryData::_internal_def() const {
-  return *def_;
-}
 inline const ::exec::shared::RecordBatchDef& QueryData::def() const {
-  const ::exec::shared::RecordBatchDef* p = def_;
-  // @@protoc_insertion_point(field_get:exec.shared.QueryData.def)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::RecordBatchDef*>(
-      &::exec::shared::_RecordBatchDef_default_instance_);
+  return def_ != NULL ? *def_ : *default_instance_->def_;
+}
+inline ::exec::shared::RecordBatchDef* QueryData::mutable_def() {
+  set_has_def();
+  if (def_ == NULL) def_ = new ::exec::shared::RecordBatchDef;
+  return def_;
 }
 inline ::exec::shared::RecordBatchDef* QueryData::release_def() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryData.def)
   clear_has_def();
   ::exec::shared::RecordBatchDef* temp = def_;
   def_ = NULL;
   return temp;
 }
-inline ::exec::shared::RecordBatchDef* QueryData::mutable_def() {
-  set_has_def();
-  if (def_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::RecordBatchDef>(GetArenaNoVirtual());
-    def_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryData.def)
-  return def_;
-}
 inline void QueryData::set_allocated_def(::exec::shared::RecordBatchDef* def) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete def_;
-  }
+  delete def_;
+  def_ = def;
   if (def) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      def = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, def, submessage_arena);
-    }
     set_has_def();
   } else {
     clear_has_def();
   }
-  def_ = def;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryData.def)
 }
 
 // optional int32 affected_rows_count = 4;
@@ -6023,13 +4868,11 @@
   clear_has_affected_rows_count();
 }
 inline ::google::protobuf::int32 QueryData::affected_rows_count() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryData.affected_rows_count)
   return affected_rows_count_;
 }
 inline void QueryData::set_affected_rows_count(::google::protobuf::int32 value) {
   set_has_affected_rows_count();
   affected_rows_count_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryData.affected_rows_count)
 }
 
 // -------------------------------------------------------------------
@@ -6047,174 +4890,178 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void QueryInfo::clear_query() {
-  query_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ != &::google::protobuf::internal::kEmptyString) {
+    query_->clear();
+  }
   clear_has_query();
 }
 inline const ::std::string& QueryInfo::query() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryInfo.query)
-  return query_.GetNoArena();
+  return *query_;
 }
 inline void QueryInfo::set_query(const ::std::string& value) {
   set_has_query();
-  query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryInfo.query)
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  query_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryInfo::set_query(::std::string&& value) {
-  set_has_query();
-  query_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryInfo.query)
-}
-#endif
 inline void QueryInfo::set_query(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_query();
-  query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryInfo.query)
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  query_->assign(value);
 }
 inline void QueryInfo::set_query(const char* value, size_t size) {
   set_has_query();
-  query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryInfo.query)
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  query_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryInfo::mutable_query() {
   set_has_query();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryInfo.query)
-  return query_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  return query_;
 }
 inline ::std::string* QueryInfo::release_query() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryInfo.query)
-  if (!has_query()) {
-    return NULL;
-  }
   clear_has_query();
-  return query_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = query_;
+    query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryInfo::set_allocated_query(::std::string* query) {
-  if (query != NULL) {
+  if (query_ != &::google::protobuf::internal::kEmptyString) {
+    delete query_;
+  }
+  if (query) {
     set_has_query();
+    query_ = query;
   } else {
     clear_has_query();
+    query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  query_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), query);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryInfo.query)
 }
 
 // optional int64 start = 2;
 inline bool QueryInfo::has_start() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void QueryInfo::set_has_start() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void QueryInfo::clear_has_start() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void QueryInfo::clear_start() {
   start_ = GOOGLE_LONGLONG(0);
   clear_has_start();
 }
 inline ::google::protobuf::int64 QueryInfo::start() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryInfo.start)
   return start_;
 }
 inline void QueryInfo::set_start(::google::protobuf::int64 value) {
   set_has_start();
   start_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryInfo.start)
 }
 
 // optional .exec.shared.QueryResult.QueryState state = 3;
 inline bool QueryInfo::has_state() const {
-  return (_has_bits_[0] & 0x00000080u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void QueryInfo::set_has_state() {
-  _has_bits_[0] |= 0x00000080u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void QueryInfo::clear_has_state() {
-  _has_bits_[0] &= ~0x00000080u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void QueryInfo::clear_state() {
   state_ = 0;
   clear_has_state();
 }
 inline ::exec::shared::QueryResult_QueryState QueryInfo::state() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryInfo.state)
   return static_cast< ::exec::shared::QueryResult_QueryState >(state_);
 }
 inline void QueryInfo::set_state(::exec::shared::QueryResult_QueryState value) {
   assert(::exec::shared::QueryResult_QueryState_IsValid(value));
   set_has_state();
   state_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryInfo.state)
 }
 
 // optional string user = 4 [default = "-"];
 inline bool QueryInfo::has_user() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void QueryInfo::set_has_user() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void QueryInfo::clear_has_user() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void QueryInfo::clear_user() {
-  user_.ClearToDefaultNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get());
+  if (user_ != _default_user_) {
+    user_->assign(*_default_user_);
+  }
   clear_has_user();
 }
 inline const ::std::string& QueryInfo::user() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryInfo.user)
-  return user_.GetNoArena();
+  return *user_;
 }
 inline void QueryInfo::set_user(const ::std::string& value) {
   set_has_user();
-  user_.SetNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryInfo.user)
+  if (user_ == _default_user_) {
+    user_ = new ::std::string;
+  }
+  user_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryInfo::set_user(::std::string&& value) {
-  set_has_user();
-  user_.SetNoArena(
-    &::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryInfo.user)
-}
-#endif
 inline void QueryInfo::set_user(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_user();
-  user_.SetNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryInfo.user)
+  if (user_ == _default_user_) {
+    user_ = new ::std::string;
+  }
+  user_->assign(value);
 }
 inline void QueryInfo::set_user(const char* value, size_t size) {
   set_has_user();
-  user_.SetNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryInfo.user)
+  if (user_ == _default_user_) {
+    user_ = new ::std::string;
+  }
+  user_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryInfo::mutable_user() {
   set_has_user();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryInfo.user)
-  return user_.MutableNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get());
+  if (user_ == _default_user_) {
+    user_ = new ::std::string(*_default_user_);
+  }
+  return user_;
 }
 inline ::std::string* QueryInfo::release_user() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryInfo.user)
-  if (!has_user()) {
-    return NULL;
-  }
   clear_has_user();
-  return user_.ReleaseNonDefaultNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get());
+  if (user_ == _default_user_) {
+    return NULL;
+  } else {
+    ::std::string* temp = user_;
+    user_ = const_cast< ::std::string*>(_default_user_);
+    return temp;
+  }
 }
 inline void QueryInfo::set_allocated_user(::std::string* user) {
-  if (user != NULL) {
+  if (user_ != _default_user_) {
+    delete user_;
+  }
+  if (user) {
     set_has_user();
+    user_ = user;
   } else {
     clear_has_user();
+    user_ = const_cast< ::std::string*>(_default_user_);
   }
-  user_.SetAllocatedNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_user_.get(), user);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryInfo.user)
 }
 
 // optional .exec.DrillbitEndpoint foreman = 5;
@@ -6227,114 +5074,102 @@
 inline void QueryInfo::clear_has_foreman() {
   _has_bits_[0] &= ~0x00000010u;
 }
-inline const ::exec::DrillbitEndpoint& QueryInfo::_internal_foreman() const {
-  return *foreman_;
+inline void QueryInfo::clear_foreman() {
+  if (foreman_ != NULL) foreman_->::exec::DrillbitEndpoint::Clear();
+  clear_has_foreman();
 }
 inline const ::exec::DrillbitEndpoint& QueryInfo::foreman() const {
-  const ::exec::DrillbitEndpoint* p = foreman_;
-  // @@protoc_insertion_point(field_get:exec.shared.QueryInfo.foreman)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::DrillbitEndpoint*>(
-      &::exec::_DrillbitEndpoint_default_instance_);
+  return foreman_ != NULL ? *foreman_ : *default_instance_->foreman_;
+}
+inline ::exec::DrillbitEndpoint* QueryInfo::mutable_foreman() {
+  set_has_foreman();
+  if (foreman_ == NULL) foreman_ = new ::exec::DrillbitEndpoint;
+  return foreman_;
 }
 inline ::exec::DrillbitEndpoint* QueryInfo::release_foreman() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryInfo.foreman)
   clear_has_foreman();
   ::exec::DrillbitEndpoint* temp = foreman_;
   foreman_ = NULL;
   return temp;
 }
-inline ::exec::DrillbitEndpoint* QueryInfo::mutable_foreman() {
-  set_has_foreman();
-  if (foreman_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::DrillbitEndpoint>(GetArenaNoVirtual());
-    foreman_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryInfo.foreman)
-  return foreman_;
-}
 inline void QueryInfo::set_allocated_foreman(::exec::DrillbitEndpoint* foreman) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(foreman_);
-  }
+  delete foreman_;
+  foreman_ = foreman;
   if (foreman) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      foreman = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, foreman, submessage_arena);
-    }
     set_has_foreman();
   } else {
     clear_has_foreman();
   }
-  foreman_ = foreman;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryInfo.foreman)
 }
 
 // optional string options_json = 6;
 inline bool QueryInfo::has_options_json() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void QueryInfo::set_has_options_json() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void QueryInfo::clear_has_options_json() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000020u;
 }
 inline void QueryInfo::clear_options_json() {
-  options_json_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+    options_json_->clear();
+  }
   clear_has_options_json();
 }
 inline const ::std::string& QueryInfo::options_json() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryInfo.options_json)
-  return options_json_.GetNoArena();
+  return *options_json_;
 }
 inline void QueryInfo::set_options_json(const ::std::string& value) {
   set_has_options_json();
-  options_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryInfo.options_json)
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  options_json_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryInfo::set_options_json(::std::string&& value) {
-  set_has_options_json();
-  options_json_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryInfo.options_json)
-}
-#endif
 inline void QueryInfo::set_options_json(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_options_json();
-  options_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryInfo.options_json)
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  options_json_->assign(value);
 }
 inline void QueryInfo::set_options_json(const char* value, size_t size) {
   set_has_options_json();
-  options_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryInfo.options_json)
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  options_json_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryInfo::mutable_options_json() {
   set_has_options_json();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryInfo.options_json)
-  return options_json_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  return options_json_;
 }
 inline ::std::string* QueryInfo::release_options_json() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryInfo.options_json)
-  if (!has_options_json()) {
-    return NULL;
-  }
   clear_has_options_json();
-  return options_json_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = options_json_;
+    options_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryInfo::set_allocated_options_json(::std::string* options_json) {
-  if (options_json != NULL) {
+  if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+    delete options_json_;
+  }
+  if (options_json) {
     set_has_options_json();
+    options_json_ = options_json;
   } else {
     clear_has_options_json();
+    options_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  options_json_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), options_json);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryInfo.options_json)
 }
 
 // optional double total_cost = 7;
@@ -6352,79 +5187,81 @@
   clear_has_total_cost();
 }
 inline double QueryInfo::total_cost() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryInfo.total_cost)
   return total_cost_;
 }
 inline void QueryInfo::set_total_cost(double value) {
   set_has_total_cost();
   total_cost_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryInfo.total_cost)
 }
 
 // optional string queue_name = 8 [default = "-"];
 inline bool QueryInfo::has_queue_name() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000080u) != 0;
 }
 inline void QueryInfo::set_has_queue_name() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000080u;
 }
 inline void QueryInfo::clear_has_queue_name() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000080u;
 }
 inline void QueryInfo::clear_queue_name() {
-  queue_name_.ClearToDefaultNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get());
+  if (queue_name_ != _default_queue_name_) {
+    queue_name_->assign(*_default_queue_name_);
+  }
   clear_has_queue_name();
 }
 inline const ::std::string& QueryInfo::queue_name() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryInfo.queue_name)
-  return queue_name_.GetNoArena();
+  return *queue_name_;
 }
 inline void QueryInfo::set_queue_name(const ::std::string& value) {
   set_has_queue_name();
-  queue_name_.SetNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryInfo.queue_name)
+  if (queue_name_ == _default_queue_name_) {
+    queue_name_ = new ::std::string;
+  }
+  queue_name_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryInfo::set_queue_name(::std::string&& value) {
-  set_has_queue_name();
-  queue_name_.SetNoArena(
-    &::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryInfo.queue_name)
-}
-#endif
 inline void QueryInfo::set_queue_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_queue_name();
-  queue_name_.SetNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryInfo.queue_name)
+  if (queue_name_ == _default_queue_name_) {
+    queue_name_ = new ::std::string;
+  }
+  queue_name_->assign(value);
 }
 inline void QueryInfo::set_queue_name(const char* value, size_t size) {
   set_has_queue_name();
-  queue_name_.SetNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryInfo.queue_name)
+  if (queue_name_ == _default_queue_name_) {
+    queue_name_ = new ::std::string;
+  }
+  queue_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryInfo::mutable_queue_name() {
   set_has_queue_name();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryInfo.queue_name)
-  return queue_name_.MutableNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get());
+  if (queue_name_ == _default_queue_name_) {
+    queue_name_ = new ::std::string(*_default_queue_name_);
+  }
+  return queue_name_;
 }
 inline ::std::string* QueryInfo::release_queue_name() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryInfo.queue_name)
-  if (!has_queue_name()) {
-    return NULL;
-  }
   clear_has_queue_name();
-  return queue_name_.ReleaseNonDefaultNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get());
+  if (queue_name_ == _default_queue_name_) {
+    return NULL;
+  } else {
+    ::std::string* temp = queue_name_;
+    queue_name_ = const_cast< ::std::string*>(_default_queue_name_);
+    return temp;
+  }
 }
 inline void QueryInfo::set_allocated_queue_name(::std::string* queue_name) {
-  if (queue_name != NULL) {
+  if (queue_name_ != _default_queue_name_) {
+    delete queue_name_;
+  }
+  if (queue_name) {
     set_has_queue_name();
+    queue_name_ = queue_name;
   } else {
     clear_has_queue_name();
+    queue_name_ = const_cast< ::std::string*>(_default_queue_name_);
   }
-  queue_name_.SetAllocatedNoArena(&::exec::shared::QueryInfo::_i_give_permission_to_break_this_code_default_queue_name_.get(), queue_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryInfo.queue_name)
 }
 
 // -------------------------------------------------------------------
@@ -6433,392 +5270,352 @@
 
 // optional .exec.shared.QueryId id = 1;
 inline bool QueryProfile::has_id() const {
-  return (_has_bits_[0] & 0x00000400u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void QueryProfile::set_has_id() {
-  _has_bits_[0] |= 0x00000400u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void QueryProfile::clear_has_id() {
-  _has_bits_[0] &= ~0x00000400u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void QueryProfile::clear_id() {
-  if (id_ != NULL) id_->Clear();
+  if (id_ != NULL) id_->::exec::shared::QueryId::Clear();
   clear_has_id();
 }
-inline const ::exec::shared::QueryId& QueryProfile::_internal_id() const {
-  return *id_;
-}
 inline const ::exec::shared::QueryId& QueryProfile::id() const {
-  const ::exec::shared::QueryId* p = id_;
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.id)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::QueryId*>(
-      &::exec::shared::_QueryId_default_instance_);
+  return id_ != NULL ? *id_ : *default_instance_->id_;
+}
+inline ::exec::shared::QueryId* QueryProfile::mutable_id() {
+  set_has_id();
+  if (id_ == NULL) id_ = new ::exec::shared::QueryId;
+  return id_;
 }
 inline ::exec::shared::QueryId* QueryProfile::release_id() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.id)
   clear_has_id();
   ::exec::shared::QueryId* temp = id_;
   id_ = NULL;
   return temp;
 }
-inline ::exec::shared::QueryId* QueryProfile::mutable_id() {
-  set_has_id();
-  if (id_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::QueryId>(GetArenaNoVirtual());
-    id_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.id)
-  return id_;
-}
 inline void QueryProfile::set_allocated_id(::exec::shared::QueryId* id) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete id_;
-  }
+  delete id_;
+  id_ = id;
   if (id) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      id = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, id, submessage_arena);
-    }
     set_has_id();
   } else {
     clear_has_id();
   }
-  id_ = id;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.id)
 }
 
 // optional .exec.shared.QueryType type = 2;
 inline bool QueryProfile::has_type() const {
-  return (_has_bits_[0] & 0x00200000u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void QueryProfile::set_has_type() {
-  _has_bits_[0] |= 0x00200000u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void QueryProfile::clear_has_type() {
-  _has_bits_[0] &= ~0x00200000u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void QueryProfile::clear_type() {
   type_ = 1;
   clear_has_type();
 }
 inline ::exec::shared::QueryType QueryProfile::type() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.type)
   return static_cast< ::exec::shared::QueryType >(type_);
 }
 inline void QueryProfile::set_type(::exec::shared::QueryType value) {
   assert(::exec::shared::QueryType_IsValid(value));
   set_has_type();
   type_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.type)
 }
 
 // optional int64 start = 3;
 inline bool QueryProfile::has_start() const {
-  return (_has_bits_[0] & 0x00001000u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void QueryProfile::set_has_start() {
-  _has_bits_[0] |= 0x00001000u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void QueryProfile::clear_has_start() {
-  _has_bits_[0] &= ~0x00001000u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void QueryProfile::clear_start() {
   start_ = GOOGLE_LONGLONG(0);
   clear_has_start();
 }
 inline ::google::protobuf::int64 QueryProfile::start() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.start)
   return start_;
 }
 inline void QueryProfile::set_start(::google::protobuf::int64 value) {
   set_has_start();
   start_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.start)
 }
 
 // optional int64 end = 4;
 inline bool QueryProfile::has_end() const {
-  return (_has_bits_[0] & 0x00002000u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void QueryProfile::set_has_end() {
-  _has_bits_[0] |= 0x00002000u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void QueryProfile::clear_has_end() {
-  _has_bits_[0] &= ~0x00002000u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void QueryProfile::clear_end() {
   end_ = GOOGLE_LONGLONG(0);
   clear_has_end();
 }
 inline ::google::protobuf::int64 QueryProfile::end() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.end)
   return end_;
 }
 inline void QueryProfile::set_end(::google::protobuf::int64 value) {
   set_has_end();
   end_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.end)
 }
 
 // optional string query = 5;
 inline bool QueryProfile::has_query() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void QueryProfile::set_has_query() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void QueryProfile::clear_has_query() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void QueryProfile::clear_query() {
-  query_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ != &::google::protobuf::internal::kEmptyString) {
+    query_->clear();
+  }
   clear_has_query();
 }
 inline const ::std::string& QueryProfile::query() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.query)
-  return query_.GetNoArena();
+  return *query_;
 }
 inline void QueryProfile::set_query(const ::std::string& value) {
   set_has_query();
-  query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.query)
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  query_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_query(::std::string&& value) {
-  set_has_query();
-  query_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.query)
-}
-#endif
 inline void QueryProfile::set_query(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_query();
-  query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.query)
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  query_->assign(value);
 }
 inline void QueryProfile::set_query(const char* value, size_t size) {
   set_has_query();
-  query_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.query)
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  query_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_query() {
   set_has_query();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.query)
-  return query_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    query_ = new ::std::string;
+  }
+  return query_;
 }
 inline ::std::string* QueryProfile::release_query() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.query)
-  if (!has_query()) {
-    return NULL;
-  }
   clear_has_query();
-  return query_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (query_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = query_;
+    query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_query(::std::string* query) {
-  if (query != NULL) {
+  if (query_ != &::google::protobuf::internal::kEmptyString) {
+    delete query_;
+  }
+  if (query) {
     set_has_query();
+    query_ = query;
   } else {
     clear_has_query();
+    query_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  query_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), query);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.query)
 }
 
 // optional string plan = 6;
 inline bool QueryProfile::has_plan() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void QueryProfile::set_has_plan() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void QueryProfile::clear_has_plan() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000020u;
 }
 inline void QueryProfile::clear_plan() {
-  plan_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (plan_ != &::google::protobuf::internal::kEmptyString) {
+    plan_->clear();
+  }
   clear_has_plan();
 }
 inline const ::std::string& QueryProfile::plan() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.plan)
-  return plan_.GetNoArena();
+  return *plan_;
 }
 inline void QueryProfile::set_plan(const ::std::string& value) {
   set_has_plan();
-  plan_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.plan)
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    plan_ = new ::std::string;
+  }
+  plan_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_plan(::std::string&& value) {
-  set_has_plan();
-  plan_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.plan)
-}
-#endif
 inline void QueryProfile::set_plan(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_plan();
-  plan_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.plan)
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    plan_ = new ::std::string;
+  }
+  plan_->assign(value);
 }
 inline void QueryProfile::set_plan(const char* value, size_t size) {
   set_has_plan();
-  plan_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.plan)
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    plan_ = new ::std::string;
+  }
+  plan_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_plan() {
   set_has_plan();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.plan)
-  return plan_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    plan_ = new ::std::string;
+  }
+  return plan_;
 }
 inline ::std::string* QueryProfile::release_plan() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.plan)
-  if (!has_plan()) {
-    return NULL;
-  }
   clear_has_plan();
-  return plan_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (plan_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = plan_;
+    plan_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_plan(::std::string* plan) {
-  if (plan != NULL) {
+  if (plan_ != &::google::protobuf::internal::kEmptyString) {
+    delete plan_;
+  }
+  if (plan) {
     set_has_plan();
+    plan_ = plan;
   } else {
     clear_has_plan();
+    plan_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  plan_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), plan);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.plan)
 }
 
 // optional .exec.DrillbitEndpoint foreman = 7;
 inline bool QueryProfile::has_foreman() const {
-  return (_has_bits_[0] & 0x00000800u) != 0;
+  return (_has_bits_[0] & 0x00000040u) != 0;
 }
 inline void QueryProfile::set_has_foreman() {
-  _has_bits_[0] |= 0x00000800u;
+  _has_bits_[0] |= 0x00000040u;
 }
 inline void QueryProfile::clear_has_foreman() {
-  _has_bits_[0] &= ~0x00000800u;
+  _has_bits_[0] &= ~0x00000040u;
 }
-inline const ::exec::DrillbitEndpoint& QueryProfile::_internal_foreman() const {
-  return *foreman_;
+inline void QueryProfile::clear_foreman() {
+  if (foreman_ != NULL) foreman_->::exec::DrillbitEndpoint::Clear();
+  clear_has_foreman();
 }
 inline const ::exec::DrillbitEndpoint& QueryProfile::foreman() const {
-  const ::exec::DrillbitEndpoint* p = foreman_;
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.foreman)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::DrillbitEndpoint*>(
-      &::exec::_DrillbitEndpoint_default_instance_);
+  return foreman_ != NULL ? *foreman_ : *default_instance_->foreman_;
+}
+inline ::exec::DrillbitEndpoint* QueryProfile::mutable_foreman() {
+  set_has_foreman();
+  if (foreman_ == NULL) foreman_ = new ::exec::DrillbitEndpoint;
+  return foreman_;
 }
 inline ::exec::DrillbitEndpoint* QueryProfile::release_foreman() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.foreman)
   clear_has_foreman();
   ::exec::DrillbitEndpoint* temp = foreman_;
   foreman_ = NULL;
   return temp;
 }
-inline ::exec::DrillbitEndpoint* QueryProfile::mutable_foreman() {
-  set_has_foreman();
-  if (foreman_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::DrillbitEndpoint>(GetArenaNoVirtual());
-    foreman_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.foreman)
-  return foreman_;
-}
 inline void QueryProfile::set_allocated_foreman(::exec::DrillbitEndpoint* foreman) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(foreman_);
-  }
+  delete foreman_;
+  foreman_ = foreman;
   if (foreman) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      foreman = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, foreman, submessage_arena);
-    }
     set_has_foreman();
   } else {
     clear_has_foreman();
   }
-  foreman_ = foreman;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.foreman)
 }
 
 // optional .exec.shared.QueryResult.QueryState state = 8;
 inline bool QueryProfile::has_state() const {
-  return (_has_bits_[0] & 0x00004000u) != 0;
+  return (_has_bits_[0] & 0x00000080u) != 0;
 }
 inline void QueryProfile::set_has_state() {
-  _has_bits_[0] |= 0x00004000u;
+  _has_bits_[0] |= 0x00000080u;
 }
 inline void QueryProfile::clear_has_state() {
-  _has_bits_[0] &= ~0x00004000u;
+  _has_bits_[0] &= ~0x00000080u;
 }
 inline void QueryProfile::clear_state() {
   state_ = 0;
   clear_has_state();
 }
 inline ::exec::shared::QueryResult_QueryState QueryProfile::state() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.state)
   return static_cast< ::exec::shared::QueryResult_QueryState >(state_);
 }
 inline void QueryProfile::set_state(::exec::shared::QueryResult_QueryState value) {
   assert(::exec::shared::QueryResult_QueryState_IsValid(value));
   set_has_state();
   state_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.state)
 }
 
 // optional int32 total_fragments = 9;
 inline bool QueryProfile::has_total_fragments() const {
-  return (_has_bits_[0] & 0x00008000u) != 0;
+  return (_has_bits_[0] & 0x00000100u) != 0;
 }
 inline void QueryProfile::set_has_total_fragments() {
-  _has_bits_[0] |= 0x00008000u;
+  _has_bits_[0] |= 0x00000100u;
 }
 inline void QueryProfile::clear_has_total_fragments() {
-  _has_bits_[0] &= ~0x00008000u;
+  _has_bits_[0] &= ~0x00000100u;
 }
 inline void QueryProfile::clear_total_fragments() {
   total_fragments_ = 0;
   clear_has_total_fragments();
 }
 inline ::google::protobuf::int32 QueryProfile::total_fragments() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.total_fragments)
   return total_fragments_;
 }
 inline void QueryProfile::set_total_fragments(::google::protobuf::int32 value) {
   set_has_total_fragments();
   total_fragments_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.total_fragments)
 }
 
 // optional int32 finished_fragments = 10;
 inline bool QueryProfile::has_finished_fragments() const {
-  return (_has_bits_[0] & 0x00010000u) != 0;
+  return (_has_bits_[0] & 0x00000200u) != 0;
 }
 inline void QueryProfile::set_has_finished_fragments() {
-  _has_bits_[0] |= 0x00010000u;
+  _has_bits_[0] |= 0x00000200u;
 }
 inline void QueryProfile::clear_has_finished_fragments() {
-  _has_bits_[0] &= ~0x00010000u;
+  _has_bits_[0] &= ~0x00000200u;
 }
 inline void QueryProfile::clear_finished_fragments() {
   finished_fragments_ = 0;
   clear_has_finished_fragments();
 }
 inline ::google::protobuf::int32 QueryProfile::finished_fragments() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.finished_fragments)
   return finished_fragments_;
 }
 inline void QueryProfile::set_finished_fragments(::google::protobuf::int32 value) {
   set_has_finished_fragments();
   finished_fragments_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.finished_fragments)
 }
 
 // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
@@ -6828,651 +5625,670 @@
 inline void QueryProfile::clear_fragment_profile() {
   fragment_profile_.Clear();
 }
-inline ::exec::shared::MajorFragmentProfile* QueryProfile::mutable_fragment_profile(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.fragment_profile)
-  return fragment_profile_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::MajorFragmentProfile >*
-QueryProfile::mutable_fragment_profile() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.QueryProfile.fragment_profile)
-  return &fragment_profile_;
-}
 inline const ::exec::shared::MajorFragmentProfile& QueryProfile::fragment_profile(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.fragment_profile)
   return fragment_profile_.Get(index);
 }
+inline ::exec::shared::MajorFragmentProfile* QueryProfile::mutable_fragment_profile(int index) {
+  return fragment_profile_.Mutable(index);
+}
 inline ::exec::shared::MajorFragmentProfile* QueryProfile::add_fragment_profile() {
-  // @@protoc_insertion_point(field_add:exec.shared.QueryProfile.fragment_profile)
   return fragment_profile_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::MajorFragmentProfile >&
 QueryProfile::fragment_profile() const {
-  // @@protoc_insertion_point(field_list:exec.shared.QueryProfile.fragment_profile)
   return fragment_profile_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::MajorFragmentProfile >*
+QueryProfile::mutable_fragment_profile() {
+  return &fragment_profile_;
+}
 
 // optional string user = 12 [default = "-"];
 inline bool QueryProfile::has_user() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000800u) != 0;
 }
 inline void QueryProfile::set_has_user() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000800u;
 }
 inline void QueryProfile::clear_has_user() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000800u;
 }
 inline void QueryProfile::clear_user() {
-  user_.ClearToDefaultNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get());
+  if (user_ != _default_user_) {
+    user_->assign(*_default_user_);
+  }
   clear_has_user();
 }
 inline const ::std::string& QueryProfile::user() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.user)
-  return user_.GetNoArena();
+  return *user_;
 }
 inline void QueryProfile::set_user(const ::std::string& value) {
   set_has_user();
-  user_.SetNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.user)
+  if (user_ == _default_user_) {
+    user_ = new ::std::string;
+  }
+  user_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_user(::std::string&& value) {
-  set_has_user();
-  user_.SetNoArena(
-    &::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.user)
-}
-#endif
 inline void QueryProfile::set_user(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_user();
-  user_.SetNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.user)
+  if (user_ == _default_user_) {
+    user_ = new ::std::string;
+  }
+  user_->assign(value);
 }
 inline void QueryProfile::set_user(const char* value, size_t size) {
   set_has_user();
-  user_.SetNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.user)
+  if (user_ == _default_user_) {
+    user_ = new ::std::string;
+  }
+  user_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_user() {
   set_has_user();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.user)
-  return user_.MutableNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get());
+  if (user_ == _default_user_) {
+    user_ = new ::std::string(*_default_user_);
+  }
+  return user_;
 }
 inline ::std::string* QueryProfile::release_user() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.user)
-  if (!has_user()) {
-    return NULL;
-  }
   clear_has_user();
-  return user_.ReleaseNonDefaultNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get());
+  if (user_ == _default_user_) {
+    return NULL;
+  } else {
+    ::std::string* temp = user_;
+    user_ = const_cast< ::std::string*>(_default_user_);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_user(::std::string* user) {
-  if (user != NULL) {
+  if (user_ != _default_user_) {
+    delete user_;
+  }
+  if (user) {
     set_has_user();
+    user_ = user;
   } else {
     clear_has_user();
+    user_ = const_cast< ::std::string*>(_default_user_);
   }
-  user_.SetAllocatedNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_user_.get(), user);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.user)
 }
 
 // optional string error = 13;
 inline bool QueryProfile::has_error() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00001000u) != 0;
 }
 inline void QueryProfile::set_has_error() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00001000u;
 }
 inline void QueryProfile::clear_has_error() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00001000u;
 }
 inline void QueryProfile::clear_error() {
-  error_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_ != &::google::protobuf::internal::kEmptyString) {
+    error_->clear();
+  }
   clear_has_error();
 }
 inline const ::std::string& QueryProfile::error() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.error)
-  return error_.GetNoArena();
+  return *error_;
 }
 inline void QueryProfile::set_error(const ::std::string& value) {
   set_has_error();
-  error_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.error)
+  if (error_ == &::google::protobuf::internal::kEmptyString) {
+    error_ = new ::std::string;
+  }
+  error_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_error(::std::string&& value) {
-  set_has_error();
-  error_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.error)
-}
-#endif
 inline void QueryProfile::set_error(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_error();
-  error_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.error)
+  if (error_ == &::google::protobuf::internal::kEmptyString) {
+    error_ = new ::std::string;
+  }
+  error_->assign(value);
 }
 inline void QueryProfile::set_error(const char* value, size_t size) {
   set_has_error();
-  error_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.error)
+  if (error_ == &::google::protobuf::internal::kEmptyString) {
+    error_ = new ::std::string;
+  }
+  error_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_error() {
   set_has_error();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.error)
-  return error_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_ == &::google::protobuf::internal::kEmptyString) {
+    error_ = new ::std::string;
+  }
+  return error_;
 }
 inline ::std::string* QueryProfile::release_error() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.error)
-  if (!has_error()) {
-    return NULL;
-  }
   clear_has_error();
-  return error_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = error_;
+    error_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_error(::std::string* error) {
-  if (error != NULL) {
+  if (error_ != &::google::protobuf::internal::kEmptyString) {
+    delete error_;
+  }
+  if (error) {
     set_has_error();
+    error_ = error;
   } else {
     clear_has_error();
+    error_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  error_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), error);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.error)
 }
 
 // optional string verboseError = 14;
 inline bool QueryProfile::has_verboseerror() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00002000u) != 0;
 }
 inline void QueryProfile::set_has_verboseerror() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00002000u;
 }
 inline void QueryProfile::clear_has_verboseerror() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00002000u;
 }
 inline void QueryProfile::clear_verboseerror() {
-  verboseerror_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (verboseerror_ != &::google::protobuf::internal::kEmptyString) {
+    verboseerror_->clear();
+  }
   clear_has_verboseerror();
 }
 inline const ::std::string& QueryProfile::verboseerror() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.verboseError)
-  return verboseerror_.GetNoArena();
+  return *verboseerror_;
 }
 inline void QueryProfile::set_verboseerror(const ::std::string& value) {
   set_has_verboseerror();
-  verboseerror_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.verboseError)
+  if (verboseerror_ == &::google::protobuf::internal::kEmptyString) {
+    verboseerror_ = new ::std::string;
+  }
+  verboseerror_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_verboseerror(::std::string&& value) {
-  set_has_verboseerror();
-  verboseerror_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.verboseError)
-}
-#endif
 inline void QueryProfile::set_verboseerror(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_verboseerror();
-  verboseerror_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.verboseError)
+  if (verboseerror_ == &::google::protobuf::internal::kEmptyString) {
+    verboseerror_ = new ::std::string;
+  }
+  verboseerror_->assign(value);
 }
 inline void QueryProfile::set_verboseerror(const char* value, size_t size) {
   set_has_verboseerror();
-  verboseerror_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.verboseError)
+  if (verboseerror_ == &::google::protobuf::internal::kEmptyString) {
+    verboseerror_ = new ::std::string;
+  }
+  verboseerror_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_verboseerror() {
   set_has_verboseerror();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.verboseError)
-  return verboseerror_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (verboseerror_ == &::google::protobuf::internal::kEmptyString) {
+    verboseerror_ = new ::std::string;
+  }
+  return verboseerror_;
 }
 inline ::std::string* QueryProfile::release_verboseerror() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.verboseError)
-  if (!has_verboseerror()) {
-    return NULL;
-  }
   clear_has_verboseerror();
-  return verboseerror_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (verboseerror_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = verboseerror_;
+    verboseerror_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_verboseerror(::std::string* verboseerror) {
-  if (verboseerror != NULL) {
+  if (verboseerror_ != &::google::protobuf::internal::kEmptyString) {
+    delete verboseerror_;
+  }
+  if (verboseerror) {
     set_has_verboseerror();
+    verboseerror_ = verboseerror;
   } else {
     clear_has_verboseerror();
+    verboseerror_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  verboseerror_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), verboseerror);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.verboseError)
 }
 
 // optional string error_id = 15;
 inline bool QueryProfile::has_error_id() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00004000u) != 0;
 }
 inline void QueryProfile::set_has_error_id() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00004000u;
 }
 inline void QueryProfile::clear_has_error_id() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00004000u;
 }
 inline void QueryProfile::clear_error_id() {
-  error_id_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_id_ != &::google::protobuf::internal::kEmptyString) {
+    error_id_->clear();
+  }
   clear_has_error_id();
 }
 inline const ::std::string& QueryProfile::error_id() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.error_id)
-  return error_id_.GetNoArena();
+  return *error_id_;
 }
 inline void QueryProfile::set_error_id(const ::std::string& value) {
   set_has_error_id();
-  error_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.error_id)
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    error_id_ = new ::std::string;
+  }
+  error_id_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_error_id(::std::string&& value) {
-  set_has_error_id();
-  error_id_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.error_id)
-}
-#endif
 inline void QueryProfile::set_error_id(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_error_id();
-  error_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.error_id)
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    error_id_ = new ::std::string;
+  }
+  error_id_->assign(value);
 }
 inline void QueryProfile::set_error_id(const char* value, size_t size) {
   set_has_error_id();
-  error_id_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.error_id)
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    error_id_ = new ::std::string;
+  }
+  error_id_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_error_id() {
   set_has_error_id();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.error_id)
-  return error_id_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    error_id_ = new ::std::string;
+  }
+  return error_id_;
 }
 inline ::std::string* QueryProfile::release_error_id() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.error_id)
-  if (!has_error_id()) {
-    return NULL;
-  }
   clear_has_error_id();
-  return error_id_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_id_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = error_id_;
+    error_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_error_id(::std::string* error_id) {
-  if (error_id != NULL) {
+  if (error_id_ != &::google::protobuf::internal::kEmptyString) {
+    delete error_id_;
+  }
+  if (error_id) {
     set_has_error_id();
+    error_id_ = error_id;
   } else {
     clear_has_error_id();
+    error_id_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  error_id_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), error_id);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.error_id)
 }
 
 // optional string error_node = 16;
 inline bool QueryProfile::has_error_node() const {
-  return (_has_bits_[0] & 0x00000040u) != 0;
+  return (_has_bits_[0] & 0x00008000u) != 0;
 }
 inline void QueryProfile::set_has_error_node() {
-  _has_bits_[0] |= 0x00000040u;
+  _has_bits_[0] |= 0x00008000u;
 }
 inline void QueryProfile::clear_has_error_node() {
-  _has_bits_[0] &= ~0x00000040u;
+  _has_bits_[0] &= ~0x00008000u;
 }
 inline void QueryProfile::clear_error_node() {
-  error_node_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_node_ != &::google::protobuf::internal::kEmptyString) {
+    error_node_->clear();
+  }
   clear_has_error_node();
 }
 inline const ::std::string& QueryProfile::error_node() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.error_node)
-  return error_node_.GetNoArena();
+  return *error_node_;
 }
 inline void QueryProfile::set_error_node(const ::std::string& value) {
   set_has_error_node();
-  error_node_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.error_node)
+  if (error_node_ == &::google::protobuf::internal::kEmptyString) {
+    error_node_ = new ::std::string;
+  }
+  error_node_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_error_node(::std::string&& value) {
-  set_has_error_node();
-  error_node_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.error_node)
-}
-#endif
 inline void QueryProfile::set_error_node(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_error_node();
-  error_node_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.error_node)
+  if (error_node_ == &::google::protobuf::internal::kEmptyString) {
+    error_node_ = new ::std::string;
+  }
+  error_node_->assign(value);
 }
 inline void QueryProfile::set_error_node(const char* value, size_t size) {
   set_has_error_node();
-  error_node_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.error_node)
+  if (error_node_ == &::google::protobuf::internal::kEmptyString) {
+    error_node_ = new ::std::string;
+  }
+  error_node_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_error_node() {
   set_has_error_node();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.error_node)
-  return error_node_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_node_ == &::google::protobuf::internal::kEmptyString) {
+    error_node_ = new ::std::string;
+  }
+  return error_node_;
 }
 inline ::std::string* QueryProfile::release_error_node() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.error_node)
-  if (!has_error_node()) {
-    return NULL;
-  }
   clear_has_error_node();
-  return error_node_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (error_node_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = error_node_;
+    error_node_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_error_node(::std::string* error_node) {
-  if (error_node != NULL) {
+  if (error_node_ != &::google::protobuf::internal::kEmptyString) {
+    delete error_node_;
+  }
+  if (error_node) {
     set_has_error_node();
+    error_node_ = error_node;
   } else {
     clear_has_error_node();
+    error_node_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  error_node_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), error_node);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.error_node)
 }
 
 // optional string options_json = 17;
 inline bool QueryProfile::has_options_json() const {
-  return (_has_bits_[0] & 0x00000080u) != 0;
+  return (_has_bits_[0] & 0x00010000u) != 0;
 }
 inline void QueryProfile::set_has_options_json() {
-  _has_bits_[0] |= 0x00000080u;
+  _has_bits_[0] |= 0x00010000u;
 }
 inline void QueryProfile::clear_has_options_json() {
-  _has_bits_[0] &= ~0x00000080u;
+  _has_bits_[0] &= ~0x00010000u;
 }
 inline void QueryProfile::clear_options_json() {
-  options_json_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+    options_json_->clear();
+  }
   clear_has_options_json();
 }
 inline const ::std::string& QueryProfile::options_json() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.options_json)
-  return options_json_.GetNoArena();
+  return *options_json_;
 }
 inline void QueryProfile::set_options_json(const ::std::string& value) {
   set_has_options_json();
-  options_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.options_json)
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  options_json_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_options_json(::std::string&& value) {
-  set_has_options_json();
-  options_json_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.options_json)
-}
-#endif
 inline void QueryProfile::set_options_json(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_options_json();
-  options_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.options_json)
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  options_json_->assign(value);
 }
 inline void QueryProfile::set_options_json(const char* value, size_t size) {
   set_has_options_json();
-  options_json_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.options_json)
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  options_json_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_options_json() {
   set_has_options_json();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.options_json)
-  return options_json_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    options_json_ = new ::std::string;
+  }
+  return options_json_;
 }
 inline ::std::string* QueryProfile::release_options_json() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.options_json)
-  if (!has_options_json()) {
-    return NULL;
-  }
   clear_has_options_json();
-  return options_json_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (options_json_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = options_json_;
+    options_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_options_json(::std::string* options_json) {
-  if (options_json != NULL) {
+  if (options_json_ != &::google::protobuf::internal::kEmptyString) {
+    delete options_json_;
+  }
+  if (options_json) {
     set_has_options_json();
+    options_json_ = options_json;
   } else {
     clear_has_options_json();
+    options_json_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  options_json_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), options_json);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.options_json)
 }
 
 // optional int64 planEnd = 18;
 inline bool QueryProfile::has_planend() const {
-  return (_has_bits_[0] & 0x00040000u) != 0;
+  return (_has_bits_[0] & 0x00020000u) != 0;
 }
 inline void QueryProfile::set_has_planend() {
-  _has_bits_[0] |= 0x00040000u;
+  _has_bits_[0] |= 0x00020000u;
 }
 inline void QueryProfile::clear_has_planend() {
-  _has_bits_[0] &= ~0x00040000u;
+  _has_bits_[0] &= ~0x00020000u;
 }
 inline void QueryProfile::clear_planend() {
   planend_ = GOOGLE_LONGLONG(0);
   clear_has_planend();
 }
 inline ::google::protobuf::int64 QueryProfile::planend() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.planEnd)
   return planend_;
 }
 inline void QueryProfile::set_planend(::google::protobuf::int64 value) {
   set_has_planend();
   planend_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.planEnd)
 }
 
 // optional int64 queueWaitEnd = 19;
 inline bool QueryProfile::has_queuewaitend() const {
-  return (_has_bits_[0] & 0x00080000u) != 0;
+  return (_has_bits_[0] & 0x00040000u) != 0;
 }
 inline void QueryProfile::set_has_queuewaitend() {
-  _has_bits_[0] |= 0x00080000u;
+  _has_bits_[0] |= 0x00040000u;
 }
 inline void QueryProfile::clear_has_queuewaitend() {
-  _has_bits_[0] &= ~0x00080000u;
+  _has_bits_[0] &= ~0x00040000u;
 }
 inline void QueryProfile::clear_queuewaitend() {
   queuewaitend_ = GOOGLE_LONGLONG(0);
   clear_has_queuewaitend();
 }
 inline ::google::protobuf::int64 QueryProfile::queuewaitend() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.queueWaitEnd)
   return queuewaitend_;
 }
 inline void QueryProfile::set_queuewaitend(::google::protobuf::int64 value) {
   set_has_queuewaitend();
   queuewaitend_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.queueWaitEnd)
 }
 
 // optional double total_cost = 20;
 inline bool QueryProfile::has_total_cost() const {
-  return (_has_bits_[0] & 0x00100000u) != 0;
+  return (_has_bits_[0] & 0x00080000u) != 0;
 }
 inline void QueryProfile::set_has_total_cost() {
-  _has_bits_[0] |= 0x00100000u;
+  _has_bits_[0] |= 0x00080000u;
 }
 inline void QueryProfile::clear_has_total_cost() {
-  _has_bits_[0] &= ~0x00100000u;
+  _has_bits_[0] &= ~0x00080000u;
 }
 inline void QueryProfile::clear_total_cost() {
   total_cost_ = 0;
   clear_has_total_cost();
 }
 inline double QueryProfile::total_cost() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.total_cost)
   return total_cost_;
 }
 inline void QueryProfile::set_total_cost(double value) {
   set_has_total_cost();
   total_cost_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.total_cost)
 }
 
 // optional string queue_name = 21 [default = "-"];
 inline bool QueryProfile::has_queue_name() const {
-  return (_has_bits_[0] & 0x00000100u) != 0;
+  return (_has_bits_[0] & 0x00100000u) != 0;
 }
 inline void QueryProfile::set_has_queue_name() {
-  _has_bits_[0] |= 0x00000100u;
+  _has_bits_[0] |= 0x00100000u;
 }
 inline void QueryProfile::clear_has_queue_name() {
-  _has_bits_[0] &= ~0x00000100u;
+  _has_bits_[0] &= ~0x00100000u;
 }
 inline void QueryProfile::clear_queue_name() {
-  queue_name_.ClearToDefaultNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get());
+  if (queue_name_ != _default_queue_name_) {
+    queue_name_->assign(*_default_queue_name_);
+  }
   clear_has_queue_name();
 }
 inline const ::std::string& QueryProfile::queue_name() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.queue_name)
-  return queue_name_.GetNoArena();
+  return *queue_name_;
 }
 inline void QueryProfile::set_queue_name(const ::std::string& value) {
   set_has_queue_name();
-  queue_name_.SetNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.queue_name)
+  if (queue_name_ == _default_queue_name_) {
+    queue_name_ = new ::std::string;
+  }
+  queue_name_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_queue_name(::std::string&& value) {
-  set_has_queue_name();
-  queue_name_.SetNoArena(
-    &::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.queue_name)
-}
-#endif
 inline void QueryProfile::set_queue_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_queue_name();
-  queue_name_.SetNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.queue_name)
+  if (queue_name_ == _default_queue_name_) {
+    queue_name_ = new ::std::string;
+  }
+  queue_name_->assign(value);
 }
 inline void QueryProfile::set_queue_name(const char* value, size_t size) {
   set_has_queue_name();
-  queue_name_.SetNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.queue_name)
+  if (queue_name_ == _default_queue_name_) {
+    queue_name_ = new ::std::string;
+  }
+  queue_name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_queue_name() {
   set_has_queue_name();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.queue_name)
-  return queue_name_.MutableNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get());
+  if (queue_name_ == _default_queue_name_) {
+    queue_name_ = new ::std::string(*_default_queue_name_);
+  }
+  return queue_name_;
 }
 inline ::std::string* QueryProfile::release_queue_name() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.queue_name)
-  if (!has_queue_name()) {
-    return NULL;
-  }
   clear_has_queue_name();
-  return queue_name_.ReleaseNonDefaultNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get());
+  if (queue_name_ == _default_queue_name_) {
+    return NULL;
+  } else {
+    ::std::string* temp = queue_name_;
+    queue_name_ = const_cast< ::std::string*>(_default_queue_name_);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_queue_name(::std::string* queue_name) {
-  if (queue_name != NULL) {
+  if (queue_name_ != _default_queue_name_) {
+    delete queue_name_;
+  }
+  if (queue_name) {
     set_has_queue_name();
+    queue_name_ = queue_name;
   } else {
     clear_has_queue_name();
+    queue_name_ = const_cast< ::std::string*>(_default_queue_name_);
   }
-  queue_name_.SetAllocatedNoArena(&::exec::shared::QueryProfile::_i_give_permission_to_break_this_code_default_queue_name_.get(), queue_name);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.queue_name)
 }
 
 // optional string queryId = 22;
 inline bool QueryProfile::has_queryid() const {
-  return (_has_bits_[0] & 0x00000200u) != 0;
+  return (_has_bits_[0] & 0x00200000u) != 0;
 }
 inline void QueryProfile::set_has_queryid() {
-  _has_bits_[0] |= 0x00000200u;
+  _has_bits_[0] |= 0x00200000u;
 }
 inline void QueryProfile::clear_has_queryid() {
-  _has_bits_[0] &= ~0x00000200u;
+  _has_bits_[0] &= ~0x00200000u;
 }
 inline void QueryProfile::clear_queryid() {
-  queryid_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (queryid_ != &::google::protobuf::internal::kEmptyString) {
+    queryid_->clear();
+  }
   clear_has_queryid();
 }
 inline const ::std::string& QueryProfile::queryid() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.queryId)
-  return queryid_.GetNoArena();
+  return *queryid_;
 }
 inline void QueryProfile::set_queryid(const ::std::string& value) {
   set_has_queryid();
-  queryid_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.queryId)
+  if (queryid_ == &::google::protobuf::internal::kEmptyString) {
+    queryid_ = new ::std::string;
+  }
+  queryid_->assign(value);
 }
-#if LANG_CXX11
-inline void QueryProfile::set_queryid(::std::string&& value) {
-  set_has_queryid();
-  queryid_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.QueryProfile.queryId)
-}
-#endif
 inline void QueryProfile::set_queryid(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_queryid();
-  queryid_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.QueryProfile.queryId)
+  if (queryid_ == &::google::protobuf::internal::kEmptyString) {
+    queryid_ = new ::std::string;
+  }
+  queryid_->assign(value);
 }
 inline void QueryProfile::set_queryid(const char* value, size_t size) {
   set_has_queryid();
-  queryid_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.QueryProfile.queryId)
+  if (queryid_ == &::google::protobuf::internal::kEmptyString) {
+    queryid_ = new ::std::string;
+  }
+  queryid_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* QueryProfile::mutable_queryid() {
   set_has_queryid();
-  // @@protoc_insertion_point(field_mutable:exec.shared.QueryProfile.queryId)
-  return queryid_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (queryid_ == &::google::protobuf::internal::kEmptyString) {
+    queryid_ = new ::std::string;
+  }
+  return queryid_;
 }
 inline ::std::string* QueryProfile::release_queryid() {
-  // @@protoc_insertion_point(field_release:exec.shared.QueryProfile.queryId)
-  if (!has_queryid()) {
-    return NULL;
-  }
   clear_has_queryid();
-  return queryid_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (queryid_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = queryid_;
+    queryid_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void QueryProfile::set_allocated_queryid(::std::string* queryid) {
-  if (queryid != NULL) {
+  if (queryid_ != &::google::protobuf::internal::kEmptyString) {
+    delete queryid_;
+  }
+  if (queryid) {
     set_has_queryid();
+    queryid_ = queryid;
   } else {
     clear_has_queryid();
+    queryid_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  queryid_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), queryid);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.QueryProfile.queryId)
 }
 
 // optional int32 autoLimit = 23;
 inline bool QueryProfile::has_autolimit() const {
-  return (_has_bits_[0] & 0x00020000u) != 0;
+  return (_has_bits_[0] & 0x00400000u) != 0;
 }
 inline void QueryProfile::set_has_autolimit() {
-  _has_bits_[0] |= 0x00020000u;
+  _has_bits_[0] |= 0x00400000u;
 }
 inline void QueryProfile::clear_has_autolimit() {
-  _has_bits_[0] &= ~0x00020000u;
+  _has_bits_[0] &= ~0x00400000u;
 }
 inline void QueryProfile::clear_autolimit() {
   autolimit_ = 0;
   clear_has_autolimit();
 }
 inline ::google::protobuf::int32 QueryProfile::autolimit() const {
-  // @@protoc_insertion_point(field_get:exec.shared.QueryProfile.autoLimit)
   return autolimit_;
 }
 inline void QueryProfile::set_autolimit(::google::protobuf::int32 value) {
   set_has_autolimit();
   autolimit_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.QueryProfile.autoLimit)
 }
 
 // -------------------------------------------------------------------
@@ -7494,13 +6310,11 @@
   clear_has_major_fragment_id();
 }
 inline ::google::protobuf::int32 MajorFragmentProfile::major_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MajorFragmentProfile.major_fragment_id)
   return major_fragment_id_;
 }
 inline void MajorFragmentProfile::set_major_fragment_id(::google::protobuf::int32 value) {
   set_has_major_fragment_id();
   major_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MajorFragmentProfile.major_fragment_id)
 }
 
 // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
@@ -7510,28 +6324,23 @@
 inline void MajorFragmentProfile::clear_minor_fragment_profile() {
   minor_fragment_profile_.Clear();
 }
-inline ::exec::shared::MinorFragmentProfile* MajorFragmentProfile::mutable_minor_fragment_profile(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.MajorFragmentProfile.minor_fragment_profile)
-  return minor_fragment_profile_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::MinorFragmentProfile >*
-MajorFragmentProfile::mutable_minor_fragment_profile() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.MajorFragmentProfile.minor_fragment_profile)
-  return &minor_fragment_profile_;
-}
 inline const ::exec::shared::MinorFragmentProfile& MajorFragmentProfile::minor_fragment_profile(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.MajorFragmentProfile.minor_fragment_profile)
   return minor_fragment_profile_.Get(index);
 }
+inline ::exec::shared::MinorFragmentProfile* MajorFragmentProfile::mutable_minor_fragment_profile(int index) {
+  return minor_fragment_profile_.Mutable(index);
+}
 inline ::exec::shared::MinorFragmentProfile* MajorFragmentProfile::add_minor_fragment_profile() {
-  // @@protoc_insertion_point(field_add:exec.shared.MajorFragmentProfile.minor_fragment_profile)
   return minor_fragment_profile_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::MinorFragmentProfile >&
 MajorFragmentProfile::minor_fragment_profile() const {
-  // @@protoc_insertion_point(field_list:exec.shared.MajorFragmentProfile.minor_fragment_profile)
   return minor_fragment_profile_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::MinorFragmentProfile >*
+MajorFragmentProfile::mutable_minor_fragment_profile() {
+  return &minor_fragment_profile_;
+}
 
 // -------------------------------------------------------------------
 
@@ -7539,109 +6348,85 @@
 
 // optional .exec.shared.FragmentState state = 1;
 inline bool MinorFragmentProfile::has_state() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void MinorFragmentProfile::set_has_state() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void MinorFragmentProfile::clear_has_state() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void MinorFragmentProfile::clear_state() {
   state_ = 0;
   clear_has_state();
 }
 inline ::exec::shared::FragmentState MinorFragmentProfile::state() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.state)
   return static_cast< ::exec::shared::FragmentState >(state_);
 }
 inline void MinorFragmentProfile::set_state(::exec::shared::FragmentState value) {
   assert(::exec::shared::FragmentState_IsValid(value));
   set_has_state();
   state_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MinorFragmentProfile.state)
 }
 
 // optional .exec.shared.DrillPBError error = 2;
 inline bool MinorFragmentProfile::has_error() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void MinorFragmentProfile::set_has_error() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void MinorFragmentProfile::clear_has_error() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void MinorFragmentProfile::clear_error() {
-  if (error_ != NULL) error_->Clear();
+  if (error_ != NULL) error_->::exec::shared::DrillPBError::Clear();
   clear_has_error();
 }
-inline const ::exec::shared::DrillPBError& MinorFragmentProfile::_internal_error() const {
-  return *error_;
-}
 inline const ::exec::shared::DrillPBError& MinorFragmentProfile::error() const {
-  const ::exec::shared::DrillPBError* p = error_;
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.error)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::shared::DrillPBError*>(
-      &::exec::shared::_DrillPBError_default_instance_);
+  return error_ != NULL ? *error_ : *default_instance_->error_;
+}
+inline ::exec::shared::DrillPBError* MinorFragmentProfile::mutable_error() {
+  set_has_error();
+  if (error_ == NULL) error_ = new ::exec::shared::DrillPBError;
+  return error_;
 }
 inline ::exec::shared::DrillPBError* MinorFragmentProfile::release_error() {
-  // @@protoc_insertion_point(field_release:exec.shared.MinorFragmentProfile.error)
   clear_has_error();
   ::exec::shared::DrillPBError* temp = error_;
   error_ = NULL;
   return temp;
 }
-inline ::exec::shared::DrillPBError* MinorFragmentProfile::mutable_error() {
-  set_has_error();
-  if (error_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::shared::DrillPBError>(GetArenaNoVirtual());
-    error_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.MinorFragmentProfile.error)
-  return error_;
-}
 inline void MinorFragmentProfile::set_allocated_error(::exec::shared::DrillPBError* error) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete error_;
-  }
+  delete error_;
+  error_ = error;
   if (error) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      error = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, error, submessage_arena);
-    }
     set_has_error();
   } else {
     clear_has_error();
   }
-  error_ = error;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.MinorFragmentProfile.error)
 }
 
 // optional int32 minor_fragment_id = 3;
 inline bool MinorFragmentProfile::has_minor_fragment_id() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void MinorFragmentProfile::set_has_minor_fragment_id() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void MinorFragmentProfile::clear_has_minor_fragment_id() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void MinorFragmentProfile::clear_minor_fragment_id() {
   minor_fragment_id_ = 0;
   clear_has_minor_fragment_id();
 }
 inline ::google::protobuf::int32 MinorFragmentProfile::minor_fragment_id() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.minor_fragment_id)
   return minor_fragment_id_;
 }
 inline void MinorFragmentProfile::set_minor_fragment_id(::google::protobuf::int32 value) {
   set_has_minor_fragment_id();
   minor_fragment_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MinorFragmentProfile.minor_fragment_id)
 }
 
 // repeated .exec.shared.OperatorProfile operator_profile = 4;
@@ -7651,28 +6436,23 @@
 inline void MinorFragmentProfile::clear_operator_profile() {
   operator_profile_.Clear();
 }
-inline ::exec::shared::OperatorProfile* MinorFragmentProfile::mutable_operator_profile(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.MinorFragmentProfile.operator_profile)
-  return operator_profile_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::OperatorProfile >*
-MinorFragmentProfile::mutable_operator_profile() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.MinorFragmentProfile.operator_profile)
-  return &operator_profile_;
-}
 inline const ::exec::shared::OperatorProfile& MinorFragmentProfile::operator_profile(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.operator_profile)
   return operator_profile_.Get(index);
 }
+inline ::exec::shared::OperatorProfile* MinorFragmentProfile::mutable_operator_profile(int index) {
+  return operator_profile_.Mutable(index);
+}
 inline ::exec::shared::OperatorProfile* MinorFragmentProfile::add_operator_profile() {
-  // @@protoc_insertion_point(field_add:exec.shared.MinorFragmentProfile.operator_profile)
   return operator_profile_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::OperatorProfile >&
 MinorFragmentProfile::operator_profile() const {
-  // @@protoc_insertion_point(field_list:exec.shared.MinorFragmentProfile.operator_profile)
   return operator_profile_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::OperatorProfile >*
+MinorFragmentProfile::mutable_operator_profile() {
+  return &operator_profile_;
+}
 
 // optional int64 start_time = 5;
 inline bool MinorFragmentProfile::has_start_time() const {
@@ -7689,13 +6469,11 @@
   clear_has_start_time();
 }
 inline ::google::protobuf::int64 MinorFragmentProfile::start_time() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.start_time)
   return start_time_;
 }
 inline void MinorFragmentProfile::set_start_time(::google::protobuf::int64 value) {
   set_has_start_time();
   start_time_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MinorFragmentProfile.start_time)
 }
 
 // optional int64 end_time = 6;
@@ -7713,13 +6491,11 @@
   clear_has_end_time();
 }
 inline ::google::protobuf::int64 MinorFragmentProfile::end_time() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.end_time)
   return end_time_;
 }
 inline void MinorFragmentProfile::set_end_time(::google::protobuf::int64 value) {
   set_has_end_time();
   end_time_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MinorFragmentProfile.end_time)
 }
 
 // optional int64 memory_used = 7;
@@ -7737,13 +6513,11 @@
   clear_has_memory_used();
 }
 inline ::google::protobuf::int64 MinorFragmentProfile::memory_used() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.memory_used)
   return memory_used_;
 }
 inline void MinorFragmentProfile::set_memory_used(::google::protobuf::int64 value) {
   set_has_memory_used();
   memory_used_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MinorFragmentProfile.memory_used)
 }
 
 // optional int64 max_memory_used = 8;
@@ -7761,115 +6535,93 @@
   clear_has_max_memory_used();
 }
 inline ::google::protobuf::int64 MinorFragmentProfile::max_memory_used() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.max_memory_used)
   return max_memory_used_;
 }
 inline void MinorFragmentProfile::set_max_memory_used(::google::protobuf::int64 value) {
   set_has_max_memory_used();
   max_memory_used_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MinorFragmentProfile.max_memory_used)
 }
 
 // optional .exec.DrillbitEndpoint endpoint = 9;
 inline bool MinorFragmentProfile::has_endpoint() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000100u) != 0;
 }
 inline void MinorFragmentProfile::set_has_endpoint() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000100u;
 }
 inline void MinorFragmentProfile::clear_has_endpoint() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000100u;
 }
-inline const ::exec::DrillbitEndpoint& MinorFragmentProfile::_internal_endpoint() const {
-  return *endpoint_;
+inline void MinorFragmentProfile::clear_endpoint() {
+  if (endpoint_ != NULL) endpoint_->::exec::DrillbitEndpoint::Clear();
+  clear_has_endpoint();
 }
 inline const ::exec::DrillbitEndpoint& MinorFragmentProfile::endpoint() const {
-  const ::exec::DrillbitEndpoint* p = endpoint_;
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.endpoint)
-  return p != NULL ? *p : *reinterpret_cast<const ::exec::DrillbitEndpoint*>(
-      &::exec::_DrillbitEndpoint_default_instance_);
+  return endpoint_ != NULL ? *endpoint_ : *default_instance_->endpoint_;
+}
+inline ::exec::DrillbitEndpoint* MinorFragmentProfile::mutable_endpoint() {
+  set_has_endpoint();
+  if (endpoint_ == NULL) endpoint_ = new ::exec::DrillbitEndpoint;
+  return endpoint_;
 }
 inline ::exec::DrillbitEndpoint* MinorFragmentProfile::release_endpoint() {
-  // @@protoc_insertion_point(field_release:exec.shared.MinorFragmentProfile.endpoint)
   clear_has_endpoint();
   ::exec::DrillbitEndpoint* temp = endpoint_;
   endpoint_ = NULL;
   return temp;
 }
-inline ::exec::DrillbitEndpoint* MinorFragmentProfile::mutable_endpoint() {
-  set_has_endpoint();
-  if (endpoint_ == NULL) {
-    auto* p = CreateMaybeMessage<::exec::DrillbitEndpoint>(GetArenaNoVirtual());
-    endpoint_ = p;
-  }
-  // @@protoc_insertion_point(field_mutable:exec.shared.MinorFragmentProfile.endpoint)
-  return endpoint_;
-}
 inline void MinorFragmentProfile::set_allocated_endpoint(::exec::DrillbitEndpoint* endpoint) {
-  ::google::protobuf::Arena* message_arena = GetArenaNoVirtual();
-  if (message_arena == NULL) {
-    delete reinterpret_cast< ::google::protobuf::MessageLite*>(endpoint_);
-  }
+  delete endpoint_;
+  endpoint_ = endpoint;
   if (endpoint) {
-    ::google::protobuf::Arena* submessage_arena = NULL;
-    if (message_arena != submessage_arena) {
-      endpoint = ::google::protobuf::internal::GetOwnedMessage(
-          message_arena, endpoint, submessage_arena);
-    }
     set_has_endpoint();
   } else {
     clear_has_endpoint();
   }
-  endpoint_ = endpoint;
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.MinorFragmentProfile.endpoint)
 }
 
 // optional int64 last_update = 10;
 inline bool MinorFragmentProfile::has_last_update() const {
-  return (_has_bits_[0] & 0x00000100u) != 0;
+  return (_has_bits_[0] & 0x00000200u) != 0;
 }
 inline void MinorFragmentProfile::set_has_last_update() {
-  _has_bits_[0] |= 0x00000100u;
+  _has_bits_[0] |= 0x00000200u;
 }
 inline void MinorFragmentProfile::clear_has_last_update() {
-  _has_bits_[0] &= ~0x00000100u;
+  _has_bits_[0] &= ~0x00000200u;
 }
 inline void MinorFragmentProfile::clear_last_update() {
   last_update_ = GOOGLE_LONGLONG(0);
   clear_has_last_update();
 }
 inline ::google::protobuf::int64 MinorFragmentProfile::last_update() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.last_update)
   return last_update_;
 }
 inline void MinorFragmentProfile::set_last_update(::google::protobuf::int64 value) {
   set_has_last_update();
   last_update_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MinorFragmentProfile.last_update)
 }
 
 // optional int64 last_progress = 11;
 inline bool MinorFragmentProfile::has_last_progress() const {
-  return (_has_bits_[0] & 0x00000200u) != 0;
+  return (_has_bits_[0] & 0x00000400u) != 0;
 }
 inline void MinorFragmentProfile::set_has_last_progress() {
-  _has_bits_[0] |= 0x00000200u;
+  _has_bits_[0] |= 0x00000400u;
 }
 inline void MinorFragmentProfile::clear_has_last_progress() {
-  _has_bits_[0] &= ~0x00000200u;
+  _has_bits_[0] &= ~0x00000400u;
 }
 inline void MinorFragmentProfile::clear_last_progress() {
   last_progress_ = GOOGLE_LONGLONG(0);
   clear_has_last_progress();
 }
 inline ::google::protobuf::int64 MinorFragmentProfile::last_progress() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MinorFragmentProfile.last_progress)
   return last_progress_;
 }
 inline void MinorFragmentProfile::set_last_progress(::google::protobuf::int64 value) {
   set_has_last_progress();
   last_progress_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MinorFragmentProfile.last_progress)
 }
 
 // -------------------------------------------------------------------
@@ -7883,147 +6635,132 @@
 inline void OperatorProfile::clear_input_profile() {
   input_profile_.Clear();
 }
-inline ::exec::shared::StreamProfile* OperatorProfile::mutable_input_profile(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.OperatorProfile.input_profile)
-  return input_profile_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::StreamProfile >*
-OperatorProfile::mutable_input_profile() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.OperatorProfile.input_profile)
-  return &input_profile_;
-}
 inline const ::exec::shared::StreamProfile& OperatorProfile::input_profile(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.OperatorProfile.input_profile)
   return input_profile_.Get(index);
 }
+inline ::exec::shared::StreamProfile* OperatorProfile::mutable_input_profile(int index) {
+  return input_profile_.Mutable(index);
+}
 inline ::exec::shared::StreamProfile* OperatorProfile::add_input_profile() {
-  // @@protoc_insertion_point(field_add:exec.shared.OperatorProfile.input_profile)
   return input_profile_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::StreamProfile >&
 OperatorProfile::input_profile() const {
-  // @@protoc_insertion_point(field_list:exec.shared.OperatorProfile.input_profile)
   return input_profile_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::StreamProfile >*
+OperatorProfile::mutable_input_profile() {
+  return &input_profile_;
+}
 
 // optional int32 operator_id = 3;
 inline bool OperatorProfile::has_operator_id() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void OperatorProfile::set_has_operator_id() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void OperatorProfile::clear_has_operator_id() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void OperatorProfile::clear_operator_id() {
   operator_id_ = 0;
   clear_has_operator_id();
 }
 inline ::google::protobuf::int32 OperatorProfile::operator_id() const {
-  // @@protoc_insertion_point(field_get:exec.shared.OperatorProfile.operator_id)
   return operator_id_;
 }
 inline void OperatorProfile::set_operator_id(::google::protobuf::int32 value) {
   set_has_operator_id();
   operator_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.OperatorProfile.operator_id)
 }
 
 // optional int32 operator_type = 4;
 inline bool OperatorProfile::has_operator_type() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void OperatorProfile::set_has_operator_type() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void OperatorProfile::clear_has_operator_type() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void OperatorProfile::clear_operator_type() {
   operator_type_ = 0;
   clear_has_operator_type();
 }
 inline ::google::protobuf::int32 OperatorProfile::operator_type() const {
-  // @@protoc_insertion_point(field_get:exec.shared.OperatorProfile.operator_type)
   return operator_type_;
 }
 inline void OperatorProfile::set_operator_type(::google::protobuf::int32 value) {
   set_has_operator_type();
   operator_type_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.OperatorProfile.operator_type)
 }
 
 // optional int64 setup_nanos = 5;
 inline bool OperatorProfile::has_setup_nanos() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000008u) != 0;
 }
 inline void OperatorProfile::set_has_setup_nanos() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000008u;
 }
 inline void OperatorProfile::clear_has_setup_nanos() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000008u;
 }
 inline void OperatorProfile::clear_setup_nanos() {
   setup_nanos_ = GOOGLE_LONGLONG(0);
   clear_has_setup_nanos();
 }
 inline ::google::protobuf::int64 OperatorProfile::setup_nanos() const {
-  // @@protoc_insertion_point(field_get:exec.shared.OperatorProfile.setup_nanos)
   return setup_nanos_;
 }
 inline void OperatorProfile::set_setup_nanos(::google::protobuf::int64 value) {
   set_has_setup_nanos();
   setup_nanos_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.OperatorProfile.setup_nanos)
 }
 
 // optional int64 process_nanos = 6;
 inline bool OperatorProfile::has_process_nanos() const {
-  return (_has_bits_[0] & 0x00000008u) != 0;
+  return (_has_bits_[0] & 0x00000010u) != 0;
 }
 inline void OperatorProfile::set_has_process_nanos() {
-  _has_bits_[0] |= 0x00000008u;
+  _has_bits_[0] |= 0x00000010u;
 }
 inline void OperatorProfile::clear_has_process_nanos() {
-  _has_bits_[0] &= ~0x00000008u;
+  _has_bits_[0] &= ~0x00000010u;
 }
 inline void OperatorProfile::clear_process_nanos() {
   process_nanos_ = GOOGLE_LONGLONG(0);
   clear_has_process_nanos();
 }
 inline ::google::protobuf::int64 OperatorProfile::process_nanos() const {
-  // @@protoc_insertion_point(field_get:exec.shared.OperatorProfile.process_nanos)
   return process_nanos_;
 }
 inline void OperatorProfile::set_process_nanos(::google::protobuf::int64 value) {
   set_has_process_nanos();
   process_nanos_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.OperatorProfile.process_nanos)
 }
 
 // optional int64 peak_local_memory_allocated = 7;
 inline bool OperatorProfile::has_peak_local_memory_allocated() const {
-  return (_has_bits_[0] & 0x00000010u) != 0;
+  return (_has_bits_[0] & 0x00000020u) != 0;
 }
 inline void OperatorProfile::set_has_peak_local_memory_allocated() {
-  _has_bits_[0] |= 0x00000010u;
+  _has_bits_[0] |= 0x00000020u;
 }
 inline void OperatorProfile::clear_has_peak_local_memory_allocated() {
-  _has_bits_[0] &= ~0x00000010u;
+  _has_bits_[0] &= ~0x00000020u;
 }
 inline void OperatorProfile::clear_peak_local_memory_allocated() {
   peak_local_memory_allocated_ = GOOGLE_LONGLONG(0);
   clear_has_peak_local_memory_allocated();
 }
 inline ::google::protobuf::int64 OperatorProfile::peak_local_memory_allocated() const {
-  // @@protoc_insertion_point(field_get:exec.shared.OperatorProfile.peak_local_memory_allocated)
   return peak_local_memory_allocated_;
 }
 inline void OperatorProfile::set_peak_local_memory_allocated(::google::protobuf::int64 value) {
   set_has_peak_local_memory_allocated();
   peak_local_memory_allocated_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.OperatorProfile.peak_local_memory_allocated)
 }
 
 // repeated .exec.shared.MetricValue metric = 8;
@@ -8033,51 +6770,44 @@
 inline void OperatorProfile::clear_metric() {
   metric_.Clear();
 }
-inline ::exec::shared::MetricValue* OperatorProfile::mutable_metric(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.OperatorProfile.metric)
-  return metric_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::MetricValue >*
-OperatorProfile::mutable_metric() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.OperatorProfile.metric)
-  return &metric_;
-}
 inline const ::exec::shared::MetricValue& OperatorProfile::metric(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.OperatorProfile.metric)
   return metric_.Get(index);
 }
+inline ::exec::shared::MetricValue* OperatorProfile::mutable_metric(int index) {
+  return metric_.Mutable(index);
+}
 inline ::exec::shared::MetricValue* OperatorProfile::add_metric() {
-  // @@protoc_insertion_point(field_add:exec.shared.OperatorProfile.metric)
   return metric_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::MetricValue >&
 OperatorProfile::metric() const {
-  // @@protoc_insertion_point(field_list:exec.shared.OperatorProfile.metric)
   return metric_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::MetricValue >*
+OperatorProfile::mutable_metric() {
+  return &metric_;
+}
 
 // optional int64 wait_nanos = 9;
 inline bool OperatorProfile::has_wait_nanos() const {
-  return (_has_bits_[0] & 0x00000020u) != 0;
+  return (_has_bits_[0] & 0x00000080u) != 0;
 }
 inline void OperatorProfile::set_has_wait_nanos() {
-  _has_bits_[0] |= 0x00000020u;
+  _has_bits_[0] |= 0x00000080u;
 }
 inline void OperatorProfile::clear_has_wait_nanos() {
-  _has_bits_[0] &= ~0x00000020u;
+  _has_bits_[0] &= ~0x00000080u;
 }
 inline void OperatorProfile::clear_wait_nanos() {
   wait_nanos_ = GOOGLE_LONGLONG(0);
   clear_has_wait_nanos();
 }
 inline ::google::protobuf::int64 OperatorProfile::wait_nanos() const {
-  // @@protoc_insertion_point(field_get:exec.shared.OperatorProfile.wait_nanos)
   return wait_nanos_;
 }
 inline void OperatorProfile::set_wait_nanos(::google::protobuf::int64 value) {
   set_has_wait_nanos();
   wait_nanos_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.OperatorProfile.wait_nanos)
 }
 
 // -------------------------------------------------------------------
@@ -8099,13 +6829,11 @@
   clear_has_records();
 }
 inline ::google::protobuf::int64 StreamProfile::records() const {
-  // @@protoc_insertion_point(field_get:exec.shared.StreamProfile.records)
   return records_;
 }
 inline void StreamProfile::set_records(::google::protobuf::int64 value) {
   set_has_records();
   records_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.StreamProfile.records)
 }
 
 // optional int64 batches = 2;
@@ -8123,13 +6851,11 @@
   clear_has_batches();
 }
 inline ::google::protobuf::int64 StreamProfile::batches() const {
-  // @@protoc_insertion_point(field_get:exec.shared.StreamProfile.batches)
   return batches_;
 }
 inline void StreamProfile::set_batches(::google::protobuf::int64 value) {
   set_has_batches();
   batches_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.StreamProfile.batches)
 }
 
 // optional int64 schemas = 3;
@@ -8147,13 +6873,11 @@
   clear_has_schemas();
 }
 inline ::google::protobuf::int64 StreamProfile::schemas() const {
-  // @@protoc_insertion_point(field_get:exec.shared.StreamProfile.schemas)
   return schemas_;
 }
 inline void StreamProfile::set_schemas(::google::protobuf::int64 value) {
   set_has_schemas();
   schemas_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.StreamProfile.schemas)
 }
 
 // -------------------------------------------------------------------
@@ -8162,74 +6886,68 @@
 
 // optional int32 metric_id = 1;
 inline bool MetricValue::has_metric_id() const {
-  return (_has_bits_[0] & 0x00000004u) != 0;
+  return (_has_bits_[0] & 0x00000001u) != 0;
 }
 inline void MetricValue::set_has_metric_id() {
-  _has_bits_[0] |= 0x00000004u;
+  _has_bits_[0] |= 0x00000001u;
 }
 inline void MetricValue::clear_has_metric_id() {
-  _has_bits_[0] &= ~0x00000004u;
+  _has_bits_[0] &= ~0x00000001u;
 }
 inline void MetricValue::clear_metric_id() {
   metric_id_ = 0;
   clear_has_metric_id();
 }
 inline ::google::protobuf::int32 MetricValue::metric_id() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MetricValue.metric_id)
   return metric_id_;
 }
 inline void MetricValue::set_metric_id(::google::protobuf::int32 value) {
   set_has_metric_id();
   metric_id_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MetricValue.metric_id)
 }
 
 // optional int64 long_value = 2;
 inline bool MetricValue::has_long_value() const {
-  return (_has_bits_[0] & 0x00000001u) != 0;
+  return (_has_bits_[0] & 0x00000002u) != 0;
 }
 inline void MetricValue::set_has_long_value() {
-  _has_bits_[0] |= 0x00000001u;
+  _has_bits_[0] |= 0x00000002u;
 }
 inline void MetricValue::clear_has_long_value() {
-  _has_bits_[0] &= ~0x00000001u;
+  _has_bits_[0] &= ~0x00000002u;
 }
 inline void MetricValue::clear_long_value() {
   long_value_ = GOOGLE_LONGLONG(0);
   clear_has_long_value();
 }
 inline ::google::protobuf::int64 MetricValue::long_value() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MetricValue.long_value)
   return long_value_;
 }
 inline void MetricValue::set_long_value(::google::protobuf::int64 value) {
   set_has_long_value();
   long_value_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MetricValue.long_value)
 }
 
 // optional double double_value = 3;
 inline bool MetricValue::has_double_value() const {
-  return (_has_bits_[0] & 0x00000002u) != 0;
+  return (_has_bits_[0] & 0x00000004u) != 0;
 }
 inline void MetricValue::set_has_double_value() {
-  _has_bits_[0] |= 0x00000002u;
+  _has_bits_[0] |= 0x00000004u;
 }
 inline void MetricValue::clear_has_double_value() {
-  _has_bits_[0] &= ~0x00000002u;
+  _has_bits_[0] &= ~0x00000004u;
 }
 inline void MetricValue::clear_double_value() {
   double_value_ = 0;
   clear_has_double_value();
 }
 inline double MetricValue::double_value() const {
-  // @@protoc_insertion_point(field_get:exec.shared.MetricValue.double_value)
   return double_value_;
 }
 inline void MetricValue::set_double_value(double value) {
   set_has_double_value();
   double_value_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.MetricValue.double_value)
 }
 
 // -------------------------------------------------------------------
@@ -8243,28 +6961,23 @@
 inline void Registry::clear_jar() {
   jar_.Clear();
 }
-inline ::exec::shared::Jar* Registry::mutable_jar(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.Registry.jar)
-  return jar_.Mutable(index);
-}
-inline ::google::protobuf::RepeatedPtrField< ::exec::shared::Jar >*
-Registry::mutable_jar() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.Registry.jar)
-  return &jar_;
-}
 inline const ::exec::shared::Jar& Registry::jar(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.Registry.jar)
   return jar_.Get(index);
 }
+inline ::exec::shared::Jar* Registry::mutable_jar(int index) {
+  return jar_.Mutable(index);
+}
 inline ::exec::shared::Jar* Registry::add_jar() {
-  // @@protoc_insertion_point(field_add:exec.shared.Registry.jar)
   return jar_.Add();
 }
 inline const ::google::protobuf::RepeatedPtrField< ::exec::shared::Jar >&
 Registry::jar() const {
-  // @@protoc_insertion_point(field_list:exec.shared.Registry.jar)
   return jar_;
 }
+inline ::google::protobuf::RepeatedPtrField< ::exec::shared::Jar >*
+Registry::mutable_jar() {
+  return &jar_;
+}
 
 // -------------------------------------------------------------------
 
@@ -8281,59 +6994,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void Jar::clear_name() {
-  name_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ != &::google::protobuf::internal::kEmptyString) {
+    name_->clear();
+  }
   clear_has_name();
 }
 inline const ::std::string& Jar::name() const {
-  // @@protoc_insertion_point(field_get:exec.shared.Jar.name)
-  return name_.GetNoArena();
+  return *name_;
 }
 inline void Jar::set_name(const ::std::string& value) {
   set_has_name();
-  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.Jar.name)
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  name_->assign(value);
 }
-#if LANG_CXX11
-inline void Jar::set_name(::std::string&& value) {
-  set_has_name();
-  name_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.Jar.name)
-}
-#endif
 inline void Jar::set_name(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_name();
-  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.Jar.name)
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  name_->assign(value);
 }
 inline void Jar::set_name(const char* value, size_t size) {
   set_has_name();
-  name_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.Jar.name)
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  name_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* Jar::mutable_name() {
   set_has_name();
-  // @@protoc_insertion_point(field_mutable:exec.shared.Jar.name)
-  return name_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    name_ = new ::std::string;
+  }
+  return name_;
 }
 inline ::std::string* Jar::release_name() {
-  // @@protoc_insertion_point(field_release:exec.shared.Jar.name)
-  if (!has_name()) {
-    return NULL;
-  }
   clear_has_name();
-  return name_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (name_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = name_;
+    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void Jar::set_allocated_name(::std::string* name) {
-  if (name != NULL) {
+  if (name_ != &::google::protobuf::internal::kEmptyString) {
+    delete name_;
+  }
+  if (name) {
     set_has_name();
+    name_ = name;
   } else {
     clear_has_name();
+    name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  name_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), name);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.Jar.name)
 }
 
 // repeated string function_signature = 2;
@@ -8344,64 +7061,39 @@
   function_signature_.Clear();
 }
 inline const ::std::string& Jar::function_signature(int index) const {
-  // @@protoc_insertion_point(field_get:exec.shared.Jar.function_signature)
   return function_signature_.Get(index);
 }
 inline ::std::string* Jar::mutable_function_signature(int index) {
-  // @@protoc_insertion_point(field_mutable:exec.shared.Jar.function_signature)
   return function_signature_.Mutable(index);
 }
 inline void Jar::set_function_signature(int index, const ::std::string& value) {
-  // @@protoc_insertion_point(field_set:exec.shared.Jar.function_signature)
   function_signature_.Mutable(index)->assign(value);
 }
-#if LANG_CXX11
-inline void Jar::set_function_signature(int index, ::std::string&& value) {
-  // @@protoc_insertion_point(field_set:exec.shared.Jar.function_signature)
-  function_signature_.Mutable(index)->assign(std::move(value));
-}
-#endif
 inline void Jar::set_function_signature(int index, const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   function_signature_.Mutable(index)->assign(value);
-  // @@protoc_insertion_point(field_set_char:exec.shared.Jar.function_signature)
 }
 inline void Jar::set_function_signature(int index, const char* value, size_t size) {
   function_signature_.Mutable(index)->assign(
     reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.Jar.function_signature)
 }
 inline ::std::string* Jar::add_function_signature() {
-  // @@protoc_insertion_point(field_add_mutable:exec.shared.Jar.function_signature)
   return function_signature_.Add();
 }
 inline void Jar::add_function_signature(const ::std::string& value) {
   function_signature_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add:exec.shared.Jar.function_signature)
 }
-#if LANG_CXX11
-inline void Jar::add_function_signature(::std::string&& value) {
-  function_signature_.Add(std::move(value));
-  // @@protoc_insertion_point(field_add:exec.shared.Jar.function_signature)
-}
-#endif
 inline void Jar::add_function_signature(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   function_signature_.Add()->assign(value);
-  // @@protoc_insertion_point(field_add_char:exec.shared.Jar.function_signature)
 }
 inline void Jar::add_function_signature(const char* value, size_t size) {
   function_signature_.Add()->assign(reinterpret_cast<const char*>(value), size);
-  // @@protoc_insertion_point(field_add_pointer:exec.shared.Jar.function_signature)
 }
 inline const ::google::protobuf::RepeatedPtrField< ::std::string>&
 Jar::function_signature() const {
-  // @@protoc_insertion_point(field_list:exec.shared.Jar.function_signature)
   return function_signature_;
 }
 inline ::google::protobuf::RepeatedPtrField< ::std::string>*
 Jar::mutable_function_signature() {
-  // @@protoc_insertion_point(field_mutable_list:exec.shared.Jar.function_signature)
   return &function_signature_;
 }
 
@@ -8420,59 +7112,63 @@
   _has_bits_[0] &= ~0x00000001u;
 }
 inline void SaslMessage::clear_mechanism() {
-  mechanism_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (mechanism_ != &::google::protobuf::internal::kEmptyString) {
+    mechanism_->clear();
+  }
   clear_has_mechanism();
 }
 inline const ::std::string& SaslMessage::mechanism() const {
-  // @@protoc_insertion_point(field_get:exec.shared.SaslMessage.mechanism)
-  return mechanism_.GetNoArena();
+  return *mechanism_;
 }
 inline void SaslMessage::set_mechanism(const ::std::string& value) {
   set_has_mechanism();
-  mechanism_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.SaslMessage.mechanism)
+  if (mechanism_ == &::google::protobuf::internal::kEmptyString) {
+    mechanism_ = new ::std::string;
+  }
+  mechanism_->assign(value);
 }
-#if LANG_CXX11
-inline void SaslMessage::set_mechanism(::std::string&& value) {
-  set_has_mechanism();
-  mechanism_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.SaslMessage.mechanism)
-}
-#endif
 inline void SaslMessage::set_mechanism(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_mechanism();
-  mechanism_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.SaslMessage.mechanism)
+  if (mechanism_ == &::google::protobuf::internal::kEmptyString) {
+    mechanism_ = new ::std::string;
+  }
+  mechanism_->assign(value);
 }
 inline void SaslMessage::set_mechanism(const char* value, size_t size) {
   set_has_mechanism();
-  mechanism_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.SaslMessage.mechanism)
+  if (mechanism_ == &::google::protobuf::internal::kEmptyString) {
+    mechanism_ = new ::std::string;
+  }
+  mechanism_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* SaslMessage::mutable_mechanism() {
   set_has_mechanism();
-  // @@protoc_insertion_point(field_mutable:exec.shared.SaslMessage.mechanism)
-  return mechanism_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (mechanism_ == &::google::protobuf::internal::kEmptyString) {
+    mechanism_ = new ::std::string;
+  }
+  return mechanism_;
 }
 inline ::std::string* SaslMessage::release_mechanism() {
-  // @@protoc_insertion_point(field_release:exec.shared.SaslMessage.mechanism)
-  if (!has_mechanism()) {
-    return NULL;
-  }
   clear_has_mechanism();
-  return mechanism_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (mechanism_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = mechanism_;
+    mechanism_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void SaslMessage::set_allocated_mechanism(::std::string* mechanism) {
-  if (mechanism != NULL) {
+  if (mechanism_ != &::google::protobuf::internal::kEmptyString) {
+    delete mechanism_;
+  }
+  if (mechanism) {
     set_has_mechanism();
+    mechanism_ = mechanism;
   } else {
     clear_has_mechanism();
+    mechanism_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  mechanism_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), mechanism);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.SaslMessage.mechanism)
 }
 
 // optional bytes data = 2;
@@ -8486,59 +7182,63 @@
   _has_bits_[0] &= ~0x00000002u;
 }
 inline void SaslMessage::clear_data() {
-  data_.ClearToEmptyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (data_ != &::google::protobuf::internal::kEmptyString) {
+    data_->clear();
+  }
   clear_has_data();
 }
 inline const ::std::string& SaslMessage::data() const {
-  // @@protoc_insertion_point(field_get:exec.shared.SaslMessage.data)
-  return data_.GetNoArena();
+  return *data_;
 }
 inline void SaslMessage::set_data(const ::std::string& value) {
   set_has_data();
-  data_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
-  // @@protoc_insertion_point(field_set:exec.shared.SaslMessage.data)
+  if (data_ == &::google::protobuf::internal::kEmptyString) {
+    data_ = new ::std::string;
+  }
+  data_->assign(value);
 }
-#if LANG_CXX11
-inline void SaslMessage::set_data(::std::string&& value) {
-  set_has_data();
-  data_.SetNoArena(
-    &::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
-  // @@protoc_insertion_point(field_set_rvalue:exec.shared.SaslMessage.data)
-}
-#endif
 inline void SaslMessage::set_data(const char* value) {
-  GOOGLE_DCHECK(value != NULL);
   set_has_data();
-  data_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
-  // @@protoc_insertion_point(field_set_char:exec.shared.SaslMessage.data)
+  if (data_ == &::google::protobuf::internal::kEmptyString) {
+    data_ = new ::std::string;
+  }
+  data_->assign(value);
 }
 inline void SaslMessage::set_data(const void* value, size_t size) {
   set_has_data();
-  data_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
-      ::std::string(reinterpret_cast<const char*>(value), size));
-  // @@protoc_insertion_point(field_set_pointer:exec.shared.SaslMessage.data)
+  if (data_ == &::google::protobuf::internal::kEmptyString) {
+    data_ = new ::std::string;
+  }
+  data_->assign(reinterpret_cast<const char*>(value), size);
 }
 inline ::std::string* SaslMessage::mutable_data() {
   set_has_data();
-  // @@protoc_insertion_point(field_mutable:exec.shared.SaslMessage.data)
-  return data_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (data_ == &::google::protobuf::internal::kEmptyString) {
+    data_ = new ::std::string;
+  }
+  return data_;
 }
 inline ::std::string* SaslMessage::release_data() {
-  // @@protoc_insertion_point(field_release:exec.shared.SaslMessage.data)
-  if (!has_data()) {
-    return NULL;
-  }
   clear_has_data();
-  return data_.ReleaseNonDefaultNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
+  if (data_ == &::google::protobuf::internal::kEmptyString) {
+    return NULL;
+  } else {
+    ::std::string* temp = data_;
+    data_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
+    return temp;
+  }
 }
 inline void SaslMessage::set_allocated_data(::std::string* data) {
-  if (data != NULL) {
+  if (data_ != &::google::protobuf::internal::kEmptyString) {
+    delete data_;
+  }
+  if (data) {
     set_has_data();
+    data_ = data;
   } else {
     clear_has_data();
+    data_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
   }
-  data_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), data);
-  // @@protoc_insertion_point(field_set_allocated:exec.shared.SaslMessage.data)
 }
 
 // optional .exec.shared.SaslStatus status = 3;
@@ -8556,114 +7256,61 @@
   clear_has_status();
 }
 inline ::exec::shared::SaslStatus SaslMessage::status() const {
-  // @@protoc_insertion_point(field_get:exec.shared.SaslMessage.status)
   return static_cast< ::exec::shared::SaslStatus >(status_);
 }
 inline void SaslMessage::set_status(::exec::shared::SaslStatus value) {
   assert(::exec::shared::SaslStatus_IsValid(value));
   set_has_status();
   status_ = value;
-  // @@protoc_insertion_point(field_set:exec.shared.SaslMessage.status)
 }
 
-#ifdef __GNUC__
-  #pragma GCC diagnostic pop
-#endif  // __GNUC__
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
-// -------------------------------------------------------------------
-
 
 // @@protoc_insertion_point(namespace_scope)
 
 }  // namespace shared
 }  // namespace exec
 
+#ifndef SWIG
 namespace google {
 namespace protobuf {
 
-template <> struct is_proto_enum< ::exec::shared::DrillPBError_ErrorType> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::shared::DrillPBError_ErrorType>() {
   return ::exec::shared::DrillPBError_ErrorType_descriptor();
 }
-template <> struct is_proto_enum< ::exec::shared::NamePart_Type> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::shared::NamePart_Type>() {
   return ::exec::shared::NamePart_Type_descriptor();
 }
-template <> struct is_proto_enum< ::exec::shared::QueryResult_QueryState> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::shared::QueryResult_QueryState>() {
   return ::exec::shared::QueryResult_QueryState_descriptor();
 }
-template <> struct is_proto_enum< ::exec::shared::RpcChannel> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::shared::RpcChannel>() {
   return ::exec::shared::RpcChannel_descriptor();
 }
-template <> struct is_proto_enum< ::exec::shared::QueryType> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::shared::QueryType>() {
   return ::exec::shared::QueryType_descriptor();
 }
-template <> struct is_proto_enum< ::exec::shared::FragmentState> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::shared::FragmentState>() {
   return ::exec::shared::FragmentState_descriptor();
 }
-template <> struct is_proto_enum< ::exec::shared::CoreOperatorType> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::shared::CoreOperatorType>() {
   return ::exec::shared::CoreOperatorType_descriptor();
 }
-template <> struct is_proto_enum< ::exec::shared::SaslStatus> : ::std::true_type {};
 template <>
 inline const EnumDescriptor* GetEnumDescriptor< ::exec::shared::SaslStatus>() {
   return ::exec::shared::SaslStatus_descriptor();
 }
 
-}  // namespace protobuf
 }  // namespace google
+}  // namespace protobuf
+#endif  // SWIG
 
 // @@protoc_insertion_point(global_scope)
 
-#endif  // PROTOBUF_INCLUDED_UserBitShared_2eproto
+#endif  // PROTOBUF_UserBitShared_2eproto__INCLUDED
diff --git a/contrib/storage-hbase/src/test/java/org/apache/drill/hbase/HBaseTestsSuite.java b/contrib/storage-hbase/src/test/java/org/apache/drill/hbase/HBaseTestsSuite.java
index 5cd4d3d..ef70131 100644
--- a/contrib/storage-hbase/src/test/java/org/apache/drill/hbase/HBaseTestsSuite.java
+++ b/contrib/storage-hbase/src/test/java/org/apache/drill/hbase/HBaseTestsSuite.java
@@ -23,7 +23,6 @@
 
 import org.apache.drill.exec.ZookeeperTestUtil;
 import org.apache.drill.exec.util.GuavaPatcher;
-import org.apache.drill.exec.util.ProtobufPatcher;
 import org.apache.drill.hbase.test.Drill2130StorageHBaseHamcrestConfigurationTest;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hbase.HBaseConfiguration;
@@ -57,7 +56,6 @@
   static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(HBaseTestsSuite.class);
 
   static {
-    ProtobufPatcher.patch();
     GuavaPatcher.patch();
   }
 
diff --git a/contrib/storage-hive/hive-exec-shade/pom.xml b/contrib/storage-hive/hive-exec-shade/pom.xml
index b7be65d..824f9a4 100644
--- a/contrib/storage-hive/hive-exec-shade/pom.xml
+++ b/contrib/storage-hive/hive-exec-shade/pom.xml
@@ -142,10 +142,6 @@
               <pattern>org.apache.avro.</pattern>
               <shadedPattern>hive.org.apache.avro.</shadedPattern>
             </relocation>
-            <relocation>
-              <pattern>com.google.protobuf.</pattern>
-              <shadedPattern>hive.com.google.protobuf.</shadedPattern>
-            </relocation>
           </relocations>
           <filters>
             <filter>
diff --git a/exec/java-exec/pom.xml b/exec/java-exec/pom.xml
index 1d0cb75..6baea24 100644
--- a/exec/java-exec/pom.xml
+++ b/exec/java-exec/pom.xml
@@ -319,6 +319,7 @@
     <dependency>
       <groupId>com.google.protobuf</groupId>
       <artifactId>protobuf-java</artifactId>
+      <version>2.5.0</version>
     </dependency>
     <dependency>
       <groupId>org.mortbay.jetty</groupId>
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/server/Drillbit.java b/exec/java-exec/src/main/java/org/apache/drill/exec/server/Drillbit.java
index 215fbb0..9839655 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/server/Drillbit.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/server/Drillbit.java
@@ -47,7 +47,6 @@
 import org.apache.drill.exec.store.sys.store.provider.InMemoryStoreProvider;
 import org.apache.drill.exec.store.sys.store.provider.LocalPersistentStoreProvider;
 import org.apache.drill.exec.util.GuavaPatcher;
-import org.apache.drill.exec.util.ProtobufPatcher;
 import org.apache.drill.exec.work.WorkManager;
 import org.apache.drill.shaded.guava.com.google.common.annotations.VisibleForTesting;
 import org.apache.drill.shaded.guava.com.google.common.base.Stopwatch;
@@ -74,12 +73,6 @@
 
   static {
     /*
-     * HBase and MapR-DB clients use older version of protobuf,
-     * and override some methods that became final in recent versions.
-     * This code removes these final modifiers.
-     */
-    ProtobufPatcher.patch();
-    /*
      * HBase client uses older version of Guava's Stopwatch API,
      * while Drill ships with 18.x which has changes the scope of
      * these API to 'package', this code make them accessible.
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/util/ProtobufPatcher.java b/exec/java-exec/src/main/java/org/apache/drill/exec/util/ProtobufPatcher.java
deleted file mode 100644
index 77144ae..0000000
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/util/ProtobufPatcher.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.drill.exec.util;
-
-import javassist.CannotCompileException;
-import javassist.ClassPool;
-import javassist.CtClass;
-import javassist.CtMethod;
-import javassist.CtNewConstructor;
-import javassist.CtNewMethod;
-import javassist.Modifier;
-import javassist.NotFoundException;
-
-public class ProtobufPatcher {
-
-  private static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(ProtobufPatcher.class);
-
-  private static volatile boolean patchingAttempted = false;
-
-  /**
-   * Makes protobuf version 3.6+ compatible to libraries that still use protobuf 2.5.0.
-   */
-  public static synchronized void patch() {
-    if (!patchingAttempted) {
-      try {
-        patchingAttempted = true;
-        patchByteString();
-        patchGeneratedMessageLite();
-        patchGeneratedMessageLiteBuilder();
-      } catch (Exception e) {
-        logger.warn("Unable to patch Protobuf.", e);
-      }
-    }
-  }
-
-  /**
-   * HBase client overrides methods from {@link com.google.protobuf.ByteString},
-   * that were made final in version 3.6+ of protobuf.
-   * This method removes the final modifiers. It also creates and loads classes
-   * that were made private nested in protobuf 3.6+ to be accessible by the old fully qualified name.
-   *
-   * @throws NotFoundException if unable to find a method or class to patch.
-   * @throws CannotCompileException if unable to compile the patched class.
-   */
-  private static void patchByteString() throws NotFoundException, CannotCompileException {
-    ClassPool classPool = ClassPool.getDefault();
-    CtClass byteString = classPool.get("com.google.protobuf.ByteString");
-    removeFinal(byteString.getDeclaredMethod("toString"));
-    removeFinal(byteString.getDeclaredMethod("hashCode"));
-    removeFinal(byteString.getDeclaredMethod("iterator"));
-
-    // Need to inherit from these classes to make them accessible by the old path.
-    CtClass googleLiteralByteString = classPool.get("com.google.protobuf.ByteString$LiteralByteString");
-    removePrivate(googleLiteralByteString);
-    CtClass googleBoundedByteString = classPool.get("com.google.protobuf.ByteString$BoundedByteString");
-    removePrivate(googleBoundedByteString);
-    removeFinal(googleBoundedByteString);
-    for (CtMethod ctMethod : googleLiteralByteString.getDeclaredMethods()) {
-      removeFinal(ctMethod);
-    }
-    byteString.toClass();
-    googleLiteralByteString.toClass();
-    googleBoundedByteString.toClass();
-
-    // Adding the classes back to the old path.
-    CtClass literalByteString = classPool.makeClass("com.google.protobuf.LiteralByteString");
-    literalByteString.setSuperclass(googleLiteralByteString);
-    literalByteString.toClass();
-    CtClass boundedByteString = classPool.makeClass("com.google.protobuf.BoundedByteString");
-    boundedByteString.setSuperclass(googleBoundedByteString);
-    boundedByteString.toClass();
-  }
-
-  /**
-   * MapR-DB client extends {@link com.google.protobuf.GeneratedMessageLite} and overrides some methods,
-   * that were made final in version 3.6+ of protobuf.
-   * This method removes the final modifiers.
-   *
-   * @throws NotFoundException if unable to find a method or class to patch.
-   * @throws CannotCompileException if unable to compile the patched method body.
-   */
-  private static void patchGeneratedMessageLite() throws NotFoundException, CannotCompileException {
-    ClassPool classPool = ClassPool.getDefault();
-    CtClass generatedMessageLite = classPool.get("com.google.protobuf.GeneratedMessageLite");
-    removeFinal(generatedMessageLite.getDeclaredMethod("getParserForType"));
-    removeFinal(generatedMessageLite.getDeclaredMethod("isInitialized"));
-
-    // The method was removed, but it is used in com.mapr.fs.proto.Dbserver.
-    // Adding it back.
-    generatedMessageLite.addMethod(CtNewMethod.make("protected void makeExtensionsImmutable() { }", generatedMessageLite));
-
-    // A constructor with this signature was removed. Adding it back.
-    generatedMessageLite.addConstructor(CtNewConstructor.make("protected GeneratedMessageLite(com.google.protobuf.GeneratedMessageLite.Builder builder) { }", generatedMessageLite));
-
-    // This single method was added instead of several abstract methods.
-    // MapR-DB client doesn't use it, but it was added in overridden equals() method.
-    // Adding default implementation.
-    CtMethod dynamicMethod = generatedMessageLite.getDeclaredMethod("dynamicMethod", new CtClass[] {
-        classPool.get("com.google.protobuf.GeneratedMessageLite$MethodToInvoke"),
-        classPool.get("java.lang.Object"),
-        classPool.get("java.lang.Object")});
-    addImplementation(dynamicMethod, "if ($1.equals(com.google.protobuf.GeneratedMessageLite.MethodToInvoke.GET_DEFAULT_INSTANCE)) {" +
-                                  "  return this;" +
-                                  "} else {" +
-                                  "  return null;" +
-                                  "}");
-    generatedMessageLite.toClass();
-  }
-
-  /**
-   * MapR-DB client extends {@link com.google.protobuf.GeneratedMessageLite.Builder} and overrides some methods,
-   * that were made final in version 3.6+ of protobuf.
-   * This method removes the final modifiers.
-   * Also, adding back a default constructor that was removed.
-   *
-   * @throws NotFoundException if unable to find a method or class to patch.
-   * @throws CannotCompileException if unable to add a default constructor.
-   */
-  private static void patchGeneratedMessageLiteBuilder() throws NotFoundException, CannotCompileException {
-    ClassPool classPool = ClassPool.getDefault();
-    CtClass builder = classPool.get("com.google.protobuf.GeneratedMessageLite$Builder");
-    removeFinal(builder.getDeclaredMethod("isInitialized"));
-    removeFinal(builder.getDeclaredMethod("clear"));
-    builder.addConstructor(CtNewConstructor.defaultConstructor(builder));
-    builder.toClass();
-  }
-
-  /**
-   * Removes final modifier from a given method.
-   *
-   * @param ctMethod method which need to be non-final.
-   */
-  private static void removeFinal(CtMethod ctMethod) {
-    int modifiers = Modifier.clear(ctMethod.getModifiers(), Modifier.FINAL);
-    ctMethod.setModifiers(modifiers);
-  }
-
-  /**
-   * Removes final modifier from a given class.
-   *
-   * @param ctClass method which need to be non-final.
-   */
-  private static void removeFinal(CtClass ctClass) {
-    int modifiers = Modifier.clear(ctClass.getModifiers(), Modifier.FINAL);
-    ctClass.setModifiers(modifiers);
-  }
-
-  /**
-   * Removes private modifier from a given class
-   *
-   * @param ctClass class which need to be non-private.
-   */
-  private static void removePrivate(CtClass ctClass) {
-    int modifiers = Modifier.clear(ctClass.getModifiers(), Modifier.PRIVATE);
-    ctClass.setModifiers(modifiers);
-  }
-
-  /**
-   * Removes abstract modifier and adds implementation to a given method.
-   *
-   * @param ctMethod method to process.
-   * @param methodBody method implementation.
-   * @throws CannotCompileException if unable to compile given method body.
-   */
-  private static void addImplementation(CtMethod ctMethod, String methodBody) throws CannotCompileException {
-    ctMethod.setBody(methodBody);
-    int modifiers = Modifier.clear(ctMethod.getModifiers(), Modifier.ABSTRACT);
-    ctMethod.setModifiers(modifiers);
-  }
-}
diff --git a/exec/rpc/pom.xml b/exec/rpc/pom.xml
index 26f0b99..7d57741 100644
--- a/exec/rpc/pom.xml
+++ b/exec/rpc/pom.xml
@@ -49,6 +49,7 @@
     <dependency>
       <groupId>com.google.protobuf</groupId>
       <artifactId>protobuf-java</artifactId>
+      <version>2.5.0</version>
     </dependency>
     <dependency>
       <groupId>io.netty</groupId>
diff --git a/exec/vector/pom.xml b/exec/vector/pom.xml
index 0fd4fb8..ff3e561 100644
--- a/exec/vector/pom.xml
+++ b/exec/vector/pom.xml
@@ -66,6 +66,7 @@
     <dependency>
       <groupId>com.google.protobuf</groupId>
       <artifactId>protobuf-java</artifactId>
+      <version>2.5.0</version>
     </dependency>
     <dependency>
       <groupId>com.carrotsearch</groupId>
diff --git a/pom.xml b/pom.xml
index 00e7728..4eb878b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -99,7 +99,6 @@
     <commons.net.version>3.6</commons.net.version>
     <commons.validator.version>1.6</commons.validator.version>
     <commons.text.version>1.6</commons.text.version>
-    <protobuf.version>3.6.1</protobuf.version>
   </properties>
 
   <scm>
@@ -1770,11 +1769,6 @@
         <artifactId>commons-text</artifactId>
         <version>${commons.text.version}</version>
       </dependency>
-      <dependency>
-        <groupId>com.google.protobuf</groupId>
-        <artifactId>protobuf-java</artifactId>
-        <version>${protobuf.version}</version>
-      </dependency>
     </dependencies>
   </dependencyManagement>
 
diff --git a/protocol/pom.xml b/protocol/pom.xml
index b2c9be8..a98254d 100644
--- a/protocol/pom.xml
+++ b/protocol/pom.xml
@@ -35,6 +35,7 @@
     <dependency>
       <groupId>com.google.protobuf</groupId>
       <artifactId>protobuf-java</artifactId>
+      <version>2.5.0</version>
     </dependency>
     <dependency>
       <groupId>com.dyuproject.protostuff</groupId>
diff --git a/protocol/readme.txt b/protocol/readme.txt
index 8cfd668..db07425 100644
--- a/protocol/readme.txt
+++ b/protocol/readme.txt
@@ -4,7 +4,7 @@
 

 To regenerate the sources after making changes to .proto files

 ---------------------------------------------------------------

-1. Ensure that the protobuf 'protoc' tool (version 3.6.1 or newer (but 3.x series)) is

+1. Ensure that the protobuf 'protoc' tool (version 2.5 or newer (but 2.x series)) is

 in your PATH (you may need to download and build it first). You can 

 download it from http://code.google.com/p/protobuf/downloads/list.

 

@@ -14,7 +14,7 @@
                  Command: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

 

               b) Download and install "protoc"

-                 Command: brew install protobuf361  --- installs protobuf for version 3.6.1

+                 Command: brew install protobuf250  --- installs protobuf for version 2.5.0

                           brew install protobuf     --- installs latest protobuf version

 

               c) Check the version of "protoc"

@@ -24,13 +24,13 @@
 

 2. In protocol dir, run "mvn process-sources -P proto-compile" or "mvn clean install -P proto-compile".

 

-3. Check in the new/updated files.

-

----------------------------------------------------------------

-If changes are made to the DrillClient's protobuf, you would need to regenerate the sources for the C++ client as well.

-Steps for regenerating the sources are available https://github.com/apache/drill/blob/master/contrib/native/client/

-

-You can use any of the following platforms specified in the above location to regenerate the protobuf sources:

-readme.linux	: Regenerating on Linux

-readme.macos	: Regenerating on MacOS

-readme.win.txt	: Regenerating on Windows

+3. Check in the new/updated files.
+
+---------------------------------------------------------------
+If changes are made to the DrillClient's protobuf, you would need to regenerate the sources for the C++ client as well.
+Steps for regenerating the sources are available https://github.com/apache/drill/blob/master/contrib/native/client/
+
+You can use any of the following platforms specified in the above location to regenerate the protobuf sources:
+readme.linux	: Regenerating on Linux
+readme.macos	: Regenerating on MacOS
+readme.win.txt	: Regenerating on Windows
diff --git a/protocol/src/main/java/org/apache/drill/common/types/TypeProtos.java b/protocol/src/main/java/org/apache/drill/common/types/TypeProtos.java
index 8bbe28b..c22b135 100644
--- a/protocol/src/main/java/org/apache/drill/common/types/TypeProtos.java
+++ b/protocol/src/main/java/org/apache/drill/common/types/TypeProtos.java
@@ -23,13 +23,7 @@
 public final class TypeProtos {
   private TypeProtos() {}
   public static void registerAllExtensions(
-      com.google.protobuf.ExtensionRegistryLite registry) {
-  }
-
-  public static void registerAllExtensions(
       com.google.protobuf.ExtensionRegistry registry) {
-    registerAllExtensions(
-        (com.google.protobuf.ExtensionRegistryLite) registry);
   }
   /**
    * Protobuf enum {@code common.MinorType}
@@ -37,472 +31,472 @@
   public enum MinorType
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>LATE = 0;</code>
+     *
      * <pre>
      *  late binding type
      * </pre>
-     *
-     * <code>LATE = 0;</code>
      */
-    LATE(0),
+    LATE(0, 0),
     /**
+     * <code>MAP = 1;</code>
+     *
      * <pre>
      *  an empty map column.  Useful for conceptual setup.  Children listed within here
      * </pre>
-     *
-     * <code>MAP = 1;</code>
      */
-    MAP(1),
+    MAP(1, 1),
     /**
+     * <code>TINYINT = 3;</code>
+     *
      * <pre>
      *  single byte signed integer
      * </pre>
-     *
-     * <code>TINYINT = 3;</code>
      */
-    TINYINT(3),
+    TINYINT(2, 3),
     /**
+     * <code>SMALLINT = 4;</code>
+     *
      * <pre>
      *  two byte signed integer
      * </pre>
-     *
-     * <code>SMALLINT = 4;</code>
      */
-    SMALLINT(4),
+    SMALLINT(3, 4),
     /**
+     * <code>INT = 5;</code>
+     *
      * <pre>
      *  four byte signed integer
      * </pre>
-     *
-     * <code>INT = 5;</code>
      */
-    INT(5),
+    INT(4, 5),
     /**
+     * <code>BIGINT = 6;</code>
+     *
      * <pre>
      *  eight byte signed integer
      * </pre>
-     *
-     * <code>BIGINT = 6;</code>
      */
-    BIGINT(6),
+    BIGINT(5, 6),
     /**
+     * <code>DECIMAL9 = 7;</code>
+     *
      * <pre>
      *  a decimal supporting precision between 1 and 9
      * </pre>
-     *
-     * <code>DECIMAL9 = 7;</code>
      */
-    DECIMAL9(7),
+    DECIMAL9(6, 7),
     /**
+     * <code>DECIMAL18 = 8;</code>
+     *
      * <pre>
      *  a decimal supporting precision between 10 and 18
      * </pre>
-     *
-     * <code>DECIMAL18 = 8;</code>
      */
-    DECIMAL18(8),
+    DECIMAL18(7, 8),
     /**
+     * <code>DECIMAL28SPARSE = 9;</code>
+     *
      * <pre>
      *  a decimal supporting precision between 19 and 28
      * </pre>
-     *
-     * <code>DECIMAL28SPARSE = 9;</code>
      */
-    DECIMAL28SPARSE(9),
+    DECIMAL28SPARSE(8, 9),
     /**
+     * <code>DECIMAL38SPARSE = 10;</code>
+     *
      * <pre>
      *  a decimal supporting precision between 29 and 38
      * </pre>
-     *
-     * <code>DECIMAL38SPARSE = 10;</code>
      */
-    DECIMAL38SPARSE(10),
+    DECIMAL38SPARSE(9, 10),
     /**
+     * <code>MONEY = 11;</code>
+     *
      * <pre>
      *  signed decimal with two digit precision
      * </pre>
-     *
-     * <code>MONEY = 11;</code>
      */
-    MONEY(11),
+    MONEY(10, 11),
     /**
+     * <code>DATE = 12;</code>
+     *
      * <pre>
      *  days since 4713bc
      * </pre>
-     *
-     * <code>DATE = 12;</code>
      */
-    DATE(12),
+    DATE(11, 12),
     /**
+     * <code>TIME = 13;</code>
+     *
      * <pre>
      *  time in micros before or after 2000/1/1
      * </pre>
-     *
-     * <code>TIME = 13;</code>
      */
-    TIME(13),
+    TIME(12, 13),
     /**
+     * <code>TIMETZ = 14;</code>
+     *
      * <pre>
      *  time in micros before or after 2000/1/1 with timezone
      * </pre>
-     *
-     * <code>TIMETZ = 14;</code>
      */
-    TIMETZ(14),
+    TIMETZ(13, 14),
     /**
+     * <code>TIMESTAMPTZ = 15;</code>
+     *
      * <pre>
      *  unix epoch time in millis
      * </pre>
-     *
-     * <code>TIMESTAMPTZ = 15;</code>
      */
-    TIMESTAMPTZ(15),
+    TIMESTAMPTZ(14, 15),
     /**
-     * <pre>
-     *  TBD
-     * </pre>
-     *
      * <code>TIMESTAMP = 16;</code>
-     */
-    TIMESTAMP(16),
-    /**
+     *
      * <pre>
      *  TBD
      * </pre>
-     *
-     * <code>INTERVAL = 17;</code>
      */
-    INTERVAL(17),
+    TIMESTAMP(15, 16),
     /**
+     * <code>INTERVAL = 17;</code>
+     *
+     * <pre>
+     *  TBD
+     * </pre>
+     */
+    INTERVAL(16, 17),
+    /**
+     * <code>FLOAT4 = 18;</code>
+     *
      * <pre>
      *  4 byte ieee 754
      * </pre>
-     *
-     * <code>FLOAT4 = 18;</code>
      */
-    FLOAT4(18),
+    FLOAT4(17, 18),
     /**
+     * <code>FLOAT8 = 19;</code>
+     *
      * <pre>
      *  8 byte ieee 754
      * </pre>
-     *
-     * <code>FLOAT8 = 19;</code>
      */
-    FLOAT8(19),
+    FLOAT8(18, 19),
     /**
+     * <code>BIT = 20;</code>
+     *
      * <pre>
      *  single bit value (boolean)
      * </pre>
-     *
-     * <code>BIT = 20;</code>
      */
-    BIT(20),
+    BIT(19, 20),
     /**
+     * <code>FIXEDCHAR = 21;</code>
+     *
      * <pre>
      *  utf8 fixed length string, padded with spaces
      * </pre>
-     *
-     * <code>FIXEDCHAR = 21;</code>
      */
-    FIXEDCHAR(21),
+    FIXEDCHAR(20, 21),
     /**
      * <code>FIXED16CHAR = 22;</code>
      */
-    FIXED16CHAR(22),
+    FIXED16CHAR(21, 22),
     /**
+     * <code>FIXEDBINARY = 23;</code>
+     *
      * <pre>
      *  fixed length binary, padded with 0 bytes
      * </pre>
-     *
-     * <code>FIXEDBINARY = 23;</code>
      */
-    FIXEDBINARY(23),
+    FIXEDBINARY(22, 23),
     /**
+     * <code>VARCHAR = 24;</code>
+     *
      * <pre>
      *  utf8 variable length string
      * </pre>
-     *
-     * <code>VARCHAR = 24;</code>
      */
-    VARCHAR(24),
+    VARCHAR(23, 24),
     /**
+     * <code>VAR16CHAR = 25;</code>
+     *
      * <pre>
      * utf16 variable length string
      * </pre>
-     *
-     * <code>VAR16CHAR = 25;</code>
      */
-    VAR16CHAR(25),
+    VAR16CHAR(24, 25),
     /**
+     * <code>VARBINARY = 26;</code>
+     *
      * <pre>
      *  variable length binary
      * </pre>
-     *
-     * <code>VARBINARY = 26;</code>
      */
-    VARBINARY(26),
+    VARBINARY(25, 26),
     /**
+     * <code>UINT1 = 29;</code>
+     *
      * <pre>
      *  unsigned 1 byte integer
      * </pre>
-     *
-     * <code>UINT1 = 29;</code>
      */
-    UINT1(29),
+    UINT1(26, 29),
     /**
+     * <code>UINT2 = 30;</code>
+     *
      * <pre>
      *  unsigned 2 byte integer
      * </pre>
-     *
-     * <code>UINT2 = 30;</code>
      */
-    UINT2(30),
+    UINT2(27, 30),
     /**
+     * <code>UINT4 = 31;</code>
+     *
      * <pre>
      *  unsigned 4 byte integer
      * </pre>
-     *
-     * <code>UINT4 = 31;</code>
      */
-    UINT4(31),
+    UINT4(28, 31),
     /**
+     * <code>UINT8 = 32;</code>
+     *
      * <pre>
      *  unsigned 8 byte integer
      * </pre>
-     *
-     * <code>UINT8 = 32;</code>
      */
-    UINT8(32),
+    UINT8(29, 32),
     /**
+     * <code>DECIMAL28DENSE = 33;</code>
+     *
      * <pre>
      * dense decimal representation, supporting precision between 19 and 28
      * </pre>
-     *
-     * <code>DECIMAL28DENSE = 33;</code>
      */
-    DECIMAL28DENSE(33),
+    DECIMAL28DENSE(30, 33),
     /**
+     * <code>DECIMAL38DENSE = 34;</code>
+     *
      * <pre>
      * dense decimal representation, supporting precision between 28 and 38
      * </pre>
-     *
-     * <code>DECIMAL38DENSE = 34;</code>
      */
-    DECIMAL38DENSE(34),
+    DECIMAL38DENSE(31, 34),
     /**
+     * <code>NULL = 37;</code>
+     *
      * <pre>
      *    PROTO2 = 33;   //  protobuf encoded complex type. (up to 2^16 in length)
      *    PROTO4 = 34;   //  protobuf encoded complex type. (up to 2^32 in length)
      *    MSGPACK2 = 35;   //  msgpack encoded complex type. (up to 2^16 in length)
      *    MSGPACK4 = 36;   //  msgpack encoded complex type. (up to 2^32 in length)
      * </pre>
-     *
-     * <code>NULL = 37;</code>
      */
-    NULL(37),
+    NULL(32, 37),
     /**
+     * <code>INTERVALYEAR = 38;</code>
+     *
      * <pre>
      * Interval type specifying YEAR to MONTH
      * </pre>
-     *
-     * <code>INTERVALYEAR = 38;</code>
      */
-    INTERVALYEAR(38),
+    INTERVALYEAR(33, 38),
     /**
+     * <code>INTERVALDAY = 39;</code>
+     *
      * <pre>
      * Interval type specifying DAY to SECONDS
      * </pre>
-     *
-     * <code>INTERVALDAY = 39;</code>
      */
-    INTERVALDAY(39),
+    INTERVALDAY(34, 39),
     /**
      * <code>LIST = 40;</code>
      */
-    LIST(40),
+    LIST(35, 40),
     /**
      * <code>GENERIC_OBJECT = 41;</code>
      */
-    GENERIC_OBJECT(41),
+    GENERIC_OBJECT(36, 41),
     /**
      * <code>UNION = 42;</code>
      */
-    UNION(42),
+    UNION(37, 42),
     /**
+     * <code>VARDECIMAL = 43;</code>
+     *
      * <pre>
      * variable width decimal (arbitrary precision)
      * </pre>
-     *
-     * <code>VARDECIMAL = 43;</code>
      */
-    VARDECIMAL(43),
+    VARDECIMAL(38, 43),
     ;
 
     /**
+     * <code>LATE = 0;</code>
+     *
      * <pre>
      *  late binding type
      * </pre>
-     *
-     * <code>LATE = 0;</code>
      */
     public static final int LATE_VALUE = 0;
     /**
+     * <code>MAP = 1;</code>
+     *
      * <pre>
      *  an empty map column.  Useful for conceptual setup.  Children listed within here
      * </pre>
-     *
-     * <code>MAP = 1;</code>
      */
     public static final int MAP_VALUE = 1;
     /**
+     * <code>TINYINT = 3;</code>
+     *
      * <pre>
      *  single byte signed integer
      * </pre>
-     *
-     * <code>TINYINT = 3;</code>
      */
     public static final int TINYINT_VALUE = 3;
     /**
+     * <code>SMALLINT = 4;</code>
+     *
      * <pre>
      *  two byte signed integer
      * </pre>
-     *
-     * <code>SMALLINT = 4;</code>
      */
     public static final int SMALLINT_VALUE = 4;
     /**
+     * <code>INT = 5;</code>
+     *
      * <pre>
      *  four byte signed integer
      * </pre>
-     *
-     * <code>INT = 5;</code>
      */
     public static final int INT_VALUE = 5;
     /**
+     * <code>BIGINT = 6;</code>
+     *
      * <pre>
      *  eight byte signed integer
      * </pre>
-     *
-     * <code>BIGINT = 6;</code>
      */
     public static final int BIGINT_VALUE = 6;
     /**
+     * <code>DECIMAL9 = 7;</code>
+     *
      * <pre>
      *  a decimal supporting precision between 1 and 9
      * </pre>
-     *
-     * <code>DECIMAL9 = 7;</code>
      */
     public static final int DECIMAL9_VALUE = 7;
     /**
+     * <code>DECIMAL18 = 8;</code>
+     *
      * <pre>
      *  a decimal supporting precision between 10 and 18
      * </pre>
-     *
-     * <code>DECIMAL18 = 8;</code>
      */
     public static final int DECIMAL18_VALUE = 8;
     /**
+     * <code>DECIMAL28SPARSE = 9;</code>
+     *
      * <pre>
      *  a decimal supporting precision between 19 and 28
      * </pre>
-     *
-     * <code>DECIMAL28SPARSE = 9;</code>
      */
     public static final int DECIMAL28SPARSE_VALUE = 9;
     /**
+     * <code>DECIMAL38SPARSE = 10;</code>
+     *
      * <pre>
      *  a decimal supporting precision between 29 and 38
      * </pre>
-     *
-     * <code>DECIMAL38SPARSE = 10;</code>
      */
     public static final int DECIMAL38SPARSE_VALUE = 10;
     /**
+     * <code>MONEY = 11;</code>
+     *
      * <pre>
      *  signed decimal with two digit precision
      * </pre>
-     *
-     * <code>MONEY = 11;</code>
      */
     public static final int MONEY_VALUE = 11;
     /**
+     * <code>DATE = 12;</code>
+     *
      * <pre>
      *  days since 4713bc
      * </pre>
-     *
-     * <code>DATE = 12;</code>
      */
     public static final int DATE_VALUE = 12;
     /**
+     * <code>TIME = 13;</code>
+     *
      * <pre>
      *  time in micros before or after 2000/1/1
      * </pre>
-     *
-     * <code>TIME = 13;</code>
      */
     public static final int TIME_VALUE = 13;
     /**
+     * <code>TIMETZ = 14;</code>
+     *
      * <pre>
      *  time in micros before or after 2000/1/1 with timezone
      * </pre>
-     *
-     * <code>TIMETZ = 14;</code>
      */
     public static final int TIMETZ_VALUE = 14;
     /**
+     * <code>TIMESTAMPTZ = 15;</code>
+     *
      * <pre>
      *  unix epoch time in millis
      * </pre>
-     *
-     * <code>TIMESTAMPTZ = 15;</code>
      */
     public static final int TIMESTAMPTZ_VALUE = 15;
     /**
+     * <code>TIMESTAMP = 16;</code>
+     *
      * <pre>
      *  TBD
      * </pre>
-     *
-     * <code>TIMESTAMP = 16;</code>
      */
     public static final int TIMESTAMP_VALUE = 16;
     /**
+     * <code>INTERVAL = 17;</code>
+     *
      * <pre>
      *  TBD
      * </pre>
-     *
-     * <code>INTERVAL = 17;</code>
      */
     public static final int INTERVAL_VALUE = 17;
     /**
+     * <code>FLOAT4 = 18;</code>
+     *
      * <pre>
      *  4 byte ieee 754
      * </pre>
-     *
-     * <code>FLOAT4 = 18;</code>
      */
     public static final int FLOAT4_VALUE = 18;
     /**
+     * <code>FLOAT8 = 19;</code>
+     *
      * <pre>
      *  8 byte ieee 754
      * </pre>
-     *
-     * <code>FLOAT8 = 19;</code>
      */
     public static final int FLOAT8_VALUE = 19;
     /**
+     * <code>BIT = 20;</code>
+     *
      * <pre>
      *  single bit value (boolean)
      * </pre>
-     *
-     * <code>BIT = 20;</code>
      */
     public static final int BIT_VALUE = 20;
     /**
+     * <code>FIXEDCHAR = 21;</code>
+     *
      * <pre>
      *  utf8 fixed length string, padded with spaces
      * </pre>
-     *
-     * <code>FIXEDCHAR = 21;</code>
      */
     public static final int FIXEDCHAR_VALUE = 21;
     /**
@@ -510,110 +504,110 @@
      */
     public static final int FIXED16CHAR_VALUE = 22;
     /**
+     * <code>FIXEDBINARY = 23;</code>
+     *
      * <pre>
      *  fixed length binary, padded with 0 bytes
      * </pre>
-     *
-     * <code>FIXEDBINARY = 23;</code>
      */
     public static final int FIXEDBINARY_VALUE = 23;
     /**
+     * <code>VARCHAR = 24;</code>
+     *
      * <pre>
      *  utf8 variable length string
      * </pre>
-     *
-     * <code>VARCHAR = 24;</code>
      */
     public static final int VARCHAR_VALUE = 24;
     /**
+     * <code>VAR16CHAR = 25;</code>
+     *
      * <pre>
      * utf16 variable length string
      * </pre>
-     *
-     * <code>VAR16CHAR = 25;</code>
      */
     public static final int VAR16CHAR_VALUE = 25;
     /**
+     * <code>VARBINARY = 26;</code>
+     *
      * <pre>
      *  variable length binary
      * </pre>
-     *
-     * <code>VARBINARY = 26;</code>
      */
     public static final int VARBINARY_VALUE = 26;
     /**
+     * <code>UINT1 = 29;</code>
+     *
      * <pre>
      *  unsigned 1 byte integer
      * </pre>
-     *
-     * <code>UINT1 = 29;</code>
      */
     public static final int UINT1_VALUE = 29;
     /**
+     * <code>UINT2 = 30;</code>
+     *
      * <pre>
      *  unsigned 2 byte integer
      * </pre>
-     *
-     * <code>UINT2 = 30;</code>
      */
     public static final int UINT2_VALUE = 30;
     /**
+     * <code>UINT4 = 31;</code>
+     *
      * <pre>
      *  unsigned 4 byte integer
      * </pre>
-     *
-     * <code>UINT4 = 31;</code>
      */
     public static final int UINT4_VALUE = 31;
     /**
+     * <code>UINT8 = 32;</code>
+     *
      * <pre>
      *  unsigned 8 byte integer
      * </pre>
-     *
-     * <code>UINT8 = 32;</code>
      */
     public static final int UINT8_VALUE = 32;
     /**
+     * <code>DECIMAL28DENSE = 33;</code>
+     *
      * <pre>
      * dense decimal representation, supporting precision between 19 and 28
      * </pre>
-     *
-     * <code>DECIMAL28DENSE = 33;</code>
      */
     public static final int DECIMAL28DENSE_VALUE = 33;
     /**
+     * <code>DECIMAL38DENSE = 34;</code>
+     *
      * <pre>
      * dense decimal representation, supporting precision between 28 and 38
      * </pre>
-     *
-     * <code>DECIMAL38DENSE = 34;</code>
      */
     public static final int DECIMAL38DENSE_VALUE = 34;
     /**
+     * <code>NULL = 37;</code>
+     *
      * <pre>
      *    PROTO2 = 33;   //  protobuf encoded complex type. (up to 2^16 in length)
      *    PROTO4 = 34;   //  protobuf encoded complex type. (up to 2^32 in length)
      *    MSGPACK2 = 35;   //  msgpack encoded complex type. (up to 2^16 in length)
      *    MSGPACK4 = 36;   //  msgpack encoded complex type. (up to 2^32 in length)
      * </pre>
-     *
-     * <code>NULL = 37;</code>
      */
     public static final int NULL_VALUE = 37;
     /**
+     * <code>INTERVALYEAR = 38;</code>
+     *
      * <pre>
      * Interval type specifying YEAR to MONTH
      * </pre>
-     *
-     * <code>INTERVALYEAR = 38;</code>
      */
     public static final int INTERVALYEAR_VALUE = 38;
     /**
+     * <code>INTERVALDAY = 39;</code>
+     *
      * <pre>
      * Interval type specifying DAY to SECONDS
      * </pre>
-     *
-     * <code>INTERVALDAY = 39;</code>
      */
     public static final int INTERVALDAY_VALUE = 39;
     /**
@@ -629,28 +623,18 @@
      */
     public static final int UNION_VALUE = 42;
     /**
+     * <code>VARDECIMAL = 43;</code>
+     *
      * <pre>
      * variable width decimal (arbitrary precision)
      * </pre>
-     *
-     * <code>VARDECIMAL = 43;</code>
      */
     public static final int VARDECIMAL_VALUE = 43;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static MinorType valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static MinorType forNumber(int value) {
       switch (value) {
         case 0: return LATE;
         case 1: return MAP;
@@ -699,17 +683,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        MinorType> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<MinorType>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<MinorType>() {
             public MinorType findValueByNumber(int number) {
-              return MinorType.forNumber(number);
+              return MinorType.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -731,9 +715,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private MinorType(int value) {
+    private MinorType(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -746,70 +732,60 @@
   public enum DataMode
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>OPTIONAL = 0;</code>
+     *
      * <pre>
      * nullable
      * </pre>
-     *
-     * <code>OPTIONAL = 0;</code>
      */
-    OPTIONAL(0),
+    OPTIONAL(0, 0),
     /**
+     * <code>REQUIRED = 1;</code>
+     *
      * <pre>
      * non-nullable
      * </pre>
-     *
-     * <code>REQUIRED = 1;</code>
      */
-    REQUIRED(1),
+    REQUIRED(1, 1),
     /**
+     * <code>REPEATED = 2;</code>
+     *
      * <pre>
      * single, repeated-field
      * </pre>
-     *
-     * <code>REPEATED = 2;</code>
      */
-    REPEATED(2),
+    REPEATED(2, 2),
     ;
 
     /**
+     * <code>OPTIONAL = 0;</code>
+     *
      * <pre>
      * nullable
      * </pre>
-     *
-     * <code>OPTIONAL = 0;</code>
      */
     public static final int OPTIONAL_VALUE = 0;
     /**
+     * <code>REQUIRED = 1;</code>
+     *
      * <pre>
      * non-nullable
      * </pre>
-     *
-     * <code>REQUIRED = 1;</code>
      */
     public static final int REQUIRED_VALUE = 1;
     /**
+     * <code>REPEATED = 2;</code>
+     *
      * <pre>
      * single, repeated-field
      * </pre>
-     *
-     * <code>REPEATED = 2;</code>
      */
     public static final int REPEATED_VALUE = 2;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static DataMode valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static DataMode forNumber(int value) {
       switch (value) {
         case 0: return OPTIONAL;
         case 1: return REQUIRED;
@@ -822,17 +798,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        DataMode> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<DataMode>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<DataMode>() {
             public DataMode findValueByNumber(int number) {
-              return DataMode.forNumber(number);
+              return DataMode.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -854,19 +830,21 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private DataMode(int value) {
+    private DataMode(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
     // @@protoc_insertion_point(enum_scope:common.DataMode)
   }
 
-  public interface MajorTypeOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:common.MajorType)
-      com.google.protobuf.MessageOrBuilder {
+  public interface MajorTypeOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .common.MinorType minor_type = 1;
     /**
      * <code>optional .common.MinorType minor_type = 1;</code>
      */
@@ -876,6 +854,7 @@
      */
     org.apache.drill.common.types.TypeProtos.MinorType getMinorType();
 
+    // optional .common.DataMode mode = 2;
     /**
      * <code>optional .common.DataMode mode = 2;</code>
      */
@@ -885,6 +864,7 @@
      */
     org.apache.drill.common.types.TypeProtos.DataMode getMode();
 
+    // optional int32 width = 3;
     /**
      * <code>optional int32 width = 3;</code>
      */
@@ -894,117 +874,119 @@
      */
     int getWidth();
 
+    // optional int32 precision = 4;
     /**
+     * <code>optional int32 precision = 4;</code>
+     *
      * <pre>
      * used for decimal types or as optional length for fixed size value
      * </pre>
-     *
-     * <code>optional int32 precision = 4;</code>
      */
     boolean hasPrecision();
     /**
+     * <code>optional int32 precision = 4;</code>
+     *
      * <pre>
      * used for decimal types or as optional length for fixed size value
      * </pre>
-     *
-     * <code>optional int32 precision = 4;</code>
      */
     int getPrecision();
 
+    // optional int32 scale = 5;
     /**
+     * <code>optional int32 scale = 5;</code>
+     *
      * <pre>
      * used for decimal types
      * </pre>
-     *
-     * <code>optional int32 scale = 5;</code>
      */
     boolean hasScale();
     /**
+     * <code>optional int32 scale = 5;</code>
+     *
      * <pre>
      * used for decimal types
      * </pre>
-     *
-     * <code>optional int32 scale = 5;</code>
      */
     int getScale();
 
+    // optional int32 timeZone = 6;
     /**
+     * <code>optional int32 timeZone = 6;</code>
+     *
      * <pre>
      * used by TimeStamp type
      * </pre>
-     *
-     * <code>optional int32 timeZone = 6;</code>
      */
     boolean hasTimeZone();
     /**
+     * <code>optional int32 timeZone = 6;</code>
+     *
      * <pre>
      * used by TimeStamp type
      * </pre>
-     *
-     * <code>optional int32 timeZone = 6;</code>
      */
     int getTimeZone();
 
+    // repeated .common.MinorType sub_type = 7;
     /**
+     * <code>repeated .common.MinorType sub_type = 7;</code>
+     *
      * <pre>
      * used by Union type
      * </pre>
-     *
-     * <code>repeated .common.MinorType sub_type = 7;</code>
      */
     java.util.List<org.apache.drill.common.types.TypeProtos.MinorType> getSubTypeList();
     /**
+     * <code>repeated .common.MinorType sub_type = 7;</code>
+     *
      * <pre>
      * used by Union type
      * </pre>
-     *
-     * <code>repeated .common.MinorType sub_type = 7;</code>
      */
     int getSubTypeCount();
     /**
+     * <code>repeated .common.MinorType sub_type = 7;</code>
+     *
      * <pre>
      * used by Union type
      * </pre>
-     *
-     * <code>repeated .common.MinorType sub_type = 7;</code>
      */
     org.apache.drill.common.types.TypeProtos.MinorType getSubType(int index);
   }
   /**
    * Protobuf type {@code common.MajorType}
    */
-  public  static final class MajorType extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:common.MajorType)
-      MajorTypeOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class MajorType extends
+      com.google.protobuf.GeneratedMessage
+      implements MajorTypeOrBuilder {
     // Use MajorType.newBuilder() to construct.
-    private MajorType(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private MajorType(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private MajorType() {
-      minorType_ = 0;
-      mode_ = 0;
-      width_ = 0;
-      precision_ = 0;
-      scale_ = 0;
-      timeZone_ = 0;
-      subType_ = java.util.Collections.emptyList();
+    private MajorType(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final MajorType defaultInstance;
+    public static MajorType getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public MajorType getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private MajorType(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -1016,27 +998,32 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.common.types.TypeProtos.MinorType value = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                minorType_ = rawValue;
+                minorType_ = value;
               }
               break;
             }
             case 16: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.common.types.TypeProtos.DataMode value = org.apache.drill.common.types.TypeProtos.DataMode.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(2, rawValue);
               } else {
                 bitField0_ |= 0x00000002;
-                mode_ = rawValue;
+                mode_ = value;
               }
               break;
             }
@@ -1062,16 +1049,15 @@
             }
             case 56: {
               int rawValue = input.readEnum();
-              @SuppressWarnings("deprecation")
               org.apache.drill.common.types.TypeProtos.MinorType value = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(7, rawValue);
               } else {
                 if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                  subType_ = new java.util.ArrayList<java.lang.Integer>();
+                  subType_ = new java.util.ArrayList<org.apache.drill.common.types.TypeProtos.MinorType>();
                   mutable_bitField0_ |= 0x00000040;
                 }
-                subType_.add(rawValue);
+                subType_.add(value);
               }
               break;
             }
@@ -1080,35 +1066,27 @@
               int oldLimit = input.pushLimit(length);
               while(input.getBytesUntilLimit() > 0) {
                 int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
                 org.apache.drill.common.types.TypeProtos.MinorType value = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(rawValue);
                 if (value == null) {
                   unknownFields.mergeVarintField(7, rawValue);
                 } else {
                   if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                    subType_ = new java.util.ArrayList<java.lang.Integer>();
+                    subType_ = new java.util.ArrayList<org.apache.drill.common.types.TypeProtos.MinorType>();
                     mutable_bitField0_ |= 0x00000040;
                   }
-                  subType_.add(rawValue);
+                  subType_.add(value);
                 }
               }
               input.popLimit(oldLimit);
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
           subType_ = java.util.Collections.unmodifiableList(subType_);
@@ -1122,17 +1100,32 @@
       return org.apache.drill.common.types.TypeProtos.internal_static_common_MajorType_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.common.types.TypeProtos.internal_static_common_MajorType_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.common.types.TypeProtos.MajorType.class, org.apache.drill.common.types.TypeProtos.MajorType.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<MajorType> PARSER =
+        new com.google.protobuf.AbstractParser<MajorType>() {
+      public MajorType parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new MajorType(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<MajorType> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .common.MinorType minor_type = 1;
     public static final int MINOR_TYPE_FIELD_NUMBER = 1;
-    private int minorType_;
+    private org.apache.drill.common.types.TypeProtos.MinorType minorType_;
     /**
      * <code>optional .common.MinorType minor_type = 1;</code>
      */
@@ -1143,13 +1136,12 @@
      * <code>optional .common.MinorType minor_type = 1;</code>
      */
     public org.apache.drill.common.types.TypeProtos.MinorType getMinorType() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.common.types.TypeProtos.MinorType result = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(minorType_);
-      return result == null ? org.apache.drill.common.types.TypeProtos.MinorType.LATE : result;
+      return minorType_;
     }
 
+    // optional .common.DataMode mode = 2;
     public static final int MODE_FIELD_NUMBER = 2;
-    private int mode_;
+    private org.apache.drill.common.types.TypeProtos.DataMode mode_;
     /**
      * <code>optional .common.DataMode mode = 2;</code>
      */
@@ -1160,11 +1152,10 @@
      * <code>optional .common.DataMode mode = 2;</code>
      */
     public org.apache.drill.common.types.TypeProtos.DataMode getMode() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.common.types.TypeProtos.DataMode result = org.apache.drill.common.types.TypeProtos.DataMode.valueOf(mode_);
-      return result == null ? org.apache.drill.common.types.TypeProtos.DataMode.OPTIONAL : result;
+      return mode_;
     }
 
+    // optional int32 width = 3;
     public static final int WIDTH_FIELD_NUMBER = 3;
     private int width_;
     /**
@@ -1180,138 +1171,138 @@
       return width_;
     }
 
+    // optional int32 precision = 4;
     public static final int PRECISION_FIELD_NUMBER = 4;
     private int precision_;
     /**
+     * <code>optional int32 precision = 4;</code>
+     *
      * <pre>
      * used for decimal types or as optional length for fixed size value
      * </pre>
-     *
-     * <code>optional int32 precision = 4;</code>
      */
     public boolean hasPrecision() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional int32 precision = 4;</code>
+     *
      * <pre>
      * used for decimal types or as optional length for fixed size value
      * </pre>
-     *
-     * <code>optional int32 precision = 4;</code>
      */
     public int getPrecision() {
       return precision_;
     }
 
+    // optional int32 scale = 5;
     public static final int SCALE_FIELD_NUMBER = 5;
     private int scale_;
     /**
+     * <code>optional int32 scale = 5;</code>
+     *
      * <pre>
      * used for decimal types
      * </pre>
-     *
-     * <code>optional int32 scale = 5;</code>
      */
     public boolean hasScale() {
       return ((bitField0_ & 0x00000010) == 0x00000010);
     }
     /**
+     * <code>optional int32 scale = 5;</code>
+     *
      * <pre>
      * used for decimal types
      * </pre>
-     *
-     * <code>optional int32 scale = 5;</code>
      */
     public int getScale() {
       return scale_;
     }
 
+    // optional int32 timeZone = 6;
     public static final int TIMEZONE_FIELD_NUMBER = 6;
     private int timeZone_;
     /**
+     * <code>optional int32 timeZone = 6;</code>
+     *
      * <pre>
      * used by TimeStamp type
      * </pre>
-     *
-     * <code>optional int32 timeZone = 6;</code>
      */
     public boolean hasTimeZone() {
       return ((bitField0_ & 0x00000020) == 0x00000020);
     }
     /**
+     * <code>optional int32 timeZone = 6;</code>
+     *
      * <pre>
      * used by TimeStamp type
      * </pre>
-     *
-     * <code>optional int32 timeZone = 6;</code>
      */
     public int getTimeZone() {
       return timeZone_;
     }
 
+    // repeated .common.MinorType sub_type = 7;
     public static final int SUB_TYPE_FIELD_NUMBER = 7;
-    private java.util.List<java.lang.Integer> subType_;
-    private static final com.google.protobuf.Internal.ListAdapter.Converter<
-        java.lang.Integer, org.apache.drill.common.types.TypeProtos.MinorType> subType_converter_ =
-            new com.google.protobuf.Internal.ListAdapter.Converter<
-                java.lang.Integer, org.apache.drill.common.types.TypeProtos.MinorType>() {
-              public org.apache.drill.common.types.TypeProtos.MinorType convert(java.lang.Integer from) {
-                @SuppressWarnings("deprecation")
-                org.apache.drill.common.types.TypeProtos.MinorType result = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(from);
-                return result == null ? org.apache.drill.common.types.TypeProtos.MinorType.LATE : result;
-              }
-            };
+    private java.util.List<org.apache.drill.common.types.TypeProtos.MinorType> subType_;
     /**
+     * <code>repeated .common.MinorType sub_type = 7;</code>
+     *
      * <pre>
      * used by Union type
      * </pre>
-     *
-     * <code>repeated .common.MinorType sub_type = 7;</code>
      */
     public java.util.List<org.apache.drill.common.types.TypeProtos.MinorType> getSubTypeList() {
-      return new com.google.protobuf.Internal.ListAdapter<
-          java.lang.Integer, org.apache.drill.common.types.TypeProtos.MinorType>(subType_, subType_converter_);
+      return subType_;
     }
     /**
+     * <code>repeated .common.MinorType sub_type = 7;</code>
+     *
      * <pre>
      * used by Union type
      * </pre>
-     *
-     * <code>repeated .common.MinorType sub_type = 7;</code>
      */
     public int getSubTypeCount() {
       return subType_.size();
     }
     /**
+     * <code>repeated .common.MinorType sub_type = 7;</code>
+     *
      * <pre>
      * used by Union type
      * </pre>
-     *
-     * <code>repeated .common.MinorType sub_type = 7;</code>
      */
     public org.apache.drill.common.types.TypeProtos.MinorType getSubType(int index) {
-      return subType_converter_.convert(subType_.get(index));
+      return subType_.get(index);
     }
 
+    private void initFields() {
+      minorType_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
+      mode_ = org.apache.drill.common.types.TypeProtos.DataMode.OPTIONAL;
+      width_ = 0;
+      precision_ = 0;
+      scale_ = 0;
+      timeZone_ = 0;
+      subType_ = java.util.Collections.emptyList();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, minorType_);
+        output.writeEnum(1, minorType_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeEnum(2, mode_);
+        output.writeEnum(2, mode_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeInt32(3, width_);
@@ -1326,24 +1317,24 @@
         output.writeInt32(6, timeZone_);
       }
       for (int i = 0; i < subType_.size(); i++) {
-        output.writeEnum(7, subType_.get(i));
+        output.writeEnum(7, subType_.get(i).getNumber());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, minorType_);
+          .computeEnumSize(1, minorType_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(2, mode_);
+          .computeEnumSize(2, mode_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
@@ -1365,111 +1356,23 @@
         int dataSize = 0;
         for (int i = 0; i < subType_.size(); i++) {
           dataSize += com.google.protobuf.CodedOutputStream
-            .computeEnumSizeNoTag(subType_.get(i));
+            .computeEnumSizeNoTag(subType_.get(i).getNumber());
         }
         size += dataSize;
         size += 1 * subType_.size();
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.common.types.TypeProtos.MajorType)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.common.types.TypeProtos.MajorType other = (org.apache.drill.common.types.TypeProtos.MajorType) obj;
-
-      boolean result = true;
-      result = result && (hasMinorType() == other.hasMinorType());
-      if (hasMinorType()) {
-        result = result && minorType_ == other.minorType_;
-      }
-      result = result && (hasMode() == other.hasMode());
-      if (hasMode()) {
-        result = result && mode_ == other.mode_;
-      }
-      result = result && (hasWidth() == other.hasWidth());
-      if (hasWidth()) {
-        result = result && (getWidth()
-            == other.getWidth());
-      }
-      result = result && (hasPrecision() == other.hasPrecision());
-      if (hasPrecision()) {
-        result = result && (getPrecision()
-            == other.getPrecision());
-      }
-      result = result && (hasScale() == other.hasScale());
-      if (hasScale()) {
-        result = result && (getScale()
-            == other.getScale());
-      }
-      result = result && (hasTimeZone() == other.hasTimeZone());
-      if (hasTimeZone()) {
-        result = result && (getTimeZone()
-            == other.getTimeZone());
-      }
-      result = result && subType_.equals(other.subType_);
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasMinorType()) {
-        hash = (37 * hash) + MINOR_TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + minorType_;
-      }
-      if (hasMode()) {
-        hash = (37 * hash) + MODE_FIELD_NUMBER;
-        hash = (53 * hash) + mode_;
-      }
-      if (hasWidth()) {
-        hash = (37 * hash) + WIDTH_FIELD_NUMBER;
-        hash = (53 * hash) + getWidth();
-      }
-      if (hasPrecision()) {
-        hash = (37 * hash) + PRECISION_FIELD_NUMBER;
-        hash = (53 * hash) + getPrecision();
-      }
-      if (hasScale()) {
-        hash = (37 * hash) + SCALE_FIELD_NUMBER;
-        hash = (53 * hash) + getScale();
-      }
-      if (hasTimeZone()) {
-        hash = (37 * hash) + TIMEZONE_FIELD_NUMBER;
-        hash = (53 * hash) + getTimeZone();
-      }
-      if (getSubTypeCount() > 0) {
-        hash = (37 * hash) + SUB_TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + subType_.hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.common.types.TypeProtos.MajorType parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.common.types.TypeProtos.MajorType parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.common.types.TypeProtos.MajorType parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -1493,59 +1396,46 @@
     }
     public static org.apache.drill.common.types.TypeProtos.MajorType parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.common.types.TypeProtos.MajorType parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.common.types.TypeProtos.MajorType parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.common.types.TypeProtos.MajorType parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.common.types.TypeProtos.MajorType parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.common.types.TypeProtos.MajorType parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.common.types.TypeProtos.MajorType prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -1553,16 +1443,14 @@
      * Protobuf type {@code common.MajorType}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:common.MajorType)
-        org.apache.drill.common.types.TypeProtos.MajorTypeOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.common.types.TypeProtos.MajorTypeOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.common.types.TypeProtos.internal_static_common_MajorType_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.common.types.TypeProtos.internal_static_common_MajorType_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -1575,21 +1463,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        minorType_ = 0;
+        minorType_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
         bitField0_ = (bitField0_ & ~0x00000001);
-        mode_ = 0;
+        mode_ = org.apache.drill.common.types.TypeProtos.DataMode.OPTIONAL;
         bitField0_ = (bitField0_ & ~0x00000002);
         width_ = 0;
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -1604,18 +1494,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.common.types.TypeProtos.internal_static_common_MajorType_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.common.types.TypeProtos.MajorType getDefaultInstanceForType() {
         return org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.common.types.TypeProtos.MajorType build() {
         org.apache.drill.common.types.TypeProtos.MajorType result = buildPartial();
         if (!result.isInitialized()) {
@@ -1624,7 +1515,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.common.types.TypeProtos.MajorType buildPartial() {
         org.apache.drill.common.types.TypeProtos.MajorType result = new org.apache.drill.common.types.TypeProtos.MajorType(this);
         int from_bitField0_ = bitField0_;
@@ -1663,39 +1553,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.common.types.TypeProtos.MajorType) {
           return mergeFrom((org.apache.drill.common.types.TypeProtos.MajorType)other);
@@ -1735,17 +1592,14 @@
           }
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -1755,7 +1609,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.common.types.TypeProtos.MajorType) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -1765,7 +1619,8 @@
       }
       private int bitField0_;
 
-      private int minorType_ = 0;
+      // optional .common.MinorType minor_type = 1;
+      private org.apache.drill.common.types.TypeProtos.MinorType minorType_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
       /**
        * <code>optional .common.MinorType minor_type = 1;</code>
        */
@@ -1776,9 +1631,7 @@
        * <code>optional .common.MinorType minor_type = 1;</code>
        */
       public org.apache.drill.common.types.TypeProtos.MinorType getMinorType() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.common.types.TypeProtos.MinorType result = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(minorType_);
-        return result == null ? org.apache.drill.common.types.TypeProtos.MinorType.LATE : result;
+        return minorType_;
       }
       /**
        * <code>optional .common.MinorType minor_type = 1;</code>
@@ -1788,7 +1641,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        minorType_ = value.getNumber();
+        minorType_ = value;
         onChanged();
         return this;
       }
@@ -1797,12 +1650,13 @@
        */
       public Builder clearMinorType() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        minorType_ = 0;
+        minorType_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
         onChanged();
         return this;
       }
 
-      private int mode_ = 0;
+      // optional .common.DataMode mode = 2;
+      private org.apache.drill.common.types.TypeProtos.DataMode mode_ = org.apache.drill.common.types.TypeProtos.DataMode.OPTIONAL;
       /**
        * <code>optional .common.DataMode mode = 2;</code>
        */
@@ -1813,9 +1667,7 @@
        * <code>optional .common.DataMode mode = 2;</code>
        */
       public org.apache.drill.common.types.TypeProtos.DataMode getMode() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.common.types.TypeProtos.DataMode result = org.apache.drill.common.types.TypeProtos.DataMode.valueOf(mode_);
-        return result == null ? org.apache.drill.common.types.TypeProtos.DataMode.OPTIONAL : result;
+        return mode_;
       }
       /**
        * <code>optional .common.DataMode mode = 2;</code>
@@ -1825,7 +1677,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000002;
-        mode_ = value.getNumber();
+        mode_ = value;
         onChanged();
         return this;
       }
@@ -1834,11 +1686,12 @@
        */
       public Builder clearMode() {
         bitField0_ = (bitField0_ & ~0x00000002);
-        mode_ = 0;
+        mode_ = org.apache.drill.common.types.TypeProtos.DataMode.OPTIONAL;
         onChanged();
         return this;
       }
 
+      // optional int32 width = 3;
       private int width_ ;
       /**
        * <code>optional int32 width = 3;</code>
@@ -1871,33 +1724,34 @@
         return this;
       }
 
+      // optional int32 precision = 4;
       private int precision_ ;
       /**
+       * <code>optional int32 precision = 4;</code>
+       *
        * <pre>
        * used for decimal types or as optional length for fixed size value
        * </pre>
-       *
-       * <code>optional int32 precision = 4;</code>
        */
       public boolean hasPrecision() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
+       * <code>optional int32 precision = 4;</code>
+       *
        * <pre>
        * used for decimal types or as optional length for fixed size value
        * </pre>
-       *
-       * <code>optional int32 precision = 4;</code>
        */
       public int getPrecision() {
         return precision_;
       }
       /**
+       * <code>optional int32 precision = 4;</code>
+       *
        * <pre>
        * used for decimal types or as optional length for fixed size value
        * </pre>
-       *
-       * <code>optional int32 precision = 4;</code>
        */
       public Builder setPrecision(int value) {
         bitField0_ |= 0x00000008;
@@ -1906,11 +1760,11 @@
         return this;
       }
       /**
+       * <code>optional int32 precision = 4;</code>
+       *
        * <pre>
        * used for decimal types or as optional length for fixed size value
        * </pre>
-       *
-       * <code>optional int32 precision = 4;</code>
        */
       public Builder clearPrecision() {
         bitField0_ = (bitField0_ & ~0x00000008);
@@ -1919,33 +1773,34 @@
         return this;
       }
 
+      // optional int32 scale = 5;
       private int scale_ ;
       /**
+       * <code>optional int32 scale = 5;</code>
+       *
        * <pre>
        * used for decimal types
        * </pre>
-       *
-       * <code>optional int32 scale = 5;</code>
        */
       public boolean hasScale() {
         return ((bitField0_ & 0x00000010) == 0x00000010);
       }
       /**
+       * <code>optional int32 scale = 5;</code>
+       *
        * <pre>
        * used for decimal types
        * </pre>
-       *
-       * <code>optional int32 scale = 5;</code>
        */
       public int getScale() {
         return scale_;
       }
       /**
+       * <code>optional int32 scale = 5;</code>
+       *
        * <pre>
        * used for decimal types
        * </pre>
-       *
-       * <code>optional int32 scale = 5;</code>
        */
       public Builder setScale(int value) {
         bitField0_ |= 0x00000010;
@@ -1954,11 +1809,11 @@
         return this;
       }
       /**
+       * <code>optional int32 scale = 5;</code>
+       *
        * <pre>
        * used for decimal types
        * </pre>
-       *
-       * <code>optional int32 scale = 5;</code>
        */
       public Builder clearScale() {
         bitField0_ = (bitField0_ & ~0x00000010);
@@ -1967,33 +1822,34 @@
         return this;
       }
 
+      // optional int32 timeZone = 6;
       private int timeZone_ ;
       /**
+       * <code>optional int32 timeZone = 6;</code>
+       *
        * <pre>
        * used by TimeStamp type
        * </pre>
-       *
-       * <code>optional int32 timeZone = 6;</code>
        */
       public boolean hasTimeZone() {
         return ((bitField0_ & 0x00000020) == 0x00000020);
       }
       /**
+       * <code>optional int32 timeZone = 6;</code>
+       *
        * <pre>
        * used by TimeStamp type
        * </pre>
-       *
-       * <code>optional int32 timeZone = 6;</code>
        */
       public int getTimeZone() {
         return timeZone_;
       }
       /**
+       * <code>optional int32 timeZone = 6;</code>
+       *
        * <pre>
        * used by TimeStamp type
        * </pre>
-       *
-       * <code>optional int32 timeZone = 6;</code>
        */
       public Builder setTimeZone(int value) {
         bitField0_ |= 0x00000020;
@@ -2002,11 +1858,11 @@
         return this;
       }
       /**
+       * <code>optional int32 timeZone = 6;</code>
+       *
        * <pre>
        * used by TimeStamp type
        * </pre>
-       *
-       * <code>optional int32 timeZone = 6;</code>
        */
       public Builder clearTimeZone() {
         bitField0_ = (bitField0_ & ~0x00000020);
@@ -2015,51 +1871,51 @@
         return this;
       }
 
-      private java.util.List<java.lang.Integer> subType_ =
+      // repeated .common.MinorType sub_type = 7;
+      private java.util.List<org.apache.drill.common.types.TypeProtos.MinorType> subType_ =
         java.util.Collections.emptyList();
       private void ensureSubTypeIsMutable() {
         if (!((bitField0_ & 0x00000040) == 0x00000040)) {
-          subType_ = new java.util.ArrayList<java.lang.Integer>(subType_);
+          subType_ = new java.util.ArrayList<org.apache.drill.common.types.TypeProtos.MinorType>(subType_);
           bitField0_ |= 0x00000040;
         }
       }
       /**
+       * <code>repeated .common.MinorType sub_type = 7;</code>
+       *
        * <pre>
        * used by Union type
        * </pre>
-       *
-       * <code>repeated .common.MinorType sub_type = 7;</code>
        */
       public java.util.List<org.apache.drill.common.types.TypeProtos.MinorType> getSubTypeList() {
-        return new com.google.protobuf.Internal.ListAdapter<
-            java.lang.Integer, org.apache.drill.common.types.TypeProtos.MinorType>(subType_, subType_converter_);
+        return java.util.Collections.unmodifiableList(subType_);
       }
       /**
+       * <code>repeated .common.MinorType sub_type = 7;</code>
+       *
        * <pre>
        * used by Union type
        * </pre>
-       *
-       * <code>repeated .common.MinorType sub_type = 7;</code>
        */
       public int getSubTypeCount() {
         return subType_.size();
       }
       /**
+       * <code>repeated .common.MinorType sub_type = 7;</code>
+       *
        * <pre>
        * used by Union type
        * </pre>
-       *
-       * <code>repeated .common.MinorType sub_type = 7;</code>
        */
       public org.apache.drill.common.types.TypeProtos.MinorType getSubType(int index) {
-        return subType_converter_.convert(subType_.get(index));
+        return subType_.get(index);
       }
       /**
+       * <code>repeated .common.MinorType sub_type = 7;</code>
+       *
        * <pre>
        * used by Union type
        * </pre>
-       *
-       * <code>repeated .common.MinorType sub_type = 7;</code>
        */
       public Builder setSubType(
           int index, org.apache.drill.common.types.TypeProtos.MinorType value) {
@@ -2067,48 +1923,46 @@
           throw new NullPointerException();
         }
         ensureSubTypeIsMutable();
-        subType_.set(index, value.getNumber());
+        subType_.set(index, value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .common.MinorType sub_type = 7;</code>
+       *
        * <pre>
        * used by Union type
        * </pre>
-       *
-       * <code>repeated .common.MinorType sub_type = 7;</code>
        */
       public Builder addSubType(org.apache.drill.common.types.TypeProtos.MinorType value) {
         if (value == null) {
           throw new NullPointerException();
         }
         ensureSubTypeIsMutable();
-        subType_.add(value.getNumber());
+        subType_.add(value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .common.MinorType sub_type = 7;</code>
+       *
        * <pre>
        * used by Union type
        * </pre>
-       *
-       * <code>repeated .common.MinorType sub_type = 7;</code>
        */
       public Builder addAllSubType(
           java.lang.Iterable<? extends org.apache.drill.common.types.TypeProtos.MinorType> values) {
         ensureSubTypeIsMutable();
-        for (org.apache.drill.common.types.TypeProtos.MinorType value : values) {
-          subType_.add(value.getNumber());
-        }
+        super.addAll(values, subType_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .common.MinorType sub_type = 7;</code>
+       *
        * <pre>
        * used by Union type
        * </pre>
-       *
-       * <code>repeated .common.MinorType sub_type = 7;</code>
        */
       public Builder clearSubType() {
         subType_ = java.util.Collections.emptyList();
@@ -2116,70 +1970,29 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:common.MajorType)
     }
 
-    // @@protoc_insertion_point(class_scope:common.MajorType)
-    private static final org.apache.drill.common.types.TypeProtos.MajorType DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.common.types.TypeProtos.MajorType();
+      defaultInstance = new MajorType(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.common.types.TypeProtos.MajorType getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<MajorType>
-        PARSER = new com.google.protobuf.AbstractParser<MajorType>() {
-      @java.lang.Override
-      public MajorType parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new MajorType(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<MajorType> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<MajorType> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.common.types.TypeProtos.MajorType getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:common.MajorType)
   }
 
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_common_MajorType_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_common_MajorType_fieldAccessorTable;
 
   public static com.google.protobuf.Descriptors.FileDescriptor
       getDescriptor() {
     return descriptor;
   }
-  private static  com.google.protobuf.Descriptors.FileDescriptor
+  private static com.google.protobuf.Descriptors.FileDescriptor
       descriptor;
   static {
     java.lang.String[] descriptorData = {
@@ -2192,7 +2005,7 @@
       "P\020\001\022\013\n\007TINYINT\020\003\022\014\n\010SMALLINT\020\004\022\007\n\003INT\020\005\022" +
       "\n\n\006BIGINT\020\006\022\014\n\010DECIMAL9\020\007\022\r\n\tDECIMAL18\020\010" +
       "\022\023\n\017DECIMAL28SPARSE\020\t\022\023\n\017DECIMAL38SPARSE" +
-      "\020\n\022\t\n\005MONEY\020\013\022\010\n\004DATE\020\014\022\010\n\004TIME\020\r\022\n\n\006TIM" +
+      "\020\n\022\t\n\005MONEY\020\013\022\010\n\004DATE\020\014\022\010\n\004TIME\020\r\022\n\n\006TIM",
       "ETZ\020\016\022\017\n\013TIMESTAMPTZ\020\017\022\r\n\tTIMESTAMP\020\020\022\014\n" +
       "\010INTERVAL\020\021\022\n\n\006FLOAT4\020\022\022\n\n\006FLOAT8\020\023\022\007\n\003B" +
       "IT\020\024\022\r\n\tFIXEDCHAR\020\025\022\017\n\013FIXED16CHAR\020\026\022\017\n\013" +
@@ -2202,28 +2015,28 @@
       "\022\022\n\016DECIMAL38DENSE\020\"\022\010\n\004NULL\020%\022\020\n\014INTERV" +
       "ALYEAR\020&\022\017\n\013INTERVALDAY\020\'\022\010\n\004LIST\020(\022\022\n\016G" +
       "ENERIC_OBJECT\020)\022\t\n\005UNION\020*\022\016\n\nVARDECIMAL" +
-      "\020+*4\n\010DataMode\022\014\n\010OPTIONAL\020\000\022\014\n\010REQUIRED" +
+      "\020+*4\n\010DataMode\022\014\n\010OPTIONAL\020\000\022\014\n\010REQUIRED",
       "\020\001\022\014\n\010REPEATED\020\002B-\n\035org.apache.drill.com" +
       "mon.typesB\nTypeProtosH\001"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
-        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
-          public com.google.protobuf.ExtensionRegistry assignDescriptors(
-              com.google.protobuf.Descriptors.FileDescriptor root) {
-            descriptor = root;
-            return null;
-          }
-        };
+      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
+        public com.google.protobuf.ExtensionRegistry assignDescriptors(
+            com.google.protobuf.Descriptors.FileDescriptor root) {
+          descriptor = root;
+          internal_static_common_MajorType_descriptor =
+            getDescriptor().getMessageTypes().get(0);
+          internal_static_common_MajorType_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_common_MajorType_descriptor,
+              new java.lang.String[] { "MinorType", "Mode", "Width", "Precision", "Scale", "TimeZone", "SubType", });
+          return null;
+        }
+      };
     com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
         new com.google.protobuf.Descriptors.FileDescriptor[] {
         }, assigner);
-    internal_static_common_MajorType_descriptor =
-      getDescriptor().getMessageTypes().get(0);
-    internal_static_common_MajorType_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_common_MajorType_descriptor,
-        new java.lang.String[] { "MinorType", "Mode", "Width", "Precision", "Scale", "TimeZone", "SubType", });
   }
 
   // @@protoc_insertion_point(outer_class_scope)
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/BitControl.java b/protocol/src/main/java/org/apache/drill/exec/proto/BitControl.java
index 3bf0c0a..e809692 100644
--- a/protocol/src/main/java/org/apache/drill/exec/proto/BitControl.java
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/BitControl.java
@@ -23,123 +23,117 @@
 public final class BitControl {
   private BitControl() {}
   public static void registerAllExtensions(
-      com.google.protobuf.ExtensionRegistryLite registry) {
-  }
-
-  public static void registerAllExtensions(
       com.google.protobuf.ExtensionRegistry registry) {
-    registerAllExtensions(
-        (com.google.protobuf.ExtensionRegistryLite) registry);
   }
   /**
+   * Protobuf enum {@code exec.bit.control.RpcType}
+   *
    * <pre>
    *&#47;/// BitControl RPC ///////
    * </pre>
-   *
-   * Protobuf enum {@code exec.bit.control.RpcType}
    */
   public enum RpcType
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
      * <code>HANDSHAKE = 0;</code>
      */
-    HANDSHAKE(0),
+    HANDSHAKE(0, 0),
     /**
      * <code>ACK = 1;</code>
      */
-    ACK(1),
+    ACK(1, 1),
     /**
      * <code>GOODBYE = 2;</code>
      */
-    GOODBYE(2),
+    GOODBYE(2, 2),
     /**
+     * <code>REQ_INITIALIZE_FRAGMENTS = 3;</code>
+     *
      * <pre>
      * bit requests
      * </pre>
-     *
-     * <code>REQ_INITIALIZE_FRAGMENTS = 3;</code>
      */
-    REQ_INITIALIZE_FRAGMENTS(3),
+    REQ_INITIALIZE_FRAGMENTS(3, 3),
     /**
+     * <code>REQ_CANCEL_FRAGMENT = 6;</code>
+     *
      * <pre>
      * send a cancellation message for a fragment, returns Ack
      * </pre>
-     *
-     * <code>REQ_CANCEL_FRAGMENT = 6;</code>
      */
-    REQ_CANCEL_FRAGMENT(6),
+    REQ_CANCEL_FRAGMENT(4, 6),
     /**
      * <code>REQ_RECEIVER_FINISHED = 7;</code>
      */
-    REQ_RECEIVER_FINISHED(7),
+    REQ_RECEIVER_FINISHED(5, 7),
     /**
+     * <code>REQ_FRAGMENT_STATUS = 8;</code>
+     *
      * <pre>
      * send a fragment status, return Ack
      * </pre>
-     *
-     * <code>REQ_FRAGMENT_STATUS = 8;</code>
      */
-    REQ_FRAGMENT_STATUS(8),
+    REQ_FRAGMENT_STATUS(6, 8),
     /**
+     * <code>REQ_BIT_STATUS = 9;</code>
+     *
      * <pre>
      * get bit status.
      * </pre>
-     *
-     * <code>REQ_BIT_STATUS = 9;</code>
      */
-    REQ_BIT_STATUS(9),
+    REQ_BIT_STATUS(7, 9),
     /**
      * <code>REQ_QUERY_STATUS = 10;</code>
      */
-    REQ_QUERY_STATUS(10),
+    REQ_QUERY_STATUS(8, 10),
     /**
      * <code>REQ_QUERY_CANCEL = 15;</code>
      */
-    REQ_QUERY_CANCEL(15),
+    REQ_QUERY_CANCEL(9, 15),
     /**
+     * <code>REQ_UNPAUSE_FRAGMENT = 16;</code>
+     *
      * <pre>
      * send a resume message for a fragment, returns Ack
      * </pre>
-     *
-     * <code>REQ_UNPAUSE_FRAGMENT = 16;</code>
      */
-    REQ_UNPAUSE_FRAGMENT(16),
+    REQ_UNPAUSE_FRAGMENT(10, 16),
     /**
      * <code>REQ_CUSTOM = 17;</code>
      */
-    REQ_CUSTOM(17),
+    REQ_CUSTOM(11, 17),
     /**
+     * <code>RESP_FRAGMENT_HANDLE = 11;</code>
+     *
      * <pre>
      * bit responses
      * </pre>
-     *
-     * <code>RESP_FRAGMENT_HANDLE = 11;</code>
      */
-    RESP_FRAGMENT_HANDLE(11),
+    RESP_FRAGMENT_HANDLE(12, 11),
     /**
      * <code>RESP_FRAGMENT_STATUS = 12;</code>
      */
-    RESP_FRAGMENT_STATUS(12),
+    RESP_FRAGMENT_STATUS(13, 12),
     /**
      * <code>RESP_BIT_STATUS = 13;</code>
      */
-    RESP_BIT_STATUS(13),
+    RESP_BIT_STATUS(14, 13),
     /**
      * <code>RESP_QUERY_STATUS = 14;</code>
      */
-    RESP_QUERY_STATUS(14),
+    RESP_QUERY_STATUS(15, 14),
     /**
      * <code>RESP_CUSTOM = 18;</code>
      */
-    RESP_CUSTOM(18),
+    RESP_CUSTOM(16, 18),
     /**
+     * <code>SASL_MESSAGE = 19;</code>
+     *
      * <pre>
      * both bit request and response
      * </pre>
-     *
-     * <code>SASL_MESSAGE = 19;</code>
      */
-    SASL_MESSAGE(19),
+    SASL_MESSAGE(17, 19),
     ;
 
     /**
@@ -155,19 +149,19 @@
      */
     public static final int GOODBYE_VALUE = 2;
     /**
+     * <code>REQ_INITIALIZE_FRAGMENTS = 3;</code>
+     *
      * <pre>
      * bit requests
      * </pre>
-     *
-     * <code>REQ_INITIALIZE_FRAGMENTS = 3;</code>
      */
     public static final int REQ_INITIALIZE_FRAGMENTS_VALUE = 3;
     /**
+     * <code>REQ_CANCEL_FRAGMENT = 6;</code>
+     *
      * <pre>
      * send a cancellation message for a fragment, returns Ack
      * </pre>
-     *
-     * <code>REQ_CANCEL_FRAGMENT = 6;</code>
      */
     public static final int REQ_CANCEL_FRAGMENT_VALUE = 6;
     /**
@@ -175,19 +169,19 @@
      */
     public static final int REQ_RECEIVER_FINISHED_VALUE = 7;
     /**
+     * <code>REQ_FRAGMENT_STATUS = 8;</code>
+     *
      * <pre>
      * send a fragment status, return Ack
      * </pre>
-     *
-     * <code>REQ_FRAGMENT_STATUS = 8;</code>
      */
     public static final int REQ_FRAGMENT_STATUS_VALUE = 8;
     /**
+     * <code>REQ_BIT_STATUS = 9;</code>
+     *
      * <pre>
      * get bit status.
      * </pre>
-     *
-     * <code>REQ_BIT_STATUS = 9;</code>
      */
     public static final int REQ_BIT_STATUS_VALUE = 9;
     /**
@@ -199,11 +193,11 @@
      */
     public static final int REQ_QUERY_CANCEL_VALUE = 15;
     /**
+     * <code>REQ_UNPAUSE_FRAGMENT = 16;</code>
+     *
      * <pre>
      * send a resume message for a fragment, returns Ack
      * </pre>
-     *
-     * <code>REQ_UNPAUSE_FRAGMENT = 16;</code>
      */
     public static final int REQ_UNPAUSE_FRAGMENT_VALUE = 16;
     /**
@@ -211,11 +205,11 @@
      */
     public static final int REQ_CUSTOM_VALUE = 17;
     /**
+     * <code>RESP_FRAGMENT_HANDLE = 11;</code>
+     *
      * <pre>
      * bit responses
      * </pre>
-     *
-     * <code>RESP_FRAGMENT_HANDLE = 11;</code>
      */
     public static final int RESP_FRAGMENT_HANDLE_VALUE = 11;
     /**
@@ -235,28 +229,18 @@
      */
     public static final int RESP_CUSTOM_VALUE = 18;
     /**
+     * <code>SASL_MESSAGE = 19;</code>
+     *
      * <pre>
      * both bit request and response
      * </pre>
-     *
-     * <code>SASL_MESSAGE = 19;</code>
      */
     public static final int SASL_MESSAGE_VALUE = 19;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static RpcType valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static RpcType forNumber(int value) {
       switch (value) {
         case 0: return HANDSHAKE;
         case 1: return ACK;
@@ -284,17 +268,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        RpcType> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<RpcType>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<RpcType>() {
             public RpcType findValueByNumber(int number) {
-              return RpcType.forNumber(number);
+              return RpcType.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -316,19 +300,21 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private RpcType(int value) {
+    private RpcType(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
     // @@protoc_insertion_point(enum_scope:exec.bit.control.RpcType)
   }
 
-  public interface BitControlHandshakeOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.BitControlHandshake)
-      com.google.protobuf.MessageOrBuilder {
+  public interface BitControlHandshakeOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 rpc_version = 1;
     /**
      * <code>optional int32 rpc_version = 1;</code>
      */
@@ -338,6 +324,7 @@
      */
     int getRpcVersion();
 
+    // optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];
     /**
      * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];</code>
      */
@@ -347,6 +334,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.RpcChannel getChannel();
 
+    // optional .exec.DrillbitEndpoint endpoint = 3;
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
      */
@@ -360,11 +348,12 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getEndpointOrBuilder();
 
+    // repeated string authenticationMechanisms = 4;
     /**
      * <code>repeated string authenticationMechanisms = 4;</code>
      */
     java.util.List<java.lang.String>
-        getAuthenticationMechanismsList();
+    getAuthenticationMechanismsList();
     /**
      * <code>repeated string authenticationMechanisms = 4;</code>
      */
@@ -382,34 +371,36 @@
   /**
    * Protobuf type {@code exec.bit.control.BitControlHandshake}
    */
-  public  static final class BitControlHandshake extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.BitControlHandshake)
-      BitControlHandshakeOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class BitControlHandshake extends
+      com.google.protobuf.GeneratedMessage
+      implements BitControlHandshakeOrBuilder {
     // Use BitControlHandshake.newBuilder() to construct.
-    private BitControlHandshake(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private BitControlHandshake(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private BitControlHandshake() {
-      rpcVersion_ = 0;
-      channel_ = 0;
-      authenticationMechanisms_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+    private BitControlHandshake(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final BitControlHandshake defaultInstance;
+    public static BitControlHandshake getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public BitControlHandshake getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private BitControlHandshake(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -421,6 +412,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               rpcVersion_ = input.readInt32();
@@ -428,13 +426,12 @@
             }
             case 16: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.RpcChannel value = org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(2, rawValue);
               } else {
                 bitField0_ |= 0x00000002;
-                channel_ = rawValue;
+                channel_ = value;
               }
               break;
             }
@@ -452,19 +449,11 @@
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
                 authenticationMechanisms_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField0_ |= 0x00000008;
               }
-              authenticationMechanisms_.add(bs);
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              authenticationMechanisms_.add(input.readBytes());
               break;
             }
           }
@@ -473,10 +462,10 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
-          authenticationMechanisms_ = authenticationMechanisms_.getUnmodifiableView();
+          authenticationMechanisms_ = new com.google.protobuf.UnmodifiableLazyStringList(authenticationMechanisms_);
         }
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -487,15 +476,30 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitControlHandshake_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitControlHandshake_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.BitControlHandshake.class, org.apache.drill.exec.proto.BitControl.BitControlHandshake.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<BitControlHandshake> PARSER =
+        new com.google.protobuf.AbstractParser<BitControlHandshake>() {
+      public BitControlHandshake parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new BitControlHandshake(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<BitControlHandshake> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 rpc_version = 1;
     public static final int RPC_VERSION_FIELD_NUMBER = 1;
     private int rpcVersion_;
     /**
@@ -511,8 +515,9 @@
       return rpcVersion_;
     }
 
+    // optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];
     public static final int CHANNEL_FIELD_NUMBER = 2;
-    private int channel_;
+    private org.apache.drill.exec.proto.UserBitShared.RpcChannel channel_;
     /**
      * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];</code>
      */
@@ -523,11 +528,10 @@
      * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.RpcChannel getChannel() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.RpcChannel result = org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(channel_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_CONTROL : result;
+      return channel_;
     }
 
+    // optional .exec.DrillbitEndpoint endpoint = 3;
     public static final int ENDPOINT_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_;
     /**
@@ -540,21 +544,22 @@
      * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getEndpointOrBuilder() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
 
+    // repeated string authenticationMechanisms = 4;
     public static final int AUTHENTICATIONMECHANISMS_FIELD_NUMBER = 4;
     private com.google.protobuf.LazyStringList authenticationMechanisms_;
     /**
      * <code>repeated string authenticationMechanisms = 4;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getAuthenticationMechanismsList() {
       return authenticationMechanisms_;
     }
@@ -578,38 +583,42 @@
       return authenticationMechanisms_.getByteString(index);
     }
 
+    private void initFields() {
+      rpcVersion_ = 0;
+      channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_CONTROL;
+      endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      authenticationMechanisms_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(1, rpcVersion_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeEnum(2, channel_);
+        output.writeEnum(2, channel_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, getEndpoint());
+        output.writeMessage(3, endpoint_);
       }
       for (int i = 0; i < authenticationMechanisms_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, authenticationMechanisms_.getRaw(i));
+        output.writeBytes(4, authenticationMechanisms_.getByteString(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -619,95 +628,33 @@
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(2, channel_);
+          .computeEnumSize(2, channel_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getEndpoint());
+          .computeMessageSize(3, endpoint_);
       }
       {
         int dataSize = 0;
         for (int i = 0; i < authenticationMechanisms_.size(); i++) {
-          dataSize += computeStringSizeNoTag(authenticationMechanisms_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(authenticationMechanisms_.getByteString(i));
         }
         size += dataSize;
         size += 1 * getAuthenticationMechanismsList().size();
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.BitControlHandshake)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.BitControlHandshake other = (org.apache.drill.exec.proto.BitControl.BitControlHandshake) obj;
-
-      boolean result = true;
-      result = result && (hasRpcVersion() == other.hasRpcVersion());
-      if (hasRpcVersion()) {
-        result = result && (getRpcVersion()
-            == other.getRpcVersion());
-      }
-      result = result && (hasChannel() == other.hasChannel());
-      if (hasChannel()) {
-        result = result && channel_ == other.channel_;
-      }
-      result = result && (hasEndpoint() == other.hasEndpoint());
-      if (hasEndpoint()) {
-        result = result && getEndpoint()
-            .equals(other.getEndpoint());
-      }
-      result = result && getAuthenticationMechanismsList()
-          .equals(other.getAuthenticationMechanismsList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasRpcVersion()) {
-        hash = (37 * hash) + RPC_VERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getRpcVersion();
-      }
-      if (hasChannel()) {
-        hash = (37 * hash) + CHANNEL_FIELD_NUMBER;
-        hash = (53 * hash) + channel_;
-      }
-      if (hasEndpoint()) {
-        hash = (37 * hash) + ENDPOINT_FIELD_NUMBER;
-        hash = (53 * hash) + getEndpoint().hashCode();
-      }
-      if (getAuthenticationMechanismsCount() > 0) {
-        hash = (37 * hash) + AUTHENTICATIONMECHANISMS_FIELD_NUMBER;
-        hash = (53 * hash) + getAuthenticationMechanismsList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.BitControlHandshake parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.BitControlHandshake parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.BitControlHandshake parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -731,59 +678,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.BitControlHandshake parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.BitControlHandshake parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.BitControlHandshake parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.BitControlHandshake parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.BitControlHandshake parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.BitControlHandshake parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.BitControlHandshake prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -791,16 +725,14 @@
      * Protobuf type {@code exec.bit.control.BitControlHandshake}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.BitControlHandshake)
-        org.apache.drill.exec.proto.BitControl.BitControlHandshakeOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.BitControlHandshakeOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitControlHandshake_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitControlHandshake_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -813,25 +745,27 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getEndpointFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         rpcVersion_ = 0;
         bitField0_ = (bitField0_ & ~0x00000001);
-        channel_ = 0;
+        channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_CONTROL;
         bitField0_ = (bitField0_ & ~0x00000002);
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
         } else {
           endpointBuilder_.clear();
         }
@@ -841,18 +775,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitControlHandshake_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.BitControlHandshake getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.BitControlHandshake.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.BitControlHandshake build() {
         org.apache.drill.exec.proto.BitControl.BitControlHandshake result = buildPartial();
         if (!result.isInitialized()) {
@@ -861,7 +796,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.BitControlHandshake buildPartial() {
         org.apache.drill.exec.proto.BitControl.BitControlHandshake result = new org.apache.drill.exec.proto.BitControl.BitControlHandshake(this);
         int from_bitField0_ = bitField0_;
@@ -883,7 +817,8 @@
           result.endpoint_ = endpointBuilder_.build();
         }
         if (((bitField0_ & 0x00000008) == 0x00000008)) {
-          authenticationMechanisms_ = authenticationMechanisms_.getUnmodifiableView();
+          authenticationMechanisms_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              authenticationMechanisms_);
           bitField0_ = (bitField0_ & ~0x00000008);
         }
         result.authenticationMechanisms_ = authenticationMechanisms_;
@@ -892,39 +827,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.BitControlHandshake) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.BitControlHandshake)other);
@@ -955,17 +857,14 @@
           }
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -975,7 +874,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.BitControlHandshake) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -985,6 +884,7 @@
       }
       private int bitField0_;
 
+      // optional int32 rpc_version = 1;
       private int rpcVersion_ ;
       /**
        * <code>optional int32 rpc_version = 1;</code>
@@ -1017,7 +917,8 @@
         return this;
       }
 
-      private int channel_ = 0;
+      // optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];
+      private org.apache.drill.exec.proto.UserBitShared.RpcChannel channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_CONTROL;
       /**
        * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];</code>
        */
@@ -1028,9 +929,7 @@
        * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.RpcChannel getChannel() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.RpcChannel result = org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(channel_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_CONTROL : result;
+        return channel_;
       }
       /**
        * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_CONTROL];</code>
@@ -1040,7 +939,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000002;
-        channel_ = value.getNumber();
+        channel_ = value;
         onChanged();
         return this;
       }
@@ -1049,13 +948,14 @@
        */
       public Builder clearChannel() {
         bitField0_ = (bitField0_ & ~0x00000002);
-        channel_ = 0;
+        channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_CONTROL;
         onChanged();
         return this;
       }
 
-      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.DrillbitEndpoint endpoint = 3;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> endpointBuilder_;
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
@@ -1068,7 +968,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
         if (endpointBuilder_ == null) {
-          return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         } else {
           return endpointBuilder_.getMessage();
         }
@@ -1109,7 +1009,6 @@
       public Builder mergeEndpoint(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint value) {
         if (endpointBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              endpoint_ != null &&
               endpoint_ != org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance()) {
             endpoint_ =
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.newBuilder(endpoint_).mergeFrom(value).buildPartial();
@@ -1128,7 +1027,7 @@
        */
       public Builder clearEndpoint() {
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
           onChanged();
         } else {
           endpointBuilder_.clear();
@@ -1151,20 +1050,19 @@
         if (endpointBuilder_ != null) {
           return endpointBuilder_.getMessageOrBuilder();
         } else {
-          return endpoint_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         }
       }
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> 
           getEndpointFieldBuilder() {
         if (endpointBuilder_ == null) {
-          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder>(
-                  getEndpoint(),
+                  endpoint_,
                   getParentForChildren(),
                   isClean());
           endpoint_ = null;
@@ -1172,6 +1070,7 @@
         return endpointBuilder_;
       }
 
+      // repeated string authenticationMechanisms = 4;
       private com.google.protobuf.LazyStringList authenticationMechanisms_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureAuthenticationMechanismsIsMutable() {
         if (!((bitField0_ & 0x00000008) == 0x00000008)) {
@@ -1182,9 +1081,9 @@
       /**
        * <code>repeated string authenticationMechanisms = 4;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getAuthenticationMechanismsList() {
-        return authenticationMechanisms_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(authenticationMechanisms_);
       }
       /**
        * <code>repeated string authenticationMechanisms = 4;</code>
@@ -1237,8 +1136,7 @@
       public Builder addAllAuthenticationMechanisms(
           java.lang.Iterable<java.lang.String> values) {
         ensureAuthenticationMechanismsIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, authenticationMechanisms_);
+        super.addAll(values, authenticationMechanisms_);
         onChanged();
         return this;
       }
@@ -1264,63 +1162,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.BitControlHandshake)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.BitControlHandshake)
-    private static final org.apache.drill.exec.proto.BitControl.BitControlHandshake DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.BitControlHandshake();
+      defaultInstance = new BitControlHandshake(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.BitControlHandshake getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<BitControlHandshake>
-        PARSER = new com.google.protobuf.AbstractParser<BitControlHandshake>() {
-      @java.lang.Override
-      public BitControlHandshake parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new BitControlHandshake(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<BitControlHandshake> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<BitControlHandshake> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.BitControlHandshake getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.BitControlHandshake)
   }
 
-  public interface BitStatusOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.BitStatus)
-      com.google.protobuf.MessageOrBuilder {
+  public interface BitStatusOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // repeated .exec.bit.control.FragmentStatus fragment_status = 1;
     /**
      * <code>repeated .exec.bit.control.FragmentStatus fragment_status = 1;</code>
      */
@@ -1348,32 +1205,36 @@
   /**
    * Protobuf type {@code exec.bit.control.BitStatus}
    */
-  public  static final class BitStatus extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.BitStatus)
-      BitStatusOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class BitStatus extends
+      com.google.protobuf.GeneratedMessage
+      implements BitStatusOrBuilder {
     // Use BitStatus.newBuilder() to construct.
-    private BitStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private BitStatus(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private BitStatus() {
-      fragmentStatus_ = java.util.Collections.emptyList();
+    private BitStatus(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final BitStatus defaultInstance;
+    public static BitStatus getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public BitStatus getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private BitStatus(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -1385,20 +1246,19 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                 fragmentStatus_ = new java.util.ArrayList<org.apache.drill.exec.proto.BitControl.FragmentStatus>();
                 mutable_bitField0_ |= 0x00000001;
               }
-              fragmentStatus_.add(
-                  input.readMessage(org.apache.drill.exec.proto.BitControl.FragmentStatus.PARSER, extensionRegistry));
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              fragmentStatus_.add(input.readMessage(org.apache.drill.exec.proto.BitControl.FragmentStatus.PARSER, extensionRegistry));
               break;
             }
           }
@@ -1407,7 +1267,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
           fragmentStatus_ = java.util.Collections.unmodifiableList(fragmentStatus_);
@@ -1421,14 +1281,29 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitStatus_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitStatus_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.BitStatus.class, org.apache.drill.exec.proto.BitControl.BitStatus.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<BitStatus> PARSER =
+        new com.google.protobuf.AbstractParser<BitStatus>() {
+      public BitStatus parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new BitStatus(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<BitStatus> getParserForType() {
+      return PARSER;
+    }
+
+    // repeated .exec.bit.control.FragmentStatus fragment_status = 1;
     public static final int FRAGMENT_STATUS_FIELD_NUMBER = 1;
     private java.util.List<org.apache.drill.exec.proto.BitControl.FragmentStatus> fragmentStatus_;
     /**
@@ -1464,29 +1339,30 @@
       return fragmentStatus_.get(index);
     }
 
+    private void initFields() {
+      fragmentStatus_ = java.util.Collections.emptyList();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       for (int i = 0; i < fragmentStatus_.size(); i++) {
         output.writeMessage(1, fragmentStatus_.get(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -1494,55 +1370,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeMessageSize(1, fragmentStatus_.get(i));
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.BitStatus)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.BitStatus other = (org.apache.drill.exec.proto.BitControl.BitStatus) obj;
-
-      boolean result = true;
-      result = result && getFragmentStatusList()
-          .equals(other.getFragmentStatusList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (getFragmentStatusCount() > 0) {
-        hash = (37 * hash) + FRAGMENT_STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + getFragmentStatusList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.BitStatus parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.BitStatus parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.BitStatus parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -1566,59 +1405,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.BitStatus parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.BitStatus parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.BitStatus parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.BitStatus parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.BitStatus parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.BitStatus parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.BitStatus prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -1626,16 +1452,14 @@
      * Protobuf type {@code exec.bit.control.BitStatus}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.BitStatus)
-        org.apache.drill.exec.proto.BitControl.BitStatusOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.BitStatusOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitStatus_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitStatus_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -1648,17 +1472,19 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getFragmentStatusFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (fragmentStatusBuilder_ == null) {
@@ -1670,18 +1496,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_BitStatus_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.BitStatus getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.BitStatus.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.BitStatus build() {
         org.apache.drill.exec.proto.BitControl.BitStatus result = buildPartial();
         if (!result.isInitialized()) {
@@ -1690,7 +1517,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.BitStatus buildPartial() {
         org.apache.drill.exec.proto.BitControl.BitStatus result = new org.apache.drill.exec.proto.BitControl.BitStatus(this);
         int from_bitField0_ = bitField0_;
@@ -1707,39 +1533,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.BitStatus) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.BitStatus)other);
@@ -1770,24 +1563,21 @@
               fragmentStatus_ = other.fragmentStatus_;
               bitField0_ = (bitField0_ & ~0x00000001);
               fragmentStatusBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getFragmentStatusFieldBuilder() : null;
             } else {
               fragmentStatusBuilder_.addAllMessages(other.fragmentStatus_);
             }
           }
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -1797,7 +1587,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.BitStatus) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -1807,6 +1597,7 @@
       }
       private int bitField0_;
 
+      // repeated .exec.bit.control.FragmentStatus fragment_status = 1;
       private java.util.List<org.apache.drill.exec.proto.BitControl.FragmentStatus> fragmentStatus_ =
         java.util.Collections.emptyList();
       private void ensureFragmentStatusIsMutable() {
@@ -1816,7 +1607,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.FragmentStatus, org.apache.drill.exec.proto.BitControl.FragmentStatus.Builder, org.apache.drill.exec.proto.BitControl.FragmentStatusOrBuilder> fragmentStatusBuilder_;
 
       /**
@@ -1948,8 +1739,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.BitControl.FragmentStatus> values) {
         if (fragmentStatusBuilder_ == null) {
           ensureFragmentStatusIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, fragmentStatus_);
+          super.addAll(values, fragmentStatus_);
           onChanged();
         } else {
           fragmentStatusBuilder_.addAllMessages(values);
@@ -2032,11 +1822,11 @@
            getFragmentStatusBuilderList() {
         return getFragmentStatusFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.FragmentStatus, org.apache.drill.exec.proto.BitControl.FragmentStatus.Builder, org.apache.drill.exec.proto.BitControl.FragmentStatusOrBuilder> 
           getFragmentStatusFieldBuilder() {
         if (fragmentStatusBuilder_ == null) {
-          fragmentStatusBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          fragmentStatusBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.BitControl.FragmentStatus, org.apache.drill.exec.proto.BitControl.FragmentStatus.Builder, org.apache.drill.exec.proto.BitControl.FragmentStatusOrBuilder>(
                   fragmentStatus_,
                   ((bitField0_ & 0x00000001) == 0x00000001),
@@ -2046,63 +1836,22 @@
         }
         return fragmentStatusBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.BitStatus)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.BitStatus)
-    private static final org.apache.drill.exec.proto.BitControl.BitStatus DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.BitStatus();
+      defaultInstance = new BitStatus(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.BitStatus getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<BitStatus>
-        PARSER = new com.google.protobuf.AbstractParser<BitStatus>() {
-      @java.lang.Override
-      public BitStatus parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new BitStatus(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<BitStatus> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<BitStatus> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.BitStatus getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.BitStatus)
   }
 
-  public interface FragmentStatusOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.FragmentStatus)
-      com.google.protobuf.MessageOrBuilder {
+  public interface FragmentStatusOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.MinorFragmentProfile profile = 1;
     /**
      * <code>optional .exec.shared.MinorFragmentProfile profile = 1;</code>
      */
@@ -2116,6 +1865,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder getProfileOrBuilder();
 
+    // optional .exec.bit.FragmentHandle handle = 2;
     /**
      * <code>optional .exec.bit.FragmentHandle handle = 2;</code>
      */
@@ -2132,31 +1882,36 @@
   /**
    * Protobuf type {@code exec.bit.control.FragmentStatus}
    */
-  public  static final class FragmentStatus extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.FragmentStatus)
-      FragmentStatusOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class FragmentStatus extends
+      com.google.protobuf.GeneratedMessage
+      implements FragmentStatusOrBuilder {
     // Use FragmentStatus.newBuilder() to construct.
-    private FragmentStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private FragmentStatus(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private FragmentStatus() {
+    private FragmentStatus(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final FragmentStatus defaultInstance;
+    public static FragmentStatus getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public FragmentStatus getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private FragmentStatus(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -2168,6 +1923,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -2194,20 +1956,13 @@
               bitField0_ |= 0x00000002;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -2218,15 +1973,30 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FragmentStatus_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FragmentStatus_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.FragmentStatus.class, org.apache.drill.exec.proto.BitControl.FragmentStatus.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<FragmentStatus> PARSER =
+        new com.google.protobuf.AbstractParser<FragmentStatus>() {
+      public FragmentStatus parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new FragmentStatus(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<FragmentStatus> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.shared.MinorFragmentProfile profile = 1;
     public static final int PROFILE_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile profile_;
     /**
@@ -2239,15 +2009,16 @@
      * <code>optional .exec.shared.MinorFragmentProfile profile = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile getProfile() {
-      return profile_ == null ? org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance() : profile_;
+      return profile_;
     }
     /**
      * <code>optional .exec.shared.MinorFragmentProfile profile = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder getProfileOrBuilder() {
-      return profile_ == null ? org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance() : profile_;
+      return profile_;
     }
 
+    // optional .exec.bit.FragmentHandle handle = 2;
     public static final int HANDLE_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.ExecProtos.FragmentHandle handle_;
     /**
@@ -2260,113 +2031,66 @@
      * <code>optional .exec.bit.FragmentHandle handle = 2;</code>
      */
     public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getHandle() {
-      return handle_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : handle_;
+      return handle_;
     }
     /**
      * <code>optional .exec.bit.FragmentHandle handle = 2;</code>
      */
     public org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder getHandleOrBuilder() {
-      return handle_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : handle_;
+      return handle_;
     }
 
+    private void initFields() {
+      profile_ = org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance();
+      handle_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getProfile());
+        output.writeMessage(1, profile_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getHandle());
+        output.writeMessage(2, handle_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getProfile());
+          .computeMessageSize(1, profile_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getHandle());
+          .computeMessageSize(2, handle_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.FragmentStatus)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.FragmentStatus other = (org.apache.drill.exec.proto.BitControl.FragmentStatus) obj;
-
-      boolean result = true;
-      result = result && (hasProfile() == other.hasProfile());
-      if (hasProfile()) {
-        result = result && getProfile()
-            .equals(other.getProfile());
-      }
-      result = result && (hasHandle() == other.hasHandle());
-      if (hasHandle()) {
-        result = result && getHandle()
-            .equals(other.getHandle());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasProfile()) {
-        hash = (37 * hash) + PROFILE_FIELD_NUMBER;
-        hash = (53 * hash) + getProfile().hashCode();
-      }
-      if (hasHandle()) {
-        hash = (37 * hash) + HANDLE_FIELD_NUMBER;
-        hash = (53 * hash) + getHandle().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.FragmentStatus parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.FragmentStatus parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.FragmentStatus parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -2390,59 +2114,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.FragmentStatus parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.FragmentStatus parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.FragmentStatus parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.FragmentStatus parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.FragmentStatus parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.FragmentStatus parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.FragmentStatus prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -2450,16 +2161,14 @@
      * Protobuf type {@code exec.bit.control.FragmentStatus}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.FragmentStatus)
-        org.apache.drill.exec.proto.BitControl.FragmentStatusOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.FragmentStatusOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FragmentStatus_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FragmentStatus_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -2472,28 +2181,30 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getProfileFieldBuilder();
           getHandleFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (profileBuilder_ == null) {
-          profile_ = null;
+          profile_ = org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance();
         } else {
           profileBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000001);
         if (handleBuilder_ == null) {
-          handle_ = null;
+          handle_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
         } else {
           handleBuilder_.clear();
         }
@@ -2501,18 +2212,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FragmentStatus_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.FragmentStatus getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.FragmentStatus.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.FragmentStatus build() {
         org.apache.drill.exec.proto.BitControl.FragmentStatus result = buildPartial();
         if (!result.isInitialized()) {
@@ -2521,7 +2233,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.FragmentStatus buildPartial() {
         org.apache.drill.exec.proto.BitControl.FragmentStatus result = new org.apache.drill.exec.proto.BitControl.FragmentStatus(this);
         int from_bitField0_ = bitField0_;
@@ -2547,39 +2258,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.FragmentStatus) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.FragmentStatus)other);
@@ -2597,17 +2275,14 @@
         if (other.hasHandle()) {
           mergeHandle(other.getHandle());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -2617,7 +2292,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.FragmentStatus) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -2627,8 +2302,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile profile_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.MinorFragmentProfile profile = 1;
+      private org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile profile_ = org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.Builder, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder> profileBuilder_;
       /**
        * <code>optional .exec.shared.MinorFragmentProfile profile = 1;</code>
@@ -2641,7 +2317,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile getProfile() {
         if (profileBuilder_ == null) {
-          return profile_ == null ? org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance() : profile_;
+          return profile_;
         } else {
           return profileBuilder_.getMessage();
         }
@@ -2682,7 +2358,6 @@
       public Builder mergeProfile(org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile value) {
         if (profileBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              profile_ != null &&
               profile_ != org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance()) {
             profile_ =
               org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.newBuilder(profile_).mergeFrom(value).buildPartial();
@@ -2701,7 +2376,7 @@
        */
       public Builder clearProfile() {
         if (profileBuilder_ == null) {
-          profile_ = null;
+          profile_ = org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance();
           onChanged();
         } else {
           profileBuilder_.clear();
@@ -2724,20 +2399,19 @@
         if (profileBuilder_ != null) {
           return profileBuilder_.getMessageOrBuilder();
         } else {
-          return profile_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance() : profile_;
+          return profile_;
         }
       }
       /**
        * <code>optional .exec.shared.MinorFragmentProfile profile = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.Builder, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder> 
           getProfileFieldBuilder() {
         if (profileBuilder_ == null) {
-          profileBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          profileBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.Builder, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder>(
-                  getProfile(),
+                  profile_,
                   getParentForChildren(),
                   isClean());
           profile_ = null;
@@ -2745,8 +2419,9 @@
         return profileBuilder_;
       }
 
-      private org.apache.drill.exec.proto.ExecProtos.FragmentHandle handle_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.bit.FragmentHandle handle = 2;
+      private org.apache.drill.exec.proto.ExecProtos.FragmentHandle handle_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder> handleBuilder_;
       /**
        * <code>optional .exec.bit.FragmentHandle handle = 2;</code>
@@ -2759,7 +2434,7 @@
        */
       public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getHandle() {
         if (handleBuilder_ == null) {
-          return handle_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : handle_;
+          return handle_;
         } else {
           return handleBuilder_.getMessage();
         }
@@ -2800,7 +2475,6 @@
       public Builder mergeHandle(org.apache.drill.exec.proto.ExecProtos.FragmentHandle value) {
         if (handleBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              handle_ != null &&
               handle_ != org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance()) {
             handle_ =
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle.newBuilder(handle_).mergeFrom(value).buildPartial();
@@ -2819,7 +2493,7 @@
        */
       public Builder clearHandle() {
         if (handleBuilder_ == null) {
-          handle_ = null;
+          handle_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
           onChanged();
         } else {
           handleBuilder_.clear();
@@ -2842,83 +2516,41 @@
         if (handleBuilder_ != null) {
           return handleBuilder_.getMessageOrBuilder();
         } else {
-          return handle_ == null ?
-              org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : handle_;
+          return handle_;
         }
       }
       /**
        * <code>optional .exec.bit.FragmentHandle handle = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder> 
           getHandleFieldBuilder() {
         if (handleBuilder_ == null) {
-          handleBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          handleBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder>(
-                  getHandle(),
+                  handle_,
                   getParentForChildren(),
                   isClean());
           handle_ = null;
         }
         return handleBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.FragmentStatus)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.FragmentStatus)
-    private static final org.apache.drill.exec.proto.BitControl.FragmentStatus DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.FragmentStatus();
+      defaultInstance = new FragmentStatus(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.FragmentStatus getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<FragmentStatus>
-        PARSER = new com.google.protobuf.AbstractParser<FragmentStatus>() {
-      @java.lang.Override
-      public FragmentStatus parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new FragmentStatus(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<FragmentStatus> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<FragmentStatus> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.FragmentStatus getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.FragmentStatus)
   }
 
-  public interface InitializeFragmentsOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.InitializeFragments)
-      com.google.protobuf.MessageOrBuilder {
+  public interface InitializeFragmentsOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // repeated .exec.bit.control.PlanFragment fragment = 1;
     /**
      * <code>repeated .exec.bit.control.PlanFragment fragment = 1;</code>
      */
@@ -2946,32 +2578,36 @@
   /**
    * Protobuf type {@code exec.bit.control.InitializeFragments}
    */
-  public  static final class InitializeFragments extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.InitializeFragments)
-      InitializeFragmentsOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class InitializeFragments extends
+      com.google.protobuf.GeneratedMessage
+      implements InitializeFragmentsOrBuilder {
     // Use InitializeFragments.newBuilder() to construct.
-    private InitializeFragments(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private InitializeFragments(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private InitializeFragments() {
-      fragment_ = java.util.Collections.emptyList();
+    private InitializeFragments(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final InitializeFragments defaultInstance;
+    public static InitializeFragments getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public InitializeFragments getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private InitializeFragments(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -2983,20 +2619,19 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                 fragment_ = new java.util.ArrayList<org.apache.drill.exec.proto.BitControl.PlanFragment>();
                 mutable_bitField0_ |= 0x00000001;
               }
-              fragment_.add(
-                  input.readMessage(org.apache.drill.exec.proto.BitControl.PlanFragment.PARSER, extensionRegistry));
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              fragment_.add(input.readMessage(org.apache.drill.exec.proto.BitControl.PlanFragment.PARSER, extensionRegistry));
               break;
             }
           }
@@ -3005,7 +2640,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
           fragment_ = java.util.Collections.unmodifiableList(fragment_);
@@ -3019,14 +2654,29 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_InitializeFragments_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_InitializeFragments_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.InitializeFragments.class, org.apache.drill.exec.proto.BitControl.InitializeFragments.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<InitializeFragments> PARSER =
+        new com.google.protobuf.AbstractParser<InitializeFragments>() {
+      public InitializeFragments parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new InitializeFragments(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<InitializeFragments> getParserForType() {
+      return PARSER;
+    }
+
+    // repeated .exec.bit.control.PlanFragment fragment = 1;
     public static final int FRAGMENT_FIELD_NUMBER = 1;
     private java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment> fragment_;
     /**
@@ -3062,29 +2712,30 @@
       return fragment_.get(index);
     }
 
+    private void initFields() {
+      fragment_ = java.util.Collections.emptyList();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       for (int i = 0; i < fragment_.size(); i++) {
         output.writeMessage(1, fragment_.get(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -3092,55 +2743,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeMessageSize(1, fragment_.get(i));
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.InitializeFragments)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.InitializeFragments other = (org.apache.drill.exec.proto.BitControl.InitializeFragments) obj;
-
-      boolean result = true;
-      result = result && getFragmentList()
-          .equals(other.getFragmentList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (getFragmentCount() > 0) {
-        hash = (37 * hash) + FRAGMENT_FIELD_NUMBER;
-        hash = (53 * hash) + getFragmentList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.InitializeFragments parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.InitializeFragments parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.InitializeFragments parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -3164,59 +2778,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.InitializeFragments parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.InitializeFragments parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.InitializeFragments parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.InitializeFragments parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.InitializeFragments parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.InitializeFragments parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.InitializeFragments prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -3224,16 +2825,14 @@
      * Protobuf type {@code exec.bit.control.InitializeFragments}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.InitializeFragments)
-        org.apache.drill.exec.proto.BitControl.InitializeFragmentsOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.InitializeFragmentsOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_InitializeFragments_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_InitializeFragments_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -3246,17 +2845,19 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getFragmentFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (fragmentBuilder_ == null) {
@@ -3268,18 +2869,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_InitializeFragments_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.InitializeFragments getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.InitializeFragments.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.InitializeFragments build() {
         org.apache.drill.exec.proto.BitControl.InitializeFragments result = buildPartial();
         if (!result.isInitialized()) {
@@ -3288,7 +2890,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.InitializeFragments buildPartial() {
         org.apache.drill.exec.proto.BitControl.InitializeFragments result = new org.apache.drill.exec.proto.BitControl.InitializeFragments(this);
         int from_bitField0_ = bitField0_;
@@ -3305,39 +2906,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.InitializeFragments) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.InitializeFragments)other);
@@ -3368,24 +2936,21 @@
               fragment_ = other.fragment_;
               bitField0_ = (bitField0_ & ~0x00000001);
               fragmentBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getFragmentFieldBuilder() : null;
             } else {
               fragmentBuilder_.addAllMessages(other.fragment_);
             }
           }
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -3395,7 +2960,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.InitializeFragments) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -3405,6 +2970,7 @@
       }
       private int bitField0_;
 
+      // repeated .exec.bit.control.PlanFragment fragment = 1;
       private java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment> fragment_ =
         java.util.Collections.emptyList();
       private void ensureFragmentIsMutable() {
@@ -3414,7 +2980,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.PlanFragment, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder, org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder> fragmentBuilder_;
 
       /**
@@ -3546,8 +3112,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.BitControl.PlanFragment> values) {
         if (fragmentBuilder_ == null) {
           ensureFragmentIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, fragment_);
+          super.addAll(values, fragment_);
           onChanged();
         } else {
           fragmentBuilder_.addAllMessages(values);
@@ -3630,11 +3195,11 @@
            getFragmentBuilderList() {
         return getFragmentFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.PlanFragment, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder, org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder> 
           getFragmentFieldBuilder() {
         if (fragmentBuilder_ == null) {
-          fragmentBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          fragmentBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.BitControl.PlanFragment, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder, org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder>(
                   fragment_,
                   ((bitField0_ & 0x00000001) == 0x00000001),
@@ -3644,63 +3209,22 @@
         }
         return fragmentBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.InitializeFragments)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.InitializeFragments)
-    private static final org.apache.drill.exec.proto.BitControl.InitializeFragments DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.InitializeFragments();
+      defaultInstance = new InitializeFragments(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.InitializeFragments getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<InitializeFragments>
-        PARSER = new com.google.protobuf.AbstractParser<InitializeFragments>() {
-      @java.lang.Override
-      public InitializeFragments parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new InitializeFragments(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<InitializeFragments> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<InitializeFragments> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.InitializeFragments getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.InitializeFragments)
   }
 
-  public interface CustomMessageOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.CustomMessage)
-      com.google.protobuf.MessageOrBuilder {
+  public interface CustomMessageOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 type = 1;
     /**
      * <code>optional int32 type = 1;</code>
      */
@@ -3710,6 +3234,7 @@
      */
     int getType();
 
+    // optional bytes message = 2;
     /**
      * <code>optional bytes message = 2;</code>
      */
@@ -3722,33 +3247,36 @@
   /**
    * Protobuf type {@code exec.bit.control.CustomMessage}
    */
-  public  static final class CustomMessage extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.CustomMessage)
-      CustomMessageOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class CustomMessage extends
+      com.google.protobuf.GeneratedMessage
+      implements CustomMessageOrBuilder {
     // Use CustomMessage.newBuilder() to construct.
-    private CustomMessage(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private CustomMessage(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private CustomMessage() {
-      type_ = 0;
-      message_ = com.google.protobuf.ByteString.EMPTY;
+    private CustomMessage(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final CustomMessage defaultInstance;
+    public static CustomMessage getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public CustomMessage getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private CustomMessage(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -3760,6 +3288,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               type_ = input.readInt32();
@@ -3770,20 +3305,13 @@
               message_ = input.readBytes();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -3794,15 +3322,30 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_CustomMessage_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_CustomMessage_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.CustomMessage.class, org.apache.drill.exec.proto.BitControl.CustomMessage.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<CustomMessage> PARSER =
+        new com.google.protobuf.AbstractParser<CustomMessage>() {
+      public CustomMessage parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new CustomMessage(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<CustomMessage> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 type = 1;
     public static final int TYPE_FIELD_NUMBER = 1;
     private int type_;
     /**
@@ -3818,6 +3361,7 @@
       return type_;
     }
 
+    // optional bytes message = 2;
     public static final int MESSAGE_FIELD_NUMBER = 2;
     private com.google.protobuf.ByteString message_;
     /**
@@ -3833,32 +3377,34 @@
       return message_;
     }
 
+    private void initFields() {
+      type_ = 0;
+      message_ = com.google.protobuf.ByteString.EMPTY;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(1, type_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeBytes(2, message_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -3870,67 +3416,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeBytesSize(2, message_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.CustomMessage)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.CustomMessage other = (org.apache.drill.exec.proto.BitControl.CustomMessage) obj;
-
-      boolean result = true;
-      result = result && (hasType() == other.hasType());
-      if (hasType()) {
-        result = result && (getType()
-            == other.getType());
-      }
-      result = result && (hasMessage() == other.hasMessage());
-      if (hasMessage()) {
-        result = result && getMessage()
-            .equals(other.getMessage());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasType()) {
-        hash = (37 * hash) + TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + getType();
-      }
-      if (hasMessage()) {
-        hash = (37 * hash) + MESSAGE_FIELD_NUMBER;
-        hash = (53 * hash) + getMessage().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.CustomMessage parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.CustomMessage parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.CustomMessage parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -3954,59 +3451,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.CustomMessage parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.CustomMessage parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.CustomMessage parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.CustomMessage parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.CustomMessage parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.CustomMessage parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.CustomMessage prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -4014,16 +3498,14 @@
      * Protobuf type {@code exec.bit.control.CustomMessage}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.CustomMessage)
-        org.apache.drill.exec.proto.BitControl.CustomMessageOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.CustomMessageOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_CustomMessage_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_CustomMessage_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -4036,16 +3518,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         type_ = 0;
@@ -4055,18 +3539,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_CustomMessage_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.CustomMessage getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.CustomMessage.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.CustomMessage build() {
         org.apache.drill.exec.proto.BitControl.CustomMessage result = buildPartial();
         if (!result.isInitialized()) {
@@ -4075,7 +3560,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.CustomMessage buildPartial() {
         org.apache.drill.exec.proto.BitControl.CustomMessage result = new org.apache.drill.exec.proto.BitControl.CustomMessage(this);
         int from_bitField0_ = bitField0_;
@@ -4093,39 +3577,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.CustomMessage) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.CustomMessage)other);
@@ -4143,17 +3594,14 @@
         if (other.hasMessage()) {
           setMessage(other.getMessage());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -4163,7 +3611,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.CustomMessage) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -4173,6 +3621,7 @@
       }
       private int bitField0_;
 
+      // optional int32 type = 1;
       private int type_ ;
       /**
        * <code>optional int32 type = 1;</code>
@@ -4205,6 +3654,7 @@
         return this;
       }
 
+      // optional bytes message = 2;
       private com.google.protobuf.ByteString message_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * <code>optional bytes message = 2;</code>
@@ -4239,63 +3689,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.CustomMessage)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.CustomMessage)
-    private static final org.apache.drill.exec.proto.BitControl.CustomMessage DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.CustomMessage();
+      defaultInstance = new CustomMessage(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.CustomMessage getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<CustomMessage>
-        PARSER = new com.google.protobuf.AbstractParser<CustomMessage>() {
-      @java.lang.Override
-      public CustomMessage parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new CustomMessage(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<CustomMessage> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<CustomMessage> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.CustomMessage getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.CustomMessage)
   }
 
-  public interface PlanFragmentOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.PlanFragment)
-      com.google.protobuf.MessageOrBuilder {
+  public interface PlanFragmentOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.bit.FragmentHandle handle = 1;
     /**
      * <code>optional .exec.bit.FragmentHandle handle = 1;</code>
      */
@@ -4309,6 +3718,7 @@
      */
     org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder getHandleOrBuilder();
 
+    // optional float network_cost = 4;
     /**
      * <code>optional float network_cost = 4;</code>
      */
@@ -4318,6 +3728,7 @@
      */
     float getNetworkCost();
 
+    // optional float cpu_cost = 5;
     /**
      * <code>optional float cpu_cost = 5;</code>
      */
@@ -4327,6 +3738,7 @@
      */
     float getCpuCost();
 
+    // optional float disk_cost = 6;
     /**
      * <code>optional float disk_cost = 6;</code>
      */
@@ -4336,6 +3748,7 @@
      */
     float getDiskCost();
 
+    // optional float memory_cost = 7;
     /**
      * <code>optional float memory_cost = 7;</code>
      */
@@ -4345,6 +3758,7 @@
      */
     float getMemoryCost();
 
+    // optional string fragment_json = 8;
     /**
      * <code>optional string fragment_json = 8;</code>
      */
@@ -4359,6 +3773,7 @@
     com.google.protobuf.ByteString
         getFragmentJsonBytes();
 
+    // optional bool leaf_fragment = 9;
     /**
      * <code>optional bool leaf_fragment = 9;</code>
      */
@@ -4368,6 +3783,7 @@
      */
     boolean getLeafFragment();
 
+    // optional .exec.DrillbitEndpoint assignment = 10;
     /**
      * <code>optional .exec.DrillbitEndpoint assignment = 10;</code>
      */
@@ -4381,6 +3797,7 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getAssignmentOrBuilder();
 
+    // optional .exec.DrillbitEndpoint foreman = 11;
     /**
      * <code>optional .exec.DrillbitEndpoint foreman = 11;</code>
      */
@@ -4394,40 +3811,43 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getForemanOrBuilder();
 
+    // optional int64 mem_initial = 12 [default = 20000000];
     /**
+     * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
+     *
      * <pre>
      * 20 megs
      * </pre>
-     *
-     * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
      */
     boolean hasMemInitial();
     /**
+     * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
+     *
      * <pre>
      * 20 megs
      * </pre>
-     *
-     * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
      */
     long getMemInitial();
 
+    // optional int64 mem_max = 13 [default = 2000000000];
     /**
+     * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
+     *
      * <pre>
      * 20 gigs
      * </pre>
-     *
-     * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
      */
     boolean hasMemMax();
     /**
+     * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
+     *
      * <pre>
      * 20 gigs
      * </pre>
-     *
-     * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
      */
     long getMemMax();
 
+    // optional .exec.shared.UserCredentials credentials = 14;
     /**
      * <code>optional .exec.shared.UserCredentials credentials = 14;</code>
      */
@@ -4441,6 +3861,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder getCredentialsOrBuilder();
 
+    // optional string options_json = 15;
     /**
      * <code>optional string options_json = 15;</code>
      */
@@ -4455,6 +3876,7 @@
     com.google.protobuf.ByteString
         getOptionsJsonBytes();
 
+    // optional .exec.bit.control.QueryContextInformation context = 16;
     /**
      * <code>optional .exec.bit.control.QueryContextInformation context = 16;</code>
      */
@@ -4468,6 +3890,7 @@
      */
     org.apache.drill.exec.proto.BitControl.QueryContextInformationOrBuilder getContextOrBuilder();
 
+    // repeated .exec.bit.control.Collector collector = 17;
     /**
      * <code>repeated .exec.bit.control.Collector collector = 17;</code>
      */
@@ -4495,41 +3918,36 @@
   /**
    * Protobuf type {@code exec.bit.control.PlanFragment}
    */
-  public  static final class PlanFragment extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.PlanFragment)
-      PlanFragmentOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class PlanFragment extends
+      com.google.protobuf.GeneratedMessage
+      implements PlanFragmentOrBuilder {
     // Use PlanFragment.newBuilder() to construct.
-    private PlanFragment(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private PlanFragment(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private PlanFragment() {
-      networkCost_ = 0F;
-      cpuCost_ = 0F;
-      diskCost_ = 0F;
-      memoryCost_ = 0F;
-      fragmentJson_ = "";
-      leafFragment_ = false;
-      memInitial_ = 20000000L;
-      memMax_ = 2000000000L;
-      optionsJson_ = "";
-      collector_ = java.util.Collections.emptyList();
+    private PlanFragment(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final PlanFragment defaultInstance;
+    public static PlanFragment getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public PlanFragment getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private PlanFragment(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -4541,6 +3959,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -4575,9 +4000,8 @@
               break;
             }
             case 66: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000020;
-              fragmentJson_ = bs;
+              fragmentJson_ = input.readBytes();
               break;
             }
             case 72: {
@@ -4635,9 +4059,8 @@
               break;
             }
             case 122: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00001000;
-              optionsJson_ = bs;
+              optionsJson_ = input.readBytes();
               break;
             }
             case 130: {
@@ -4658,15 +4081,7 @@
                 collector_ = new java.util.ArrayList<org.apache.drill.exec.proto.BitControl.Collector>();
                 mutable_bitField0_ |= 0x00004000;
               }
-              collector_.add(
-                  input.readMessage(org.apache.drill.exec.proto.BitControl.Collector.PARSER, extensionRegistry));
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              collector_.add(input.readMessage(org.apache.drill.exec.proto.BitControl.Collector.PARSER, extensionRegistry));
               break;
             }
           }
@@ -4675,7 +4090,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00004000) == 0x00004000)) {
           collector_ = java.util.Collections.unmodifiableList(collector_);
@@ -4689,15 +4104,30 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_PlanFragment_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_PlanFragment_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.PlanFragment.class, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<PlanFragment> PARSER =
+        new com.google.protobuf.AbstractParser<PlanFragment>() {
+      public PlanFragment parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new PlanFragment(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<PlanFragment> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.bit.FragmentHandle handle = 1;
     public static final int HANDLE_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.ExecProtos.FragmentHandle handle_;
     /**
@@ -4710,15 +4140,16 @@
      * <code>optional .exec.bit.FragmentHandle handle = 1;</code>
      */
     public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getHandle() {
-      return handle_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : handle_;
+      return handle_;
     }
     /**
      * <code>optional .exec.bit.FragmentHandle handle = 1;</code>
      */
     public org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder getHandleOrBuilder() {
-      return handle_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : handle_;
+      return handle_;
     }
 
+    // optional float network_cost = 4;
     public static final int NETWORK_COST_FIELD_NUMBER = 4;
     private float networkCost_;
     /**
@@ -4734,6 +4165,7 @@
       return networkCost_;
     }
 
+    // optional float cpu_cost = 5;
     public static final int CPU_COST_FIELD_NUMBER = 5;
     private float cpuCost_;
     /**
@@ -4749,6 +4181,7 @@
       return cpuCost_;
     }
 
+    // optional float disk_cost = 6;
     public static final int DISK_COST_FIELD_NUMBER = 6;
     private float diskCost_;
     /**
@@ -4764,6 +4197,7 @@
       return diskCost_;
     }
 
+    // optional float memory_cost = 7;
     public static final int MEMORY_COST_FIELD_NUMBER = 7;
     private float memoryCost_;
     /**
@@ -4779,8 +4213,9 @@
       return memoryCost_;
     }
 
+    // optional string fragment_json = 8;
     public static final int FRAGMENT_JSON_FIELD_NUMBER = 8;
-    private volatile java.lang.Object fragmentJson_;
+    private java.lang.Object fragmentJson_;
     /**
      * <code>optional string fragment_json = 8;</code>
      */
@@ -4821,6 +4256,7 @@
       }
     }
 
+    // optional bool leaf_fragment = 9;
     public static final int LEAF_FRAGMENT_FIELD_NUMBER = 9;
     private boolean leafFragment_;
     /**
@@ -4836,6 +4272,7 @@
       return leafFragment_;
     }
 
+    // optional .exec.DrillbitEndpoint assignment = 10;
     public static final int ASSIGNMENT_FIELD_NUMBER = 10;
     private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint assignment_;
     /**
@@ -4848,15 +4285,16 @@
      * <code>optional .exec.DrillbitEndpoint assignment = 10;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getAssignment() {
-      return assignment_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : assignment_;
+      return assignment_;
     }
     /**
      * <code>optional .exec.DrillbitEndpoint assignment = 10;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getAssignmentOrBuilder() {
-      return assignment_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : assignment_;
+      return assignment_;
     }
 
+    // optional .exec.DrillbitEndpoint foreman = 11;
     public static final int FOREMAN_FIELD_NUMBER = 11;
     private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint foreman_;
     /**
@@ -4869,61 +4307,64 @@
      * <code>optional .exec.DrillbitEndpoint foreman = 11;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getForeman() {
-      return foreman_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+      return foreman_;
     }
     /**
      * <code>optional .exec.DrillbitEndpoint foreman = 11;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getForemanOrBuilder() {
-      return foreman_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+      return foreman_;
     }
 
+    // optional int64 mem_initial = 12 [default = 20000000];
     public static final int MEM_INITIAL_FIELD_NUMBER = 12;
     private long memInitial_;
     /**
+     * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
+     *
      * <pre>
      * 20 megs
      * </pre>
-     *
-     * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
      */
     public boolean hasMemInitial() {
       return ((bitField0_ & 0x00000200) == 0x00000200);
     }
     /**
+     * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
+     *
      * <pre>
      * 20 megs
      * </pre>
-     *
-     * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
      */
     public long getMemInitial() {
       return memInitial_;
     }
 
+    // optional int64 mem_max = 13 [default = 2000000000];
     public static final int MEM_MAX_FIELD_NUMBER = 13;
     private long memMax_;
     /**
+     * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
+     *
      * <pre>
      * 20 gigs
      * </pre>
-     *
-     * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
      */
     public boolean hasMemMax() {
       return ((bitField0_ & 0x00000400) == 0x00000400);
     }
     /**
+     * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
+     *
      * <pre>
      * 20 gigs
      * </pre>
-     *
-     * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
      */
     public long getMemMax() {
       return memMax_;
     }
 
+    // optional .exec.shared.UserCredentials credentials = 14;
     public static final int CREDENTIALS_FIELD_NUMBER = 14;
     private org.apache.drill.exec.proto.UserBitShared.UserCredentials credentials_;
     /**
@@ -4936,17 +4377,18 @@
      * <code>optional .exec.shared.UserCredentials credentials = 14;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.UserCredentials getCredentials() {
-      return credentials_ == null ? org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance() : credentials_;
+      return credentials_;
     }
     /**
      * <code>optional .exec.shared.UserCredentials credentials = 14;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder getCredentialsOrBuilder() {
-      return credentials_ == null ? org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance() : credentials_;
+      return credentials_;
     }
 
+    // optional string options_json = 15;
     public static final int OPTIONS_JSON_FIELD_NUMBER = 15;
-    private volatile java.lang.Object optionsJson_;
+    private java.lang.Object optionsJson_;
     /**
      * <code>optional string options_json = 15;</code>
      */
@@ -4987,6 +4429,7 @@
       }
     }
 
+    // optional .exec.bit.control.QueryContextInformation context = 16;
     public static final int CONTEXT_FIELD_NUMBER = 16;
     private org.apache.drill.exec.proto.BitControl.QueryContextInformation context_;
     /**
@@ -4999,15 +4442,16 @@
      * <code>optional .exec.bit.control.QueryContextInformation context = 16;</code>
      */
     public org.apache.drill.exec.proto.BitControl.QueryContextInformation getContext() {
-      return context_ == null ? org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance() : context_;
+      return context_;
     }
     /**
      * <code>optional .exec.bit.control.QueryContextInformation context = 16;</code>
      */
     public org.apache.drill.exec.proto.BitControl.QueryContextInformationOrBuilder getContextOrBuilder() {
-      return context_ == null ? org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance() : context_;
+      return context_;
     }
 
+    // repeated .exec.bit.control.Collector collector = 17;
     public static final int COLLECTOR_FIELD_NUMBER = 17;
     private java.util.List<org.apache.drill.exec.proto.BitControl.Collector> collector_;
     /**
@@ -5043,22 +4487,37 @@
       return collector_.get(index);
     }
 
+    private void initFields() {
+      handle_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
+      networkCost_ = 0F;
+      cpuCost_ = 0F;
+      diskCost_ = 0F;
+      memoryCost_ = 0F;
+      fragmentJson_ = "";
+      leafFragment_ = false;
+      assignment_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      memInitial_ = 20000000L;
+      memMax_ = 2000000000L;
+      credentials_ = org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance();
+      optionsJson_ = "";
+      context_ = org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance();
+      collector_ = java.util.Collections.emptyList();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getHandle());
+        output.writeMessage(1, handle_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeFloat(4, networkCost_);
@@ -5073,16 +4532,16 @@
         output.writeFloat(7, memoryCost_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 8, fragmentJson_);
+        output.writeBytes(8, getFragmentJsonBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         output.writeBool(9, leafFragment_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        output.writeMessage(10, getAssignment());
+        output.writeMessage(10, assignment_);
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
-        output.writeMessage(11, getForeman());
+        output.writeMessage(11, foreman_);
       }
       if (((bitField0_ & 0x00000200) == 0x00000200)) {
         output.writeInt64(12, memInitial_);
@@ -5091,29 +4550,29 @@
         output.writeInt64(13, memMax_);
       }
       if (((bitField0_ & 0x00000800) == 0x00000800)) {
-        output.writeMessage(14, getCredentials());
+        output.writeMessage(14, credentials_);
       }
       if (((bitField0_ & 0x00001000) == 0x00001000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 15, optionsJson_);
+        output.writeBytes(15, getOptionsJsonBytes());
       }
       if (((bitField0_ & 0x00002000) == 0x00002000)) {
-        output.writeMessage(16, getContext());
+        output.writeMessage(16, context_);
       }
       for (int i = 0; i < collector_.size(); i++) {
         output.writeMessage(17, collector_.get(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getHandle());
+          .computeMessageSize(1, handle_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -5132,7 +4591,8 @@
           .computeFloatSize(7, memoryCost_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, fragmentJson_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(8, getFragmentJsonBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         size += com.google.protobuf.CodedOutputStream
@@ -5140,11 +4600,11 @@
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(10, getAssignment());
+          .computeMessageSize(10, assignment_);
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(11, getForeman());
+          .computeMessageSize(11, foreman_);
       }
       if (((bitField0_ & 0x00000200) == 0x00000200)) {
         size += com.google.protobuf.CodedOutputStream
@@ -5156,209 +4616,32 @@
       }
       if (((bitField0_ & 0x00000800) == 0x00000800)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(14, getCredentials());
+          .computeMessageSize(14, credentials_);
       }
       if (((bitField0_ & 0x00001000) == 0x00001000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, optionsJson_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(15, getOptionsJsonBytes());
       }
       if (((bitField0_ & 0x00002000) == 0x00002000)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(16, getContext());
+          .computeMessageSize(16, context_);
       }
       for (int i = 0; i < collector_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
           .computeMessageSize(17, collector_.get(i));
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.PlanFragment)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.PlanFragment other = (org.apache.drill.exec.proto.BitControl.PlanFragment) obj;
-
-      boolean result = true;
-      result = result && (hasHandle() == other.hasHandle());
-      if (hasHandle()) {
-        result = result && getHandle()
-            .equals(other.getHandle());
-      }
-      result = result && (hasNetworkCost() == other.hasNetworkCost());
-      if (hasNetworkCost()) {
-        result = result && (
-            java.lang.Float.floatToIntBits(getNetworkCost())
-            == java.lang.Float.floatToIntBits(
-                other.getNetworkCost()));
-      }
-      result = result && (hasCpuCost() == other.hasCpuCost());
-      if (hasCpuCost()) {
-        result = result && (
-            java.lang.Float.floatToIntBits(getCpuCost())
-            == java.lang.Float.floatToIntBits(
-                other.getCpuCost()));
-      }
-      result = result && (hasDiskCost() == other.hasDiskCost());
-      if (hasDiskCost()) {
-        result = result && (
-            java.lang.Float.floatToIntBits(getDiskCost())
-            == java.lang.Float.floatToIntBits(
-                other.getDiskCost()));
-      }
-      result = result && (hasMemoryCost() == other.hasMemoryCost());
-      if (hasMemoryCost()) {
-        result = result && (
-            java.lang.Float.floatToIntBits(getMemoryCost())
-            == java.lang.Float.floatToIntBits(
-                other.getMemoryCost()));
-      }
-      result = result && (hasFragmentJson() == other.hasFragmentJson());
-      if (hasFragmentJson()) {
-        result = result && getFragmentJson()
-            .equals(other.getFragmentJson());
-      }
-      result = result && (hasLeafFragment() == other.hasLeafFragment());
-      if (hasLeafFragment()) {
-        result = result && (getLeafFragment()
-            == other.getLeafFragment());
-      }
-      result = result && (hasAssignment() == other.hasAssignment());
-      if (hasAssignment()) {
-        result = result && getAssignment()
-            .equals(other.getAssignment());
-      }
-      result = result && (hasForeman() == other.hasForeman());
-      if (hasForeman()) {
-        result = result && getForeman()
-            .equals(other.getForeman());
-      }
-      result = result && (hasMemInitial() == other.hasMemInitial());
-      if (hasMemInitial()) {
-        result = result && (getMemInitial()
-            == other.getMemInitial());
-      }
-      result = result && (hasMemMax() == other.hasMemMax());
-      if (hasMemMax()) {
-        result = result && (getMemMax()
-            == other.getMemMax());
-      }
-      result = result && (hasCredentials() == other.hasCredentials());
-      if (hasCredentials()) {
-        result = result && getCredentials()
-            .equals(other.getCredentials());
-      }
-      result = result && (hasOptionsJson() == other.hasOptionsJson());
-      if (hasOptionsJson()) {
-        result = result && getOptionsJson()
-            .equals(other.getOptionsJson());
-      }
-      result = result && (hasContext() == other.hasContext());
-      if (hasContext()) {
-        result = result && getContext()
-            .equals(other.getContext());
-      }
-      result = result && getCollectorList()
-          .equals(other.getCollectorList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasHandle()) {
-        hash = (37 * hash) + HANDLE_FIELD_NUMBER;
-        hash = (53 * hash) + getHandle().hashCode();
-      }
-      if (hasNetworkCost()) {
-        hash = (37 * hash) + NETWORK_COST_FIELD_NUMBER;
-        hash = (53 * hash) + java.lang.Float.floatToIntBits(
-            getNetworkCost());
-      }
-      if (hasCpuCost()) {
-        hash = (37 * hash) + CPU_COST_FIELD_NUMBER;
-        hash = (53 * hash) + java.lang.Float.floatToIntBits(
-            getCpuCost());
-      }
-      if (hasDiskCost()) {
-        hash = (37 * hash) + DISK_COST_FIELD_NUMBER;
-        hash = (53 * hash) + java.lang.Float.floatToIntBits(
-            getDiskCost());
-      }
-      if (hasMemoryCost()) {
-        hash = (37 * hash) + MEMORY_COST_FIELD_NUMBER;
-        hash = (53 * hash) + java.lang.Float.floatToIntBits(
-            getMemoryCost());
-      }
-      if (hasFragmentJson()) {
-        hash = (37 * hash) + FRAGMENT_JSON_FIELD_NUMBER;
-        hash = (53 * hash) + getFragmentJson().hashCode();
-      }
-      if (hasLeafFragment()) {
-        hash = (37 * hash) + LEAF_FRAGMENT_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getLeafFragment());
-      }
-      if (hasAssignment()) {
-        hash = (37 * hash) + ASSIGNMENT_FIELD_NUMBER;
-        hash = (53 * hash) + getAssignment().hashCode();
-      }
-      if (hasForeman()) {
-        hash = (37 * hash) + FOREMAN_FIELD_NUMBER;
-        hash = (53 * hash) + getForeman().hashCode();
-      }
-      if (hasMemInitial()) {
-        hash = (37 * hash) + MEM_INITIAL_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getMemInitial());
-      }
-      if (hasMemMax()) {
-        hash = (37 * hash) + MEM_MAX_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getMemMax());
-      }
-      if (hasCredentials()) {
-        hash = (37 * hash) + CREDENTIALS_FIELD_NUMBER;
-        hash = (53 * hash) + getCredentials().hashCode();
-      }
-      if (hasOptionsJson()) {
-        hash = (37 * hash) + OPTIONS_JSON_FIELD_NUMBER;
-        hash = (53 * hash) + getOptionsJson().hashCode();
-      }
-      if (hasContext()) {
-        hash = (37 * hash) + CONTEXT_FIELD_NUMBER;
-        hash = (53 * hash) + getContext().hashCode();
-      }
-      if (getCollectorCount() > 0) {
-        hash = (37 * hash) + COLLECTOR_FIELD_NUMBER;
-        hash = (53 * hash) + getCollectorList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.PlanFragment parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.PlanFragment parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.PlanFragment parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -5382,59 +4665,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.PlanFragment parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.PlanFragment parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.PlanFragment parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.PlanFragment parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.PlanFragment parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.PlanFragment parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.PlanFragment prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -5442,16 +4712,14 @@
      * Protobuf type {@code exec.bit.control.PlanFragment}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.PlanFragment)
-        org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_PlanFragment_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_PlanFragment_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -5464,13 +4732,12 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getHandleFieldBuilder();
           getAssignmentFieldBuilder();
           getForemanFieldBuilder();
@@ -5479,11 +4746,14 @@
           getCollectorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (handleBuilder_ == null) {
-          handle_ = null;
+          handle_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
         } else {
           handleBuilder_.clear();
         }
@@ -5501,13 +4771,13 @@
         leafFragment_ = false;
         bitField0_ = (bitField0_ & ~0x00000040);
         if (assignmentBuilder_ == null) {
-          assignment_ = null;
+          assignment_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
         } else {
           assignmentBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000080);
         if (foremanBuilder_ == null) {
-          foreman_ = null;
+          foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
         } else {
           foremanBuilder_.clear();
         }
@@ -5517,7 +4787,7 @@
         memMax_ = 2000000000L;
         bitField0_ = (bitField0_ & ~0x00000400);
         if (credentialsBuilder_ == null) {
-          credentials_ = null;
+          credentials_ = org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance();
         } else {
           credentialsBuilder_.clear();
         }
@@ -5525,7 +4795,7 @@
         optionsJson_ = "";
         bitField0_ = (bitField0_ & ~0x00001000);
         if (contextBuilder_ == null) {
-          context_ = null;
+          context_ = org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance();
         } else {
           contextBuilder_.clear();
         }
@@ -5539,18 +4809,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_PlanFragment_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.PlanFragment getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.PlanFragment.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.PlanFragment build() {
         org.apache.drill.exec.proto.BitControl.PlanFragment result = buildPartial();
         if (!result.isInitialized()) {
@@ -5559,7 +4830,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.PlanFragment buildPartial() {
         org.apache.drill.exec.proto.BitControl.PlanFragment result = new org.apache.drill.exec.proto.BitControl.PlanFragment(this);
         int from_bitField0_ = bitField0_;
@@ -5654,39 +4924,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.PlanFragment) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.PlanFragment)other);
@@ -5763,24 +5000,21 @@
               collector_ = other.collector_;
               bitField0_ = (bitField0_ & ~0x00004000);
               collectorBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getCollectorFieldBuilder() : null;
             } else {
               collectorBuilder_.addAllMessages(other.collector_);
             }
           }
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -5790,7 +5024,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.PlanFragment) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -5800,8 +5034,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.ExecProtos.FragmentHandle handle_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.bit.FragmentHandle handle = 1;
+      private org.apache.drill.exec.proto.ExecProtos.FragmentHandle handle_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder> handleBuilder_;
       /**
        * <code>optional .exec.bit.FragmentHandle handle = 1;</code>
@@ -5814,7 +5049,7 @@
        */
       public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getHandle() {
         if (handleBuilder_ == null) {
-          return handle_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : handle_;
+          return handle_;
         } else {
           return handleBuilder_.getMessage();
         }
@@ -5855,7 +5090,6 @@
       public Builder mergeHandle(org.apache.drill.exec.proto.ExecProtos.FragmentHandle value) {
         if (handleBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              handle_ != null &&
               handle_ != org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance()) {
             handle_ =
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle.newBuilder(handle_).mergeFrom(value).buildPartial();
@@ -5874,7 +5108,7 @@
        */
       public Builder clearHandle() {
         if (handleBuilder_ == null) {
-          handle_ = null;
+          handle_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
           onChanged();
         } else {
           handleBuilder_.clear();
@@ -5897,20 +5131,19 @@
         if (handleBuilder_ != null) {
           return handleBuilder_.getMessageOrBuilder();
         } else {
-          return handle_ == null ?
-              org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : handle_;
+          return handle_;
         }
       }
       /**
        * <code>optional .exec.bit.FragmentHandle handle = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder> 
           getHandleFieldBuilder() {
         if (handleBuilder_ == null) {
-          handleBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          handleBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder>(
-                  getHandle(),
+                  handle_,
                   getParentForChildren(),
                   isClean());
           handle_ = null;
@@ -5918,6 +5151,7 @@
         return handleBuilder_;
       }
 
+      // optional float network_cost = 4;
       private float networkCost_ ;
       /**
        * <code>optional float network_cost = 4;</code>
@@ -5950,6 +5184,7 @@
         return this;
       }
 
+      // optional float cpu_cost = 5;
       private float cpuCost_ ;
       /**
        * <code>optional float cpu_cost = 5;</code>
@@ -5982,6 +5217,7 @@
         return this;
       }
 
+      // optional float disk_cost = 6;
       private float diskCost_ ;
       /**
        * <code>optional float disk_cost = 6;</code>
@@ -6014,6 +5250,7 @@
         return this;
       }
 
+      // optional float memory_cost = 7;
       private float memoryCost_ ;
       /**
        * <code>optional float memory_cost = 7;</code>
@@ -6046,6 +5283,7 @@
         return this;
       }
 
+      // optional string fragment_json = 8;
       private java.lang.Object fragmentJson_ = "";
       /**
        * <code>optional string fragment_json = 8;</code>
@@ -6059,12 +5297,9 @@
       public java.lang.String getFragmentJson() {
         java.lang.Object ref = fragmentJson_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            fragmentJson_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          fragmentJson_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -6122,6 +5357,7 @@
         return this;
       }
 
+      // optional bool leaf_fragment = 9;
       private boolean leafFragment_ ;
       /**
        * <code>optional bool leaf_fragment = 9;</code>
@@ -6154,8 +5390,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint assignment_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.DrillbitEndpoint assignment = 10;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint assignment_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> assignmentBuilder_;
       /**
        * <code>optional .exec.DrillbitEndpoint assignment = 10;</code>
@@ -6168,7 +5405,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getAssignment() {
         if (assignmentBuilder_ == null) {
-          return assignment_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : assignment_;
+          return assignment_;
         } else {
           return assignmentBuilder_.getMessage();
         }
@@ -6209,7 +5446,6 @@
       public Builder mergeAssignment(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint value) {
         if (assignmentBuilder_ == null) {
           if (((bitField0_ & 0x00000080) == 0x00000080) &&
-              assignment_ != null &&
               assignment_ != org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance()) {
             assignment_ =
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.newBuilder(assignment_).mergeFrom(value).buildPartial();
@@ -6228,7 +5464,7 @@
        */
       public Builder clearAssignment() {
         if (assignmentBuilder_ == null) {
-          assignment_ = null;
+          assignment_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
           onChanged();
         } else {
           assignmentBuilder_.clear();
@@ -6251,20 +5487,19 @@
         if (assignmentBuilder_ != null) {
           return assignmentBuilder_.getMessageOrBuilder();
         } else {
-          return assignment_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : assignment_;
+          return assignment_;
         }
       }
       /**
        * <code>optional .exec.DrillbitEndpoint assignment = 10;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> 
           getAssignmentFieldBuilder() {
         if (assignmentBuilder_ == null) {
-          assignmentBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          assignmentBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder>(
-                  getAssignment(),
+                  assignment_,
                   getParentForChildren(),
                   isClean());
           assignment_ = null;
@@ -6272,8 +5507,9 @@
         return assignmentBuilder_;
       }
 
-      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint foreman_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.DrillbitEndpoint foreman = 11;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> foremanBuilder_;
       /**
        * <code>optional .exec.DrillbitEndpoint foreman = 11;</code>
@@ -6286,7 +5522,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getForeman() {
         if (foremanBuilder_ == null) {
-          return foreman_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+          return foreman_;
         } else {
           return foremanBuilder_.getMessage();
         }
@@ -6327,7 +5563,6 @@
       public Builder mergeForeman(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint value) {
         if (foremanBuilder_ == null) {
           if (((bitField0_ & 0x00000100) == 0x00000100) &&
-              foreman_ != null &&
               foreman_ != org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance()) {
             foreman_ =
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.newBuilder(foreman_).mergeFrom(value).buildPartial();
@@ -6346,7 +5581,7 @@
        */
       public Builder clearForeman() {
         if (foremanBuilder_ == null) {
-          foreman_ = null;
+          foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
           onChanged();
         } else {
           foremanBuilder_.clear();
@@ -6369,20 +5604,19 @@
         if (foremanBuilder_ != null) {
           return foremanBuilder_.getMessageOrBuilder();
         } else {
-          return foreman_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+          return foreman_;
         }
       }
       /**
        * <code>optional .exec.DrillbitEndpoint foreman = 11;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> 
           getForemanFieldBuilder() {
         if (foremanBuilder_ == null) {
-          foremanBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          foremanBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder>(
-                  getForeman(),
+                  foreman_,
                   getParentForChildren(),
                   isClean());
           foreman_ = null;
@@ -6390,33 +5624,34 @@
         return foremanBuilder_;
       }
 
+      // optional int64 mem_initial = 12 [default = 20000000];
       private long memInitial_ = 20000000L;
       /**
+       * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
+       *
        * <pre>
        * 20 megs
        * </pre>
-       *
-       * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
        */
       public boolean hasMemInitial() {
         return ((bitField0_ & 0x00000200) == 0x00000200);
       }
       /**
+       * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
+       *
        * <pre>
        * 20 megs
        * </pre>
-       *
-       * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
        */
       public long getMemInitial() {
         return memInitial_;
       }
       /**
+       * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
+       *
        * <pre>
        * 20 megs
        * </pre>
-       *
-       * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
        */
       public Builder setMemInitial(long value) {
         bitField0_ |= 0x00000200;
@@ -6425,11 +5660,11 @@
         return this;
       }
       /**
+       * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
+       *
        * <pre>
        * 20 megs
        * </pre>
-       *
-       * <code>optional int64 mem_initial = 12 [default = 20000000];</code>
        */
       public Builder clearMemInitial() {
         bitField0_ = (bitField0_ & ~0x00000200);
@@ -6438,33 +5673,34 @@
         return this;
       }
 
+      // optional int64 mem_max = 13 [default = 2000000000];
       private long memMax_ = 2000000000L;
       /**
+       * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
+       *
        * <pre>
        * 20 gigs
        * </pre>
-       *
-       * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
        */
       public boolean hasMemMax() {
         return ((bitField0_ & 0x00000400) == 0x00000400);
       }
       /**
+       * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
+       *
        * <pre>
        * 20 gigs
        * </pre>
-       *
-       * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
        */
       public long getMemMax() {
         return memMax_;
       }
       /**
+       * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
+       *
        * <pre>
        * 20 gigs
        * </pre>
-       *
-       * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
        */
       public Builder setMemMax(long value) {
         bitField0_ |= 0x00000400;
@@ -6473,11 +5709,11 @@
         return this;
       }
       /**
+       * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
+       *
        * <pre>
        * 20 gigs
        * </pre>
-       *
-       * <code>optional int64 mem_max = 13 [default = 2000000000];</code>
        */
       public Builder clearMemMax() {
         bitField0_ = (bitField0_ & ~0x00000400);
@@ -6486,8 +5722,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.UserCredentials credentials_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.UserCredentials credentials = 14;
+      private org.apache.drill.exec.proto.UserBitShared.UserCredentials credentials_ = org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.UserCredentials, org.apache.drill.exec.proto.UserBitShared.UserCredentials.Builder, org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder> credentialsBuilder_;
       /**
        * <code>optional .exec.shared.UserCredentials credentials = 14;</code>
@@ -6500,7 +5737,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.UserCredentials getCredentials() {
         if (credentialsBuilder_ == null) {
-          return credentials_ == null ? org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance() : credentials_;
+          return credentials_;
         } else {
           return credentialsBuilder_.getMessage();
         }
@@ -6541,7 +5778,6 @@
       public Builder mergeCredentials(org.apache.drill.exec.proto.UserBitShared.UserCredentials value) {
         if (credentialsBuilder_ == null) {
           if (((bitField0_ & 0x00000800) == 0x00000800) &&
-              credentials_ != null &&
               credentials_ != org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance()) {
             credentials_ =
               org.apache.drill.exec.proto.UserBitShared.UserCredentials.newBuilder(credentials_).mergeFrom(value).buildPartial();
@@ -6560,7 +5796,7 @@
        */
       public Builder clearCredentials() {
         if (credentialsBuilder_ == null) {
-          credentials_ = null;
+          credentials_ = org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance();
           onChanged();
         } else {
           credentialsBuilder_.clear();
@@ -6583,20 +5819,19 @@
         if (credentialsBuilder_ != null) {
           return credentialsBuilder_.getMessageOrBuilder();
         } else {
-          return credentials_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance() : credentials_;
+          return credentials_;
         }
       }
       /**
        * <code>optional .exec.shared.UserCredentials credentials = 14;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.UserCredentials, org.apache.drill.exec.proto.UserBitShared.UserCredentials.Builder, org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder> 
           getCredentialsFieldBuilder() {
         if (credentialsBuilder_ == null) {
-          credentialsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          credentialsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.UserCredentials, org.apache.drill.exec.proto.UserBitShared.UserCredentials.Builder, org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder>(
-                  getCredentials(),
+                  credentials_,
                   getParentForChildren(),
                   isClean());
           credentials_ = null;
@@ -6604,6 +5839,7 @@
         return credentialsBuilder_;
       }
 
+      // optional string options_json = 15;
       private java.lang.Object optionsJson_ = "";
       /**
        * <code>optional string options_json = 15;</code>
@@ -6617,12 +5853,9 @@
       public java.lang.String getOptionsJson() {
         java.lang.Object ref = optionsJson_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            optionsJson_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          optionsJson_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -6680,8 +5913,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.BitControl.QueryContextInformation context_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.bit.control.QueryContextInformation context = 16;
+      private org.apache.drill.exec.proto.BitControl.QueryContextInformation context_ = org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.BitControl.QueryContextInformation, org.apache.drill.exec.proto.BitControl.QueryContextInformation.Builder, org.apache.drill.exec.proto.BitControl.QueryContextInformationOrBuilder> contextBuilder_;
       /**
        * <code>optional .exec.bit.control.QueryContextInformation context = 16;</code>
@@ -6694,7 +5928,7 @@
        */
       public org.apache.drill.exec.proto.BitControl.QueryContextInformation getContext() {
         if (contextBuilder_ == null) {
-          return context_ == null ? org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance() : context_;
+          return context_;
         } else {
           return contextBuilder_.getMessage();
         }
@@ -6735,7 +5969,6 @@
       public Builder mergeContext(org.apache.drill.exec.proto.BitControl.QueryContextInformation value) {
         if (contextBuilder_ == null) {
           if (((bitField0_ & 0x00002000) == 0x00002000) &&
-              context_ != null &&
               context_ != org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance()) {
             context_ =
               org.apache.drill.exec.proto.BitControl.QueryContextInformation.newBuilder(context_).mergeFrom(value).buildPartial();
@@ -6754,7 +5987,7 @@
        */
       public Builder clearContext() {
         if (contextBuilder_ == null) {
-          context_ = null;
+          context_ = org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance();
           onChanged();
         } else {
           contextBuilder_.clear();
@@ -6777,20 +6010,19 @@
         if (contextBuilder_ != null) {
           return contextBuilder_.getMessageOrBuilder();
         } else {
-          return context_ == null ?
-              org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance() : context_;
+          return context_;
         }
       }
       /**
        * <code>optional .exec.bit.control.QueryContextInformation context = 16;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.BitControl.QueryContextInformation, org.apache.drill.exec.proto.BitControl.QueryContextInformation.Builder, org.apache.drill.exec.proto.BitControl.QueryContextInformationOrBuilder> 
           getContextFieldBuilder() {
         if (contextBuilder_ == null) {
-          contextBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          contextBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.BitControl.QueryContextInformation, org.apache.drill.exec.proto.BitControl.QueryContextInformation.Builder, org.apache.drill.exec.proto.BitControl.QueryContextInformationOrBuilder>(
-                  getContext(),
+                  context_,
                   getParentForChildren(),
                   isClean());
           context_ = null;
@@ -6798,6 +6030,7 @@
         return contextBuilder_;
       }
 
+      // repeated .exec.bit.control.Collector collector = 17;
       private java.util.List<org.apache.drill.exec.proto.BitControl.Collector> collector_ =
         java.util.Collections.emptyList();
       private void ensureCollectorIsMutable() {
@@ -6807,7 +6040,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.Collector, org.apache.drill.exec.proto.BitControl.Collector.Builder, org.apache.drill.exec.proto.BitControl.CollectorOrBuilder> collectorBuilder_;
 
       /**
@@ -6939,8 +6172,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.BitControl.Collector> values) {
         if (collectorBuilder_ == null) {
           ensureCollectorIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, collector_);
+          super.addAll(values, collector_);
           onChanged();
         } else {
           collectorBuilder_.addAllMessages(values);
@@ -7023,11 +6255,11 @@
            getCollectorBuilderList() {
         return getCollectorFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.Collector, org.apache.drill.exec.proto.BitControl.Collector.Builder, org.apache.drill.exec.proto.BitControl.CollectorOrBuilder> 
           getCollectorFieldBuilder() {
         if (collectorBuilder_ == null) {
-          collectorBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          collectorBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.BitControl.Collector, org.apache.drill.exec.proto.BitControl.Collector.Builder, org.apache.drill.exec.proto.BitControl.CollectorOrBuilder>(
                   collector_,
                   ((bitField0_ & 0x00004000) == 0x00004000),
@@ -7037,63 +6269,22 @@
         }
         return collectorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.PlanFragment)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.PlanFragment)
-    private static final org.apache.drill.exec.proto.BitControl.PlanFragment DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.PlanFragment();
+      defaultInstance = new PlanFragment(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.PlanFragment getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<PlanFragment>
-        PARSER = new com.google.protobuf.AbstractParser<PlanFragment>() {
-      @java.lang.Override
-      public PlanFragment parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new PlanFragment(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<PlanFragment> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<PlanFragment> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.PlanFragment getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.PlanFragment)
   }
 
-  public interface CollectorOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.Collector)
-      com.google.protobuf.MessageOrBuilder {
+  public interface CollectorOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 opposite_major_fragment_id = 1;
     /**
      * <code>optional int32 opposite_major_fragment_id = 1;</code>
      */
@@ -7103,6 +6294,7 @@
      */
     int getOppositeMajorFragmentId();
 
+    // repeated int32 incoming_minor_fragment = 2 [packed = true];
     /**
      * <code>repeated int32 incoming_minor_fragment = 2 [packed = true];</code>
      */
@@ -7116,6 +6308,7 @@
      */
     int getIncomingMinorFragment(int index);
 
+    // optional bool supports_out_of_order = 3;
     /**
      * <code>optional bool supports_out_of_order = 3;</code>
      */
@@ -7125,6 +6318,7 @@
      */
     boolean getSupportsOutOfOrder();
 
+    // optional bool is_spooling = 4;
     /**
      * <code>optional bool is_spooling = 4;</code>
      */
@@ -7137,35 +6331,36 @@
   /**
    * Protobuf type {@code exec.bit.control.Collector}
    */
-  public  static final class Collector extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.Collector)
-      CollectorOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class Collector extends
+      com.google.protobuf.GeneratedMessage
+      implements CollectorOrBuilder {
     // Use Collector.newBuilder() to construct.
-    private Collector(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private Collector(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private Collector() {
-      oppositeMajorFragmentId_ = 0;
-      incomingMinorFragment_ = java.util.Collections.emptyList();
-      supportsOutOfOrder_ = false;
-      isSpooling_ = false;
+    private Collector(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final Collector defaultInstance;
+    public static Collector getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public Collector getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private Collector(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -7177,6 +6372,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               oppositeMajorFragmentId_ = input.readInt32();
@@ -7213,20 +6415,13 @@
               isSpooling_ = input.readBool();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
           incomingMinorFragment_ = java.util.Collections.unmodifiableList(incomingMinorFragment_);
@@ -7240,15 +6435,30 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_Collector_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_Collector_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.Collector.class, org.apache.drill.exec.proto.BitControl.Collector.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<Collector> PARSER =
+        new com.google.protobuf.AbstractParser<Collector>() {
+      public Collector parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new Collector(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<Collector> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 opposite_major_fragment_id = 1;
     public static final int OPPOSITE_MAJOR_FRAGMENT_ID_FIELD_NUMBER = 1;
     private int oppositeMajorFragmentId_;
     /**
@@ -7264,6 +6474,7 @@
       return oppositeMajorFragmentId_;
     }
 
+    // repeated int32 incoming_minor_fragment = 2 [packed = true];
     public static final int INCOMING_MINOR_FRAGMENT_FIELD_NUMBER = 2;
     private java.util.List<java.lang.Integer> incomingMinorFragment_;
     /**
@@ -7287,6 +6498,7 @@
     }
     private int incomingMinorFragmentMemoizedSerializedSize = -1;
 
+    // optional bool supports_out_of_order = 3;
     public static final int SUPPORTS_OUT_OF_ORDER_FIELD_NUMBER = 3;
     private boolean supportsOutOfOrder_;
     /**
@@ -7302,6 +6514,7 @@
       return supportsOutOfOrder_;
     }
 
+    // optional bool is_spooling = 4;
     public static final int IS_SPOOLING_FIELD_NUMBER = 4;
     private boolean isSpooling_;
     /**
@@ -7317,18 +6530,21 @@
       return isSpooling_;
     }
 
+    private void initFields() {
+      oppositeMajorFragmentId_ = 0;
+      incomingMinorFragment_ = java.util.Collections.emptyList();
+      supportsOutOfOrder_ = false;
+      isSpooling_ = false;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
       getSerializedSize();
@@ -7336,8 +6552,8 @@
         output.writeInt32(1, oppositeMajorFragmentId_);
       }
       if (getIncomingMinorFragmentList().size() > 0) {
-        output.writeUInt32NoTag(18);
-        output.writeUInt32NoTag(incomingMinorFragmentMemoizedSerializedSize);
+        output.writeRawVarint32(18);
+        output.writeRawVarint32(incomingMinorFragmentMemoizedSerializedSize);
       }
       for (int i = 0; i < incomingMinorFragment_.size(); i++) {
         output.writeInt32NoTag(incomingMinorFragment_.get(i));
@@ -7348,12 +6564,12 @@
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeBool(4, isSpooling_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -7383,84 +6599,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(4, isSpooling_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.Collector)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.Collector other = (org.apache.drill.exec.proto.BitControl.Collector) obj;
-
-      boolean result = true;
-      result = result && (hasOppositeMajorFragmentId() == other.hasOppositeMajorFragmentId());
-      if (hasOppositeMajorFragmentId()) {
-        result = result && (getOppositeMajorFragmentId()
-            == other.getOppositeMajorFragmentId());
-      }
-      result = result && getIncomingMinorFragmentList()
-          .equals(other.getIncomingMinorFragmentList());
-      result = result && (hasSupportsOutOfOrder() == other.hasSupportsOutOfOrder());
-      if (hasSupportsOutOfOrder()) {
-        result = result && (getSupportsOutOfOrder()
-            == other.getSupportsOutOfOrder());
-      }
-      result = result && (hasIsSpooling() == other.hasIsSpooling());
-      if (hasIsSpooling()) {
-        result = result && (getIsSpooling()
-            == other.getIsSpooling());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasOppositeMajorFragmentId()) {
-        hash = (37 * hash) + OPPOSITE_MAJOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getOppositeMajorFragmentId();
-      }
-      if (getIncomingMinorFragmentCount() > 0) {
-        hash = (37 * hash) + INCOMING_MINOR_FRAGMENT_FIELD_NUMBER;
-        hash = (53 * hash) + getIncomingMinorFragmentList().hashCode();
-      }
-      if (hasSupportsOutOfOrder()) {
-        hash = (37 * hash) + SUPPORTS_OUT_OF_ORDER_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getSupportsOutOfOrder());
-      }
-      if (hasIsSpooling()) {
-        hash = (37 * hash) + IS_SPOOLING_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getIsSpooling());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.Collector parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.Collector parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.Collector parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -7484,59 +6634,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.Collector parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.Collector parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.Collector parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.Collector parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.Collector parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.Collector parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.Collector prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -7544,16 +6681,14 @@
      * Protobuf type {@code exec.bit.control.Collector}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.Collector)
-        org.apache.drill.exec.proto.BitControl.CollectorOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.CollectorOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_Collector_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_Collector_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -7566,16 +6701,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         oppositeMajorFragmentId_ = 0;
@@ -7589,18 +6726,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_Collector_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.Collector getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.Collector.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.Collector build() {
         org.apache.drill.exec.proto.BitControl.Collector result = buildPartial();
         if (!result.isInitialized()) {
@@ -7609,7 +6747,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.Collector buildPartial() {
         org.apache.drill.exec.proto.BitControl.Collector result = new org.apache.drill.exec.proto.BitControl.Collector(this);
         int from_bitField0_ = bitField0_;
@@ -7636,39 +6773,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.Collector) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.Collector)other);
@@ -7699,17 +6803,14 @@
         if (other.hasIsSpooling()) {
           setIsSpooling(other.getIsSpooling());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -7719,7 +6820,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.Collector) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -7729,6 +6830,7 @@
       }
       private int bitField0_;
 
+      // optional int32 opposite_major_fragment_id = 1;
       private int oppositeMajorFragmentId_ ;
       /**
        * <code>optional int32 opposite_major_fragment_id = 1;</code>
@@ -7761,6 +6863,7 @@
         return this;
       }
 
+      // repeated int32 incoming_minor_fragment = 2 [packed = true];
       private java.util.List<java.lang.Integer> incomingMinorFragment_ = java.util.Collections.emptyList();
       private void ensureIncomingMinorFragmentIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
@@ -7812,8 +6915,7 @@
       public Builder addAllIncomingMinorFragment(
           java.lang.Iterable<? extends java.lang.Integer> values) {
         ensureIncomingMinorFragmentIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, incomingMinorFragment_);
+        super.addAll(values, incomingMinorFragment_);
         onChanged();
         return this;
       }
@@ -7827,6 +6929,7 @@
         return this;
       }
 
+      // optional bool supports_out_of_order = 3;
       private boolean supportsOutOfOrder_ ;
       /**
        * <code>optional bool supports_out_of_order = 3;</code>
@@ -7859,6 +6962,7 @@
         return this;
       }
 
+      // optional bool is_spooling = 4;
       private boolean isSpooling_ ;
       /**
        * <code>optional bool is_spooling = 4;</code>
@@ -7890,145 +6994,107 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.Collector)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.Collector)
-    private static final org.apache.drill.exec.proto.BitControl.Collector DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.Collector();
+      defaultInstance = new Collector(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.Collector getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<Collector>
-        PARSER = new com.google.protobuf.AbstractParser<Collector>() {
-      @java.lang.Override
-      public Collector parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new Collector(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<Collector> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<Collector> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.Collector getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.Collector)
   }
 
-  public interface QueryContextInformationOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.QueryContextInformation)
-      com.google.protobuf.MessageOrBuilder {
+  public interface QueryContextInformationOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int64 query_start_time = 1;
     /**
+     * <code>optional int64 query_start_time = 1;</code>
+     *
      * <pre>
      * start time of query in milliseconds
      * </pre>
-     *
-     * <code>optional int64 query_start_time = 1;</code>
      */
     boolean hasQueryStartTime();
     /**
+     * <code>optional int64 query_start_time = 1;</code>
+     *
      * <pre>
      * start time of query in milliseconds
      * </pre>
-     *
-     * <code>optional int64 query_start_time = 1;</code>
      */
     long getQueryStartTime();
 
+    // optional int32 time_zone = 2;
     /**
+     * <code>optional int32 time_zone = 2;</code>
+     *
      * <pre>
      * timezone of the Drillbit where user is connected
      * </pre>
-     *
-     * <code>optional int32 time_zone = 2;</code>
      */
     boolean hasTimeZone();
     /**
+     * <code>optional int32 time_zone = 2;</code>
+     *
      * <pre>
      * timezone of the Drillbit where user is connected
      * </pre>
-     *
-     * <code>optional int32 time_zone = 2;</code>
      */
     int getTimeZone();
 
+    // optional string default_schema_name = 3;
     /**
+     * <code>optional string default_schema_name = 3;</code>
+     *
      * <pre>
      * default schema in current session when the query is submitted
      * </pre>
-     *
-     * <code>optional string default_schema_name = 3;</code>
      */
     boolean hasDefaultSchemaName();
     /**
+     * <code>optional string default_schema_name = 3;</code>
+     *
      * <pre>
      * default schema in current session when the query is submitted
      * </pre>
-     *
-     * <code>optional string default_schema_name = 3;</code>
      */
     java.lang.String getDefaultSchemaName();
     /**
+     * <code>optional string default_schema_name = 3;</code>
+     *
      * <pre>
      * default schema in current session when the query is submitted
      * </pre>
-     *
-     * <code>optional string default_schema_name = 3;</code>
      */
     com.google.protobuf.ByteString
         getDefaultSchemaNameBytes();
 
+    // optional string session_id = 4;
     /**
+     * <code>optional string session_id = 4;</code>
+     *
      * <pre>
      * current session id
      * </pre>
-     *
-     * <code>optional string session_id = 4;</code>
      */
     boolean hasSessionId();
     /**
+     * <code>optional string session_id = 4;</code>
+     *
      * <pre>
      * current session id
      * </pre>
-     *
-     * <code>optional string session_id = 4;</code>
      */
     java.lang.String getSessionId();
     /**
+     * <code>optional string session_id = 4;</code>
+     *
      * <pre>
      * current session id
      * </pre>
-     *
-     * <code>optional string session_id = 4;</code>
      */
     com.google.protobuf.ByteString
         getSessionIdBytes();
@@ -8036,35 +7102,36 @@
   /**
    * Protobuf type {@code exec.bit.control.QueryContextInformation}
    */
-  public  static final class QueryContextInformation extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.QueryContextInformation)
-      QueryContextInformationOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class QueryContextInformation extends
+      com.google.protobuf.GeneratedMessage
+      implements QueryContextInformationOrBuilder {
     // Use QueryContextInformation.newBuilder() to construct.
-    private QueryContextInformation(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private QueryContextInformation(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private QueryContextInformation() {
-      queryStartTime_ = 0L;
-      timeZone_ = 0;
-      defaultSchemaName_ = "";
-      sessionId_ = "";
+    private QueryContextInformation(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final QueryContextInformation defaultInstance;
+    public static QueryContextInformation getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public QueryContextInformation getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private QueryContextInformation(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -8076,6 +7143,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               queryStartTime_ = input.readInt64();
@@ -8087,22 +7161,13 @@
               break;
             }
             case 26: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000004;
-              defaultSchemaName_ = bs;
+              defaultSchemaName_ = input.readBytes();
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              sessionId_ = bs;
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              sessionId_ = input.readBytes();
               break;
             }
           }
@@ -8111,7 +7176,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -8122,79 +7187,96 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_QueryContextInformation_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_QueryContextInformation_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.QueryContextInformation.class, org.apache.drill.exec.proto.BitControl.QueryContextInformation.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<QueryContextInformation> PARSER =
+        new com.google.protobuf.AbstractParser<QueryContextInformation>() {
+      public QueryContextInformation parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new QueryContextInformation(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<QueryContextInformation> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int64 query_start_time = 1;
     public static final int QUERY_START_TIME_FIELD_NUMBER = 1;
     private long queryStartTime_;
     /**
+     * <code>optional int64 query_start_time = 1;</code>
+     *
      * <pre>
      * start time of query in milliseconds
      * </pre>
-     *
-     * <code>optional int64 query_start_time = 1;</code>
      */
     public boolean hasQueryStartTime() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional int64 query_start_time = 1;</code>
+     *
      * <pre>
      * start time of query in milliseconds
      * </pre>
-     *
-     * <code>optional int64 query_start_time = 1;</code>
      */
     public long getQueryStartTime() {
       return queryStartTime_;
     }
 
+    // optional int32 time_zone = 2;
     public static final int TIME_ZONE_FIELD_NUMBER = 2;
     private int timeZone_;
     /**
+     * <code>optional int32 time_zone = 2;</code>
+     *
      * <pre>
      * timezone of the Drillbit where user is connected
      * </pre>
-     *
-     * <code>optional int32 time_zone = 2;</code>
      */
     public boolean hasTimeZone() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
+     * <code>optional int32 time_zone = 2;</code>
+     *
      * <pre>
      * timezone of the Drillbit where user is connected
      * </pre>
-     *
-     * <code>optional int32 time_zone = 2;</code>
      */
     public int getTimeZone() {
       return timeZone_;
     }
 
+    // optional string default_schema_name = 3;
     public static final int DEFAULT_SCHEMA_NAME_FIELD_NUMBER = 3;
-    private volatile java.lang.Object defaultSchemaName_;
+    private java.lang.Object defaultSchemaName_;
     /**
+     * <code>optional string default_schema_name = 3;</code>
+     *
      * <pre>
      * default schema in current session when the query is submitted
      * </pre>
-     *
-     * <code>optional string default_schema_name = 3;</code>
      */
     public boolean hasDefaultSchemaName() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
+     * <code>optional string default_schema_name = 3;</code>
+     *
      * <pre>
      * default schema in current session when the query is submitted
      * </pre>
-     *
-     * <code>optional string default_schema_name = 3;</code>
      */
     public java.lang.String getDefaultSchemaName() {
       java.lang.Object ref = defaultSchemaName_;
@@ -8211,11 +7293,11 @@
       }
     }
     /**
+     * <code>optional string default_schema_name = 3;</code>
+     *
      * <pre>
      * default schema in current session when the query is submitted
      * </pre>
-     *
-     * <code>optional string default_schema_name = 3;</code>
      */
     public com.google.protobuf.ByteString
         getDefaultSchemaNameBytes() {
@@ -8231,24 +7313,25 @@
       }
     }
 
+    // optional string session_id = 4;
     public static final int SESSION_ID_FIELD_NUMBER = 4;
-    private volatile java.lang.Object sessionId_;
+    private java.lang.Object sessionId_;
     /**
+     * <code>optional string session_id = 4;</code>
+     *
      * <pre>
      * current session id
      * </pre>
-     *
-     * <code>optional string session_id = 4;</code>
      */
     public boolean hasSessionId() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional string session_id = 4;</code>
+     *
      * <pre>
      * current session id
      * </pre>
-     *
-     * <code>optional string session_id = 4;</code>
      */
     public java.lang.String getSessionId() {
       java.lang.Object ref = sessionId_;
@@ -8265,11 +7348,11 @@
       }
     }
     /**
+     * <code>optional string session_id = 4;</code>
+     *
      * <pre>
      * current session id
      * </pre>
-     *
-     * <code>optional string session_id = 4;</code>
      */
     public com.google.protobuf.ByteString
         getSessionIdBytes() {
@@ -8285,20 +7368,24 @@
       }
     }
 
+    private void initFields() {
+      queryStartTime_ = 0L;
+      timeZone_ = 0;
+      defaultSchemaName_ = "";
+      sessionId_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt64(1, queryStartTime_);
       }
@@ -8306,17 +7393,17 @@
         output.writeInt32(2, timeZone_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, defaultSchemaName_);
+        output.writeBytes(3, getDefaultSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, sessionId_);
+        output.writeBytes(4, getSessionIdBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -8329,91 +7416,25 @@
           .computeInt32Size(2, timeZone_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, defaultSchemaName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(3, getDefaultSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, sessionId_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getSessionIdBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.QueryContextInformation)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.QueryContextInformation other = (org.apache.drill.exec.proto.BitControl.QueryContextInformation) obj;
-
-      boolean result = true;
-      result = result && (hasQueryStartTime() == other.hasQueryStartTime());
-      if (hasQueryStartTime()) {
-        result = result && (getQueryStartTime()
-            == other.getQueryStartTime());
-      }
-      result = result && (hasTimeZone() == other.hasTimeZone());
-      if (hasTimeZone()) {
-        result = result && (getTimeZone()
-            == other.getTimeZone());
-      }
-      result = result && (hasDefaultSchemaName() == other.hasDefaultSchemaName());
-      if (hasDefaultSchemaName()) {
-        result = result && getDefaultSchemaName()
-            .equals(other.getDefaultSchemaName());
-      }
-      result = result && (hasSessionId() == other.hasSessionId());
-      if (hasSessionId()) {
-        result = result && getSessionId()
-            .equals(other.getSessionId());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasQueryStartTime()) {
-        hash = (37 * hash) + QUERY_START_TIME_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getQueryStartTime());
-      }
-      if (hasTimeZone()) {
-        hash = (37 * hash) + TIME_ZONE_FIELD_NUMBER;
-        hash = (53 * hash) + getTimeZone();
-      }
-      if (hasDefaultSchemaName()) {
-        hash = (37 * hash) + DEFAULT_SCHEMA_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getDefaultSchemaName().hashCode();
-      }
-      if (hasSessionId()) {
-        hash = (37 * hash) + SESSION_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getSessionId().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.QueryContextInformation parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.QueryContextInformation parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.QueryContextInformation parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -8437,59 +7458,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.QueryContextInformation parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.QueryContextInformation parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.QueryContextInformation parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.QueryContextInformation parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.QueryContextInformation parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.QueryContextInformation parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.QueryContextInformation prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -8497,16 +7505,14 @@
      * Protobuf type {@code exec.bit.control.QueryContextInformation}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.QueryContextInformation)
-        org.apache.drill.exec.proto.BitControl.QueryContextInformationOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.QueryContextInformationOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_QueryContextInformation_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_QueryContextInformation_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -8519,16 +7525,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         queryStartTime_ = 0L;
@@ -8542,18 +7550,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_QueryContextInformation_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.QueryContextInformation getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.QueryContextInformation.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.QueryContextInformation build() {
         org.apache.drill.exec.proto.BitControl.QueryContextInformation result = buildPartial();
         if (!result.isInitialized()) {
@@ -8562,7 +7571,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.QueryContextInformation buildPartial() {
         org.apache.drill.exec.proto.BitControl.QueryContextInformation result = new org.apache.drill.exec.proto.BitControl.QueryContextInformation(this);
         int from_bitField0_ = bitField0_;
@@ -8588,39 +7596,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.QueryContextInformation) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.QueryContextInformation)other);
@@ -8648,17 +7623,14 @@
           sessionId_ = other.sessionId_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -8668,7 +7640,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.QueryContextInformation) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -8678,33 +7650,34 @@
       }
       private int bitField0_;
 
+      // optional int64 query_start_time = 1;
       private long queryStartTime_ ;
       /**
+       * <code>optional int64 query_start_time = 1;</code>
+       *
        * <pre>
        * start time of query in milliseconds
        * </pre>
-       *
-       * <code>optional int64 query_start_time = 1;</code>
        */
       public boolean hasQueryStartTime() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
+       * <code>optional int64 query_start_time = 1;</code>
+       *
        * <pre>
        * start time of query in milliseconds
        * </pre>
-       *
-       * <code>optional int64 query_start_time = 1;</code>
        */
       public long getQueryStartTime() {
         return queryStartTime_;
       }
       /**
+       * <code>optional int64 query_start_time = 1;</code>
+       *
        * <pre>
        * start time of query in milliseconds
        * </pre>
-       *
-       * <code>optional int64 query_start_time = 1;</code>
        */
       public Builder setQueryStartTime(long value) {
         bitField0_ |= 0x00000001;
@@ -8713,11 +7686,11 @@
         return this;
       }
       /**
+       * <code>optional int64 query_start_time = 1;</code>
+       *
        * <pre>
        * start time of query in milliseconds
        * </pre>
-       *
-       * <code>optional int64 query_start_time = 1;</code>
        */
       public Builder clearQueryStartTime() {
         bitField0_ = (bitField0_ & ~0x00000001);
@@ -8726,33 +7699,34 @@
         return this;
       }
 
+      // optional int32 time_zone = 2;
       private int timeZone_ ;
       /**
+       * <code>optional int32 time_zone = 2;</code>
+       *
        * <pre>
        * timezone of the Drillbit where user is connected
        * </pre>
-       *
-       * <code>optional int32 time_zone = 2;</code>
        */
       public boolean hasTimeZone() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
+       * <code>optional int32 time_zone = 2;</code>
+       *
        * <pre>
        * timezone of the Drillbit where user is connected
        * </pre>
-       *
-       * <code>optional int32 time_zone = 2;</code>
        */
       public int getTimeZone() {
         return timeZone_;
       }
       /**
+       * <code>optional int32 time_zone = 2;</code>
+       *
        * <pre>
        * timezone of the Drillbit where user is connected
        * </pre>
-       *
-       * <code>optional int32 time_zone = 2;</code>
        */
       public Builder setTimeZone(int value) {
         bitField0_ |= 0x00000002;
@@ -8761,11 +7735,11 @@
         return this;
       }
       /**
+       * <code>optional int32 time_zone = 2;</code>
+       *
        * <pre>
        * timezone of the Drillbit where user is connected
        * </pre>
-       *
-       * <code>optional int32 time_zone = 2;</code>
        */
       public Builder clearTimeZone() {
         bitField0_ = (bitField0_ & ~0x00000002);
@@ -8774,44 +7748,42 @@
         return this;
       }
 
+      // optional string default_schema_name = 3;
       private java.lang.Object defaultSchemaName_ = "";
       /**
+       * <code>optional string default_schema_name = 3;</code>
+       *
        * <pre>
        * default schema in current session when the query is submitted
        * </pre>
-       *
-       * <code>optional string default_schema_name = 3;</code>
        */
       public boolean hasDefaultSchemaName() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
+       * <code>optional string default_schema_name = 3;</code>
+       *
        * <pre>
        * default schema in current session when the query is submitted
        * </pre>
-       *
-       * <code>optional string default_schema_name = 3;</code>
        */
       public java.lang.String getDefaultSchemaName() {
         java.lang.Object ref = defaultSchemaName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            defaultSchemaName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          defaultSchemaName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string default_schema_name = 3;</code>
+       *
        * <pre>
        * default schema in current session when the query is submitted
        * </pre>
-       *
-       * <code>optional string default_schema_name = 3;</code>
        */
       public com.google.protobuf.ByteString
           getDefaultSchemaNameBytes() {
@@ -8827,11 +7799,11 @@
         }
       }
       /**
+       * <code>optional string default_schema_name = 3;</code>
+       *
        * <pre>
        * default schema in current session when the query is submitted
        * </pre>
-       *
-       * <code>optional string default_schema_name = 3;</code>
        */
       public Builder setDefaultSchemaName(
           java.lang.String value) {
@@ -8844,11 +7816,11 @@
         return this;
       }
       /**
+       * <code>optional string default_schema_name = 3;</code>
+       *
        * <pre>
        * default schema in current session when the query is submitted
        * </pre>
-       *
-       * <code>optional string default_schema_name = 3;</code>
        */
       public Builder clearDefaultSchemaName() {
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -8857,11 +7829,11 @@
         return this;
       }
       /**
+       * <code>optional string default_schema_name = 3;</code>
+       *
        * <pre>
        * default schema in current session when the query is submitted
        * </pre>
-       *
-       * <code>optional string default_schema_name = 3;</code>
        */
       public Builder setDefaultSchemaNameBytes(
           com.google.protobuf.ByteString value) {
@@ -8874,44 +7846,42 @@
         return this;
       }
 
+      // optional string session_id = 4;
       private java.lang.Object sessionId_ = "";
       /**
+       * <code>optional string session_id = 4;</code>
+       *
        * <pre>
        * current session id
        * </pre>
-       *
-       * <code>optional string session_id = 4;</code>
        */
       public boolean hasSessionId() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
+       * <code>optional string session_id = 4;</code>
+       *
        * <pre>
        * current session id
        * </pre>
-       *
-       * <code>optional string session_id = 4;</code>
        */
       public java.lang.String getSessionId() {
         java.lang.Object ref = sessionId_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            sessionId_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          sessionId_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string session_id = 4;</code>
+       *
        * <pre>
        * current session id
        * </pre>
-       *
-       * <code>optional string session_id = 4;</code>
        */
       public com.google.protobuf.ByteString
           getSessionIdBytes() {
@@ -8927,11 +7897,11 @@
         }
       }
       /**
+       * <code>optional string session_id = 4;</code>
+       *
        * <pre>
        * current session id
        * </pre>
-       *
-       * <code>optional string session_id = 4;</code>
        */
       public Builder setSessionId(
           java.lang.String value) {
@@ -8944,11 +7914,11 @@
         return this;
       }
       /**
+       * <code>optional string session_id = 4;</code>
+       *
        * <pre>
        * current session id
        * </pre>
-       *
-       * <code>optional string session_id = 4;</code>
        */
       public Builder clearSessionId() {
         bitField0_ = (bitField0_ & ~0x00000008);
@@ -8957,11 +7927,11 @@
         return this;
       }
       /**
+       * <code>optional string session_id = 4;</code>
+       *
        * <pre>
        * current session id
        * </pre>
-       *
-       * <code>optional string session_id = 4;</code>
        */
       public Builder setSessionIdBytes(
           com.google.protobuf.ByteString value) {
@@ -8973,63 +7943,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.QueryContextInformation)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.QueryContextInformation)
-    private static final org.apache.drill.exec.proto.BitControl.QueryContextInformation DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.QueryContextInformation();
+      defaultInstance = new QueryContextInformation(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.QueryContextInformation getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<QueryContextInformation>
-        PARSER = new com.google.protobuf.AbstractParser<QueryContextInformation>() {
-      @java.lang.Override
-      public QueryContextInformation parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new QueryContextInformation(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<QueryContextInformation> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<QueryContextInformation> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.QueryContextInformation getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.QueryContextInformation)
   }
 
-  public interface WorkQueueStatusOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.WorkQueueStatus)
-      com.google.protobuf.MessageOrBuilder {
+  public interface WorkQueueStatusOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.DrillbitEndpoint endpoint = 1;
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 1;</code>
      */
@@ -9043,6 +7972,7 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getEndpointOrBuilder();
 
+    // optional int32 queue_length = 2;
     /**
      * <code>optional int32 queue_length = 2;</code>
      */
@@ -9052,6 +7982,7 @@
      */
     int getQueueLength();
 
+    // optional int64 report_time = 3;
     /**
      * <code>optional int64 report_time = 3;</code>
      */
@@ -9064,33 +7995,36 @@
   /**
    * Protobuf type {@code exec.bit.control.WorkQueueStatus}
    */
-  public  static final class WorkQueueStatus extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.WorkQueueStatus)
-      WorkQueueStatusOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class WorkQueueStatus extends
+      com.google.protobuf.GeneratedMessage
+      implements WorkQueueStatusOrBuilder {
     // Use WorkQueueStatus.newBuilder() to construct.
-    private WorkQueueStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private WorkQueueStatus(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private WorkQueueStatus() {
-      queueLength_ = 0;
-      reportTime_ = 0L;
+    private WorkQueueStatus(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final WorkQueueStatus defaultInstance;
+    public static WorkQueueStatus getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public WorkQueueStatus getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private WorkQueueStatus(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -9102,6 +8036,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -9125,20 +8066,13 @@
               reportTime_ = input.readInt64();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -9149,15 +8083,30 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_WorkQueueStatus_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_WorkQueueStatus_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.WorkQueueStatus.class, org.apache.drill.exec.proto.BitControl.WorkQueueStatus.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<WorkQueueStatus> PARSER =
+        new com.google.protobuf.AbstractParser<WorkQueueStatus>() {
+      public WorkQueueStatus parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new WorkQueueStatus(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<WorkQueueStatus> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.DrillbitEndpoint endpoint = 1;
     public static final int ENDPOINT_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_;
     /**
@@ -9170,15 +8119,16 @@
      * <code>optional .exec.DrillbitEndpoint endpoint = 1;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 1;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getEndpointOrBuilder() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
 
+    // optional int32 queue_length = 2;
     public static final int QUEUE_LENGTH_FIELD_NUMBER = 2;
     private int queueLength_;
     /**
@@ -9194,6 +8144,7 @@
       return queueLength_;
     }
 
+    // optional int64 report_time = 3;
     public static final int REPORT_TIME_FIELD_NUMBER = 3;
     private long reportTime_;
     /**
@@ -9209,22 +8160,25 @@
       return reportTime_;
     }
 
+    private void initFields() {
+      endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      queueLength_ = 0;
+      reportTime_ = 0L;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getEndpoint());
+        output.writeMessage(1, endpoint_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt32(2, queueLength_);
@@ -9232,18 +8186,18 @@
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeInt64(3, reportTime_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getEndpoint());
+          .computeMessageSize(1, endpoint_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -9253,77 +8207,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt64Size(3, reportTime_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.WorkQueueStatus)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.WorkQueueStatus other = (org.apache.drill.exec.proto.BitControl.WorkQueueStatus) obj;
-
-      boolean result = true;
-      result = result && (hasEndpoint() == other.hasEndpoint());
-      if (hasEndpoint()) {
-        result = result && getEndpoint()
-            .equals(other.getEndpoint());
-      }
-      result = result && (hasQueueLength() == other.hasQueueLength());
-      if (hasQueueLength()) {
-        result = result && (getQueueLength()
-            == other.getQueueLength());
-      }
-      result = result && (hasReportTime() == other.hasReportTime());
-      if (hasReportTime()) {
-        result = result && (getReportTime()
-            == other.getReportTime());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasEndpoint()) {
-        hash = (37 * hash) + ENDPOINT_FIELD_NUMBER;
-        hash = (53 * hash) + getEndpoint().hashCode();
-      }
-      if (hasQueueLength()) {
-        hash = (37 * hash) + QUEUE_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getQueueLength();
-      }
-      if (hasReportTime()) {
-        hash = (37 * hash) + REPORT_TIME_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getReportTime());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -9347,59 +8242,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.WorkQueueStatus prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -9407,16 +8289,14 @@
      * Protobuf type {@code exec.bit.control.WorkQueueStatus}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.WorkQueueStatus)
-        org.apache.drill.exec.proto.BitControl.WorkQueueStatusOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.WorkQueueStatusOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_WorkQueueStatus_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_WorkQueueStatus_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -9429,21 +8309,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getEndpointFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
         } else {
           endpointBuilder_.clear();
         }
@@ -9455,18 +8337,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_WorkQueueStatus_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.WorkQueueStatus getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.WorkQueueStatus.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.WorkQueueStatus build() {
         org.apache.drill.exec.proto.BitControl.WorkQueueStatus result = buildPartial();
         if (!result.isInitialized()) {
@@ -9475,7 +8358,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.WorkQueueStatus buildPartial() {
         org.apache.drill.exec.proto.BitControl.WorkQueueStatus result = new org.apache.drill.exec.proto.BitControl.WorkQueueStatus(this);
         int from_bitField0_ = bitField0_;
@@ -9501,39 +8383,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.WorkQueueStatus) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.WorkQueueStatus)other);
@@ -9554,17 +8403,14 @@
         if (other.hasReportTime()) {
           setReportTime(other.getReportTime());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -9574,7 +8420,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.WorkQueueStatus) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -9584,8 +8430,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.DrillbitEndpoint endpoint = 1;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> endpointBuilder_;
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 1;</code>
@@ -9598,7 +8445,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
         if (endpointBuilder_ == null) {
-          return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         } else {
           return endpointBuilder_.getMessage();
         }
@@ -9639,7 +8486,6 @@
       public Builder mergeEndpoint(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint value) {
         if (endpointBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              endpoint_ != null &&
               endpoint_ != org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance()) {
             endpoint_ =
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.newBuilder(endpoint_).mergeFrom(value).buildPartial();
@@ -9658,7 +8504,7 @@
        */
       public Builder clearEndpoint() {
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
           onChanged();
         } else {
           endpointBuilder_.clear();
@@ -9681,20 +8527,19 @@
         if (endpointBuilder_ != null) {
           return endpointBuilder_.getMessageOrBuilder();
         } else {
-          return endpoint_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         }
       }
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> 
           getEndpointFieldBuilder() {
         if (endpointBuilder_ == null) {
-          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder>(
-                  getEndpoint(),
+                  endpoint_,
                   getParentForChildren(),
                   isClean());
           endpoint_ = null;
@@ -9702,6 +8547,7 @@
         return endpointBuilder_;
       }
 
+      // optional int32 queue_length = 2;
       private int queueLength_ ;
       /**
        * <code>optional int32 queue_length = 2;</code>
@@ -9734,6 +8580,7 @@
         return this;
       }
 
+      // optional int64 report_time = 3;
       private long reportTime_ ;
       /**
        * <code>optional int64 report_time = 3;</code>
@@ -9765,63 +8612,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.WorkQueueStatus)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.WorkQueueStatus)
-    private static final org.apache.drill.exec.proto.BitControl.WorkQueueStatus DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.WorkQueueStatus();
+      defaultInstance = new WorkQueueStatus(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.WorkQueueStatus getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<WorkQueueStatus>
-        PARSER = new com.google.protobuf.AbstractParser<WorkQueueStatus>() {
-      @java.lang.Override
-      public WorkQueueStatus parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new WorkQueueStatus(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<WorkQueueStatus> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<WorkQueueStatus> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.WorkQueueStatus getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.WorkQueueStatus)
   }
 
-  public interface FinishedReceiverOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.control.FinishedReceiver)
-      com.google.protobuf.MessageOrBuilder {
+  public interface FinishedReceiverOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.bit.FragmentHandle receiver = 1;
     /**
      * <code>optional .exec.bit.FragmentHandle receiver = 1;</code>
      */
@@ -9835,6 +8641,7 @@
      */
     org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder getReceiverOrBuilder();
 
+    // optional .exec.bit.FragmentHandle sender = 2;
     /**
      * <code>optional .exec.bit.FragmentHandle sender = 2;</code>
      */
@@ -9851,31 +8658,36 @@
   /**
    * Protobuf type {@code exec.bit.control.FinishedReceiver}
    */
-  public  static final class FinishedReceiver extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.control.FinishedReceiver)
-      FinishedReceiverOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class FinishedReceiver extends
+      com.google.protobuf.GeneratedMessage
+      implements FinishedReceiverOrBuilder {
     // Use FinishedReceiver.newBuilder() to construct.
-    private FinishedReceiver(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private FinishedReceiver(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private FinishedReceiver() {
+    private FinishedReceiver(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final FinishedReceiver defaultInstance;
+    public static FinishedReceiver getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public FinishedReceiver getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private FinishedReceiver(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -9887,6 +8699,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -9913,20 +8732,13 @@
               bitField0_ |= 0x00000002;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -9937,15 +8749,30 @@
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FinishedReceiver_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FinishedReceiver_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitControl.FinishedReceiver.class, org.apache.drill.exec.proto.BitControl.FinishedReceiver.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<FinishedReceiver> PARSER =
+        new com.google.protobuf.AbstractParser<FinishedReceiver>() {
+      public FinishedReceiver parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new FinishedReceiver(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<FinishedReceiver> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.bit.FragmentHandle receiver = 1;
     public static final int RECEIVER_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.ExecProtos.FragmentHandle receiver_;
     /**
@@ -9958,15 +8785,16 @@
      * <code>optional .exec.bit.FragmentHandle receiver = 1;</code>
      */
     public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getReceiver() {
-      return receiver_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : receiver_;
+      return receiver_;
     }
     /**
      * <code>optional .exec.bit.FragmentHandle receiver = 1;</code>
      */
     public org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder getReceiverOrBuilder() {
-      return receiver_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : receiver_;
+      return receiver_;
     }
 
+    // optional .exec.bit.FragmentHandle sender = 2;
     public static final int SENDER_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.ExecProtos.FragmentHandle sender_;
     /**
@@ -9979,113 +8807,66 @@
      * <code>optional .exec.bit.FragmentHandle sender = 2;</code>
      */
     public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getSender() {
-      return sender_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : sender_;
+      return sender_;
     }
     /**
      * <code>optional .exec.bit.FragmentHandle sender = 2;</code>
      */
     public org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder getSenderOrBuilder() {
-      return sender_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : sender_;
+      return sender_;
     }
 
+    private void initFields() {
+      receiver_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
+      sender_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getReceiver());
+        output.writeMessage(1, receiver_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getSender());
+        output.writeMessage(2, sender_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getReceiver());
+          .computeMessageSize(1, receiver_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getSender());
+          .computeMessageSize(2, sender_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitControl.FinishedReceiver)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitControl.FinishedReceiver other = (org.apache.drill.exec.proto.BitControl.FinishedReceiver) obj;
-
-      boolean result = true;
-      result = result && (hasReceiver() == other.hasReceiver());
-      if (hasReceiver()) {
-        result = result && getReceiver()
-            .equals(other.getReceiver());
-      }
-      result = result && (hasSender() == other.hasSender());
-      if (hasSender()) {
-        result = result && getSender()
-            .equals(other.getSender());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasReceiver()) {
-        hash = (37 * hash) + RECEIVER_FIELD_NUMBER;
-        hash = (53 * hash) + getReceiver().hashCode();
-      }
-      if (hasSender()) {
-        hash = (37 * hash) + SENDER_FIELD_NUMBER;
-        hash = (53 * hash) + getSender().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitControl.FinishedReceiver parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitControl.FinishedReceiver parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitControl.FinishedReceiver parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -10109,59 +8890,46 @@
     }
     public static org.apache.drill.exec.proto.BitControl.FinishedReceiver parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.FinishedReceiver parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.FinishedReceiver parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.FinishedReceiver parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitControl.FinishedReceiver parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitControl.FinishedReceiver parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitControl.FinishedReceiver prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -10169,16 +8937,14 @@
      * Protobuf type {@code exec.bit.control.FinishedReceiver}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.control.FinishedReceiver)
-        org.apache.drill.exec.proto.BitControl.FinishedReceiverOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitControl.FinishedReceiverOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FinishedReceiver_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FinishedReceiver_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -10191,28 +8957,30 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getReceiverFieldBuilder();
           getSenderFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (receiverBuilder_ == null) {
-          receiver_ = null;
+          receiver_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
         } else {
           receiverBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000001);
         if (senderBuilder_ == null) {
-          sender_ = null;
+          sender_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
         } else {
           senderBuilder_.clear();
         }
@@ -10220,18 +8988,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitControl.internal_static_exec_bit_control_FinishedReceiver_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.FinishedReceiver getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitControl.FinishedReceiver.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.FinishedReceiver build() {
         org.apache.drill.exec.proto.BitControl.FinishedReceiver result = buildPartial();
         if (!result.isInitialized()) {
@@ -10240,7 +9009,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitControl.FinishedReceiver buildPartial() {
         org.apache.drill.exec.proto.BitControl.FinishedReceiver result = new org.apache.drill.exec.proto.BitControl.FinishedReceiver(this);
         int from_bitField0_ = bitField0_;
@@ -10266,39 +9034,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitControl.FinishedReceiver) {
           return mergeFrom((org.apache.drill.exec.proto.BitControl.FinishedReceiver)other);
@@ -10316,17 +9051,14 @@
         if (other.hasSender()) {
           mergeSender(other.getSender());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -10336,7 +9068,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitControl.FinishedReceiver) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -10346,8 +9078,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.ExecProtos.FragmentHandle receiver_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.bit.FragmentHandle receiver = 1;
+      private org.apache.drill.exec.proto.ExecProtos.FragmentHandle receiver_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder> receiverBuilder_;
       /**
        * <code>optional .exec.bit.FragmentHandle receiver = 1;</code>
@@ -10360,7 +9093,7 @@
        */
       public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getReceiver() {
         if (receiverBuilder_ == null) {
-          return receiver_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : receiver_;
+          return receiver_;
         } else {
           return receiverBuilder_.getMessage();
         }
@@ -10401,7 +9134,6 @@
       public Builder mergeReceiver(org.apache.drill.exec.proto.ExecProtos.FragmentHandle value) {
         if (receiverBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              receiver_ != null &&
               receiver_ != org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance()) {
             receiver_ =
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle.newBuilder(receiver_).mergeFrom(value).buildPartial();
@@ -10420,7 +9152,7 @@
        */
       public Builder clearReceiver() {
         if (receiverBuilder_ == null) {
-          receiver_ = null;
+          receiver_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
           onChanged();
         } else {
           receiverBuilder_.clear();
@@ -10443,20 +9175,19 @@
         if (receiverBuilder_ != null) {
           return receiverBuilder_.getMessageOrBuilder();
         } else {
-          return receiver_ == null ?
-              org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : receiver_;
+          return receiver_;
         }
       }
       /**
        * <code>optional .exec.bit.FragmentHandle receiver = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder> 
           getReceiverFieldBuilder() {
         if (receiverBuilder_ == null) {
-          receiverBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          receiverBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder>(
-                  getReceiver(),
+                  receiver_,
                   getParentForChildren(),
                   isClean());
           receiver_ = null;
@@ -10464,8 +9195,9 @@
         return receiverBuilder_;
       }
 
-      private org.apache.drill.exec.proto.ExecProtos.FragmentHandle sender_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.bit.FragmentHandle sender = 2;
+      private org.apache.drill.exec.proto.ExecProtos.FragmentHandle sender_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder> senderBuilder_;
       /**
        * <code>optional .exec.bit.FragmentHandle sender = 2;</code>
@@ -10478,7 +9210,7 @@
        */
       public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getSender() {
         if (senderBuilder_ == null) {
-          return sender_ == null ? org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : sender_;
+          return sender_;
         } else {
           return senderBuilder_.getMessage();
         }
@@ -10519,7 +9251,6 @@
       public Builder mergeSender(org.apache.drill.exec.proto.ExecProtos.FragmentHandle value) {
         if (senderBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              sender_ != null &&
               sender_ != org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance()) {
             sender_ =
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle.newBuilder(sender_).mergeFrom(value).buildPartial();
@@ -10538,7 +9269,7 @@
        */
       public Builder clearSender() {
         if (senderBuilder_ == null) {
-          sender_ = null;
+          sender_ = org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
           onChanged();
         } else {
           senderBuilder_.clear();
@@ -10561,135 +9292,93 @@
         if (senderBuilder_ != null) {
           return senderBuilder_.getMessageOrBuilder();
         } else {
-          return sender_ == null ?
-              org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance() : sender_;
+          return sender_;
         }
       }
       /**
        * <code>optional .exec.bit.FragmentHandle sender = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder> 
           getSenderFieldBuilder() {
         if (senderBuilder_ == null) {
-          senderBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          senderBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder, org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder>(
-                  getSender(),
+                  sender_,
                   getParentForChildren(),
                   isClean());
           sender_ = null;
         }
         return senderBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.control.FinishedReceiver)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.control.FinishedReceiver)
-    private static final org.apache.drill.exec.proto.BitControl.FinishedReceiver DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitControl.FinishedReceiver();
+      defaultInstance = new FinishedReceiver(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitControl.FinishedReceiver getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<FinishedReceiver>
-        PARSER = new com.google.protobuf.AbstractParser<FinishedReceiver>() {
-      @java.lang.Override
-      public FinishedReceiver parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new FinishedReceiver(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<FinishedReceiver> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<FinishedReceiver> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitControl.FinishedReceiver getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.control.FinishedReceiver)
   }
 
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_BitControlHandshake_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_BitControlHandshake_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_BitStatus_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_BitStatus_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_FragmentStatus_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_FragmentStatus_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_InitializeFragments_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_InitializeFragments_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_CustomMessage_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_CustomMessage_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_PlanFragment_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_PlanFragment_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_Collector_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_Collector_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_QueryContextInformation_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_QueryContextInformation_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_WorkQueueStatus_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_WorkQueueStatus_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_control_FinishedReceiver_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_control_FinishedReceiver_fieldAccessorTable;
 
   public static com.google.protobuf.Descriptors.FileDescriptor
       getDescriptor() {
     return descriptor;
   }
-  private static  com.google.protobuf.Descriptors.FileDescriptor
+  private static com.google.protobuf.Descriptors.FileDescriptor
       descriptor;
   static {
     java.lang.String[] descriptorData = {
@@ -10702,7 +9391,7 @@
       "nt\022 \n\030authenticationMechanisms\030\004 \003(\t\"F\n\t" +
       "BitStatus\0229\n\017fragment_status\030\001 \003(\0132 .exe" +
       "c.bit.control.FragmentStatus\"n\n\016Fragment" +
-      "Status\0222\n\007profile\030\001 \001(\0132!.exec.shared.Mi" +
+      "Status\0222\n\007profile\030\001 \001(\0132!.exec.shared.Mi",
       "norFragmentProfile\022(\n\006handle\030\002 \001(\0132\030.exe" +
       "c.bit.FragmentHandle\"G\n\023InitializeFragme" +
       "nts\0220\n\010fragment\030\001 \003(\0132\036.exec.bit.control" +
@@ -10712,7 +9401,7 @@
       "\022\024\n\014network_cost\030\004 \001(\002\022\020\n\010cpu_cost\030\005 \001(\002" +
       "\022\021\n\tdisk_cost\030\006 \001(\002\022\023\n\013memory_cost\030\007 \001(\002" +
       "\022\025\n\rfragment_json\030\010 \001(\t\022\025\n\rleaf_fragment" +
-      "\030\t \001(\010\022*\n\nassignment\030\n \001(\0132\026.exec.Drillb" +
+      "\030\t \001(\010\022*\n\nassignment\030\n \001(\0132\026.exec.Drillb",
       "itEndpoint\022\'\n\007foreman\030\013 \001(\0132\026.exec.Drill" +
       "bitEndpoint\022\035\n\013mem_initial\030\014 \001(\003:\010200000" +
       "00\022\033\n\007mem_max\030\r \001(\003:\n2000000000\0221\n\013crede" +
@@ -10722,7 +9411,7 @@
       "tion\022.\n\tcollector\030\021 \003(\0132\033.exec.bit.contr" +
       "ol.Collector\"\210\001\n\tCollector\022\"\n\032opposite_m" +
       "ajor_fragment_id\030\001 \001(\005\022#\n\027incoming_minor" +
-      "_fragment\030\002 \003(\005B\002\020\001\022\035\n\025supports_out_of_o" +
+      "_fragment\030\002 \003(\005B\002\020\001\022\035\n\025supports_out_of_o",
       "rder\030\003 \001(\010\022\023\n\013is_spooling\030\004 \001(\010\"w\n\027Query" +
       "ContextInformation\022\030\n\020query_start_time\030\001" +
       " \001(\003\022\021\n\ttime_zone\030\002 \001(\005\022\033\n\023default_schem" +
@@ -10732,7 +9421,7 @@
       "eport_time\030\003 \001(\003\"h\n\020FinishedReceiver\022*\n\010" +
       "receiver\030\001 \001(\0132\030.exec.bit.FragmentHandle" +
       "\022(\n\006sender\030\002 \001(\0132\030.exec.bit.FragmentHand" +
-      "le*\206\003\n\007RpcType\022\r\n\tHANDSHAKE\020\000\022\007\n\003ACK\020\001\022\013" +
+      "le*\206\003\n\007RpcType\022\r\n\tHANDSHAKE\020\000\022\007\n\003ACK\020\001\022\013",
       "\n\007GOODBYE\020\002\022\034\n\030REQ_INITIALIZE_FRAGMENTS\020" +
       "\003\022\027\n\023REQ_CANCEL_FRAGMENT\020\006\022\031\n\025REQ_RECEIV" +
       "ER_FINISHED\020\007\022\027\n\023REQ_FRAGMENT_STATUS\020\010\022\022" +
@@ -10745,13 +9434,73 @@
       "rg.apache.drill.exec.protoB\nBitControlH\001"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
-        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
-          public com.google.protobuf.ExtensionRegistry assignDescriptors(
-              com.google.protobuf.Descriptors.FileDescriptor root) {
-            descriptor = root;
-            return null;
-          }
-        };
+      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
+        public com.google.protobuf.ExtensionRegistry assignDescriptors(
+            com.google.protobuf.Descriptors.FileDescriptor root) {
+          descriptor = root;
+          internal_static_exec_bit_control_BitControlHandshake_descriptor =
+            getDescriptor().getMessageTypes().get(0);
+          internal_static_exec_bit_control_BitControlHandshake_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_BitControlHandshake_descriptor,
+              new java.lang.String[] { "RpcVersion", "Channel", "Endpoint", "AuthenticationMechanisms", });
+          internal_static_exec_bit_control_BitStatus_descriptor =
+            getDescriptor().getMessageTypes().get(1);
+          internal_static_exec_bit_control_BitStatus_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_BitStatus_descriptor,
+              new java.lang.String[] { "FragmentStatus", });
+          internal_static_exec_bit_control_FragmentStatus_descriptor =
+            getDescriptor().getMessageTypes().get(2);
+          internal_static_exec_bit_control_FragmentStatus_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_FragmentStatus_descriptor,
+              new java.lang.String[] { "Profile", "Handle", });
+          internal_static_exec_bit_control_InitializeFragments_descriptor =
+            getDescriptor().getMessageTypes().get(3);
+          internal_static_exec_bit_control_InitializeFragments_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_InitializeFragments_descriptor,
+              new java.lang.String[] { "Fragment", });
+          internal_static_exec_bit_control_CustomMessage_descriptor =
+            getDescriptor().getMessageTypes().get(4);
+          internal_static_exec_bit_control_CustomMessage_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_CustomMessage_descriptor,
+              new java.lang.String[] { "Type", "Message", });
+          internal_static_exec_bit_control_PlanFragment_descriptor =
+            getDescriptor().getMessageTypes().get(5);
+          internal_static_exec_bit_control_PlanFragment_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_PlanFragment_descriptor,
+              new java.lang.String[] { "Handle", "NetworkCost", "CpuCost", "DiskCost", "MemoryCost", "FragmentJson", "LeafFragment", "Assignment", "Foreman", "MemInitial", "MemMax", "Credentials", "OptionsJson", "Context", "Collector", });
+          internal_static_exec_bit_control_Collector_descriptor =
+            getDescriptor().getMessageTypes().get(6);
+          internal_static_exec_bit_control_Collector_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_Collector_descriptor,
+              new java.lang.String[] { "OppositeMajorFragmentId", "IncomingMinorFragment", "SupportsOutOfOrder", "IsSpooling", });
+          internal_static_exec_bit_control_QueryContextInformation_descriptor =
+            getDescriptor().getMessageTypes().get(7);
+          internal_static_exec_bit_control_QueryContextInformation_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_QueryContextInformation_descriptor,
+              new java.lang.String[] { "QueryStartTime", "TimeZone", "DefaultSchemaName", "SessionId", });
+          internal_static_exec_bit_control_WorkQueueStatus_descriptor =
+            getDescriptor().getMessageTypes().get(8);
+          internal_static_exec_bit_control_WorkQueueStatus_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_WorkQueueStatus_descriptor,
+              new java.lang.String[] { "Endpoint", "QueueLength", "ReportTime", });
+          internal_static_exec_bit_control_FinishedReceiver_descriptor =
+            getDescriptor().getMessageTypes().get(9);
+          internal_static_exec_bit_control_FinishedReceiver_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_control_FinishedReceiver_descriptor,
+              new java.lang.String[] { "Receiver", "Sender", });
+          return null;
+        }
+      };
     com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
         new com.google.protobuf.Descriptors.FileDescriptor[] {
@@ -10759,69 +9508,6 @@
           org.apache.drill.exec.proto.CoordinationProtos.getDescriptor(),
           org.apache.drill.exec.proto.UserBitShared.getDescriptor(),
         }, assigner);
-    internal_static_exec_bit_control_BitControlHandshake_descriptor =
-      getDescriptor().getMessageTypes().get(0);
-    internal_static_exec_bit_control_BitControlHandshake_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_BitControlHandshake_descriptor,
-        new java.lang.String[] { "RpcVersion", "Channel", "Endpoint", "AuthenticationMechanisms", });
-    internal_static_exec_bit_control_BitStatus_descriptor =
-      getDescriptor().getMessageTypes().get(1);
-    internal_static_exec_bit_control_BitStatus_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_BitStatus_descriptor,
-        new java.lang.String[] { "FragmentStatus", });
-    internal_static_exec_bit_control_FragmentStatus_descriptor =
-      getDescriptor().getMessageTypes().get(2);
-    internal_static_exec_bit_control_FragmentStatus_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_FragmentStatus_descriptor,
-        new java.lang.String[] { "Profile", "Handle", });
-    internal_static_exec_bit_control_InitializeFragments_descriptor =
-      getDescriptor().getMessageTypes().get(3);
-    internal_static_exec_bit_control_InitializeFragments_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_InitializeFragments_descriptor,
-        new java.lang.String[] { "Fragment", });
-    internal_static_exec_bit_control_CustomMessage_descriptor =
-      getDescriptor().getMessageTypes().get(4);
-    internal_static_exec_bit_control_CustomMessage_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_CustomMessage_descriptor,
-        new java.lang.String[] { "Type", "Message", });
-    internal_static_exec_bit_control_PlanFragment_descriptor =
-      getDescriptor().getMessageTypes().get(5);
-    internal_static_exec_bit_control_PlanFragment_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_PlanFragment_descriptor,
-        new java.lang.String[] { "Handle", "NetworkCost", "CpuCost", "DiskCost", "MemoryCost", "FragmentJson", "LeafFragment", "Assignment", "Foreman", "MemInitial", "MemMax", "Credentials", "OptionsJson", "Context", "Collector", });
-    internal_static_exec_bit_control_Collector_descriptor =
-      getDescriptor().getMessageTypes().get(6);
-    internal_static_exec_bit_control_Collector_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_Collector_descriptor,
-        new java.lang.String[] { "OppositeMajorFragmentId", "IncomingMinorFragment", "SupportsOutOfOrder", "IsSpooling", });
-    internal_static_exec_bit_control_QueryContextInformation_descriptor =
-      getDescriptor().getMessageTypes().get(7);
-    internal_static_exec_bit_control_QueryContextInformation_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_QueryContextInformation_descriptor,
-        new java.lang.String[] { "QueryStartTime", "TimeZone", "DefaultSchemaName", "SessionId", });
-    internal_static_exec_bit_control_WorkQueueStatus_descriptor =
-      getDescriptor().getMessageTypes().get(8);
-    internal_static_exec_bit_control_WorkQueueStatus_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_WorkQueueStatus_descriptor,
-        new java.lang.String[] { "Endpoint", "QueueLength", "ReportTime", });
-    internal_static_exec_bit_control_FinishedReceiver_descriptor =
-      getDescriptor().getMessageTypes().get(9);
-    internal_static_exec_bit_control_FinishedReceiver_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_control_FinishedReceiver_descriptor,
-        new java.lang.String[] { "Receiver", "Sender", });
-    org.apache.drill.exec.proto.ExecProtos.getDescriptor();
-    org.apache.drill.exec.proto.CoordinationProtos.getDescriptor();
-    org.apache.drill.exec.proto.UserBitShared.getDescriptor();
   }
 
   // @@protoc_insertion_point(outer_class_scope)
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/BitData.java b/protocol/src/main/java/org/apache/drill/exec/proto/BitData.java
index 6a17435..e43380d 100644
--- a/protocol/src/main/java/org/apache/drill/exec/proto/BitData.java
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/BitData.java
@@ -23,13 +23,7 @@
 public final class BitData {
   private BitData() {}
   public static void registerAllExtensions(
-      com.google.protobuf.ExtensionRegistryLite registry) {
-  }
-
-  public static void registerAllExtensions(
       com.google.protobuf.ExtensionRegistry registry) {
-    registerAllExtensions(
-        (com.google.protobuf.ExtensionRegistryLite) registry);
   }
   /**
    * Protobuf enum {@code exec.bit.data.RpcType}
@@ -39,39 +33,39 @@
     /**
      * <code>HANDSHAKE = 0;</code>
      */
-    HANDSHAKE(0),
+    HANDSHAKE(0, 0),
     /**
      * <code>ACK = 1;</code>
      */
-    ACK(1),
+    ACK(1, 1),
     /**
      * <code>GOODBYE = 2;</code>
      */
-    GOODBYE(2),
+    GOODBYE(2, 2),
     /**
+     * <code>REQ_RECORD_BATCH = 3;</code>
+     *
      * <pre>
      * send record batch, returns Ack
      * </pre>
-     *
-     * <code>REQ_RECORD_BATCH = 3;</code>
      */
-    REQ_RECORD_BATCH(3),
+    REQ_RECORD_BATCH(3, 3),
     /**
+     * <code>SASL_MESSAGE = 4;</code>
+     *
      * <pre>
      * both bit request and response
      * </pre>
-     *
-     * <code>SASL_MESSAGE = 4;</code>
      */
-    SASL_MESSAGE(4),
+    SASL_MESSAGE(4, 4),
     /**
+     * <code>REQ_RUNTIME_FILTER = 5;</code>
+     *
      * <pre>
      * send runtime filter data from HashJoin to Foreman, from Foreman to Scan nodes.
      * </pre>
-     *
-     * <code>REQ_RUNTIME_FILTER = 5;</code>
      */
-    REQ_RUNTIME_FILTER(5),
+    REQ_RUNTIME_FILTER(5, 5),
     ;
 
     /**
@@ -87,44 +81,34 @@
      */
     public static final int GOODBYE_VALUE = 2;
     /**
+     * <code>REQ_RECORD_BATCH = 3;</code>
+     *
      * <pre>
      * send record batch, returns Ack
      * </pre>
-     *
-     * <code>REQ_RECORD_BATCH = 3;</code>
      */
     public static final int REQ_RECORD_BATCH_VALUE = 3;
     /**
+     * <code>SASL_MESSAGE = 4;</code>
+     *
      * <pre>
      * both bit request and response
      * </pre>
-     *
-     * <code>SASL_MESSAGE = 4;</code>
      */
     public static final int SASL_MESSAGE_VALUE = 4;
     /**
+     * <code>REQ_RUNTIME_FILTER = 5;</code>
+     *
      * <pre>
      * send runtime filter data from HashJoin to Foreman, from Foreman to Scan nodes.
      * </pre>
-     *
-     * <code>REQ_RUNTIME_FILTER = 5;</code>
      */
     public static final int REQ_RUNTIME_FILTER_VALUE = 5;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static RpcType valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static RpcType forNumber(int value) {
       switch (value) {
         case 0: return HANDSHAKE;
         case 1: return ACK;
@@ -140,17 +124,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        RpcType> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<RpcType>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<RpcType>() {
             public RpcType findValueByNumber(int number) {
-              return RpcType.forNumber(number);
+              return RpcType.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -172,19 +156,21 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private RpcType(int value) {
+    private RpcType(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
     // @@protoc_insertion_point(enum_scope:exec.bit.data.RpcType)
   }
 
-  public interface BitClientHandshakeOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.data.BitClientHandshake)
-      com.google.protobuf.MessageOrBuilder {
+  public interface BitClientHandshakeOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 rpc_version = 1;
     /**
      * <code>optional int32 rpc_version = 1;</code>
      */
@@ -194,6 +180,7 @@
      */
     int getRpcVersion();
 
+    // optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];
     /**
      * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];</code>
      */
@@ -206,33 +193,36 @@
   /**
    * Protobuf type {@code exec.bit.data.BitClientHandshake}
    */
-  public  static final class BitClientHandshake extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.data.BitClientHandshake)
-      BitClientHandshakeOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class BitClientHandshake extends
+      com.google.protobuf.GeneratedMessage
+      implements BitClientHandshakeOrBuilder {
     // Use BitClientHandshake.newBuilder() to construct.
-    private BitClientHandshake(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private BitClientHandshake(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private BitClientHandshake() {
-      rpcVersion_ = 0;
-      channel_ = 1;
+    private BitClientHandshake(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final BitClientHandshake defaultInstance;
+    public static BitClientHandshake getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public BitClientHandshake getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private BitClientHandshake(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -244,6 +234,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               rpcVersion_ = input.readInt32();
@@ -251,20 +248,12 @@
             }
             case 16: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.RpcChannel value = org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(2, rawValue);
               } else {
                 bitField0_ |= 0x00000002;
-                channel_ = rawValue;
-              }
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
+                channel_ = value;
               }
               break;
             }
@@ -274,7 +263,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -285,15 +274,30 @@
       return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitClientHandshake_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitClientHandshake_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitData.BitClientHandshake.class, org.apache.drill.exec.proto.BitData.BitClientHandshake.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<BitClientHandshake> PARSER =
+        new com.google.protobuf.AbstractParser<BitClientHandshake>() {
+      public BitClientHandshake parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new BitClientHandshake(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<BitClientHandshake> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 rpc_version = 1;
     public static final int RPC_VERSION_FIELD_NUMBER = 1;
     private int rpcVersion_;
     /**
@@ -309,8 +313,9 @@
       return rpcVersion_;
     }
 
+    // optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];
     public static final int CHANNEL_FIELD_NUMBER = 2;
-    private int channel_;
+    private org.apache.drill.exec.proto.UserBitShared.RpcChannel channel_;
     /**
      * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];</code>
      */
@@ -321,37 +326,37 @@
      * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.RpcChannel getChannel() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.RpcChannel result = org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(channel_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_DATA : result;
+      return channel_;
     }
 
+    private void initFields() {
+      rpcVersion_ = 0;
+      channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_DATA;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(1, rpcVersion_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeEnum(2, channel_);
+        output.writeEnum(2, channel_.getNumber());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -361,68 +366,20 @@
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(2, channel_);
+          .computeEnumSize(2, channel_.getNumber());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitData.BitClientHandshake)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitData.BitClientHandshake other = (org.apache.drill.exec.proto.BitData.BitClientHandshake) obj;
-
-      boolean result = true;
-      result = result && (hasRpcVersion() == other.hasRpcVersion());
-      if (hasRpcVersion()) {
-        result = result && (getRpcVersion()
-            == other.getRpcVersion());
-      }
-      result = result && (hasChannel() == other.hasChannel());
-      if (hasChannel()) {
-        result = result && channel_ == other.channel_;
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasRpcVersion()) {
-        hash = (37 * hash) + RPC_VERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getRpcVersion();
-      }
-      if (hasChannel()) {
-        hash = (37 * hash) + CHANNEL_FIELD_NUMBER;
-        hash = (53 * hash) + channel_;
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitData.BitClientHandshake parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitData.BitClientHandshake parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitData.BitClientHandshake parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -446,59 +403,46 @@
     }
     public static org.apache.drill.exec.proto.BitData.BitClientHandshake parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.BitClientHandshake parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitData.BitClientHandshake parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.BitClientHandshake parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitData.BitClientHandshake parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.BitClientHandshake parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitData.BitClientHandshake prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -506,16 +450,14 @@
      * Protobuf type {@code exec.bit.data.BitClientHandshake}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.data.BitClientHandshake)
-        org.apache.drill.exec.proto.BitData.BitClientHandshakeOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitData.BitClientHandshakeOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitClientHandshake_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitClientHandshake_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -528,37 +470,40 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         rpcVersion_ = 0;
         bitField0_ = (bitField0_ & ~0x00000001);
-        channel_ = 1;
+        channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_DATA;
         bitField0_ = (bitField0_ & ~0x00000002);
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitClientHandshake_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.BitClientHandshake getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitData.BitClientHandshake.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.BitClientHandshake build() {
         org.apache.drill.exec.proto.BitData.BitClientHandshake result = buildPartial();
         if (!result.isInitialized()) {
@@ -567,7 +512,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.BitClientHandshake buildPartial() {
         org.apache.drill.exec.proto.BitData.BitClientHandshake result = new org.apache.drill.exec.proto.BitData.BitClientHandshake(this);
         int from_bitField0_ = bitField0_;
@@ -585,39 +529,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitData.BitClientHandshake) {
           return mergeFrom((org.apache.drill.exec.proto.BitData.BitClientHandshake)other);
@@ -635,17 +546,14 @@
         if (other.hasChannel()) {
           setChannel(other.getChannel());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -655,7 +563,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitData.BitClientHandshake) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -665,6 +573,7 @@
       }
       private int bitField0_;
 
+      // optional int32 rpc_version = 1;
       private int rpcVersion_ ;
       /**
        * <code>optional int32 rpc_version = 1;</code>
@@ -697,7 +606,8 @@
         return this;
       }
 
-      private int channel_ = 1;
+      // optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];
+      private org.apache.drill.exec.proto.UserBitShared.RpcChannel channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_DATA;
       /**
        * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];</code>
        */
@@ -708,9 +618,7 @@
        * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.RpcChannel getChannel() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.RpcChannel result = org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(channel_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_DATA : result;
+        return channel_;
       }
       /**
        * <code>optional .exec.shared.RpcChannel channel = 2 [default = BIT_DATA];</code>
@@ -720,7 +628,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000002;
-        channel_ = value.getNumber();
+        channel_ = value;
         onChanged();
         return this;
       }
@@ -729,67 +637,26 @@
        */
       public Builder clearChannel() {
         bitField0_ = (bitField0_ & ~0x00000002);
-        channel_ = 1;
+        channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.BIT_DATA;
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.data.BitClientHandshake)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.data.BitClientHandshake)
-    private static final org.apache.drill.exec.proto.BitData.BitClientHandshake DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitData.BitClientHandshake();
+      defaultInstance = new BitClientHandshake(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitData.BitClientHandshake getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<BitClientHandshake>
-        PARSER = new com.google.protobuf.AbstractParser<BitClientHandshake>() {
-      @java.lang.Override
-      public BitClientHandshake parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new BitClientHandshake(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<BitClientHandshake> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<BitClientHandshake> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitData.BitClientHandshake getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.data.BitClientHandshake)
   }
 
-  public interface BitServerHandshakeOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.data.BitServerHandshake)
-      com.google.protobuf.MessageOrBuilder {
+  public interface BitServerHandshakeOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 rpc_version = 1;
     /**
      * <code>optional int32 rpc_version = 1;</code>
      */
@@ -799,11 +666,12 @@
      */
     int getRpcVersion();
 
+    // repeated string authenticationMechanisms = 2;
     /**
      * <code>repeated string authenticationMechanisms = 2;</code>
      */
     java.util.List<java.lang.String>
-        getAuthenticationMechanismsList();
+    getAuthenticationMechanismsList();
     /**
      * <code>repeated string authenticationMechanisms = 2;</code>
      */
@@ -821,33 +689,36 @@
   /**
    * Protobuf type {@code exec.bit.data.BitServerHandshake}
    */
-  public  static final class BitServerHandshake extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.data.BitServerHandshake)
-      BitServerHandshakeOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class BitServerHandshake extends
+      com.google.protobuf.GeneratedMessage
+      implements BitServerHandshakeOrBuilder {
     // Use BitServerHandshake.newBuilder() to construct.
-    private BitServerHandshake(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private BitServerHandshake(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private BitServerHandshake() {
-      rpcVersion_ = 0;
-      authenticationMechanisms_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+    private BitServerHandshake(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final BitServerHandshake defaultInstance;
+    public static BitServerHandshake getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public BitServerHandshake getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private BitServerHandshake(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -859,25 +730,24 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               rpcVersion_ = input.readInt32();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                 authenticationMechanisms_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField0_ |= 0x00000002;
               }
-              authenticationMechanisms_.add(bs);
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              authenticationMechanisms_.add(input.readBytes());
               break;
             }
           }
@@ -886,10 +756,10 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-          authenticationMechanisms_ = authenticationMechanisms_.getUnmodifiableView();
+          authenticationMechanisms_ = new com.google.protobuf.UnmodifiableLazyStringList(authenticationMechanisms_);
         }
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -900,15 +770,30 @@
       return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitServerHandshake_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitServerHandshake_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitData.BitServerHandshake.class, org.apache.drill.exec.proto.BitData.BitServerHandshake.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<BitServerHandshake> PARSER =
+        new com.google.protobuf.AbstractParser<BitServerHandshake>() {
+      public BitServerHandshake parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new BitServerHandshake(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<BitServerHandshake> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 rpc_version = 1;
     public static final int RPC_VERSION_FIELD_NUMBER = 1;
     private int rpcVersion_;
     /**
@@ -924,12 +809,13 @@
       return rpcVersion_;
     }
 
+    // repeated string authenticationMechanisms = 2;
     public static final int AUTHENTICATIONMECHANISMS_FIELD_NUMBER = 2;
     private com.google.protobuf.LazyStringList authenticationMechanisms_;
     /**
      * <code>repeated string authenticationMechanisms = 2;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getAuthenticationMechanismsList() {
       return authenticationMechanisms_;
     }
@@ -953,32 +839,34 @@
       return authenticationMechanisms_.getByteString(index);
     }
 
+    private void initFields() {
+      rpcVersion_ = 0;
+      authenticationMechanisms_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(1, rpcVersion_);
       }
       for (int i = 0; i < authenticationMechanisms_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, authenticationMechanisms_.getRaw(i));
+        output.writeBytes(2, authenticationMechanisms_.getByteString(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -989,69 +877,24 @@
       {
         int dataSize = 0;
         for (int i = 0; i < authenticationMechanisms_.size(); i++) {
-          dataSize += computeStringSizeNoTag(authenticationMechanisms_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(authenticationMechanisms_.getByteString(i));
         }
         size += dataSize;
         size += 1 * getAuthenticationMechanismsList().size();
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitData.BitServerHandshake)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitData.BitServerHandshake other = (org.apache.drill.exec.proto.BitData.BitServerHandshake) obj;
-
-      boolean result = true;
-      result = result && (hasRpcVersion() == other.hasRpcVersion());
-      if (hasRpcVersion()) {
-        result = result && (getRpcVersion()
-            == other.getRpcVersion());
-      }
-      result = result && getAuthenticationMechanismsList()
-          .equals(other.getAuthenticationMechanismsList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasRpcVersion()) {
-        hash = (37 * hash) + RPC_VERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getRpcVersion();
-      }
-      if (getAuthenticationMechanismsCount() > 0) {
-        hash = (37 * hash) + AUTHENTICATIONMECHANISMS_FIELD_NUMBER;
-        hash = (53 * hash) + getAuthenticationMechanismsList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitData.BitServerHandshake parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitData.BitServerHandshake parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitData.BitServerHandshake parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -1075,59 +918,46 @@
     }
     public static org.apache.drill.exec.proto.BitData.BitServerHandshake parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.BitServerHandshake parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitData.BitServerHandshake parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.BitServerHandshake parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitData.BitServerHandshake parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.BitServerHandshake parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitData.BitServerHandshake prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -1135,16 +965,14 @@
      * Protobuf type {@code exec.bit.data.BitServerHandshake}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.data.BitServerHandshake)
-        org.apache.drill.exec.proto.BitData.BitServerHandshakeOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitData.BitServerHandshakeOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitServerHandshake_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitServerHandshake_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -1157,16 +985,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         rpcVersion_ = 0;
@@ -1176,18 +1006,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_BitServerHandshake_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.BitServerHandshake getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitData.BitServerHandshake.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.BitServerHandshake build() {
         org.apache.drill.exec.proto.BitData.BitServerHandshake result = buildPartial();
         if (!result.isInitialized()) {
@@ -1196,7 +1027,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.BitServerHandshake buildPartial() {
         org.apache.drill.exec.proto.BitData.BitServerHandshake result = new org.apache.drill.exec.proto.BitData.BitServerHandshake(this);
         int from_bitField0_ = bitField0_;
@@ -1206,7 +1036,8 @@
         }
         result.rpcVersion_ = rpcVersion_;
         if (((bitField0_ & 0x00000002) == 0x00000002)) {
-          authenticationMechanisms_ = authenticationMechanisms_.getUnmodifiableView();
+          authenticationMechanisms_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              authenticationMechanisms_);
           bitField0_ = (bitField0_ & ~0x00000002);
         }
         result.authenticationMechanisms_ = authenticationMechanisms_;
@@ -1215,39 +1046,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitData.BitServerHandshake) {
           return mergeFrom((org.apache.drill.exec.proto.BitData.BitServerHandshake)other);
@@ -1272,17 +1070,14 @@
           }
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -1292,7 +1087,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitData.BitServerHandshake) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -1302,6 +1097,7 @@
       }
       private int bitField0_;
 
+      // optional int32 rpc_version = 1;
       private int rpcVersion_ ;
       /**
        * <code>optional int32 rpc_version = 1;</code>
@@ -1334,6 +1130,7 @@
         return this;
       }
 
+      // repeated string authenticationMechanisms = 2;
       private com.google.protobuf.LazyStringList authenticationMechanisms_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureAuthenticationMechanismsIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
@@ -1344,9 +1141,9 @@
       /**
        * <code>repeated string authenticationMechanisms = 2;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getAuthenticationMechanismsList() {
-        return authenticationMechanisms_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(authenticationMechanisms_);
       }
       /**
        * <code>repeated string authenticationMechanisms = 2;</code>
@@ -1399,8 +1196,7 @@
       public Builder addAllAuthenticationMechanisms(
           java.lang.Iterable<java.lang.String> values) {
         ensureAuthenticationMechanismsIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, authenticationMechanisms_);
+        super.addAll(values, authenticationMechanisms_);
         onChanged();
         return this;
       }
@@ -1426,63 +1222,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.data.BitServerHandshake)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.data.BitServerHandshake)
-    private static final org.apache.drill.exec.proto.BitData.BitServerHandshake DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitData.BitServerHandshake();
+      defaultInstance = new BitServerHandshake(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitData.BitServerHandshake getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<BitServerHandshake>
-        PARSER = new com.google.protobuf.AbstractParser<BitServerHandshake>() {
-      @java.lang.Override
-      public BitServerHandshake parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new BitServerHandshake(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<BitServerHandshake> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<BitServerHandshake> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitData.BitServerHandshake getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.data.BitServerHandshake)
   }
 
-  public interface FragmentRecordBatchOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.data.FragmentRecordBatch)
-      com.google.protobuf.MessageOrBuilder {
+  public interface FragmentRecordBatchOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.QueryId query_id = 1;
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
@@ -1496,6 +1251,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder();
 
+    // optional int32 receiving_major_fragment_id = 2;
     /**
      * <code>optional int32 receiving_major_fragment_id = 2;</code>
      */
@@ -1505,6 +1261,7 @@
      */
     int getReceivingMajorFragmentId();
 
+    // repeated int32 receiving_minor_fragment_id = 3;
     /**
      * <code>repeated int32 receiving_minor_fragment_id = 3;</code>
      */
@@ -1518,6 +1275,7 @@
      */
     int getReceivingMinorFragmentId(int index);
 
+    // optional int32 sending_major_fragment_id = 4;
     /**
      * <code>optional int32 sending_major_fragment_id = 4;</code>
      */
@@ -1527,6 +1285,7 @@
      */
     int getSendingMajorFragmentId();
 
+    // optional int32 sending_minor_fragment_id = 5;
     /**
      * <code>optional int32 sending_minor_fragment_id = 5;</code>
      */
@@ -1536,6 +1295,7 @@
      */
     int getSendingMinorFragmentId();
 
+    // optional .exec.shared.RecordBatchDef def = 6;
     /**
      * <code>optional .exec.shared.RecordBatchDef def = 6;</code>
      */
@@ -1549,6 +1309,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder getDefOrBuilder();
 
+    // optional bool isLastBatch = 7;
     /**
      * <code>optional bool isLastBatch = 7;</code>
      */
@@ -1561,36 +1322,36 @@
   /**
    * Protobuf type {@code exec.bit.data.FragmentRecordBatch}
    */
-  public  static final class FragmentRecordBatch extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.data.FragmentRecordBatch)
-      FragmentRecordBatchOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class FragmentRecordBatch extends
+      com.google.protobuf.GeneratedMessage
+      implements FragmentRecordBatchOrBuilder {
     // Use FragmentRecordBatch.newBuilder() to construct.
-    private FragmentRecordBatch(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private FragmentRecordBatch(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private FragmentRecordBatch() {
-      receivingMajorFragmentId_ = 0;
-      receivingMinorFragmentId_ = java.util.Collections.emptyList();
-      sendingMajorFragmentId_ = 0;
-      sendingMinorFragmentId_ = 0;
-      isLastBatch_ = false;
+    private FragmentRecordBatch(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final FragmentRecordBatch defaultInstance;
+    public static FragmentRecordBatch getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public FragmentRecordBatch getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private FragmentRecordBatch(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -1602,6 +1363,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserBitShared.QueryId.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -1669,20 +1437,13 @@
               isLastBatch_ = input.readBool();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
           receivingMinorFragmentId_ = java.util.Collections.unmodifiableList(receivingMinorFragmentId_);
@@ -1696,15 +1457,30 @@
       return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_FragmentRecordBatch_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_FragmentRecordBatch_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitData.FragmentRecordBatch.class, org.apache.drill.exec.proto.BitData.FragmentRecordBatch.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<FragmentRecordBatch> PARSER =
+        new com.google.protobuf.AbstractParser<FragmentRecordBatch>() {
+      public FragmentRecordBatch parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new FragmentRecordBatch(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<FragmentRecordBatch> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.shared.QueryId query_id = 1;
     public static final int QUERY_ID_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_;
     /**
@@ -1717,15 +1493,16 @@
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
 
+    // optional int32 receiving_major_fragment_id = 2;
     public static final int RECEIVING_MAJOR_FRAGMENT_ID_FIELD_NUMBER = 2;
     private int receivingMajorFragmentId_;
     /**
@@ -1741,6 +1518,7 @@
       return receivingMajorFragmentId_;
     }
 
+    // repeated int32 receiving_minor_fragment_id = 3;
     public static final int RECEIVING_MINOR_FRAGMENT_ID_FIELD_NUMBER = 3;
     private java.util.List<java.lang.Integer> receivingMinorFragmentId_;
     /**
@@ -1763,6 +1541,7 @@
       return receivingMinorFragmentId_.get(index);
     }
 
+    // optional int32 sending_major_fragment_id = 4;
     public static final int SENDING_MAJOR_FRAGMENT_ID_FIELD_NUMBER = 4;
     private int sendingMajorFragmentId_;
     /**
@@ -1778,6 +1557,7 @@
       return sendingMajorFragmentId_;
     }
 
+    // optional int32 sending_minor_fragment_id = 5;
     public static final int SENDING_MINOR_FRAGMENT_ID_FIELD_NUMBER = 5;
     private int sendingMinorFragmentId_;
     /**
@@ -1793,6 +1573,7 @@
       return sendingMinorFragmentId_;
     }
 
+    // optional .exec.shared.RecordBatchDef def = 6;
     public static final int DEF_FIELD_NUMBER = 6;
     private org.apache.drill.exec.proto.UserBitShared.RecordBatchDef def_;
     /**
@@ -1805,15 +1586,16 @@
      * <code>optional .exec.shared.RecordBatchDef def = 6;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.RecordBatchDef getDef() {
-      return def_ == null ? org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance() : def_;
+      return def_;
     }
     /**
      * <code>optional .exec.shared.RecordBatchDef def = 6;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder getDefOrBuilder() {
-      return def_ == null ? org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance() : def_;
+      return def_;
     }
 
+    // optional bool isLastBatch = 7;
     public static final int ISLASTBATCH_FIELD_NUMBER = 7;
     private boolean isLastBatch_;
     /**
@@ -1829,22 +1611,29 @@
       return isLastBatch_;
     }
 
+    private void initFields() {
+      queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      receivingMajorFragmentId_ = 0;
+      receivingMinorFragmentId_ = java.util.Collections.emptyList();
+      sendingMajorFragmentId_ = 0;
+      sendingMinorFragmentId_ = 0;
+      def_ = org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance();
+      isLastBatch_ = false;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getQueryId());
+        output.writeMessage(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt32(2, receivingMajorFragmentId_);
@@ -1859,23 +1648,23 @@
         output.writeInt32(5, sendingMinorFragmentId_);
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        output.writeMessage(6, getDef());
+        output.writeMessage(6, def_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
         output.writeBool(7, isLastBatch_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getQueryId());
+          .computeMessageSize(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -1900,116 +1689,24 @@
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(6, getDef());
+          .computeMessageSize(6, def_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(7, isLastBatch_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitData.FragmentRecordBatch)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitData.FragmentRecordBatch other = (org.apache.drill.exec.proto.BitData.FragmentRecordBatch) obj;
-
-      boolean result = true;
-      result = result && (hasQueryId() == other.hasQueryId());
-      if (hasQueryId()) {
-        result = result && getQueryId()
-            .equals(other.getQueryId());
-      }
-      result = result && (hasReceivingMajorFragmentId() == other.hasReceivingMajorFragmentId());
-      if (hasReceivingMajorFragmentId()) {
-        result = result && (getReceivingMajorFragmentId()
-            == other.getReceivingMajorFragmentId());
-      }
-      result = result && getReceivingMinorFragmentIdList()
-          .equals(other.getReceivingMinorFragmentIdList());
-      result = result && (hasSendingMajorFragmentId() == other.hasSendingMajorFragmentId());
-      if (hasSendingMajorFragmentId()) {
-        result = result && (getSendingMajorFragmentId()
-            == other.getSendingMajorFragmentId());
-      }
-      result = result && (hasSendingMinorFragmentId() == other.hasSendingMinorFragmentId());
-      if (hasSendingMinorFragmentId()) {
-        result = result && (getSendingMinorFragmentId()
-            == other.getSendingMinorFragmentId());
-      }
-      result = result && (hasDef() == other.hasDef());
-      if (hasDef()) {
-        result = result && getDef()
-            .equals(other.getDef());
-      }
-      result = result && (hasIsLastBatch() == other.hasIsLastBatch());
-      if (hasIsLastBatch()) {
-        result = result && (getIsLastBatch()
-            == other.getIsLastBatch());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasQueryId()) {
-        hash = (37 * hash) + QUERY_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getQueryId().hashCode();
-      }
-      if (hasReceivingMajorFragmentId()) {
-        hash = (37 * hash) + RECEIVING_MAJOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getReceivingMajorFragmentId();
-      }
-      if (getReceivingMinorFragmentIdCount() > 0) {
-        hash = (37 * hash) + RECEIVING_MINOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getReceivingMinorFragmentIdList().hashCode();
-      }
-      if (hasSendingMajorFragmentId()) {
-        hash = (37 * hash) + SENDING_MAJOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getSendingMajorFragmentId();
-      }
-      if (hasSendingMinorFragmentId()) {
-        hash = (37 * hash) + SENDING_MINOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getSendingMinorFragmentId();
-      }
-      if (hasDef()) {
-        hash = (37 * hash) + DEF_FIELD_NUMBER;
-        hash = (53 * hash) + getDef().hashCode();
-      }
-      if (hasIsLastBatch()) {
-        hash = (37 * hash) + ISLASTBATCH_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getIsLastBatch());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -2033,59 +1730,46 @@
     }
     public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitData.FragmentRecordBatch prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -2093,16 +1777,14 @@
      * Protobuf type {@code exec.bit.data.FragmentRecordBatch}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.data.FragmentRecordBatch)
-        org.apache.drill.exec.proto.BitData.FragmentRecordBatchOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitData.FragmentRecordBatchOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_FragmentRecordBatch_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_FragmentRecordBatch_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -2115,22 +1797,24 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getQueryIdFieldBuilder();
           getDefFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
         } else {
           queryIdBuilder_.clear();
         }
@@ -2144,7 +1828,7 @@
         sendingMinorFragmentId_ = 0;
         bitField0_ = (bitField0_ & ~0x00000010);
         if (defBuilder_ == null) {
-          def_ = null;
+          def_ = org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance();
         } else {
           defBuilder_.clear();
         }
@@ -2154,18 +1838,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_FragmentRecordBatch_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.FragmentRecordBatch getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitData.FragmentRecordBatch.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.FragmentRecordBatch build() {
         org.apache.drill.exec.proto.BitData.FragmentRecordBatch result = buildPartial();
         if (!result.isInitialized()) {
@@ -2174,7 +1859,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.FragmentRecordBatch buildPartial() {
         org.apache.drill.exec.proto.BitData.FragmentRecordBatch result = new org.apache.drill.exec.proto.BitData.FragmentRecordBatch(this);
         int from_bitField0_ = bitField0_;
@@ -2221,39 +1905,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitData.FragmentRecordBatch) {
           return mergeFrom((org.apache.drill.exec.proto.BitData.FragmentRecordBatch)other);
@@ -2293,17 +1944,14 @@
         if (other.hasIsLastBatch()) {
           setIsLastBatch(other.getIsLastBatch());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -2313,7 +1961,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitData.FragmentRecordBatch) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -2323,8 +1971,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.QueryId query_id = 1;
+      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> queryIdBuilder_;
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
@@ -2337,7 +1986,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
         if (queryIdBuilder_ == null) {
-          return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         } else {
           return queryIdBuilder_.getMessage();
         }
@@ -2378,7 +2027,6 @@
       public Builder mergeQueryId(org.apache.drill.exec.proto.UserBitShared.QueryId value) {
         if (queryIdBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              queryId_ != null &&
               queryId_ != org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance()) {
             queryId_ =
               org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(queryId_).mergeFrom(value).buildPartial();
@@ -2397,7 +2045,7 @@
        */
       public Builder clearQueryId() {
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
           onChanged();
         } else {
           queryIdBuilder_.clear();
@@ -2420,20 +2068,19 @@
         if (queryIdBuilder_ != null) {
           return queryIdBuilder_.getMessageOrBuilder();
         } else {
-          return queryId_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         }
       }
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> 
           getQueryIdFieldBuilder() {
         if (queryIdBuilder_ == null) {
-          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder>(
-                  getQueryId(),
+                  queryId_,
                   getParentForChildren(),
                   isClean());
           queryId_ = null;
@@ -2441,6 +2088,7 @@
         return queryIdBuilder_;
       }
 
+      // optional int32 receiving_major_fragment_id = 2;
       private int receivingMajorFragmentId_ ;
       /**
        * <code>optional int32 receiving_major_fragment_id = 2;</code>
@@ -2473,6 +2121,7 @@
         return this;
       }
 
+      // repeated int32 receiving_minor_fragment_id = 3;
       private java.util.List<java.lang.Integer> receivingMinorFragmentId_ = java.util.Collections.emptyList();
       private void ensureReceivingMinorFragmentIdIsMutable() {
         if (!((bitField0_ & 0x00000004) == 0x00000004)) {
@@ -2524,8 +2173,7 @@
       public Builder addAllReceivingMinorFragmentId(
           java.lang.Iterable<? extends java.lang.Integer> values) {
         ensureReceivingMinorFragmentIdIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, receivingMinorFragmentId_);
+        super.addAll(values, receivingMinorFragmentId_);
         onChanged();
         return this;
       }
@@ -2539,6 +2187,7 @@
         return this;
       }
 
+      // optional int32 sending_major_fragment_id = 4;
       private int sendingMajorFragmentId_ ;
       /**
        * <code>optional int32 sending_major_fragment_id = 4;</code>
@@ -2571,6 +2220,7 @@
         return this;
       }
 
+      // optional int32 sending_minor_fragment_id = 5;
       private int sendingMinorFragmentId_ ;
       /**
        * <code>optional int32 sending_minor_fragment_id = 5;</code>
@@ -2603,8 +2253,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.RecordBatchDef def_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.RecordBatchDef def = 6;
+      private org.apache.drill.exec.proto.UserBitShared.RecordBatchDef def_ = org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.RecordBatchDef, org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.Builder, org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder> defBuilder_;
       /**
        * <code>optional .exec.shared.RecordBatchDef def = 6;</code>
@@ -2617,7 +2268,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.RecordBatchDef getDef() {
         if (defBuilder_ == null) {
-          return def_ == null ? org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance() : def_;
+          return def_;
         } else {
           return defBuilder_.getMessage();
         }
@@ -2658,7 +2309,6 @@
       public Builder mergeDef(org.apache.drill.exec.proto.UserBitShared.RecordBatchDef value) {
         if (defBuilder_ == null) {
           if (((bitField0_ & 0x00000020) == 0x00000020) &&
-              def_ != null &&
               def_ != org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance()) {
             def_ =
               org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.newBuilder(def_).mergeFrom(value).buildPartial();
@@ -2677,7 +2327,7 @@
        */
       public Builder clearDef() {
         if (defBuilder_ == null) {
-          def_ = null;
+          def_ = org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance();
           onChanged();
         } else {
           defBuilder_.clear();
@@ -2700,20 +2350,19 @@
         if (defBuilder_ != null) {
           return defBuilder_.getMessageOrBuilder();
         } else {
-          return def_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance() : def_;
+          return def_;
         }
       }
       /**
        * <code>optional .exec.shared.RecordBatchDef def = 6;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.RecordBatchDef, org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.Builder, org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder> 
           getDefFieldBuilder() {
         if (defBuilder_ == null) {
-          defBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          defBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.RecordBatchDef, org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.Builder, org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder>(
-                  getDef(),
+                  def_,
                   getParentForChildren(),
                   isClean());
           def_ = null;
@@ -2721,6 +2370,7 @@
         return defBuilder_;
       }
 
+      // optional bool isLastBatch = 7;
       private boolean isLastBatch_ ;
       /**
        * <code>optional bool isLastBatch = 7;</code>
@@ -2752,63 +2402,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.data.FragmentRecordBatch)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.data.FragmentRecordBatch)
-    private static final org.apache.drill.exec.proto.BitData.FragmentRecordBatch DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitData.FragmentRecordBatch();
+      defaultInstance = new FragmentRecordBatch(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitData.FragmentRecordBatch getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<FragmentRecordBatch>
-        PARSER = new com.google.protobuf.AbstractParser<FragmentRecordBatch>() {
-      @java.lang.Override
-      public FragmentRecordBatch parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new FragmentRecordBatch(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<FragmentRecordBatch> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<FragmentRecordBatch> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitData.FragmentRecordBatch getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.data.FragmentRecordBatch)
   }
 
-  public interface RuntimeFilterBDefOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.data.RuntimeFilterBDef)
-      com.google.protobuf.MessageOrBuilder {
+  public interface RuntimeFilterBDefOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.QueryId query_id = 1;
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
@@ -2822,6 +2431,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder();
 
+    // optional int32 major_fragment_id = 2;
     /**
      * <code>optional int32 major_fragment_id = 2;</code>
      */
@@ -2831,6 +2441,7 @@
      */
     int getMajorFragmentId();
 
+    // optional int32 minor_fragment_id = 3;
     /**
      * <code>optional int32 minor_fragment_id = 3;</code>
      */
@@ -2840,23 +2451,25 @@
      */
     int getMinorFragmentId();
 
+    // optional bool to_foreman = 4;
     /**
+     * <code>optional bool to_foreman = 4;</code>
+     *
      * <pre>
      * true means sending to foreman,false means sending to scan nodes
      * </pre>
-     *
-     * <code>optional bool to_foreman = 4;</code>
      */
     boolean hasToForeman();
     /**
+     * <code>optional bool to_foreman = 4;</code>
+     *
      * <pre>
      * true means sending to foreman,false means sending to scan nodes
      * </pre>
-     *
-     * <code>optional bool to_foreman = 4;</code>
      */
     boolean getToForeman();
 
+    // repeated int32 bloom_filter_size_in_bytes = 5;
     /**
      * <code>repeated int32 bloom_filter_size_in_bytes = 5;</code>
      */
@@ -2870,110 +2483,111 @@
      */
     int getBloomFilterSizeInBytes(int index);
 
+    // repeated string probe_fields = 6;
     /**
+     * <code>repeated string probe_fields = 6;</code>
+     *
      * <pre>
      * probe fields with corresponding BloomFilters
      * </pre>
-     *
-     * <code>repeated string probe_fields = 6;</code>
      */
     java.util.List<java.lang.String>
-        getProbeFieldsList();
+    getProbeFieldsList();
     /**
+     * <code>repeated string probe_fields = 6;</code>
+     *
      * <pre>
      * probe fields with corresponding BloomFilters
      * </pre>
-     *
-     * <code>repeated string probe_fields = 6;</code>
      */
     int getProbeFieldsCount();
     /**
+     * <code>repeated string probe_fields = 6;</code>
+     *
      * <pre>
      * probe fields with corresponding BloomFilters
      * </pre>
-     *
-     * <code>repeated string probe_fields = 6;</code>
      */
     java.lang.String getProbeFields(int index);
     /**
+     * <code>repeated string probe_fields = 6;</code>
+     *
      * <pre>
      * probe fields with corresponding BloomFilters
      * </pre>
-     *
-     * <code>repeated string probe_fields = 6;</code>
      */
     com.google.protobuf.ByteString
         getProbeFieldsBytes(int index);
 
+    // optional int32 hj_op_id = 7;
     /**
+     * <code>optional int32 hj_op_id = 7;</code>
+     *
      * <pre>
      * the operator id of the HashJoin which generates this RuntimeFilter
      * </pre>
-     *
-     * <code>optional int32 hj_op_id = 7;</code>
      */
     boolean hasHjOpId();
     /**
+     * <code>optional int32 hj_op_id = 7;</code>
+     *
      * <pre>
      * the operator id of the HashJoin which generates this RuntimeFilter
      * </pre>
-     *
-     * <code>optional int32 hj_op_id = 7;</code>
      */
     int getHjOpId();
 
+    // optional int64 rf_identifier = 8;
     /**
+     * <code>optional int64 rf_identifier = 8;</code>
+     *
      * <pre>
      * the runtime filter identifier
      * </pre>
-     *
-     * <code>optional int64 rf_identifier = 8;</code>
      */
     boolean hasRfIdentifier();
     /**
+     * <code>optional int64 rf_identifier = 8;</code>
+     *
      * <pre>
      * the runtime filter identifier
      * </pre>
-     *
-     * <code>optional int64 rf_identifier = 8;</code>
      */
     long getRfIdentifier();
   }
   /**
    * Protobuf type {@code exec.bit.data.RuntimeFilterBDef}
    */
-  public  static final class RuntimeFilterBDef extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.data.RuntimeFilterBDef)
-      RuntimeFilterBDefOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class RuntimeFilterBDef extends
+      com.google.protobuf.GeneratedMessage
+      implements RuntimeFilterBDefOrBuilder {
     // Use RuntimeFilterBDef.newBuilder() to construct.
-    private RuntimeFilterBDef(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private RuntimeFilterBDef(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private RuntimeFilterBDef() {
-      majorFragmentId_ = 0;
-      minorFragmentId_ = 0;
-      toForeman_ = false;
-      bloomFilterSizeInBytes_ = java.util.Collections.emptyList();
-      probeFields_ = com.google.protobuf.LazyStringArrayList.EMPTY;
-      hjOpId_ = 0;
-      rfIdentifier_ = 0L;
+    private RuntimeFilterBDef(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final RuntimeFilterBDef defaultInstance;
+    public static RuntimeFilterBDef getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public RuntimeFilterBDef getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private RuntimeFilterBDef(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -2985,6 +2599,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserBitShared.QueryId.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -3035,12 +2656,11 @@
               break;
             }
             case 50: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
                 probeFields_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField0_ |= 0x00000020;
               }
-              probeFields_.add(bs);
+              probeFields_.add(input.readBytes());
               break;
             }
             case 56: {
@@ -3053,26 +2673,19 @@
               rfIdentifier_ = input.readInt64();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
           bloomFilterSizeInBytes_ = java.util.Collections.unmodifiableList(bloomFilterSizeInBytes_);
         }
         if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-          probeFields_ = probeFields_.getUnmodifiableView();
+          probeFields_ = new com.google.protobuf.UnmodifiableLazyStringList(probeFields_);
         }
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -3083,15 +2696,30 @@
       return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_RuntimeFilterBDef_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_RuntimeFilterBDef_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.BitData.RuntimeFilterBDef.class, org.apache.drill.exec.proto.BitData.RuntimeFilterBDef.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<RuntimeFilterBDef> PARSER =
+        new com.google.protobuf.AbstractParser<RuntimeFilterBDef>() {
+      public RuntimeFilterBDef parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new RuntimeFilterBDef(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<RuntimeFilterBDef> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.shared.QueryId query_id = 1;
     public static final int QUERY_ID_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_;
     /**
@@ -3104,15 +2732,16 @@
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
 
+    // optional int32 major_fragment_id = 2;
     public static final int MAJOR_FRAGMENT_ID_FIELD_NUMBER = 2;
     private int majorFragmentId_;
     /**
@@ -3128,6 +2757,7 @@
       return majorFragmentId_;
     }
 
+    // optional int32 minor_fragment_id = 3;
     public static final int MINOR_FRAGMENT_ID_FIELD_NUMBER = 3;
     private int minorFragmentId_;
     /**
@@ -3143,29 +2773,31 @@
       return minorFragmentId_;
     }
 
+    // optional bool to_foreman = 4;
     public static final int TO_FOREMAN_FIELD_NUMBER = 4;
     private boolean toForeman_;
     /**
+     * <code>optional bool to_foreman = 4;</code>
+     *
      * <pre>
      * true means sending to foreman,false means sending to scan nodes
      * </pre>
-     *
-     * <code>optional bool to_foreman = 4;</code>
      */
     public boolean hasToForeman() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional bool to_foreman = 4;</code>
+     *
      * <pre>
      * true means sending to foreman,false means sending to scan nodes
      * </pre>
-     *
-     * <code>optional bool to_foreman = 4;</code>
      */
     public boolean getToForeman() {
       return toForeman_;
     }
 
+    // repeated int32 bloom_filter_size_in_bytes = 5;
     public static final int BLOOM_FILTER_SIZE_IN_BYTES_FIELD_NUMBER = 5;
     private java.util.List<java.lang.Integer> bloomFilterSizeInBytes_;
     /**
@@ -3188,113 +2820,124 @@
       return bloomFilterSizeInBytes_.get(index);
     }
 
+    // repeated string probe_fields = 6;
     public static final int PROBE_FIELDS_FIELD_NUMBER = 6;
     private com.google.protobuf.LazyStringList probeFields_;
     /**
+     * <code>repeated string probe_fields = 6;</code>
+     *
      * <pre>
      * probe fields with corresponding BloomFilters
      * </pre>
-     *
-     * <code>repeated string probe_fields = 6;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getProbeFieldsList() {
       return probeFields_;
     }
     /**
+     * <code>repeated string probe_fields = 6;</code>
+     *
      * <pre>
      * probe fields with corresponding BloomFilters
      * </pre>
-     *
-     * <code>repeated string probe_fields = 6;</code>
      */
     public int getProbeFieldsCount() {
       return probeFields_.size();
     }
     /**
+     * <code>repeated string probe_fields = 6;</code>
+     *
      * <pre>
      * probe fields with corresponding BloomFilters
      * </pre>
-     *
-     * <code>repeated string probe_fields = 6;</code>
      */
     public java.lang.String getProbeFields(int index) {
       return probeFields_.get(index);
     }
     /**
+     * <code>repeated string probe_fields = 6;</code>
+     *
      * <pre>
      * probe fields with corresponding BloomFilters
      * </pre>
-     *
-     * <code>repeated string probe_fields = 6;</code>
      */
     public com.google.protobuf.ByteString
         getProbeFieldsBytes(int index) {
       return probeFields_.getByteString(index);
     }
 
+    // optional int32 hj_op_id = 7;
     public static final int HJ_OP_ID_FIELD_NUMBER = 7;
     private int hjOpId_;
     /**
+     * <code>optional int32 hj_op_id = 7;</code>
+     *
      * <pre>
      * the operator id of the HashJoin which generates this RuntimeFilter
      * </pre>
-     *
-     * <code>optional int32 hj_op_id = 7;</code>
      */
     public boolean hasHjOpId() {
       return ((bitField0_ & 0x00000010) == 0x00000010);
     }
     /**
+     * <code>optional int32 hj_op_id = 7;</code>
+     *
      * <pre>
      * the operator id of the HashJoin which generates this RuntimeFilter
      * </pre>
-     *
-     * <code>optional int32 hj_op_id = 7;</code>
      */
     public int getHjOpId() {
       return hjOpId_;
     }
 
+    // optional int64 rf_identifier = 8;
     public static final int RF_IDENTIFIER_FIELD_NUMBER = 8;
     private long rfIdentifier_;
     /**
+     * <code>optional int64 rf_identifier = 8;</code>
+     *
      * <pre>
      * the runtime filter identifier
      * </pre>
-     *
-     * <code>optional int64 rf_identifier = 8;</code>
      */
     public boolean hasRfIdentifier() {
       return ((bitField0_ & 0x00000020) == 0x00000020);
     }
     /**
+     * <code>optional int64 rf_identifier = 8;</code>
+     *
      * <pre>
      * the runtime filter identifier
      * </pre>
-     *
-     * <code>optional int64 rf_identifier = 8;</code>
      */
     public long getRfIdentifier() {
       return rfIdentifier_;
     }
 
+    private void initFields() {
+      queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      majorFragmentId_ = 0;
+      minorFragmentId_ = 0;
+      toForeman_ = false;
+      bloomFilterSizeInBytes_ = java.util.Collections.emptyList();
+      probeFields_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+      hjOpId_ = 0;
+      rfIdentifier_ = 0L;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getQueryId());
+        output.writeMessage(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt32(2, majorFragmentId_);
@@ -3309,7 +2952,7 @@
         output.writeInt32(5, bloomFilterSizeInBytes_.get(i));
       }
       for (int i = 0; i < probeFields_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, probeFields_.getRaw(i));
+        output.writeBytes(6, probeFields_.getByteString(i));
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         output.writeInt32(7, hjOpId_);
@@ -3317,18 +2960,18 @@
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
         output.writeInt64(8, rfIdentifier_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getQueryId());
+          .computeMessageSize(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -3354,7 +2997,8 @@
       {
         int dataSize = 0;
         for (int i = 0; i < probeFields_.size(); i++) {
-          dataSize += computeStringSizeNoTag(probeFields_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(probeFields_.getByteString(i));
         }
         size += dataSize;
         size += 1 * getProbeFieldsList().size();
@@ -3367,117 +3011,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt64Size(8, rfIdentifier_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.BitData.RuntimeFilterBDef)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.BitData.RuntimeFilterBDef other = (org.apache.drill.exec.proto.BitData.RuntimeFilterBDef) obj;
-
-      boolean result = true;
-      result = result && (hasQueryId() == other.hasQueryId());
-      if (hasQueryId()) {
-        result = result && getQueryId()
-            .equals(other.getQueryId());
-      }
-      result = result && (hasMajorFragmentId() == other.hasMajorFragmentId());
-      if (hasMajorFragmentId()) {
-        result = result && (getMajorFragmentId()
-            == other.getMajorFragmentId());
-      }
-      result = result && (hasMinorFragmentId() == other.hasMinorFragmentId());
-      if (hasMinorFragmentId()) {
-        result = result && (getMinorFragmentId()
-            == other.getMinorFragmentId());
-      }
-      result = result && (hasToForeman() == other.hasToForeman());
-      if (hasToForeman()) {
-        result = result && (getToForeman()
-            == other.getToForeman());
-      }
-      result = result && getBloomFilterSizeInBytesList()
-          .equals(other.getBloomFilterSizeInBytesList());
-      result = result && getProbeFieldsList()
-          .equals(other.getProbeFieldsList());
-      result = result && (hasHjOpId() == other.hasHjOpId());
-      if (hasHjOpId()) {
-        result = result && (getHjOpId()
-            == other.getHjOpId());
-      }
-      result = result && (hasRfIdentifier() == other.hasRfIdentifier());
-      if (hasRfIdentifier()) {
-        result = result && (getRfIdentifier()
-            == other.getRfIdentifier());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasQueryId()) {
-        hash = (37 * hash) + QUERY_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getQueryId().hashCode();
-      }
-      if (hasMajorFragmentId()) {
-        hash = (37 * hash) + MAJOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getMajorFragmentId();
-      }
-      if (hasMinorFragmentId()) {
-        hash = (37 * hash) + MINOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getMinorFragmentId();
-      }
-      if (hasToForeman()) {
-        hash = (37 * hash) + TO_FOREMAN_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getToForeman());
-      }
-      if (getBloomFilterSizeInBytesCount() > 0) {
-        hash = (37 * hash) + BLOOM_FILTER_SIZE_IN_BYTES_FIELD_NUMBER;
-        hash = (53 * hash) + getBloomFilterSizeInBytesList().hashCode();
-      }
-      if (getProbeFieldsCount() > 0) {
-        hash = (37 * hash) + PROBE_FIELDS_FIELD_NUMBER;
-        hash = (53 * hash) + getProbeFieldsList().hashCode();
-      }
-      if (hasHjOpId()) {
-        hash = (37 * hash) + HJ_OP_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getHjOpId();
-      }
-      if (hasRfIdentifier()) {
-        hash = (37 * hash) + RF_IDENTIFIER_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getRfIdentifier());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -3501,59 +3046,46 @@
     }
     public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.BitData.RuntimeFilterBDef prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -3561,16 +3093,14 @@
      * Protobuf type {@code exec.bit.data.RuntimeFilterBDef}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.data.RuntimeFilterBDef)
-        org.apache.drill.exec.proto.BitData.RuntimeFilterBDefOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.BitData.RuntimeFilterBDefOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_RuntimeFilterBDef_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_RuntimeFilterBDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -3583,21 +3113,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getQueryIdFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
         } else {
           queryIdBuilder_.clear();
         }
@@ -3619,18 +3151,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.BitData.internal_static_exec_bit_data_RuntimeFilterBDef_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.RuntimeFilterBDef getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.BitData.RuntimeFilterBDef.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.RuntimeFilterBDef build() {
         org.apache.drill.exec.proto.BitData.RuntimeFilterBDef result = buildPartial();
         if (!result.isInitialized()) {
@@ -3639,7 +3172,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.BitData.RuntimeFilterBDef buildPartial() {
         org.apache.drill.exec.proto.BitData.RuntimeFilterBDef result = new org.apache.drill.exec.proto.BitData.RuntimeFilterBDef(this);
         int from_bitField0_ = bitField0_;
@@ -3670,7 +3202,8 @@
         }
         result.bloomFilterSizeInBytes_ = bloomFilterSizeInBytes_;
         if (((bitField0_ & 0x00000020) == 0x00000020)) {
-          probeFields_ = probeFields_.getUnmodifiableView();
+          probeFields_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              probeFields_);
           bitField0_ = (bitField0_ & ~0x00000020);
         }
         result.probeFields_ = probeFields_;
@@ -3687,39 +3220,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.BitData.RuntimeFilterBDef) {
           return mergeFrom((org.apache.drill.exec.proto.BitData.RuntimeFilterBDef)other);
@@ -3769,17 +3269,14 @@
         if (other.hasRfIdentifier()) {
           setRfIdentifier(other.getRfIdentifier());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -3789,7 +3286,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.BitData.RuntimeFilterBDef) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -3799,8 +3296,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.QueryId query_id = 1;
+      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> queryIdBuilder_;
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
@@ -3813,7 +3311,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
         if (queryIdBuilder_ == null) {
-          return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         } else {
           return queryIdBuilder_.getMessage();
         }
@@ -3854,7 +3352,6 @@
       public Builder mergeQueryId(org.apache.drill.exec.proto.UserBitShared.QueryId value) {
         if (queryIdBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              queryId_ != null &&
               queryId_ != org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance()) {
             queryId_ =
               org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(queryId_).mergeFrom(value).buildPartial();
@@ -3873,7 +3370,7 @@
        */
       public Builder clearQueryId() {
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
           onChanged();
         } else {
           queryIdBuilder_.clear();
@@ -3896,20 +3393,19 @@
         if (queryIdBuilder_ != null) {
           return queryIdBuilder_.getMessageOrBuilder();
         } else {
-          return queryId_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         }
       }
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> 
           getQueryIdFieldBuilder() {
         if (queryIdBuilder_ == null) {
-          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder>(
-                  getQueryId(),
+                  queryId_,
                   getParentForChildren(),
                   isClean());
           queryId_ = null;
@@ -3917,6 +3413,7 @@
         return queryIdBuilder_;
       }
 
+      // optional int32 major_fragment_id = 2;
       private int majorFragmentId_ ;
       /**
        * <code>optional int32 major_fragment_id = 2;</code>
@@ -3949,6 +3446,7 @@
         return this;
       }
 
+      // optional int32 minor_fragment_id = 3;
       private int minorFragmentId_ ;
       /**
        * <code>optional int32 minor_fragment_id = 3;</code>
@@ -3981,33 +3479,34 @@
         return this;
       }
 
+      // optional bool to_foreman = 4;
       private boolean toForeman_ ;
       /**
+       * <code>optional bool to_foreman = 4;</code>
+       *
        * <pre>
        * true means sending to foreman,false means sending to scan nodes
        * </pre>
-       *
-       * <code>optional bool to_foreman = 4;</code>
        */
       public boolean hasToForeman() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
+       * <code>optional bool to_foreman = 4;</code>
+       *
        * <pre>
        * true means sending to foreman,false means sending to scan nodes
        * </pre>
-       *
-       * <code>optional bool to_foreman = 4;</code>
        */
       public boolean getToForeman() {
         return toForeman_;
       }
       /**
+       * <code>optional bool to_foreman = 4;</code>
+       *
        * <pre>
        * true means sending to foreman,false means sending to scan nodes
        * </pre>
-       *
-       * <code>optional bool to_foreman = 4;</code>
        */
       public Builder setToForeman(boolean value) {
         bitField0_ |= 0x00000008;
@@ -4016,11 +3515,11 @@
         return this;
       }
       /**
+       * <code>optional bool to_foreman = 4;</code>
+       *
        * <pre>
        * true means sending to foreman,false means sending to scan nodes
        * </pre>
-       *
-       * <code>optional bool to_foreman = 4;</code>
        */
       public Builder clearToForeman() {
         bitField0_ = (bitField0_ & ~0x00000008);
@@ -4029,6 +3528,7 @@
         return this;
       }
 
+      // repeated int32 bloom_filter_size_in_bytes = 5;
       private java.util.List<java.lang.Integer> bloomFilterSizeInBytes_ = java.util.Collections.emptyList();
       private void ensureBloomFilterSizeInBytesIsMutable() {
         if (!((bitField0_ & 0x00000010) == 0x00000010)) {
@@ -4080,8 +3580,7 @@
       public Builder addAllBloomFilterSizeInBytes(
           java.lang.Iterable<? extends java.lang.Integer> values) {
         ensureBloomFilterSizeInBytesIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, bloomFilterSizeInBytes_);
+        super.addAll(values, bloomFilterSizeInBytes_);
         onChanged();
         return this;
       }
@@ -4095,6 +3594,7 @@
         return this;
       }
 
+      // repeated string probe_fields = 6;
       private com.google.protobuf.LazyStringList probeFields_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureProbeFieldsIsMutable() {
         if (!((bitField0_ & 0x00000020) == 0x00000020)) {
@@ -4103,53 +3603,53 @@
          }
       }
       /**
+       * <code>repeated string probe_fields = 6;</code>
+       *
        * <pre>
        * probe fields with corresponding BloomFilters
        * </pre>
-       *
-       * <code>repeated string probe_fields = 6;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getProbeFieldsList() {
-        return probeFields_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(probeFields_);
       }
       /**
+       * <code>repeated string probe_fields = 6;</code>
+       *
        * <pre>
        * probe fields with corresponding BloomFilters
        * </pre>
-       *
-       * <code>repeated string probe_fields = 6;</code>
        */
       public int getProbeFieldsCount() {
         return probeFields_.size();
       }
       /**
+       * <code>repeated string probe_fields = 6;</code>
+       *
        * <pre>
        * probe fields with corresponding BloomFilters
        * </pre>
-       *
-       * <code>repeated string probe_fields = 6;</code>
        */
       public java.lang.String getProbeFields(int index) {
         return probeFields_.get(index);
       }
       /**
+       * <code>repeated string probe_fields = 6;</code>
+       *
        * <pre>
        * probe fields with corresponding BloomFilters
        * </pre>
-       *
-       * <code>repeated string probe_fields = 6;</code>
        */
       public com.google.protobuf.ByteString
           getProbeFieldsBytes(int index) {
         return probeFields_.getByteString(index);
       }
       /**
+       * <code>repeated string probe_fields = 6;</code>
+       *
        * <pre>
        * probe fields with corresponding BloomFilters
        * </pre>
-       *
-       * <code>repeated string probe_fields = 6;</code>
        */
       public Builder setProbeFields(
           int index, java.lang.String value) {
@@ -4162,11 +3662,11 @@
         return this;
       }
       /**
+       * <code>repeated string probe_fields = 6;</code>
+       *
        * <pre>
        * probe fields with corresponding BloomFilters
        * </pre>
-       *
-       * <code>repeated string probe_fields = 6;</code>
        */
       public Builder addProbeFields(
           java.lang.String value) {
@@ -4179,26 +3679,25 @@
         return this;
       }
       /**
+       * <code>repeated string probe_fields = 6;</code>
+       *
        * <pre>
        * probe fields with corresponding BloomFilters
        * </pre>
-       *
-       * <code>repeated string probe_fields = 6;</code>
        */
       public Builder addAllProbeFields(
           java.lang.Iterable<java.lang.String> values) {
         ensureProbeFieldsIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, probeFields_);
+        super.addAll(values, probeFields_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated string probe_fields = 6;</code>
+       *
        * <pre>
        * probe fields with corresponding BloomFilters
        * </pre>
-       *
-       * <code>repeated string probe_fields = 6;</code>
        */
       public Builder clearProbeFields() {
         probeFields_ = com.google.protobuf.LazyStringArrayList.EMPTY;
@@ -4207,11 +3706,11 @@
         return this;
       }
       /**
+       * <code>repeated string probe_fields = 6;</code>
+       *
        * <pre>
        * probe fields with corresponding BloomFilters
        * </pre>
-       *
-       * <code>repeated string probe_fields = 6;</code>
        */
       public Builder addProbeFieldsBytes(
           com.google.protobuf.ByteString value) {
@@ -4224,33 +3723,34 @@
         return this;
       }
 
+      // optional int32 hj_op_id = 7;
       private int hjOpId_ ;
       /**
+       * <code>optional int32 hj_op_id = 7;</code>
+       *
        * <pre>
        * the operator id of the HashJoin which generates this RuntimeFilter
        * </pre>
-       *
-       * <code>optional int32 hj_op_id = 7;</code>
        */
       public boolean hasHjOpId() {
         return ((bitField0_ & 0x00000040) == 0x00000040);
       }
       /**
+       * <code>optional int32 hj_op_id = 7;</code>
+       *
        * <pre>
        * the operator id of the HashJoin which generates this RuntimeFilter
        * </pre>
-       *
-       * <code>optional int32 hj_op_id = 7;</code>
        */
       public int getHjOpId() {
         return hjOpId_;
       }
       /**
+       * <code>optional int32 hj_op_id = 7;</code>
+       *
        * <pre>
        * the operator id of the HashJoin which generates this RuntimeFilter
        * </pre>
-       *
-       * <code>optional int32 hj_op_id = 7;</code>
        */
       public Builder setHjOpId(int value) {
         bitField0_ |= 0x00000040;
@@ -4259,11 +3759,11 @@
         return this;
       }
       /**
+       * <code>optional int32 hj_op_id = 7;</code>
+       *
        * <pre>
        * the operator id of the HashJoin which generates this RuntimeFilter
        * </pre>
-       *
-       * <code>optional int32 hj_op_id = 7;</code>
        */
       public Builder clearHjOpId() {
         bitField0_ = (bitField0_ & ~0x00000040);
@@ -4272,33 +3772,34 @@
         return this;
       }
 
+      // optional int64 rf_identifier = 8;
       private long rfIdentifier_ ;
       /**
+       * <code>optional int64 rf_identifier = 8;</code>
+       *
        * <pre>
        * the runtime filter identifier
        * </pre>
-       *
-       * <code>optional int64 rf_identifier = 8;</code>
        */
       public boolean hasRfIdentifier() {
         return ((bitField0_ & 0x00000080) == 0x00000080);
       }
       /**
+       * <code>optional int64 rf_identifier = 8;</code>
+       *
        * <pre>
        * the runtime filter identifier
        * </pre>
-       *
-       * <code>optional int64 rf_identifier = 8;</code>
        */
       public long getRfIdentifier() {
         return rfIdentifier_;
       }
       /**
+       * <code>optional int64 rf_identifier = 8;</code>
+       *
        * <pre>
        * the runtime filter identifier
        * </pre>
-       *
-       * <code>optional int64 rf_identifier = 8;</code>
        */
       public Builder setRfIdentifier(long value) {
         bitField0_ |= 0x00000080;
@@ -4307,11 +3808,11 @@
         return this;
       }
       /**
+       * <code>optional int64 rf_identifier = 8;</code>
+       *
        * <pre>
        * the runtime filter identifier
        * </pre>
-       *
-       * <code>optional int64 rf_identifier = 8;</code>
        */
       public Builder clearRfIdentifier() {
         bitField0_ = (bitField0_ & ~0x00000080);
@@ -4319,85 +3820,44 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.data.RuntimeFilterBDef)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.data.RuntimeFilterBDef)
-    private static final org.apache.drill.exec.proto.BitData.RuntimeFilterBDef DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.BitData.RuntimeFilterBDef();
+      defaultInstance = new RuntimeFilterBDef(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.BitData.RuntimeFilterBDef getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<RuntimeFilterBDef>
-        PARSER = new com.google.protobuf.AbstractParser<RuntimeFilterBDef>() {
-      @java.lang.Override
-      public RuntimeFilterBDef parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new RuntimeFilterBDef(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<RuntimeFilterBDef> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<RuntimeFilterBDef> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.BitData.RuntimeFilterBDef getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.data.RuntimeFilterBDef)
   }
 
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_data_BitClientHandshake_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_data_BitClientHandshake_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_data_BitServerHandshake_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_data_BitServerHandshake_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_data_FragmentRecordBatch_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_data_FragmentRecordBatch_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_data_RuntimeFilterBDef_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_data_RuntimeFilterBDef_fieldAccessorTable;
 
   public static com.google.protobuf.Descriptors.FileDescriptor
       getDescriptor() {
     return descriptor;
   }
-  private static  com.google.protobuf.Descriptors.FileDescriptor
+  private static com.google.protobuf.Descriptors.FileDescriptor
       descriptor;
   static {
     java.lang.String[] descriptorData = {
@@ -4410,7 +3870,7 @@
       "enticationMechanisms\030\002 \003(\t\"\214\002\n\023FragmentR" +
       "ecordBatch\022&\n\010query_id\030\001 \001(\0132\024.exec.shar" +
       "ed.QueryId\022#\n\033receiving_major_fragment_i" +
-      "d\030\002 \001(\005\022#\n\033receiving_minor_fragment_id\030\003" +
+      "d\030\002 \001(\005\022#\n\033receiving_minor_fragment_id\030\003",
       " \003(\005\022!\n\031sending_major_fragment_id\030\004 \001(\005\022" +
       "!\n\031sending_minor_fragment_id\030\005 \001(\005\022(\n\003de" +
       "f\030\006 \001(\0132\033.exec.shared.RecordBatchDef\022\023\n\013" +
@@ -4420,20 +3880,44 @@
       "ment_id\030\003 \001(\005\022\022\n\nto_foreman\030\004 \001(\010\022\"\n\032blo" +
       "om_filter_size_in_bytes\030\005 \003(\005\022\024\n\014probe_f" +
       "ields\030\006 \003(\t\022\020\n\010hj_op_id\030\007 \001(\005\022\025\n\rrf_iden" +
-      "tifier\030\010 \001(\003*n\n\007RpcType\022\r\n\tHANDSHAKE\020\000\022\007" +
+      "tifier\030\010 \001(\003*n\n\007RpcType\022\r\n\tHANDSHAKE\020\000\022\007",
       "\n\003ACK\020\001\022\013\n\007GOODBYE\020\002\022\024\n\020REQ_RECORD_BATCH" +
       "\020\003\022\020\n\014SASL_MESSAGE\020\004\022\026\n\022REQ_RUNTIME_FILT" +
       "ER\020\005B(\n\033org.apache.drill.exec.protoB\007Bit" +
       "DataH\001"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
-        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
-          public com.google.protobuf.ExtensionRegistry assignDescriptors(
-              com.google.protobuf.Descriptors.FileDescriptor root) {
-            descriptor = root;
-            return null;
-          }
-        };
+      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
+        public com.google.protobuf.ExtensionRegistry assignDescriptors(
+            com.google.protobuf.Descriptors.FileDescriptor root) {
+          descriptor = root;
+          internal_static_exec_bit_data_BitClientHandshake_descriptor =
+            getDescriptor().getMessageTypes().get(0);
+          internal_static_exec_bit_data_BitClientHandshake_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_data_BitClientHandshake_descriptor,
+              new java.lang.String[] { "RpcVersion", "Channel", });
+          internal_static_exec_bit_data_BitServerHandshake_descriptor =
+            getDescriptor().getMessageTypes().get(1);
+          internal_static_exec_bit_data_BitServerHandshake_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_data_BitServerHandshake_descriptor,
+              new java.lang.String[] { "RpcVersion", "AuthenticationMechanisms", });
+          internal_static_exec_bit_data_FragmentRecordBatch_descriptor =
+            getDescriptor().getMessageTypes().get(2);
+          internal_static_exec_bit_data_FragmentRecordBatch_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_data_FragmentRecordBatch_descriptor,
+              new java.lang.String[] { "QueryId", "ReceivingMajorFragmentId", "ReceivingMinorFragmentId", "SendingMajorFragmentId", "SendingMinorFragmentId", "Def", "IsLastBatch", });
+          internal_static_exec_bit_data_RuntimeFilterBDef_descriptor =
+            getDescriptor().getMessageTypes().get(3);
+          internal_static_exec_bit_data_RuntimeFilterBDef_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_data_RuntimeFilterBDef_descriptor,
+              new java.lang.String[] { "QueryId", "MajorFragmentId", "MinorFragmentId", "ToForeman", "BloomFilterSizeInBytes", "ProbeFields", "HjOpId", "RfIdentifier", });
+          return null;
+        }
+      };
     com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
         new com.google.protobuf.Descriptors.FileDescriptor[] {
@@ -4441,33 +3925,6 @@
           org.apache.drill.exec.proto.CoordinationProtos.getDescriptor(),
           org.apache.drill.exec.proto.UserBitShared.getDescriptor(),
         }, assigner);
-    internal_static_exec_bit_data_BitClientHandshake_descriptor =
-      getDescriptor().getMessageTypes().get(0);
-    internal_static_exec_bit_data_BitClientHandshake_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_data_BitClientHandshake_descriptor,
-        new java.lang.String[] { "RpcVersion", "Channel", });
-    internal_static_exec_bit_data_BitServerHandshake_descriptor =
-      getDescriptor().getMessageTypes().get(1);
-    internal_static_exec_bit_data_BitServerHandshake_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_data_BitServerHandshake_descriptor,
-        new java.lang.String[] { "RpcVersion", "AuthenticationMechanisms", });
-    internal_static_exec_bit_data_FragmentRecordBatch_descriptor =
-      getDescriptor().getMessageTypes().get(2);
-    internal_static_exec_bit_data_FragmentRecordBatch_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_data_FragmentRecordBatch_descriptor,
-        new java.lang.String[] { "QueryId", "ReceivingMajorFragmentId", "ReceivingMinorFragmentId", "SendingMajorFragmentId", "SendingMinorFragmentId", "Def", "IsLastBatch", });
-    internal_static_exec_bit_data_RuntimeFilterBDef_descriptor =
-      getDescriptor().getMessageTypes().get(3);
-    internal_static_exec_bit_data_RuntimeFilterBDef_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_data_RuntimeFilterBDef_descriptor,
-        new java.lang.String[] { "QueryId", "MajorFragmentId", "MinorFragmentId", "ToForeman", "BloomFilterSizeInBytes", "ProbeFields", "HjOpId", "RfIdentifier", });
-    org.apache.drill.exec.proto.ExecProtos.getDescriptor();
-    org.apache.drill.exec.proto.CoordinationProtos.getDescriptor();
-    org.apache.drill.exec.proto.UserBitShared.getDescriptor();
   }
 
   // @@protoc_insertion_point(outer_class_scope)
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/CoordinationProtos.java b/protocol/src/main/java/org/apache/drill/exec/proto/CoordinationProtos.java
index 488a3c6..8d14ae9 100644
--- a/protocol/src/main/java/org/apache/drill/exec/proto/CoordinationProtos.java
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/CoordinationProtos.java
@@ -23,18 +23,12 @@
 public final class CoordinationProtos {
   private CoordinationProtos() {}
   public static void registerAllExtensions(
-      com.google.protobuf.ExtensionRegistryLite registry) {
-  }
-
-  public static void registerAllExtensions(
       com.google.protobuf.ExtensionRegistry registry) {
-    registerAllExtensions(
-        (com.google.protobuf.ExtensionRegistryLite) registry);
   }
-  public interface DrillbitEndpointOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.DrillbitEndpoint)
-      com.google.protobuf.MessageOrBuilder {
+  public interface DrillbitEndpointOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string address = 1;
     /**
      * <code>optional string address = 1;</code>
      */
@@ -49,6 +43,7 @@
     com.google.protobuf.ByteString
         getAddressBytes();
 
+    // optional int32 user_port = 2;
     /**
      * <code>optional int32 user_port = 2;</code>
      */
@@ -58,6 +53,7 @@
      */
     int getUserPort();
 
+    // optional int32 control_port = 3;
     /**
      * <code>optional int32 control_port = 3;</code>
      */
@@ -67,6 +63,7 @@
      */
     int getControlPort();
 
+    // optional int32 data_port = 4;
     /**
      * <code>optional int32 data_port = 4;</code>
      */
@@ -76,6 +73,7 @@
      */
     int getDataPort();
 
+    // optional .exec.Roles roles = 5;
     /**
      * <code>optional .exec.Roles roles = 5;</code>
      */
@@ -89,6 +87,7 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.RolesOrBuilder getRolesOrBuilder();
 
+    // optional string version = 6;
     /**
      * <code>optional string version = 6;</code>
      */
@@ -103,6 +102,7 @@
     com.google.protobuf.ByteString
         getVersionBytes();
 
+    // optional .exec.DrillbitEndpoint.State state = 7;
     /**
      * <code>optional .exec.DrillbitEndpoint.State state = 7;</code>
      */
@@ -112,6 +112,7 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State getState();
 
+    // optional int32 http_port = 8;
     /**
      * <code>optional int32 http_port = 8;</code>
      */
@@ -124,38 +125,36 @@
   /**
    * Protobuf type {@code exec.DrillbitEndpoint}
    */
-  public  static final class DrillbitEndpoint extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.DrillbitEndpoint)
-      DrillbitEndpointOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class DrillbitEndpoint extends
+      com.google.protobuf.GeneratedMessage
+      implements DrillbitEndpointOrBuilder {
     // Use DrillbitEndpoint.newBuilder() to construct.
-    private DrillbitEndpoint(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private DrillbitEndpoint(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private DrillbitEndpoint() {
-      address_ = "";
-      userPort_ = 0;
-      controlPort_ = 0;
-      dataPort_ = 0;
-      version_ = "";
-      state_ = 0;
-      httpPort_ = 0;
+    private DrillbitEndpoint(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final DrillbitEndpoint defaultInstance;
+    public static DrillbitEndpoint getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public DrillbitEndpoint getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private DrillbitEndpoint(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -167,10 +166,16 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              address_ = bs;
+              address_ = input.readBytes();
               break;
             }
             case 16: {
@@ -202,20 +207,18 @@
               break;
             }
             case 50: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000020;
-              version_ = bs;
+              version_ = input.readBytes();
               break;
             }
             case 56: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State value = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(7, rawValue);
               } else {
                 bitField0_ |= 0x00000040;
-                state_ = rawValue;
+                state_ = value;
               }
               break;
             }
@@ -224,20 +227,13 @@
               httpPort_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -248,14 +244,28 @@
       return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillbitEndpoint_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillbitEndpoint_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.class, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<DrillbitEndpoint> PARSER =
+        new com.google.protobuf.AbstractParser<DrillbitEndpoint>() {
+      public DrillbitEndpoint parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new DrillbitEndpoint(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<DrillbitEndpoint> getParserForType() {
+      return PARSER;
+    }
+
     /**
      * Protobuf enum {@code exec.DrillbitEndpoint.State}
      */
@@ -264,19 +274,19 @@
       /**
        * <code>STARTUP = 0;</code>
        */
-      STARTUP(0),
+      STARTUP(0, 0),
       /**
        * <code>ONLINE = 1;</code>
        */
-      ONLINE(1),
+      ONLINE(1, 1),
       /**
        * <code>QUIESCENT = 2;</code>
        */
-      QUIESCENT(2),
+      QUIESCENT(2, 2),
       /**
        * <code>OFFLINE = 3;</code>
        */
-      OFFLINE(3),
+      OFFLINE(3, 3),
       ;
 
       /**
@@ -297,19 +307,9 @@
       public static final int OFFLINE_VALUE = 3;
 
 
-      public final int getNumber() {
-        return value;
-      }
+      public final int getNumber() { return value; }
 
-      /**
-       * @deprecated Use {@link #forNumber(int)} instead.
-       */
-      @java.lang.Deprecated
       public static State valueOf(int value) {
-        return forNumber(value);
-      }
-
-      public static State forNumber(int value) {
         switch (value) {
           case 0: return STARTUP;
           case 1: return ONLINE;
@@ -323,17 +323,17 @@
           internalGetValueMap() {
         return internalValueMap;
       }
-      private static final com.google.protobuf.Internal.EnumLiteMap<
-          State> internalValueMap =
+      private static com.google.protobuf.Internal.EnumLiteMap<State>
+          internalValueMap =
             new com.google.protobuf.Internal.EnumLiteMap<State>() {
               public State findValueByNumber(int number) {
-                return State.forNumber(number);
+                return State.valueOf(number);
               }
             };
 
       public final com.google.protobuf.Descriptors.EnumValueDescriptor
           getValueDescriptor() {
-        return getDescriptor().getValues().get(ordinal());
+        return getDescriptor().getValues().get(index);
       }
       public final com.google.protobuf.Descriptors.EnumDescriptor
           getDescriptorForType() {
@@ -355,9 +355,11 @@
         return VALUES[desc.getIndex()];
       }
 
+      private final int index;
       private final int value;
 
-      private State(int value) {
+      private State(int index, int value) {
+        this.index = index;
         this.value = value;
       }
 
@@ -365,8 +367,9 @@
     }
 
     private int bitField0_;
+    // optional string address = 1;
     public static final int ADDRESS_FIELD_NUMBER = 1;
-    private volatile java.lang.Object address_;
+    private java.lang.Object address_;
     /**
      * <code>optional string address = 1;</code>
      */
@@ -407,6 +410,7 @@
       }
     }
 
+    // optional int32 user_port = 2;
     public static final int USER_PORT_FIELD_NUMBER = 2;
     private int userPort_;
     /**
@@ -422,6 +426,7 @@
       return userPort_;
     }
 
+    // optional int32 control_port = 3;
     public static final int CONTROL_PORT_FIELD_NUMBER = 3;
     private int controlPort_;
     /**
@@ -437,6 +442,7 @@
       return controlPort_;
     }
 
+    // optional int32 data_port = 4;
     public static final int DATA_PORT_FIELD_NUMBER = 4;
     private int dataPort_;
     /**
@@ -452,6 +458,7 @@
       return dataPort_;
     }
 
+    // optional .exec.Roles roles = 5;
     public static final int ROLES_FIELD_NUMBER = 5;
     private org.apache.drill.exec.proto.CoordinationProtos.Roles roles_;
     /**
@@ -464,17 +471,18 @@
      * <code>optional .exec.Roles roles = 5;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.Roles getRoles() {
-      return roles_ == null ? org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance() : roles_;
+      return roles_;
     }
     /**
      * <code>optional .exec.Roles roles = 5;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.RolesOrBuilder getRolesOrBuilder() {
-      return roles_ == null ? org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance() : roles_;
+      return roles_;
     }
 
+    // optional string version = 6;
     public static final int VERSION_FIELD_NUMBER = 6;
-    private volatile java.lang.Object version_;
+    private java.lang.Object version_;
     /**
      * <code>optional string version = 6;</code>
      */
@@ -515,8 +523,9 @@
       }
     }
 
+    // optional .exec.DrillbitEndpoint.State state = 7;
     public static final int STATE_FIELD_NUMBER = 7;
-    private int state_;
+    private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State state_;
     /**
      * <code>optional .exec.DrillbitEndpoint.State state = 7;</code>
      */
@@ -527,11 +536,10 @@
      * <code>optional .exec.DrillbitEndpoint.State state = 7;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State getState() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State result = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State.valueOf(state_);
-      return result == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State.STARTUP : result;
+      return state_;
     }
 
+    // optional int32 http_port = 8;
     public static final int HTTP_PORT_FIELD_NUMBER = 8;
     private int httpPort_;
     /**
@@ -547,22 +555,30 @@
       return httpPort_;
     }
 
+    private void initFields() {
+      address_ = "";
+      userPort_ = 0;
+      controlPort_ = 0;
+      dataPort_ = 0;
+      roles_ = org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance();
+      version_ = "";
+      state_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State.STARTUP;
+      httpPort_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, address_);
+        output.writeBytes(1, getAddressBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt32(2, userPort_);
@@ -574,28 +590,29 @@
         output.writeInt32(4, dataPort_);
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        output.writeMessage(5, getRoles());
+        output.writeMessage(5, roles_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, version_);
+        output.writeBytes(6, getVersionBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
-        output.writeEnum(7, state_);
+        output.writeEnum(7, state_.getNumber());
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
         output.writeInt32(8, httpPort_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, address_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getAddressBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -611,133 +628,32 @@
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(5, getRoles());
+          .computeMessageSize(5, roles_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, version_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(6, getVersionBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(7, state_);
+          .computeEnumSize(7, state_.getNumber());
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(8, httpPort_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint other = (org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint) obj;
-
-      boolean result = true;
-      result = result && (hasAddress() == other.hasAddress());
-      if (hasAddress()) {
-        result = result && getAddress()
-            .equals(other.getAddress());
-      }
-      result = result && (hasUserPort() == other.hasUserPort());
-      if (hasUserPort()) {
-        result = result && (getUserPort()
-            == other.getUserPort());
-      }
-      result = result && (hasControlPort() == other.hasControlPort());
-      if (hasControlPort()) {
-        result = result && (getControlPort()
-            == other.getControlPort());
-      }
-      result = result && (hasDataPort() == other.hasDataPort());
-      if (hasDataPort()) {
-        result = result && (getDataPort()
-            == other.getDataPort());
-      }
-      result = result && (hasRoles() == other.hasRoles());
-      if (hasRoles()) {
-        result = result && getRoles()
-            .equals(other.getRoles());
-      }
-      result = result && (hasVersion() == other.hasVersion());
-      if (hasVersion()) {
-        result = result && getVersion()
-            .equals(other.getVersion());
-      }
-      result = result && (hasState() == other.hasState());
-      if (hasState()) {
-        result = result && state_ == other.state_;
-      }
-      result = result && (hasHttpPort() == other.hasHttpPort());
-      if (hasHttpPort()) {
-        result = result && (getHttpPort()
-            == other.getHttpPort());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasAddress()) {
-        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
-        hash = (53 * hash) + getAddress().hashCode();
-      }
-      if (hasUserPort()) {
-        hash = (37 * hash) + USER_PORT_FIELD_NUMBER;
-        hash = (53 * hash) + getUserPort();
-      }
-      if (hasControlPort()) {
-        hash = (37 * hash) + CONTROL_PORT_FIELD_NUMBER;
-        hash = (53 * hash) + getControlPort();
-      }
-      if (hasDataPort()) {
-        hash = (37 * hash) + DATA_PORT_FIELD_NUMBER;
-        hash = (53 * hash) + getDataPort();
-      }
-      if (hasRoles()) {
-        hash = (37 * hash) + ROLES_FIELD_NUMBER;
-        hash = (53 * hash) + getRoles().hashCode();
-      }
-      if (hasVersion()) {
-        hash = (37 * hash) + VERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getVersion().hashCode();
-      }
-      if (hasState()) {
-        hash = (37 * hash) + STATE_FIELD_NUMBER;
-        hash = (53 * hash) + state_;
-      }
-      if (hasHttpPort()) {
-        hash = (37 * hash) + HTTP_PORT_FIELD_NUMBER;
-        hash = (53 * hash) + getHttpPort();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -761,59 +677,46 @@
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -821,16 +724,14 @@
      * Protobuf type {@code exec.DrillbitEndpoint}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.DrillbitEndpoint)
-        org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillbitEndpoint_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillbitEndpoint_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -843,17 +744,19 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getRolesFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         address_ = "";
@@ -865,32 +768,33 @@
         dataPort_ = 0;
         bitField0_ = (bitField0_ & ~0x00000008);
         if (rolesBuilder_ == null) {
-          roles_ = null;
+          roles_ = org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance();
         } else {
           rolesBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000010);
         version_ = "";
         bitField0_ = (bitField0_ & ~0x00000020);
-        state_ = 0;
+        state_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State.STARTUP;
         bitField0_ = (bitField0_ & ~0x00000040);
         httpPort_ = 0;
         bitField0_ = (bitField0_ & ~0x00000080);
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillbitEndpoint_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint build() {
         org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint result = buildPartial();
         if (!result.isInitialized()) {
@@ -899,7 +803,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint buildPartial() {
         org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint result = new org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint(this);
         int from_bitField0_ = bitField0_;
@@ -945,39 +848,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint) {
           return mergeFrom((org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint)other);
@@ -1017,17 +887,14 @@
         if (other.hasHttpPort()) {
           setHttpPort(other.getHttpPort());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -1037,7 +904,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -1047,6 +914,7 @@
       }
       private int bitField0_;
 
+      // optional string address = 1;
       private java.lang.Object address_ = "";
       /**
        * <code>optional string address = 1;</code>
@@ -1060,12 +928,9 @@
       public java.lang.String getAddress() {
         java.lang.Object ref = address_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            address_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          address_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -1123,6 +988,7 @@
         return this;
       }
 
+      // optional int32 user_port = 2;
       private int userPort_ ;
       /**
        * <code>optional int32 user_port = 2;</code>
@@ -1155,6 +1021,7 @@
         return this;
       }
 
+      // optional int32 control_port = 3;
       private int controlPort_ ;
       /**
        * <code>optional int32 control_port = 3;</code>
@@ -1187,6 +1054,7 @@
         return this;
       }
 
+      // optional int32 data_port = 4;
       private int dataPort_ ;
       /**
        * <code>optional int32 data_port = 4;</code>
@@ -1219,8 +1087,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.CoordinationProtos.Roles roles_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.Roles roles = 5;
+      private org.apache.drill.exec.proto.CoordinationProtos.Roles roles_ = org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.Roles, org.apache.drill.exec.proto.CoordinationProtos.Roles.Builder, org.apache.drill.exec.proto.CoordinationProtos.RolesOrBuilder> rolesBuilder_;
       /**
        * <code>optional .exec.Roles roles = 5;</code>
@@ -1233,7 +1102,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.Roles getRoles() {
         if (rolesBuilder_ == null) {
-          return roles_ == null ? org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance() : roles_;
+          return roles_;
         } else {
           return rolesBuilder_.getMessage();
         }
@@ -1274,7 +1143,6 @@
       public Builder mergeRoles(org.apache.drill.exec.proto.CoordinationProtos.Roles value) {
         if (rolesBuilder_ == null) {
           if (((bitField0_ & 0x00000010) == 0x00000010) &&
-              roles_ != null &&
               roles_ != org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance()) {
             roles_ =
               org.apache.drill.exec.proto.CoordinationProtos.Roles.newBuilder(roles_).mergeFrom(value).buildPartial();
@@ -1293,7 +1161,7 @@
        */
       public Builder clearRoles() {
         if (rolesBuilder_ == null) {
-          roles_ = null;
+          roles_ = org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance();
           onChanged();
         } else {
           rolesBuilder_.clear();
@@ -1316,20 +1184,19 @@
         if (rolesBuilder_ != null) {
           return rolesBuilder_.getMessageOrBuilder();
         } else {
-          return roles_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance() : roles_;
+          return roles_;
         }
       }
       /**
        * <code>optional .exec.Roles roles = 5;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.Roles, org.apache.drill.exec.proto.CoordinationProtos.Roles.Builder, org.apache.drill.exec.proto.CoordinationProtos.RolesOrBuilder> 
           getRolesFieldBuilder() {
         if (rolesBuilder_ == null) {
-          rolesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          rolesBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.Roles, org.apache.drill.exec.proto.CoordinationProtos.Roles.Builder, org.apache.drill.exec.proto.CoordinationProtos.RolesOrBuilder>(
-                  getRoles(),
+                  roles_,
                   getParentForChildren(),
                   isClean());
           roles_ = null;
@@ -1337,6 +1204,7 @@
         return rolesBuilder_;
       }
 
+      // optional string version = 6;
       private java.lang.Object version_ = "";
       /**
        * <code>optional string version = 6;</code>
@@ -1350,12 +1218,9 @@
       public java.lang.String getVersion() {
         java.lang.Object ref = version_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            version_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          version_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -1413,7 +1278,8 @@
         return this;
       }
 
-      private int state_ = 0;
+      // optional .exec.DrillbitEndpoint.State state = 7;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State state_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State.STARTUP;
       /**
        * <code>optional .exec.DrillbitEndpoint.State state = 7;</code>
        */
@@ -1424,9 +1290,7 @@
        * <code>optional .exec.DrillbitEndpoint.State state = 7;</code>
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State getState() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State result = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State.valueOf(state_);
-        return result == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State.STARTUP : result;
+        return state_;
       }
       /**
        * <code>optional .exec.DrillbitEndpoint.State state = 7;</code>
@@ -1436,7 +1300,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000040;
-        state_ = value.getNumber();
+        state_ = value;
         onChanged();
         return this;
       }
@@ -1445,11 +1309,12 @@
        */
       public Builder clearState() {
         bitField0_ = (bitField0_ & ~0x00000040);
-        state_ = 0;
+        state_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.State.STARTUP;
         onChanged();
         return this;
       }
 
+      // optional int32 http_port = 8;
       private int httpPort_ ;
       /**
        * <code>optional int32 http_port = 8;</code>
@@ -1481,63 +1346,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.DrillbitEndpoint)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.DrillbitEndpoint)
-    private static final org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint();
+      defaultInstance = new DrillbitEndpoint(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<DrillbitEndpoint>
-        PARSER = new com.google.protobuf.AbstractParser<DrillbitEndpoint>() {
-      @java.lang.Override
-      public DrillbitEndpoint parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new DrillbitEndpoint(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<DrillbitEndpoint> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<DrillbitEndpoint> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.DrillbitEndpoint)
   }
 
-  public interface DrillServiceInstanceOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.DrillServiceInstance)
-      com.google.protobuf.MessageOrBuilder {
+  public interface DrillServiceInstanceOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string id = 1;
     /**
      * <code>optional string id = 1;</code>
      */
@@ -1552,6 +1376,7 @@
     com.google.protobuf.ByteString
         getIdBytes();
 
+    // optional int64 registrationTimeUTC = 2;
     /**
      * <code>optional int64 registrationTimeUTC = 2;</code>
      */
@@ -1561,6 +1386,7 @@
      */
     long getRegistrationTimeUTC();
 
+    // optional .exec.DrillbitEndpoint endpoint = 3;
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
      */
@@ -1577,33 +1403,36 @@
   /**
    * Protobuf type {@code exec.DrillServiceInstance}
    */
-  public  static final class DrillServiceInstance extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.DrillServiceInstance)
-      DrillServiceInstanceOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class DrillServiceInstance extends
+      com.google.protobuf.GeneratedMessage
+      implements DrillServiceInstanceOrBuilder {
     // Use DrillServiceInstance.newBuilder() to construct.
-    private DrillServiceInstance(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private DrillServiceInstance(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private DrillServiceInstance() {
-      id_ = "";
-      registrationTimeUTC_ = 0L;
+    private DrillServiceInstance(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final DrillServiceInstance defaultInstance;
+    public static DrillServiceInstance getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public DrillServiceInstance getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private DrillServiceInstance(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -1615,10 +1444,16 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              id_ = bs;
+              id_ = input.readBytes();
               break;
             }
             case 16: {
@@ -1639,20 +1474,13 @@
               bitField0_ |= 0x00000004;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -1663,17 +1491,32 @@
       return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillServiceInstance_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillServiceInstance_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance.class, org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<DrillServiceInstance> PARSER =
+        new com.google.protobuf.AbstractParser<DrillServiceInstance>() {
+      public DrillServiceInstance parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new DrillServiceInstance(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<DrillServiceInstance> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string id = 1;
     public static final int ID_FIELD_NUMBER = 1;
-    private volatile java.lang.Object id_;
+    private java.lang.Object id_;
     /**
      * <code>optional string id = 1;</code>
      */
@@ -1714,6 +1557,7 @@
       }
     }
 
+    // optional int64 registrationTimeUTC = 2;
     public static final int REGISTRATIONTIMEUTC_FIELD_NUMBER = 2;
     private long registrationTimeUTC_;
     /**
@@ -1729,6 +1573,7 @@
       return registrationTimeUTC_;
     }
 
+    // optional .exec.DrillbitEndpoint endpoint = 3;
     public static final int ENDPOINT_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_;
     /**
@@ -1741,49 +1586,53 @@
      * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getEndpointOrBuilder() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
 
+    private void initFields() {
+      id_ = "";
+      registrationTimeUTC_ = 0L;
+      endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, id_);
+        output.writeBytes(1, getIdBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt64(2, registrationTimeUTC_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, getEndpoint());
+        output.writeMessage(3, endpoint_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, id_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getIdBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -1791,79 +1640,20 @@
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getEndpoint());
+          .computeMessageSize(3, endpoint_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance other = (org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance) obj;
-
-      boolean result = true;
-      result = result && (hasId() == other.hasId());
-      if (hasId()) {
-        result = result && getId()
-            .equals(other.getId());
-      }
-      result = result && (hasRegistrationTimeUTC() == other.hasRegistrationTimeUTC());
-      if (hasRegistrationTimeUTC()) {
-        result = result && (getRegistrationTimeUTC()
-            == other.getRegistrationTimeUTC());
-      }
-      result = result && (hasEndpoint() == other.hasEndpoint());
-      if (hasEndpoint()) {
-        result = result && getEndpoint()
-            .equals(other.getEndpoint());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasId()) {
-        hash = (37 * hash) + ID_FIELD_NUMBER;
-        hash = (53 * hash) + getId().hashCode();
-      }
-      if (hasRegistrationTimeUTC()) {
-        hash = (37 * hash) + REGISTRATIONTIMEUTC_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getRegistrationTimeUTC());
-      }
-      if (hasEndpoint()) {
-        hash = (37 * hash) + ENDPOINT_FIELD_NUMBER;
-        hash = (53 * hash) + getEndpoint().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -1887,59 +1677,46 @@
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -1947,16 +1724,14 @@
      * Protobuf type {@code exec.DrillServiceInstance}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.DrillServiceInstance)
-        org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstanceOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstanceOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillServiceInstance_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillServiceInstance_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -1969,17 +1744,19 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getEndpointFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         id_ = "";
@@ -1987,7 +1764,7 @@
         registrationTimeUTC_ = 0L;
         bitField0_ = (bitField0_ & ~0x00000002);
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
         } else {
           endpointBuilder_.clear();
         }
@@ -1995,18 +1772,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_DrillServiceInstance_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance build() {
         org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance result = buildPartial();
         if (!result.isInitialized()) {
@@ -2015,7 +1793,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance buildPartial() {
         org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance result = new org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance(this);
         int from_bitField0_ = bitField0_;
@@ -2041,39 +1818,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance) {
           return mergeFrom((org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance)other);
@@ -2096,17 +1840,14 @@
         if (other.hasEndpoint()) {
           mergeEndpoint(other.getEndpoint());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -2116,7 +1857,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -2126,6 +1867,7 @@
       }
       private int bitField0_;
 
+      // optional string id = 1;
       private java.lang.Object id_ = "";
       /**
        * <code>optional string id = 1;</code>
@@ -2139,12 +1881,9 @@
       public java.lang.String getId() {
         java.lang.Object ref = id_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            id_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          id_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -2202,6 +1941,7 @@
         return this;
       }
 
+      // optional int64 registrationTimeUTC = 2;
       private long registrationTimeUTC_ ;
       /**
        * <code>optional int64 registrationTimeUTC = 2;</code>
@@ -2234,8 +1974,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.DrillbitEndpoint endpoint = 3;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> endpointBuilder_;
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
@@ -2248,7 +1989,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
         if (endpointBuilder_ == null) {
-          return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         } else {
           return endpointBuilder_.getMessage();
         }
@@ -2289,7 +2030,6 @@
       public Builder mergeEndpoint(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint value) {
         if (endpointBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              endpoint_ != null &&
               endpoint_ != org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance()) {
             endpoint_ =
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.newBuilder(endpoint_).mergeFrom(value).buildPartial();
@@ -2308,7 +2048,7 @@
        */
       public Builder clearEndpoint() {
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
           onChanged();
         } else {
           endpointBuilder_.clear();
@@ -2331,83 +2071,41 @@
         if (endpointBuilder_ != null) {
           return endpointBuilder_.getMessageOrBuilder();
         } else {
-          return endpoint_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         }
       }
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> 
           getEndpointFieldBuilder() {
         if (endpointBuilder_ == null) {
-          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder>(
-                  getEndpoint(),
+                  endpoint_,
                   getParentForChildren(),
                   isClean());
           endpoint_ = null;
         }
         return endpointBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.DrillServiceInstance)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.DrillServiceInstance)
-    private static final org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance();
+      defaultInstance = new DrillServiceInstance(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<DrillServiceInstance>
-        PARSER = new com.google.protobuf.AbstractParser<DrillServiceInstance>() {
-      @java.lang.Override
-      public DrillServiceInstance parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new DrillServiceInstance(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<DrillServiceInstance> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<DrillServiceInstance> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.CoordinationProtos.DrillServiceInstance getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.DrillServiceInstance)
   }
 
-  public interface RolesOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.Roles)
-      com.google.protobuf.MessageOrBuilder {
+  public interface RolesOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional bool sql_query = 1 [default = true];
     /**
      * <code>optional bool sql_query = 1 [default = true];</code>
      */
@@ -2417,6 +2115,7 @@
      */
     boolean getSqlQuery();
 
+    // optional bool logical_plan = 2 [default = true];
     /**
      * <code>optional bool logical_plan = 2 [default = true];</code>
      */
@@ -2426,6 +2125,7 @@
      */
     boolean getLogicalPlan();
 
+    // optional bool physical_plan = 3 [default = true];
     /**
      * <code>optional bool physical_plan = 3 [default = true];</code>
      */
@@ -2435,6 +2135,7 @@
      */
     boolean getPhysicalPlan();
 
+    // optional bool java_executor = 4 [default = true];
     /**
      * <code>optional bool java_executor = 4 [default = true];</code>
      */
@@ -2444,6 +2145,7 @@
      */
     boolean getJavaExecutor();
 
+    // optional bool distributed_cache = 5 [default = true];
     /**
      * <code>optional bool distributed_cache = 5 [default = true];</code>
      */
@@ -2456,36 +2158,36 @@
   /**
    * Protobuf type {@code exec.Roles}
    */
-  public  static final class Roles extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.Roles)
-      RolesOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class Roles extends
+      com.google.protobuf.GeneratedMessage
+      implements RolesOrBuilder {
     // Use Roles.newBuilder() to construct.
-    private Roles(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private Roles(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private Roles() {
-      sqlQuery_ = true;
-      logicalPlan_ = true;
-      physicalPlan_ = true;
-      javaExecutor_ = true;
-      distributedCache_ = true;
+    private Roles(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final Roles defaultInstance;
+    public static Roles getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public Roles getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private Roles(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -2497,6 +2199,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               sqlQuery_ = input.readBool();
@@ -2522,20 +2231,13 @@
               distributedCache_ = input.readBool();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -2546,15 +2248,30 @@
       return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_Roles_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_Roles_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.CoordinationProtos.Roles.class, org.apache.drill.exec.proto.CoordinationProtos.Roles.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<Roles> PARSER =
+        new com.google.protobuf.AbstractParser<Roles>() {
+      public Roles parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new Roles(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<Roles> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional bool sql_query = 1 [default = true];
     public static final int SQL_QUERY_FIELD_NUMBER = 1;
     private boolean sqlQuery_;
     /**
@@ -2570,6 +2287,7 @@
       return sqlQuery_;
     }
 
+    // optional bool logical_plan = 2 [default = true];
     public static final int LOGICAL_PLAN_FIELD_NUMBER = 2;
     private boolean logicalPlan_;
     /**
@@ -2585,6 +2303,7 @@
       return logicalPlan_;
     }
 
+    // optional bool physical_plan = 3 [default = true];
     public static final int PHYSICAL_PLAN_FIELD_NUMBER = 3;
     private boolean physicalPlan_;
     /**
@@ -2600,6 +2319,7 @@
       return physicalPlan_;
     }
 
+    // optional bool java_executor = 4 [default = true];
     public static final int JAVA_EXECUTOR_FIELD_NUMBER = 4;
     private boolean javaExecutor_;
     /**
@@ -2615,6 +2335,7 @@
       return javaExecutor_;
     }
 
+    // optional bool distributed_cache = 5 [default = true];
     public static final int DISTRIBUTED_CACHE_FIELD_NUMBER = 5;
     private boolean distributedCache_;
     /**
@@ -2630,20 +2351,25 @@
       return distributedCache_;
     }
 
+    private void initFields() {
+      sqlQuery_ = true;
+      logicalPlan_ = true;
+      physicalPlan_ = true;
+      javaExecutor_ = true;
+      distributedCache_ = true;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeBool(1, sqlQuery_);
       }
@@ -2659,12 +2385,12 @@
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         output.writeBool(5, distributedCache_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -2688,99 +2414,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(5, distributedCache_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.CoordinationProtos.Roles)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.CoordinationProtos.Roles other = (org.apache.drill.exec.proto.CoordinationProtos.Roles) obj;
-
-      boolean result = true;
-      result = result && (hasSqlQuery() == other.hasSqlQuery());
-      if (hasSqlQuery()) {
-        result = result && (getSqlQuery()
-            == other.getSqlQuery());
-      }
-      result = result && (hasLogicalPlan() == other.hasLogicalPlan());
-      if (hasLogicalPlan()) {
-        result = result && (getLogicalPlan()
-            == other.getLogicalPlan());
-      }
-      result = result && (hasPhysicalPlan() == other.hasPhysicalPlan());
-      if (hasPhysicalPlan()) {
-        result = result && (getPhysicalPlan()
-            == other.getPhysicalPlan());
-      }
-      result = result && (hasJavaExecutor() == other.hasJavaExecutor());
-      if (hasJavaExecutor()) {
-        result = result && (getJavaExecutor()
-            == other.getJavaExecutor());
-      }
-      result = result && (hasDistributedCache() == other.hasDistributedCache());
-      if (hasDistributedCache()) {
-        result = result && (getDistributedCache()
-            == other.getDistributedCache());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasSqlQuery()) {
-        hash = (37 * hash) + SQL_QUERY_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getSqlQuery());
-      }
-      if (hasLogicalPlan()) {
-        hash = (37 * hash) + LOGICAL_PLAN_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getLogicalPlan());
-      }
-      if (hasPhysicalPlan()) {
-        hash = (37 * hash) + PHYSICAL_PLAN_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getPhysicalPlan());
-      }
-      if (hasJavaExecutor()) {
-        hash = (37 * hash) + JAVA_EXECUTOR_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getJavaExecutor());
-      }
-      if (hasDistributedCache()) {
-        hash = (37 * hash) + DISTRIBUTED_CACHE_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getDistributedCache());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.CoordinationProtos.Roles parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.CoordinationProtos.Roles parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.CoordinationProtos.Roles parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -2804,59 +2449,46 @@
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.Roles parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.Roles parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.Roles parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.Roles parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.Roles parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.CoordinationProtos.Roles parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.CoordinationProtos.Roles prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -2864,16 +2496,14 @@
      * Protobuf type {@code exec.Roles}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.Roles)
-        org.apache.drill.exec.proto.CoordinationProtos.RolesOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.CoordinationProtos.RolesOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_Roles_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_Roles_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -2886,16 +2516,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         sqlQuery_ = true;
@@ -2911,18 +2543,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.CoordinationProtos.internal_static_exec_Roles_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.CoordinationProtos.Roles getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.CoordinationProtos.Roles.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.CoordinationProtos.Roles build() {
         org.apache.drill.exec.proto.CoordinationProtos.Roles result = buildPartial();
         if (!result.isInitialized()) {
@@ -2931,7 +2564,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.CoordinationProtos.Roles buildPartial() {
         org.apache.drill.exec.proto.CoordinationProtos.Roles result = new org.apache.drill.exec.proto.CoordinationProtos.Roles(this);
         int from_bitField0_ = bitField0_;
@@ -2961,39 +2593,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.CoordinationProtos.Roles) {
           return mergeFrom((org.apache.drill.exec.proto.CoordinationProtos.Roles)other);
@@ -3020,17 +2619,14 @@
         if (other.hasDistributedCache()) {
           setDistributedCache(other.getDistributedCache());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -3040,7 +2636,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.CoordinationProtos.Roles) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -3050,6 +2646,7 @@
       }
       private int bitField0_;
 
+      // optional bool sql_query = 1 [default = true];
       private boolean sqlQuery_ = true;
       /**
        * <code>optional bool sql_query = 1 [default = true];</code>
@@ -3082,6 +2679,7 @@
         return this;
       }
 
+      // optional bool logical_plan = 2 [default = true];
       private boolean logicalPlan_ = true;
       /**
        * <code>optional bool logical_plan = 2 [default = true];</code>
@@ -3114,6 +2712,7 @@
         return this;
       }
 
+      // optional bool physical_plan = 3 [default = true];
       private boolean physicalPlan_ = true;
       /**
        * <code>optional bool physical_plan = 3 [default = true];</code>
@@ -3146,6 +2745,7 @@
         return this;
       }
 
+      // optional bool java_executor = 4 [default = true];
       private boolean javaExecutor_ = true;
       /**
        * <code>optional bool java_executor = 4 [default = true];</code>
@@ -3178,6 +2778,7 @@
         return this;
       }
 
+      // optional bool distributed_cache = 5 [default = true];
       private boolean distributedCache_ = true;
       /**
        * <code>optional bool distributed_cache = 5 [default = true];</code>
@@ -3209,80 +2810,39 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.Roles)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.Roles)
-    private static final org.apache.drill.exec.proto.CoordinationProtos.Roles DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.CoordinationProtos.Roles();
+      defaultInstance = new Roles(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.CoordinationProtos.Roles getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<Roles>
-        PARSER = new com.google.protobuf.AbstractParser<Roles>() {
-      @java.lang.Override
-      public Roles parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new Roles(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<Roles> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<Roles> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.CoordinationProtos.Roles getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.Roles)
   }
 
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_DrillbitEndpoint_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_DrillbitEndpoint_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_DrillServiceInstance_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_DrillServiceInstance_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_Roles_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_Roles_fieldAccessorTable;
 
   public static com.google.protobuf.Descriptors.FileDescriptor
       getDescriptor() {
     return descriptor;
   }
-  private static  com.google.protobuf.Descriptors.FileDescriptor
+  private static com.google.protobuf.Descriptors.FileDescriptor
       descriptor;
   static {
     java.lang.String[] descriptorData = {
@@ -3295,7 +2855,7 @@
       "te\022\013\n\007STARTUP\020\000\022\n\n\006ONLINE\020\001\022\r\n\tQUIESCENT" +
       "\020\002\022\013\n\007OFFLINE\020\003\"i\n\024DrillServiceInstance\022" +
       "\n\n\002id\030\001 \001(\t\022\033\n\023registrationTimeUTC\030\002 \001(\003" +
-      "\022(\n\010endpoint\030\003 \001(\0132\026.exec.DrillbitEndpoi" +
+      "\022(\n\010endpoint\030\003 \001(\0132\026.exec.DrillbitEndpoi",
       "nt\"\227\001\n\005Roles\022\027\n\tsql_query\030\001 \001(\010:\004true\022\032\n" +
       "\014logical_plan\030\002 \001(\010:\004true\022\033\n\rphysical_pl" +
       "an\030\003 \001(\010:\004true\022\033\n\rjava_executor\030\004 \001(\010:\004t" +
@@ -3304,35 +2864,35 @@
       "nProtosH\001"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
-        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
-          public com.google.protobuf.ExtensionRegistry assignDescriptors(
-              com.google.protobuf.Descriptors.FileDescriptor root) {
-            descriptor = root;
-            return null;
-          }
-        };
+      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
+        public com.google.protobuf.ExtensionRegistry assignDescriptors(
+            com.google.protobuf.Descriptors.FileDescriptor root) {
+          descriptor = root;
+          internal_static_exec_DrillbitEndpoint_descriptor =
+            getDescriptor().getMessageTypes().get(0);
+          internal_static_exec_DrillbitEndpoint_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_DrillbitEndpoint_descriptor,
+              new java.lang.String[] { "Address", "UserPort", "ControlPort", "DataPort", "Roles", "Version", "State", "HttpPort", });
+          internal_static_exec_DrillServiceInstance_descriptor =
+            getDescriptor().getMessageTypes().get(1);
+          internal_static_exec_DrillServiceInstance_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_DrillServiceInstance_descriptor,
+              new java.lang.String[] { "Id", "RegistrationTimeUTC", "Endpoint", });
+          internal_static_exec_Roles_descriptor =
+            getDescriptor().getMessageTypes().get(2);
+          internal_static_exec_Roles_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_Roles_descriptor,
+              new java.lang.String[] { "SqlQuery", "LogicalPlan", "PhysicalPlan", "JavaExecutor", "DistributedCache", });
+          return null;
+        }
+      };
     com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
         new com.google.protobuf.Descriptors.FileDescriptor[] {
         }, assigner);
-    internal_static_exec_DrillbitEndpoint_descriptor =
-      getDescriptor().getMessageTypes().get(0);
-    internal_static_exec_DrillbitEndpoint_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_DrillbitEndpoint_descriptor,
-        new java.lang.String[] { "Address", "UserPort", "ControlPort", "DataPort", "Roles", "Version", "State", "HttpPort", });
-    internal_static_exec_DrillServiceInstance_descriptor =
-      getDescriptor().getMessageTypes().get(1);
-    internal_static_exec_DrillServiceInstance_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_DrillServiceInstance_descriptor,
-        new java.lang.String[] { "Id", "RegistrationTimeUTC", "Endpoint", });
-    internal_static_exec_Roles_descriptor =
-      getDescriptor().getMessageTypes().get(2);
-    internal_static_exec_Roles_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_Roles_descriptor,
-        new java.lang.String[] { "SqlQuery", "LogicalPlan", "PhysicalPlan", "JavaExecutor", "DistributedCache", });
   }
 
   // @@protoc_insertion_point(outer_class_scope)
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/ExecProtos.java b/protocol/src/main/java/org/apache/drill/exec/proto/ExecProtos.java
index fb761d4..35df06f 100644
--- a/protocol/src/main/java/org/apache/drill/exec/proto/ExecProtos.java
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/ExecProtos.java
@@ -23,18 +23,12 @@
 public final class ExecProtos {
   private ExecProtos() {}
   public static void registerAllExtensions(
-      com.google.protobuf.ExtensionRegistryLite registry) {
-  }
-
-  public static void registerAllExtensions(
       com.google.protobuf.ExtensionRegistry registry) {
-    registerAllExtensions(
-        (com.google.protobuf.ExtensionRegistryLite) registry);
   }
-  public interface FragmentHandleOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.FragmentHandle)
-      com.google.protobuf.MessageOrBuilder {
+  public interface FragmentHandleOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.QueryId query_id = 1;
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
@@ -48,6 +42,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder();
 
+    // optional int32 major_fragment_id = 2;
     /**
      * <code>optional int32 major_fragment_id = 2;</code>
      */
@@ -57,6 +52,7 @@
      */
     int getMajorFragmentId();
 
+    // optional int32 minor_fragment_id = 3;
     /**
      * <code>optional int32 minor_fragment_id = 3;</code>
      */
@@ -66,6 +62,7 @@
      */
     int getMinorFragmentId();
 
+    // optional .exec.shared.QueryId parent_query_id = 4;
     /**
      * <code>optional .exec.shared.QueryId parent_query_id = 4;</code>
      */
@@ -82,33 +79,36 @@
   /**
    * Protobuf type {@code exec.bit.FragmentHandle}
    */
-  public  static final class FragmentHandle extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.FragmentHandle)
-      FragmentHandleOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class FragmentHandle extends
+      com.google.protobuf.GeneratedMessage
+      implements FragmentHandleOrBuilder {
     // Use FragmentHandle.newBuilder() to construct.
-    private FragmentHandle(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private FragmentHandle(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private FragmentHandle() {
-      majorFragmentId_ = 0;
-      minorFragmentId_ = 0;
+    private FragmentHandle(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final FragmentHandle defaultInstance;
+    public static FragmentHandle getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public FragmentHandle getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private FragmentHandle(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -120,6 +120,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserBitShared.QueryId.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -156,20 +163,13 @@
               bitField0_ |= 0x00000008;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -180,15 +180,30 @@
       return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_FragmentHandle_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_FragmentHandle_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.ExecProtos.FragmentHandle.class, org.apache.drill.exec.proto.ExecProtos.FragmentHandle.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<FragmentHandle> PARSER =
+        new com.google.protobuf.AbstractParser<FragmentHandle>() {
+      public FragmentHandle parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new FragmentHandle(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<FragmentHandle> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.shared.QueryId query_id = 1;
     public static final int QUERY_ID_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_;
     /**
@@ -201,15 +216,16 @@
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
 
+    // optional int32 major_fragment_id = 2;
     public static final int MAJOR_FRAGMENT_ID_FIELD_NUMBER = 2;
     private int majorFragmentId_;
     /**
@@ -225,6 +241,7 @@
       return majorFragmentId_;
     }
 
+    // optional int32 minor_fragment_id = 3;
     public static final int MINOR_FRAGMENT_ID_FIELD_NUMBER = 3;
     private int minorFragmentId_;
     /**
@@ -240,6 +257,7 @@
       return minorFragmentId_;
     }
 
+    // optional .exec.shared.QueryId parent_query_id = 4;
     public static final int PARENT_QUERY_ID_FIELD_NUMBER = 4;
     private org.apache.drill.exec.proto.UserBitShared.QueryId parentQueryId_;
     /**
@@ -252,31 +270,35 @@
      * <code>optional .exec.shared.QueryId parent_query_id = 4;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryId getParentQueryId() {
-      return parentQueryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : parentQueryId_;
+      return parentQueryId_;
     }
     /**
      * <code>optional .exec.shared.QueryId parent_query_id = 4;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getParentQueryIdOrBuilder() {
-      return parentQueryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : parentQueryId_;
+      return parentQueryId_;
     }
 
+    private void initFields() {
+      queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      majorFragmentId_ = 0;
+      minorFragmentId_ = 0;
+      parentQueryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getQueryId());
+        output.writeMessage(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt32(2, majorFragmentId_);
@@ -285,20 +307,20 @@
         output.writeInt32(3, minorFragmentId_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        output.writeMessage(4, getParentQueryId());
+        output.writeMessage(4, parentQueryId_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getQueryId());
+          .computeMessageSize(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -310,87 +332,20 @@
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(4, getParentQueryId());
+          .computeMessageSize(4, parentQueryId_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.ExecProtos.FragmentHandle)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.ExecProtos.FragmentHandle other = (org.apache.drill.exec.proto.ExecProtos.FragmentHandle) obj;
-
-      boolean result = true;
-      result = result && (hasQueryId() == other.hasQueryId());
-      if (hasQueryId()) {
-        result = result && getQueryId()
-            .equals(other.getQueryId());
-      }
-      result = result && (hasMajorFragmentId() == other.hasMajorFragmentId());
-      if (hasMajorFragmentId()) {
-        result = result && (getMajorFragmentId()
-            == other.getMajorFragmentId());
-      }
-      result = result && (hasMinorFragmentId() == other.hasMinorFragmentId());
-      if (hasMinorFragmentId()) {
-        result = result && (getMinorFragmentId()
-            == other.getMinorFragmentId());
-      }
-      result = result && (hasParentQueryId() == other.hasParentQueryId());
-      if (hasParentQueryId()) {
-        result = result && getParentQueryId()
-            .equals(other.getParentQueryId());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasQueryId()) {
-        hash = (37 * hash) + QUERY_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getQueryId().hashCode();
-      }
-      if (hasMajorFragmentId()) {
-        hash = (37 * hash) + MAJOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getMajorFragmentId();
-      }
-      if (hasMinorFragmentId()) {
-        hash = (37 * hash) + MINOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getMinorFragmentId();
-      }
-      if (hasParentQueryId()) {
-        hash = (37 * hash) + PARENT_QUERY_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getParentQueryId().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -414,59 +369,46 @@
     }
     public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.ExecProtos.FragmentHandle prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -474,16 +416,14 @@
      * Protobuf type {@code exec.bit.FragmentHandle}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.FragmentHandle)
-        org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.ExecProtos.FragmentHandleOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_FragmentHandle_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_FragmentHandle_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -496,22 +436,24 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getQueryIdFieldBuilder();
           getParentQueryIdFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
         } else {
           queryIdBuilder_.clear();
         }
@@ -521,7 +463,7 @@
         minorFragmentId_ = 0;
         bitField0_ = (bitField0_ & ~0x00000004);
         if (parentQueryIdBuilder_ == null) {
-          parentQueryId_ = null;
+          parentQueryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
         } else {
           parentQueryIdBuilder_.clear();
         }
@@ -529,18 +471,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_FragmentHandle_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.ExecProtos.FragmentHandle.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.ExecProtos.FragmentHandle build() {
         org.apache.drill.exec.proto.ExecProtos.FragmentHandle result = buildPartial();
         if (!result.isInitialized()) {
@@ -549,7 +492,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.ExecProtos.FragmentHandle buildPartial() {
         org.apache.drill.exec.proto.ExecProtos.FragmentHandle result = new org.apache.drill.exec.proto.ExecProtos.FragmentHandle(this);
         int from_bitField0_ = bitField0_;
@@ -583,39 +525,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.ExecProtos.FragmentHandle) {
           return mergeFrom((org.apache.drill.exec.proto.ExecProtos.FragmentHandle)other);
@@ -639,17 +548,14 @@
         if (other.hasParentQueryId()) {
           mergeParentQueryId(other.getParentQueryId());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -659,7 +565,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.ExecProtos.FragmentHandle) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -669,8 +575,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.QueryId query_id = 1;
+      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> queryIdBuilder_;
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
@@ -683,7 +590,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
         if (queryIdBuilder_ == null) {
-          return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         } else {
           return queryIdBuilder_.getMessage();
         }
@@ -724,7 +631,6 @@
       public Builder mergeQueryId(org.apache.drill.exec.proto.UserBitShared.QueryId value) {
         if (queryIdBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              queryId_ != null &&
               queryId_ != org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance()) {
             queryId_ =
               org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(queryId_).mergeFrom(value).buildPartial();
@@ -743,7 +649,7 @@
        */
       public Builder clearQueryId() {
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
           onChanged();
         } else {
           queryIdBuilder_.clear();
@@ -766,20 +672,19 @@
         if (queryIdBuilder_ != null) {
           return queryIdBuilder_.getMessageOrBuilder();
         } else {
-          return queryId_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         }
       }
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> 
           getQueryIdFieldBuilder() {
         if (queryIdBuilder_ == null) {
-          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder>(
-                  getQueryId(),
+                  queryId_,
                   getParentForChildren(),
                   isClean());
           queryId_ = null;
@@ -787,6 +692,7 @@
         return queryIdBuilder_;
       }
 
+      // optional int32 major_fragment_id = 2;
       private int majorFragmentId_ ;
       /**
        * <code>optional int32 major_fragment_id = 2;</code>
@@ -819,6 +725,7 @@
         return this;
       }
 
+      // optional int32 minor_fragment_id = 3;
       private int minorFragmentId_ ;
       /**
        * <code>optional int32 minor_fragment_id = 3;</code>
@@ -851,8 +758,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.QueryId parentQueryId_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.QueryId parent_query_id = 4;
+      private org.apache.drill.exec.proto.UserBitShared.QueryId parentQueryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> parentQueryIdBuilder_;
       /**
        * <code>optional .exec.shared.QueryId parent_query_id = 4;</code>
@@ -865,7 +773,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryId getParentQueryId() {
         if (parentQueryIdBuilder_ == null) {
-          return parentQueryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : parentQueryId_;
+          return parentQueryId_;
         } else {
           return parentQueryIdBuilder_.getMessage();
         }
@@ -906,7 +814,6 @@
       public Builder mergeParentQueryId(org.apache.drill.exec.proto.UserBitShared.QueryId value) {
         if (parentQueryIdBuilder_ == null) {
           if (((bitField0_ & 0x00000008) == 0x00000008) &&
-              parentQueryId_ != null &&
               parentQueryId_ != org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance()) {
             parentQueryId_ =
               org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(parentQueryId_).mergeFrom(value).buildPartial();
@@ -925,7 +832,7 @@
        */
       public Builder clearParentQueryId() {
         if (parentQueryIdBuilder_ == null) {
-          parentQueryId_ = null;
+          parentQueryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
           onChanged();
         } else {
           parentQueryIdBuilder_.clear();
@@ -948,83 +855,41 @@
         if (parentQueryIdBuilder_ != null) {
           return parentQueryIdBuilder_.getMessageOrBuilder();
         } else {
-          return parentQueryId_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : parentQueryId_;
+          return parentQueryId_;
         }
       }
       /**
        * <code>optional .exec.shared.QueryId parent_query_id = 4;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> 
           getParentQueryIdFieldBuilder() {
         if (parentQueryIdBuilder_ == null) {
-          parentQueryIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          parentQueryIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder>(
-                  getParentQueryId(),
+                  parentQueryId_,
                   getParentForChildren(),
                   isClean());
           parentQueryId_ = null;
         }
         return parentQueryIdBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.FragmentHandle)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.FragmentHandle)
-    private static final org.apache.drill.exec.proto.ExecProtos.FragmentHandle DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.ExecProtos.FragmentHandle();
+      defaultInstance = new FragmentHandle(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.ExecProtos.FragmentHandle getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<FragmentHandle>
-        PARSER = new com.google.protobuf.AbstractParser<FragmentHandle>() {
-      @java.lang.Override
-      public FragmentHandle parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new FragmentHandle(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<FragmentHandle> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<FragmentHandle> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.ExecProtos.FragmentHandle getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.FragmentHandle)
   }
 
-  public interface ServerPreparedStatementStateOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.bit.ServerPreparedStatementState)
-      com.google.protobuf.MessageOrBuilder {
+  public interface ServerPreparedStatementStateOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string sql_query = 1;
     /**
      * <code>optional string sql_query = 1;</code>
      */
@@ -1040,40 +905,45 @@
         getSqlQueryBytes();
   }
   /**
+   * Protobuf type {@code exec.bit.ServerPreparedStatementState}
+   *
    * <pre>
+   *
    * Prepared statement state on server side. Clients do not
    * need to know the contents. They just need to submit it back to
    * server when executing the prepared statement.
    * </pre>
-   *
-   * Protobuf type {@code exec.bit.ServerPreparedStatementState}
    */
-  public  static final class ServerPreparedStatementState extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.bit.ServerPreparedStatementState)
-      ServerPreparedStatementStateOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class ServerPreparedStatementState extends
+      com.google.protobuf.GeneratedMessage
+      implements ServerPreparedStatementStateOrBuilder {
     // Use ServerPreparedStatementState.newBuilder() to construct.
-    private ServerPreparedStatementState(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private ServerPreparedStatementState(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private ServerPreparedStatementState() {
-      sqlQuery_ = "";
+    private ServerPreparedStatementState(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final ServerPreparedStatementState defaultInstance;
+    public static ServerPreparedStatementState getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public ServerPreparedStatementState getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private ServerPreparedStatementState(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -1085,26 +955,25 @@
             case 0:
               done = true;
               break;
-            case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
-              bitField0_ |= 0x00000001;
-              sqlQuery_ = bs;
-              break;
-            }
             default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
                 done = true;
               }
               break;
             }
+            case 10: {
+              bitField0_ |= 0x00000001;
+              sqlQuery_ = input.readBytes();
+              break;
+            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -1115,17 +984,32 @@
       return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_ServerPreparedStatementState_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_ServerPreparedStatementState_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState.class, org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<ServerPreparedStatementState> PARSER =
+        new com.google.protobuf.AbstractParser<ServerPreparedStatementState>() {
+      public ServerPreparedStatementState parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new ServerPreparedStatementState(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<ServerPreparedStatementState> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string sql_query = 1;
     public static final int SQL_QUERY_FIELD_NUMBER = 1;
-    private volatile java.lang.Object sqlQuery_;
+    private java.lang.Object sqlQuery_;
     /**
      * <code>optional string sql_query = 1;</code>
      */
@@ -1166,87 +1050,49 @@
       }
     }
 
+    private void initFields() {
+      sqlQuery_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, sqlQuery_);
+        output.writeBytes(1, getSqlQueryBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, sqlQuery_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getSqlQueryBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState other = (org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState) obj;
-
-      boolean result = true;
-      result = result && (hasSqlQuery() == other.hasSqlQuery());
-      if (hasSqlQuery()) {
-        result = result && getSqlQuery()
-            .equals(other.getSqlQuery());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasSqlQuery()) {
-        hash = (37 * hash) + SQL_QUERY_FIELD_NUMBER;
-        hash = (53 * hash) + getSqlQuery().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -1270,82 +1116,68 @@
     }
     public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.bit.ServerPreparedStatementState}
+     *
      * <pre>
+     *
      * Prepared statement state on server side. Clients do not
      * need to know the contents. They just need to submit it back to
      * server when executing the prepared statement.
      * </pre>
-     *
-     * Protobuf type {@code exec.bit.ServerPreparedStatementState}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.bit.ServerPreparedStatementState)
-        org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementStateOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementStateOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_ServerPreparedStatementState_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_ServerPreparedStatementState_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -1358,16 +1190,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         sqlQuery_ = "";
@@ -1375,18 +1209,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.ExecProtos.internal_static_exec_bit_ServerPreparedStatementState_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState build() {
         org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState result = buildPartial();
         if (!result.isInitialized()) {
@@ -1395,7 +1230,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState buildPartial() {
         org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState result = new org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState(this);
         int from_bitField0_ = bitField0_;
@@ -1409,39 +1243,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState) {
           return mergeFrom((org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState)other);
@@ -1458,17 +1259,14 @@
           sqlQuery_ = other.sqlQuery_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -1478,7 +1276,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -1488,6 +1286,7 @@
       }
       private int bitField0_;
 
+      // optional string sql_query = 1;
       private java.lang.Object sqlQuery_ = "";
       /**
        * <code>optional string sql_query = 1;</code>
@@ -1501,12 +1300,9 @@
       public java.lang.String getSqlQuery() {
         java.lang.Object ref = sqlQuery_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            sqlQuery_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          sqlQuery_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -1563,75 +1359,34 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.bit.ServerPreparedStatementState)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.bit.ServerPreparedStatementState)
-    private static final org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState();
+      defaultInstance = new ServerPreparedStatementState(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<ServerPreparedStatementState>
-        PARSER = new com.google.protobuf.AbstractParser<ServerPreparedStatementState>() {
-      @java.lang.Override
-      public ServerPreparedStatementState parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new ServerPreparedStatementState(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<ServerPreparedStatementState> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<ServerPreparedStatementState> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.ExecProtos.ServerPreparedStatementState getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.bit.ServerPreparedStatementState)
   }
 
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_FragmentHandle_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_FragmentHandle_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_bit_ServerPreparedStatementState_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_bit_ServerPreparedStatementState_fieldAccessorTable;
 
   public static com.google.protobuf.Descriptors.FileDescriptor
       getDescriptor() {
     return descriptor;
   }
-  private static  com.google.protobuf.Descriptors.FileDescriptor
+  private static com.google.protobuf.Descriptors.FileDescriptor
       descriptor;
   static {
     java.lang.String[] descriptorData = {
@@ -1646,33 +1401,31 @@
       "ecProtosH\001"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
-        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
-          public com.google.protobuf.ExtensionRegistry assignDescriptors(
-              com.google.protobuf.Descriptors.FileDescriptor root) {
-            descriptor = root;
-            return null;
-          }
-        };
+      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
+        public com.google.protobuf.ExtensionRegistry assignDescriptors(
+            com.google.protobuf.Descriptors.FileDescriptor root) {
+          descriptor = root;
+          internal_static_exec_bit_FragmentHandle_descriptor =
+            getDescriptor().getMessageTypes().get(0);
+          internal_static_exec_bit_FragmentHandle_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_FragmentHandle_descriptor,
+              new java.lang.String[] { "QueryId", "MajorFragmentId", "MinorFragmentId", "ParentQueryId", });
+          internal_static_exec_bit_ServerPreparedStatementState_descriptor =
+            getDescriptor().getMessageTypes().get(1);
+          internal_static_exec_bit_ServerPreparedStatementState_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_bit_ServerPreparedStatementState_descriptor,
+              new java.lang.String[] { "SqlQuery", });
+          return null;
+        }
+      };
     com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
         new com.google.protobuf.Descriptors.FileDescriptor[] {
           org.apache.drill.exec.proto.CoordinationProtos.getDescriptor(),
           org.apache.drill.exec.proto.UserBitShared.getDescriptor(),
         }, assigner);
-    internal_static_exec_bit_FragmentHandle_descriptor =
-      getDescriptor().getMessageTypes().get(0);
-    internal_static_exec_bit_FragmentHandle_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_FragmentHandle_descriptor,
-        new java.lang.String[] { "QueryId", "MajorFragmentId", "MinorFragmentId", "ParentQueryId", });
-    internal_static_exec_bit_ServerPreparedStatementState_descriptor =
-      getDescriptor().getMessageTypes().get(1);
-    internal_static_exec_bit_ServerPreparedStatementState_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_bit_ServerPreparedStatementState_descriptor,
-        new java.lang.String[] { "SqlQuery", });
-    org.apache.drill.exec.proto.CoordinationProtos.getDescriptor();
-    org.apache.drill.exec.proto.UserBitShared.getDescriptor();
   }
 
   // @@protoc_insertion_point(outer_class_scope)
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/GeneralRPCProtos.java b/protocol/src/main/java/org/apache/drill/exec/proto/GeneralRPCProtos.java
index 064fc34..52cfda4 100644
--- a/protocol/src/main/java/org/apache/drill/exec/proto/GeneralRPCProtos.java
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/GeneralRPCProtos.java
@@ -23,13 +23,7 @@
 public final class GeneralRPCProtos {
   private GeneralRPCProtos() {}
   public static void registerAllExtensions(
-      com.google.protobuf.ExtensionRegistryLite registry) {
-  }
-
-  public static void registerAllExtensions(
       com.google.protobuf.ExtensionRegistry registry) {
-    registerAllExtensions(
-        (com.google.protobuf.ExtensionRegistryLite) registry);
   }
   /**
    * Protobuf enum {@code exec.rpc.RpcMode}
@@ -39,23 +33,23 @@
     /**
      * <code>REQUEST = 0;</code>
      */
-    REQUEST(0),
+    REQUEST(0, 0),
     /**
      * <code>RESPONSE = 1;</code>
      */
-    RESPONSE(1),
+    RESPONSE(1, 1),
     /**
      * <code>RESPONSE_FAILURE = 2;</code>
      */
-    RESPONSE_FAILURE(2),
+    RESPONSE_FAILURE(2, 2),
     /**
      * <code>PING = 3;</code>
      */
-    PING(3),
+    PING(3, 3),
     /**
      * <code>PONG = 4;</code>
      */
-    PONG(4),
+    PONG(4, 4),
     ;
 
     /**
@@ -80,19 +74,9 @@
     public static final int PONG_VALUE = 4;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static RpcMode valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static RpcMode forNumber(int value) {
       switch (value) {
         case 0: return REQUEST;
         case 1: return RESPONSE;
@@ -107,17 +91,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        RpcMode> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<RpcMode>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<RpcMode>() {
             public RpcMode findValueByNumber(int number) {
-              return RpcMode.forNumber(number);
+              return RpcMode.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -139,19 +123,21 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private RpcMode(int value) {
+    private RpcMode(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
     // @@protoc_insertion_point(enum_scope:exec.rpc.RpcMode)
   }
 
-  public interface AckOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.rpc.Ack)
-      com.google.protobuf.MessageOrBuilder {
+  public interface AckOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional bool ok = 1;
     /**
      * <code>optional bool ok = 1;</code>
      */
@@ -164,32 +150,36 @@
   /**
    * Protobuf type {@code exec.rpc.Ack}
    */
-  public  static final class Ack extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.rpc.Ack)
-      AckOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class Ack extends
+      com.google.protobuf.GeneratedMessage
+      implements AckOrBuilder {
     // Use Ack.newBuilder() to construct.
-    private Ack(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private Ack(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private Ack() {
-      ok_ = false;
+    private Ack(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final Ack defaultInstance;
+    public static Ack getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public Ack getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private Ack(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -201,25 +191,25 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               ok_ = input.readBool();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -230,15 +220,30 @@
       return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_Ack_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_Ack_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.GeneralRPCProtos.Ack.class, org.apache.drill.exec.proto.GeneralRPCProtos.Ack.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<Ack> PARSER =
+        new com.google.protobuf.AbstractParser<Ack>() {
+      public Ack parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new Ack(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<Ack> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional bool ok = 1;
     public static final int OK_FIELD_NUMBER = 1;
     private boolean ok_;
     /**
@@ -254,29 +259,30 @@
       return ok_;
     }
 
+    private void initFields() {
+      ok_ = false;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeBool(1, ok_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -284,59 +290,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(1, ok_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.GeneralRPCProtos.Ack)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.GeneralRPCProtos.Ack other = (org.apache.drill.exec.proto.GeneralRPCProtos.Ack) obj;
-
-      boolean result = true;
-      result = result && (hasOk() == other.hasOk());
-      if (hasOk()) {
-        result = result && (getOk()
-            == other.getOk());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasOk()) {
-        hash = (37 * hash) + OK_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getOk());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -360,59 +325,46 @@
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.GeneralRPCProtos.Ack prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -420,16 +372,14 @@
      * Protobuf type {@code exec.rpc.Ack}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.rpc.Ack)
-        org.apache.drill.exec.proto.GeneralRPCProtos.AckOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.GeneralRPCProtos.AckOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_Ack_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_Ack_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -442,16 +392,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         ok_ = false;
@@ -459,18 +411,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_Ack_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.GeneralRPCProtos.Ack getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.Ack.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.GeneralRPCProtos.Ack build() {
         org.apache.drill.exec.proto.GeneralRPCProtos.Ack result = buildPartial();
         if (!result.isInitialized()) {
@@ -479,7 +432,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.GeneralRPCProtos.Ack buildPartial() {
         org.apache.drill.exec.proto.GeneralRPCProtos.Ack result = new org.apache.drill.exec.proto.GeneralRPCProtos.Ack(this);
         int from_bitField0_ = bitField0_;
@@ -493,39 +445,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.GeneralRPCProtos.Ack) {
           return mergeFrom((org.apache.drill.exec.proto.GeneralRPCProtos.Ack)other);
@@ -540,17 +459,14 @@
         if (other.hasOk()) {
           setOk(other.getOk());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -560,7 +476,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.GeneralRPCProtos.Ack) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -570,6 +486,7 @@
       }
       private int bitField0_;
 
+      // optional bool ok = 1;
       private boolean ok_ ;
       /**
        * <code>optional bool ok = 1;</code>
@@ -601,63 +518,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.rpc.Ack)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.rpc.Ack)
-    private static final org.apache.drill.exec.proto.GeneralRPCProtos.Ack DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.GeneralRPCProtos.Ack();
+      defaultInstance = new Ack(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.GeneralRPCProtos.Ack getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<Ack>
-        PARSER = new com.google.protobuf.AbstractParser<Ack>() {
-      @java.lang.Override
-      public Ack parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new Ack(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<Ack> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<Ack> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.GeneralRPCProtos.Ack getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.rpc.Ack)
   }
 
-  public interface RpcHeaderOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.rpc.RpcHeader)
-      com.google.protobuf.MessageOrBuilder {
+  public interface RpcHeaderOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.rpc.RpcMode mode = 1;
     /**
      * <code>optional .exec.rpc.RpcMode mode = 1;</code>
      */
@@ -667,71 +543,75 @@
      */
     org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode getMode();
 
+    // optional int32 coordination_id = 2;
     /**
+     * <code>optional int32 coordination_id = 2;</code>
+     *
      * <pre>
      * reusable coordination identifier.  Sender defines.  Server returns on return.  Irrelevant for purely single direction rpc.
      * </pre>
-     *
-     * <code>optional int32 coordination_id = 2;</code>
      */
     boolean hasCoordinationId();
     /**
+     * <code>optional int32 coordination_id = 2;</code>
+     *
      * <pre>
      * reusable coordination identifier.  Sender defines.  Server returns on return.  Irrelevant for purely single direction rpc.
      * </pre>
-     *
-     * <code>optional int32 coordination_id = 2;</code>
      */
     int getCoordinationId();
 
+    // optional int32 rpc_type = 3;
     /**
+     * <code>optional int32 rpc_type = 3;</code>
+     *
      * <pre>
      * a rpc mode specific rpc type.
      * </pre>
-     *
-     * <code>optional int32 rpc_type = 3;</code>
      */
     boolean hasRpcType();
     /**
+     * <code>optional int32 rpc_type = 3;</code>
+     *
      * <pre>
      * a rpc mode specific rpc type.
      * </pre>
-     *
-     * <code>optional int32 rpc_type = 3;</code>
      */
     int getRpcType();
   }
   /**
    * Protobuf type {@code exec.rpc.RpcHeader}
    */
-  public  static final class RpcHeader extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.rpc.RpcHeader)
-      RpcHeaderOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class RpcHeader extends
+      com.google.protobuf.GeneratedMessage
+      implements RpcHeaderOrBuilder {
     // Use RpcHeader.newBuilder() to construct.
-    private RpcHeader(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private RpcHeader(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private RpcHeader() {
-      mode_ = 0;
-      coordinationId_ = 0;
-      rpcType_ = 0;
+    private RpcHeader(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final RpcHeader defaultInstance;
+    public static RpcHeader getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public RpcHeader getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private RpcHeader(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -743,15 +623,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode value = org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                mode_ = rawValue;
+                mode_ = value;
               }
               break;
             }
@@ -765,20 +651,13 @@
               rpcType_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -789,17 +668,32 @@
       return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_RpcHeader_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_RpcHeader_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.class, org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<RpcHeader> PARSER =
+        new com.google.protobuf.AbstractParser<RpcHeader>() {
+      public RpcHeader parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new RpcHeader(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<RpcHeader> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.rpc.RpcMode mode = 1;
     public static final int MODE_FIELD_NUMBER = 1;
-    private int mode_;
+    private org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode mode_;
     /**
      * <code>optional .exec.rpc.RpcMode mode = 1;</code>
      */
@@ -810,73 +704,76 @@
      * <code>optional .exec.rpc.RpcMode mode = 1;</code>
      */
     public org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode getMode() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode result = org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode.valueOf(mode_);
-      return result == null ? org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode.REQUEST : result;
+      return mode_;
     }
 
+    // optional int32 coordination_id = 2;
     public static final int COORDINATION_ID_FIELD_NUMBER = 2;
     private int coordinationId_;
     /**
+     * <code>optional int32 coordination_id = 2;</code>
+     *
      * <pre>
      * reusable coordination identifier.  Sender defines.  Server returns on return.  Irrelevant for purely single direction rpc.
      * </pre>
-     *
-     * <code>optional int32 coordination_id = 2;</code>
      */
     public boolean hasCoordinationId() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
+     * <code>optional int32 coordination_id = 2;</code>
+     *
      * <pre>
      * reusable coordination identifier.  Sender defines.  Server returns on return.  Irrelevant for purely single direction rpc.
      * </pre>
-     *
-     * <code>optional int32 coordination_id = 2;</code>
      */
     public int getCoordinationId() {
       return coordinationId_;
     }
 
+    // optional int32 rpc_type = 3;
     public static final int RPC_TYPE_FIELD_NUMBER = 3;
     private int rpcType_;
     /**
+     * <code>optional int32 rpc_type = 3;</code>
+     *
      * <pre>
      * a rpc mode specific rpc type.
      * </pre>
-     *
-     * <code>optional int32 rpc_type = 3;</code>
      */
     public boolean hasRpcType() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
+     * <code>optional int32 rpc_type = 3;</code>
+     *
      * <pre>
      * a rpc mode specific rpc type.
      * </pre>
-     *
-     * <code>optional int32 rpc_type = 3;</code>
      */
     public int getRpcType() {
       return rpcType_;
     }
 
+    private void initFields() {
+      mode_ = org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode.REQUEST;
+      coordinationId_ = 0;
+      rpcType_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, mode_);
+        output.writeEnum(1, mode_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt32(2, coordinationId_);
@@ -884,18 +781,18 @@
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeInt32(3, rpcType_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, mode_);
+          .computeEnumSize(1, mode_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -905,75 +802,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(3, rpcType_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader other = (org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader) obj;
-
-      boolean result = true;
-      result = result && (hasMode() == other.hasMode());
-      if (hasMode()) {
-        result = result && mode_ == other.mode_;
-      }
-      result = result && (hasCoordinationId() == other.hasCoordinationId());
-      if (hasCoordinationId()) {
-        result = result && (getCoordinationId()
-            == other.getCoordinationId());
-      }
-      result = result && (hasRpcType() == other.hasRpcType());
-      if (hasRpcType()) {
-        result = result && (getRpcType()
-            == other.getRpcType());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasMode()) {
-        hash = (37 * hash) + MODE_FIELD_NUMBER;
-        hash = (53 * hash) + mode_;
-      }
-      if (hasCoordinationId()) {
-        hash = (37 * hash) + COORDINATION_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getCoordinationId();
-      }
-      if (hasRpcType()) {
-        hash = (37 * hash) + RPC_TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + getRpcType();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -997,59 +837,46 @@
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -1057,16 +884,14 @@
      * Protobuf type {@code exec.rpc.RpcHeader}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.rpc.RpcHeader)
-        org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeaderOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeaderOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_RpcHeader_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_RpcHeader_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -1079,19 +904,21 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        mode_ = 0;
+        mode_ = org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode.REQUEST;
         bitField0_ = (bitField0_ & ~0x00000001);
         coordinationId_ = 0;
         bitField0_ = (bitField0_ & ~0x00000002);
@@ -1100,18 +927,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_RpcHeader_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader build() {
         org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader result = buildPartial();
         if (!result.isInitialized()) {
@@ -1120,7 +948,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader buildPartial() {
         org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader result = new org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader(this);
         int from_bitField0_ = bitField0_;
@@ -1142,39 +969,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader) {
           return mergeFrom((org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader)other);
@@ -1195,17 +989,14 @@
         if (other.hasRpcType()) {
           setRpcType(other.getRpcType());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -1215,7 +1006,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -1225,7 +1016,8 @@
       }
       private int bitField0_;
 
-      private int mode_ = 0;
+      // optional .exec.rpc.RpcMode mode = 1;
+      private org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode mode_ = org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode.REQUEST;
       /**
        * <code>optional .exec.rpc.RpcMode mode = 1;</code>
        */
@@ -1236,9 +1028,7 @@
        * <code>optional .exec.rpc.RpcMode mode = 1;</code>
        */
       public org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode getMode() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode result = org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode.valueOf(mode_);
-        return result == null ? org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode.REQUEST : result;
+        return mode_;
       }
       /**
        * <code>optional .exec.rpc.RpcMode mode = 1;</code>
@@ -1248,7 +1038,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        mode_ = value.getNumber();
+        mode_ = value;
         onChanged();
         return this;
       }
@@ -1257,38 +1047,39 @@
        */
       public Builder clearMode() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        mode_ = 0;
+        mode_ = org.apache.drill.exec.proto.GeneralRPCProtos.RpcMode.REQUEST;
         onChanged();
         return this;
       }
 
+      // optional int32 coordination_id = 2;
       private int coordinationId_ ;
       /**
+       * <code>optional int32 coordination_id = 2;</code>
+       *
        * <pre>
        * reusable coordination identifier.  Sender defines.  Server returns on return.  Irrelevant for purely single direction rpc.
        * </pre>
-       *
-       * <code>optional int32 coordination_id = 2;</code>
        */
       public boolean hasCoordinationId() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
+       * <code>optional int32 coordination_id = 2;</code>
+       *
        * <pre>
        * reusable coordination identifier.  Sender defines.  Server returns on return.  Irrelevant for purely single direction rpc.
        * </pre>
-       *
-       * <code>optional int32 coordination_id = 2;</code>
        */
       public int getCoordinationId() {
         return coordinationId_;
       }
       /**
+       * <code>optional int32 coordination_id = 2;</code>
+       *
        * <pre>
        * reusable coordination identifier.  Sender defines.  Server returns on return.  Irrelevant for purely single direction rpc.
        * </pre>
-       *
-       * <code>optional int32 coordination_id = 2;</code>
        */
       public Builder setCoordinationId(int value) {
         bitField0_ |= 0x00000002;
@@ -1297,11 +1088,11 @@
         return this;
       }
       /**
+       * <code>optional int32 coordination_id = 2;</code>
+       *
        * <pre>
        * reusable coordination identifier.  Sender defines.  Server returns on return.  Irrelevant for purely single direction rpc.
        * </pre>
-       *
-       * <code>optional int32 coordination_id = 2;</code>
        */
       public Builder clearCoordinationId() {
         bitField0_ = (bitField0_ & ~0x00000002);
@@ -1310,33 +1101,34 @@
         return this;
       }
 
+      // optional int32 rpc_type = 3;
       private int rpcType_ ;
       /**
+       * <code>optional int32 rpc_type = 3;</code>
+       *
        * <pre>
        * a rpc mode specific rpc type.
        * </pre>
-       *
-       * <code>optional int32 rpc_type = 3;</code>
        */
       public boolean hasRpcType() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
+       * <code>optional int32 rpc_type = 3;</code>
+       *
        * <pre>
        * a rpc mode specific rpc type.
        * </pre>
-       *
-       * <code>optional int32 rpc_type = 3;</code>
        */
       public int getRpcType() {
         return rpcType_;
       }
       /**
+       * <code>optional int32 rpc_type = 3;</code>
+       *
        * <pre>
        * a rpc mode specific rpc type.
        * </pre>
-       *
-       * <code>optional int32 rpc_type = 3;</code>
        */
       public Builder setRpcType(int value) {
         bitField0_ |= 0x00000004;
@@ -1345,11 +1137,11 @@
         return this;
       }
       /**
+       * <code>optional int32 rpc_type = 3;</code>
+       *
        * <pre>
        * a rpc mode specific rpc type.
        * </pre>
-       *
-       * <code>optional int32 rpc_type = 3;</code>
        */
       public Builder clearRpcType() {
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -1357,152 +1149,116 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.rpc.RpcHeader)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.rpc.RpcHeader)
-    private static final org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader();
+      defaultInstance = new RpcHeader(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<RpcHeader>
-        PARSER = new com.google.protobuf.AbstractParser<RpcHeader>() {
-      @java.lang.Override
-      public RpcHeader parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new RpcHeader(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<RpcHeader> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<RpcHeader> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.rpc.RpcHeader)
   }
 
-  public interface CompleteRpcMessageOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.rpc.CompleteRpcMessage)
-      com.google.protobuf.MessageOrBuilder {
+  public interface CompleteRpcMessageOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.rpc.RpcHeader header = 1;
     /**
+     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
      */
     boolean hasHeader();
     /**
+     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
      */
     org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader getHeader();
     /**
+     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
      */
     org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeaderOrBuilder getHeaderOrBuilder();
 
+    // optional bytes protobuf_body = 2;
     /**
+     * <code>optional bytes protobuf_body = 2;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional bytes protobuf_body = 2;</code>
      */
     boolean hasProtobufBody();
     /**
+     * <code>optional bytes protobuf_body = 2;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional bytes protobuf_body = 2;</code>
      */
     com.google.protobuf.ByteString getProtobufBody();
 
+    // optional bytes raw_body = 3;
     /**
+     * <code>optional bytes raw_body = 3;</code>
+     *
      * <pre>
      * optional
      * </pre>
-     *
-     * <code>optional bytes raw_body = 3;</code>
      */
     boolean hasRawBody();
     /**
+     * <code>optional bytes raw_body = 3;</code>
+     *
      * <pre>
      * optional
      * </pre>
-     *
-     * <code>optional bytes raw_body = 3;</code>
      */
     com.google.protobuf.ByteString getRawBody();
   }
   /**
    * Protobuf type {@code exec.rpc.CompleteRpcMessage}
    */
-  public  static final class CompleteRpcMessage extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.rpc.CompleteRpcMessage)
-      CompleteRpcMessageOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class CompleteRpcMessage extends
+      com.google.protobuf.GeneratedMessage
+      implements CompleteRpcMessageOrBuilder {
     // Use CompleteRpcMessage.newBuilder() to construct.
-    private CompleteRpcMessage(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private CompleteRpcMessage(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private CompleteRpcMessage() {
-      protobufBody_ = com.google.protobuf.ByteString.EMPTY;
-      rawBody_ = com.google.protobuf.ByteString.EMPTY;
+    private CompleteRpcMessage(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final CompleteRpcMessage defaultInstance;
+    public static CompleteRpcMessage getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public CompleteRpcMessage getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private CompleteRpcMessage(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -1514,6 +1270,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -1537,20 +1300,13 @@
               rawBody_ = input.readBytes();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -1561,110 +1317,130 @@
       return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_CompleteRpcMessage_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_CompleteRpcMessage_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage.class, org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<CompleteRpcMessage> PARSER =
+        new com.google.protobuf.AbstractParser<CompleteRpcMessage>() {
+      public CompleteRpcMessage parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new CompleteRpcMessage(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<CompleteRpcMessage> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.rpc.RpcHeader header = 1;
     public static final int HEADER_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader header_;
     /**
+     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
      */
     public boolean hasHeader() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
      */
     public org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader getHeader() {
-      return header_ == null ? org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance() : header_;
+      return header_;
     }
     /**
+     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional .exec.rpc.RpcHeader header = 1;</code>
      */
     public org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeaderOrBuilder getHeaderOrBuilder() {
-      return header_ == null ? org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance() : header_;
+      return header_;
     }
 
+    // optional bytes protobuf_body = 2;
     public static final int PROTOBUF_BODY_FIELD_NUMBER = 2;
     private com.google.protobuf.ByteString protobufBody_;
     /**
+     * <code>optional bytes protobuf_body = 2;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional bytes protobuf_body = 2;</code>
      */
     public boolean hasProtobufBody() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
+     * <code>optional bytes protobuf_body = 2;</code>
+     *
      * <pre>
      * required
      * </pre>
-     *
-     * <code>optional bytes protobuf_body = 2;</code>
      */
     public com.google.protobuf.ByteString getProtobufBody() {
       return protobufBody_;
     }
 
+    // optional bytes raw_body = 3;
     public static final int RAW_BODY_FIELD_NUMBER = 3;
     private com.google.protobuf.ByteString rawBody_;
     /**
+     * <code>optional bytes raw_body = 3;</code>
+     *
      * <pre>
      * optional
      * </pre>
-     *
-     * <code>optional bytes raw_body = 3;</code>
      */
     public boolean hasRawBody() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
+     * <code>optional bytes raw_body = 3;</code>
+     *
      * <pre>
      * optional
      * </pre>
-     *
-     * <code>optional bytes raw_body = 3;</code>
      */
     public com.google.protobuf.ByteString getRawBody() {
       return rawBody_;
     }
 
+    private void initFields() {
+      header_ = org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance();
+      protobufBody_ = com.google.protobuf.ByteString.EMPTY;
+      rawBody_ = com.google.protobuf.ByteString.EMPTY;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getHeader());
+        output.writeMessage(1, header_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeBytes(2, protobufBody_);
@@ -1672,18 +1448,18 @@
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeBytes(3, rawBody_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getHeader());
+          .computeMessageSize(1, header_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -1693,76 +1469,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeBytesSize(3, rawBody_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage other = (org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage) obj;
-
-      boolean result = true;
-      result = result && (hasHeader() == other.hasHeader());
-      if (hasHeader()) {
-        result = result && getHeader()
-            .equals(other.getHeader());
-      }
-      result = result && (hasProtobufBody() == other.hasProtobufBody());
-      if (hasProtobufBody()) {
-        result = result && getProtobufBody()
-            .equals(other.getProtobufBody());
-      }
-      result = result && (hasRawBody() == other.hasRawBody());
-      if (hasRawBody()) {
-        result = result && getRawBody()
-            .equals(other.getRawBody());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasHeader()) {
-        hash = (37 * hash) + HEADER_FIELD_NUMBER;
-        hash = (53 * hash) + getHeader().hashCode();
-      }
-      if (hasProtobufBody()) {
-        hash = (37 * hash) + PROTOBUF_BODY_FIELD_NUMBER;
-        hash = (53 * hash) + getProtobufBody().hashCode();
-      }
-      if (hasRawBody()) {
-        hash = (37 * hash) + RAW_BODY_FIELD_NUMBER;
-        hash = (53 * hash) + getRawBody().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -1786,59 +1504,46 @@
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -1846,16 +1551,14 @@
      * Protobuf type {@code exec.rpc.CompleteRpcMessage}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.rpc.CompleteRpcMessage)
-        org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessageOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessageOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_CompleteRpcMessage_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_CompleteRpcMessage_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -1868,21 +1571,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getHeaderFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (headerBuilder_ == null) {
-          header_ = null;
+          header_ = org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance();
         } else {
           headerBuilder_.clear();
         }
@@ -1894,18 +1599,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.internal_static_exec_rpc_CompleteRpcMessage_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage build() {
         org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage result = buildPartial();
         if (!result.isInitialized()) {
@@ -1914,7 +1620,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage buildPartial() {
         org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage result = new org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage(this);
         int from_bitField0_ = bitField0_;
@@ -1940,39 +1645,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage) {
           return mergeFrom((org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage)other);
@@ -1993,17 +1665,14 @@
         if (other.hasRawBody()) {
           setRawBody(other.getRawBody());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -2013,7 +1682,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -2023,39 +1692,40 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader header_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.rpc.RpcHeader header = 1;
+      private org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader header_ = org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader, org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.Builder, org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeaderOrBuilder> headerBuilder_;
       /**
+       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
        */
       public boolean hasHeader() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
+       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
        */
       public org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader getHeader() {
         if (headerBuilder_ == null) {
-          return header_ == null ? org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance() : header_;
+          return header_;
         } else {
           return headerBuilder_.getMessage();
         }
       }
       /**
+       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
        */
       public Builder setHeader(org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader value) {
         if (headerBuilder_ == null) {
@@ -2071,11 +1741,11 @@
         return this;
       }
       /**
+       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
        */
       public Builder setHeader(
           org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.Builder builderForValue) {
@@ -2089,16 +1759,15 @@
         return this;
       }
       /**
+       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
        */
       public Builder mergeHeader(org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader value) {
         if (headerBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              header_ != null &&
               header_ != org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance()) {
             header_ =
               org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.newBuilder(header_).mergeFrom(value).buildPartial();
@@ -2113,15 +1782,15 @@
         return this;
       }
       /**
+       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
        */
       public Builder clearHeader() {
         if (headerBuilder_ == null) {
-          header_ = null;
+          header_ = org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance();
           onChanged();
         } else {
           headerBuilder_.clear();
@@ -2130,11 +1799,11 @@
         return this;
       }
       /**
+       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
        */
       public org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.Builder getHeaderBuilder() {
         bitField0_ |= 0x00000001;
@@ -2142,34 +1811,33 @@
         return getHeaderFieldBuilder().getBuilder();
       }
       /**
+       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
        */
       public org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeaderOrBuilder getHeaderOrBuilder() {
         if (headerBuilder_ != null) {
           return headerBuilder_.getMessageOrBuilder();
         } else {
-          return header_ == null ?
-              org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.getDefaultInstance() : header_;
+          return header_;
         }
       }
       /**
+       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional .exec.rpc.RpcHeader header = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader, org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.Builder, org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeaderOrBuilder> 
           getHeaderFieldBuilder() {
         if (headerBuilder_ == null) {
-          headerBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          headerBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader, org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeader.Builder, org.apache.drill.exec.proto.GeneralRPCProtos.RpcHeaderOrBuilder>(
-                  getHeader(),
+                  header_,
                   getParentForChildren(),
                   isClean());
           header_ = null;
@@ -2177,33 +1845,34 @@
         return headerBuilder_;
       }
 
+      // optional bytes protobuf_body = 2;
       private com.google.protobuf.ByteString protobufBody_ = com.google.protobuf.ByteString.EMPTY;
       /**
+       * <code>optional bytes protobuf_body = 2;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional bytes protobuf_body = 2;</code>
        */
       public boolean hasProtobufBody() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
+       * <code>optional bytes protobuf_body = 2;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional bytes protobuf_body = 2;</code>
        */
       public com.google.protobuf.ByteString getProtobufBody() {
         return protobufBody_;
       }
       /**
+       * <code>optional bytes protobuf_body = 2;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional bytes protobuf_body = 2;</code>
        */
       public Builder setProtobufBody(com.google.protobuf.ByteString value) {
         if (value == null) {
@@ -2215,11 +1884,11 @@
         return this;
       }
       /**
+       * <code>optional bytes protobuf_body = 2;</code>
+       *
        * <pre>
        * required
        * </pre>
-       *
-       * <code>optional bytes protobuf_body = 2;</code>
        */
       public Builder clearProtobufBody() {
         bitField0_ = (bitField0_ & ~0x00000002);
@@ -2228,33 +1897,34 @@
         return this;
       }
 
+      // optional bytes raw_body = 3;
       private com.google.protobuf.ByteString rawBody_ = com.google.protobuf.ByteString.EMPTY;
       /**
+       * <code>optional bytes raw_body = 3;</code>
+       *
        * <pre>
        * optional
        * </pre>
-       *
-       * <code>optional bytes raw_body = 3;</code>
        */
       public boolean hasRawBody() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
+       * <code>optional bytes raw_body = 3;</code>
+       *
        * <pre>
        * optional
        * </pre>
-       *
-       * <code>optional bytes raw_body = 3;</code>
        */
       public com.google.protobuf.ByteString getRawBody() {
         return rawBody_;
       }
       /**
+       * <code>optional bytes raw_body = 3;</code>
+       *
        * <pre>
        * optional
        * </pre>
-       *
-       * <code>optional bytes raw_body = 3;</code>
        */
       public Builder setRawBody(com.google.protobuf.ByteString value) {
         if (value == null) {
@@ -2266,11 +1936,11 @@
         return this;
       }
       /**
+       * <code>optional bytes raw_body = 3;</code>
+       *
        * <pre>
        * optional
        * </pre>
-       *
-       * <code>optional bytes raw_body = 3;</code>
        */
       public Builder clearRawBody() {
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -2278,80 +1948,39 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.rpc.CompleteRpcMessage)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.rpc.CompleteRpcMessage)
-    private static final org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage();
+      defaultInstance = new CompleteRpcMessage(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<CompleteRpcMessage>
-        PARSER = new com.google.protobuf.AbstractParser<CompleteRpcMessage>() {
-      @java.lang.Override
-      public CompleteRpcMessage parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new CompleteRpcMessage(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<CompleteRpcMessage> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<CompleteRpcMessage> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.GeneralRPCProtos.CompleteRpcMessage getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.rpc.CompleteRpcMessage)
   }
 
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_rpc_Ack_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_rpc_Ack_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_rpc_RpcHeader_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_rpc_RpcHeader_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_rpc_CompleteRpcMessage_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_rpc_CompleteRpcMessage_fieldAccessorTable;
 
   public static com.google.protobuf.Descriptors.FileDescriptor
       getDescriptor() {
     return descriptor;
   }
-  private static  com.google.protobuf.Descriptors.FileDescriptor
+  private static com.google.protobuf.Descriptors.FileDescriptor
       descriptor;
   static {
     java.lang.String[] descriptorData = {
@@ -2367,37 +1996,36 @@
       "c.protoB\020GeneralRPCProtosH\001"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
-        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
-          public com.google.protobuf.ExtensionRegistry assignDescriptors(
-              com.google.protobuf.Descriptors.FileDescriptor root) {
-            descriptor = root;
-            return null;
-          }
-        };
+      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
+        public com.google.protobuf.ExtensionRegistry assignDescriptors(
+            com.google.protobuf.Descriptors.FileDescriptor root) {
+          descriptor = root;
+          internal_static_exec_rpc_Ack_descriptor =
+            getDescriptor().getMessageTypes().get(0);
+          internal_static_exec_rpc_Ack_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_rpc_Ack_descriptor,
+              new java.lang.String[] { "Ok", });
+          internal_static_exec_rpc_RpcHeader_descriptor =
+            getDescriptor().getMessageTypes().get(1);
+          internal_static_exec_rpc_RpcHeader_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_rpc_RpcHeader_descriptor,
+              new java.lang.String[] { "Mode", "CoordinationId", "RpcType", });
+          internal_static_exec_rpc_CompleteRpcMessage_descriptor =
+            getDescriptor().getMessageTypes().get(2);
+          internal_static_exec_rpc_CompleteRpcMessage_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_rpc_CompleteRpcMessage_descriptor,
+              new java.lang.String[] { "Header", "ProtobufBody", "RawBody", });
+          return null;
+        }
+      };
     com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
         new com.google.protobuf.Descriptors.FileDescriptor[] {
           org.apache.drill.exec.proto.CoordinationProtos.getDescriptor(),
         }, assigner);
-    internal_static_exec_rpc_Ack_descriptor =
-      getDescriptor().getMessageTypes().get(0);
-    internal_static_exec_rpc_Ack_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_rpc_Ack_descriptor,
-        new java.lang.String[] { "Ok", });
-    internal_static_exec_rpc_RpcHeader_descriptor =
-      getDescriptor().getMessageTypes().get(1);
-    internal_static_exec_rpc_RpcHeader_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_rpc_RpcHeader_descriptor,
-        new java.lang.String[] { "Mode", "CoordinationId", "RpcType", });
-    internal_static_exec_rpc_CompleteRpcMessage_descriptor =
-      getDescriptor().getMessageTypes().get(2);
-    internal_static_exec_rpc_CompleteRpcMessage_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_rpc_CompleteRpcMessage_descriptor,
-        new java.lang.String[] { "Header", "ProtobufBody", "RawBody", });
-    org.apache.drill.exec.proto.CoordinationProtos.getDescriptor();
   }
 
   // @@protoc_insertion_point(outer_class_scope)
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/SchemaDefProtos.java b/protocol/src/main/java/org/apache/drill/exec/proto/SchemaDefProtos.java
index eab8441..d1c0ef0 100644
--- a/protocol/src/main/java/org/apache/drill/exec/proto/SchemaDefProtos.java
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/SchemaDefProtos.java
@@ -23,13 +23,7 @@
 public final class SchemaDefProtos {
   private SchemaDefProtos() {}
   public static void registerAllExtensions(
-      com.google.protobuf.ExtensionRegistryLite registry) {
-  }
-
-  public static void registerAllExtensions(
       com.google.protobuf.ExtensionRegistry registry) {
-    registerAllExtensions(
-        (com.google.protobuf.ExtensionRegistryLite) registry);
   }
   /**
    * Protobuf enum {@code exec.ValueMode}
@@ -39,15 +33,15 @@
     /**
      * <code>VALUE_VECTOR = 0;</code>
      */
-    VALUE_VECTOR(0),
+    VALUE_VECTOR(0, 0),
     /**
      * <code>RLE = 1;</code>
      */
-    RLE(1),
+    RLE(1, 1),
     /**
      * <code>DICT = 2;</code>
      */
-    DICT(2),
+    DICT(2, 2),
     ;
 
     /**
@@ -64,19 +58,9 @@
     public static final int DICT_VALUE = 2;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static ValueMode valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static ValueMode forNumber(int value) {
       switch (value) {
         case 0: return VALUE_VECTOR;
         case 1: return RLE;
@@ -89,17 +73,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        ValueMode> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<ValueMode>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<ValueMode>() {
             public ValueMode findValueByNumber(int number) {
-              return ValueMode.forNumber(number);
+              return ValueMode.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -121,9 +105,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private ValueMode(int value) {
+    private ValueMode(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -135,7 +121,7 @@
       getDescriptor() {
     return descriptor;
   }
-  private static  com.google.protobuf.Descriptors.FileDescriptor
+  private static com.google.protobuf.Descriptors.FileDescriptor
       descriptor;
   static {
     java.lang.String[] descriptorData = {
@@ -145,19 +131,18 @@
       "chemaDefProtosH\001"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
-        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
-          public com.google.protobuf.ExtensionRegistry assignDescriptors(
-              com.google.protobuf.Descriptors.FileDescriptor root) {
-            descriptor = root;
-            return null;
-          }
-        };
+      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
+        public com.google.protobuf.ExtensionRegistry assignDescriptors(
+            com.google.protobuf.Descriptors.FileDescriptor root) {
+          descriptor = root;
+          return null;
+        }
+      };
     com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
         new com.google.protobuf.Descriptors.FileDescriptor[] {
           org.apache.drill.common.types.TypeProtos.getDescriptor(),
         }, assigner);
-    org.apache.drill.common.types.TypeProtos.getDescriptor();
   }
 
   // @@protoc_insertion_point(outer_class_scope)
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/UserBitShared.java b/protocol/src/main/java/org/apache/drill/exec/proto/UserBitShared.java
index 5f30015..052c872 100644
--- a/protocol/src/main/java/org/apache/drill/exec/proto/UserBitShared.java
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/UserBitShared.java
@@ -23,13 +23,7 @@
 public final class UserBitShared {
   private UserBitShared() {}
   public static void registerAllExtensions(
-      com.google.protobuf.ExtensionRegistryLite registry) {
-  }
-
-  public static void registerAllExtensions(
       com.google.protobuf.ExtensionRegistry registry) {
-    registerAllExtensions(
-        (com.google.protobuf.ExtensionRegistryLite) registry);
   }
   /**
    * Protobuf enum {@code exec.shared.RpcChannel}
@@ -39,15 +33,15 @@
     /**
      * <code>BIT_CONTROL = 0;</code>
      */
-    BIT_CONTROL(0),
+    BIT_CONTROL(0, 0),
     /**
      * <code>BIT_DATA = 1;</code>
      */
-    BIT_DATA(1),
+    BIT_DATA(1, 1),
     /**
      * <code>USER = 2;</code>
      */
-    USER(2),
+    USER(2, 2),
     ;
 
     /**
@@ -64,19 +58,9 @@
     public static final int USER_VALUE = 2;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static RpcChannel valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static RpcChannel forNumber(int value) {
       switch (value) {
         case 0: return BIT_CONTROL;
         case 1: return BIT_DATA;
@@ -89,17 +73,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        RpcChannel> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<RpcChannel>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<RpcChannel>() {
             public RpcChannel findValueByNumber(int number) {
-              return RpcChannel.forNumber(number);
+              return RpcChannel.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -121,9 +105,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private RpcChannel(int value) {
+    private RpcChannel(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -138,27 +124,27 @@
     /**
      * <code>SQL = 1;</code>
      */
-    SQL(1),
+    SQL(0, 1),
     /**
      * <code>LOGICAL = 2;</code>
      */
-    LOGICAL(2),
+    LOGICAL(1, 2),
     /**
      * <code>PHYSICAL = 3;</code>
      */
-    PHYSICAL(3),
+    PHYSICAL(2, 3),
     /**
      * <code>EXECUTION = 4;</code>
      */
-    EXECUTION(4),
+    EXECUTION(3, 4),
     /**
+     * <code>PREPARED_STATEMENT = 5;</code>
+     *
      * <pre>
      * Input is a prepared statement 
      * </pre>
-     *
-     * <code>PREPARED_STATEMENT = 5;</code>
      */
-    PREPARED_STATEMENT(5),
+    PREPARED_STATEMENT(4, 5),
     ;
 
     /**
@@ -178,28 +164,18 @@
      */
     public static final int EXECUTION_VALUE = 4;
     /**
+     * <code>PREPARED_STATEMENT = 5;</code>
+     *
      * <pre>
      * Input is a prepared statement 
      * </pre>
-     *
-     * <code>PREPARED_STATEMENT = 5;</code>
      */
     public static final int PREPARED_STATEMENT_VALUE = 5;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static QueryType valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static QueryType forNumber(int value) {
       switch (value) {
         case 1: return SQL;
         case 2: return LOGICAL;
@@ -214,17 +190,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        QueryType> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<QueryType>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<QueryType>() {
             public QueryType findValueByNumber(int number) {
-              return QueryType.forNumber(number);
+              return QueryType.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -246,9 +222,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private QueryType(int value) {
+    private QueryType(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -263,31 +241,31 @@
     /**
      * <code>SENDING = 0;</code>
      */
-    SENDING(0),
+    SENDING(0, 0),
     /**
      * <code>AWAITING_ALLOCATION = 1;</code>
      */
-    AWAITING_ALLOCATION(1),
+    AWAITING_ALLOCATION(1, 1),
     /**
      * <code>RUNNING = 2;</code>
      */
-    RUNNING(2),
+    RUNNING(2, 2),
     /**
      * <code>FINISHED = 3;</code>
      */
-    FINISHED(3),
+    FINISHED(3, 3),
     /**
      * <code>CANCELLED = 4;</code>
      */
-    CANCELLED(4),
+    CANCELLED(4, 4),
     /**
      * <code>FAILED = 5;</code>
      */
-    FAILED(5),
+    FAILED(5, 5),
     /**
      * <code>CANCELLATION_REQUESTED = 6;</code>
      */
-    CANCELLATION_REQUESTED(6),
+    CANCELLATION_REQUESTED(6, 6),
     ;
 
     /**
@@ -320,19 +298,9 @@
     public static final int CANCELLATION_REQUESTED_VALUE = 6;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static FragmentState valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static FragmentState forNumber(int value) {
       switch (value) {
         case 0: return SENDING;
         case 1: return AWAITING_ALLOCATION;
@@ -349,17 +317,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        FragmentState> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<FragmentState>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<FragmentState>() {
             public FragmentState findValueByNumber(int number) {
-              return FragmentState.forNumber(number);
+              return FragmentState.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -381,9 +349,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private FragmentState(int value) {
+    private FragmentState(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -398,255 +368,255 @@
     /**
      * <code>SINGLE_SENDER = 0;</code>
      */
-    SINGLE_SENDER(0),
+    SINGLE_SENDER(0, 0),
     /**
      * <code>BROADCAST_SENDER = 1;</code>
      */
-    BROADCAST_SENDER(1),
+    BROADCAST_SENDER(1, 1),
     /**
      * <code>FILTER = 2;</code>
      */
-    FILTER(2),
+    FILTER(2, 2),
     /**
      * <code>HASH_AGGREGATE = 3;</code>
      */
-    HASH_AGGREGATE(3),
+    HASH_AGGREGATE(3, 3),
     /**
      * <code>HASH_JOIN = 4;</code>
      */
-    HASH_JOIN(4),
+    HASH_JOIN(4, 4),
     /**
      * <code>MERGE_JOIN = 5;</code>
      */
-    MERGE_JOIN(5),
+    MERGE_JOIN(5, 5),
     /**
      * <code>HASH_PARTITION_SENDER = 6;</code>
      */
-    HASH_PARTITION_SENDER(6),
+    HASH_PARTITION_SENDER(6, 6),
     /**
      * <code>LIMIT = 7;</code>
      */
-    LIMIT(7),
+    LIMIT(7, 7),
     /**
      * <code>MERGING_RECEIVER = 8;</code>
      */
-    MERGING_RECEIVER(8),
+    MERGING_RECEIVER(8, 8),
     /**
      * <code>ORDERED_PARTITION_SENDER = 9;</code>
      */
-    ORDERED_PARTITION_SENDER(9),
+    ORDERED_PARTITION_SENDER(9, 9),
     /**
      * <code>PROJECT = 10;</code>
      */
-    PROJECT(10),
+    PROJECT(10, 10),
     /**
      * <code>UNORDERED_RECEIVER = 11;</code>
      */
-    UNORDERED_RECEIVER(11),
+    UNORDERED_RECEIVER(11, 11),
     /**
      * <code>RANGE_PARTITION_SENDER = 12;</code>
      */
-    RANGE_PARTITION_SENDER(12),
+    RANGE_PARTITION_SENDER(12, 12),
     /**
      * <code>SCREEN = 13;</code>
      */
-    SCREEN(13),
+    SCREEN(13, 13),
     /**
      * <code>SELECTION_VECTOR_REMOVER = 14;</code>
      */
-    SELECTION_VECTOR_REMOVER(14),
+    SELECTION_VECTOR_REMOVER(14, 14),
     /**
      * <code>STREAMING_AGGREGATE = 15;</code>
      */
-    STREAMING_AGGREGATE(15),
+    STREAMING_AGGREGATE(15, 15),
     /**
      * <code>TOP_N_SORT = 16;</code>
      */
-    TOP_N_SORT(16),
+    TOP_N_SORT(16, 16),
     /**
      * <code>EXTERNAL_SORT = 17;</code>
      */
-    EXTERNAL_SORT(17),
+    EXTERNAL_SORT(17, 17),
     /**
      * <code>TRACE = 18;</code>
      */
-    TRACE(18),
+    TRACE(18, 18),
     /**
      * <code>UNION = 19;</code>
      */
-    UNION(19),
+    UNION(19, 19),
     /**
      * <code>OLD_SORT = 20;</code>
      */
-    OLD_SORT(20),
+    OLD_SORT(20, 20),
     /**
      * <code>PARQUET_ROW_GROUP_SCAN = 21;</code>
      */
-    PARQUET_ROW_GROUP_SCAN(21),
+    PARQUET_ROW_GROUP_SCAN(21, 21),
     /**
      * <code>HIVE_SUB_SCAN = 22;</code>
      */
-    HIVE_SUB_SCAN(22),
+    HIVE_SUB_SCAN(22, 22),
     /**
      * <code>SYSTEM_TABLE_SCAN = 23;</code>
      */
-    SYSTEM_TABLE_SCAN(23),
+    SYSTEM_TABLE_SCAN(23, 23),
     /**
      * <code>MOCK_SUB_SCAN = 24;</code>
      */
-    MOCK_SUB_SCAN(24),
+    MOCK_SUB_SCAN(24, 24),
     /**
      * <code>PARQUET_WRITER = 25;</code>
      */
-    PARQUET_WRITER(25),
+    PARQUET_WRITER(25, 25),
     /**
      * <code>DIRECT_SUB_SCAN = 26;</code>
      */
-    DIRECT_SUB_SCAN(26),
+    DIRECT_SUB_SCAN(26, 26),
     /**
      * <code>TEXT_WRITER = 27;</code>
      */
-    TEXT_WRITER(27),
+    TEXT_WRITER(27, 27),
     /**
      * <code>TEXT_SUB_SCAN = 28;</code>
      */
-    TEXT_SUB_SCAN(28),
+    TEXT_SUB_SCAN(28, 28),
     /**
      * <code>JSON_SUB_SCAN = 29;</code>
      */
-    JSON_SUB_SCAN(29),
+    JSON_SUB_SCAN(29, 29),
     /**
      * <code>INFO_SCHEMA_SUB_SCAN = 30;</code>
      */
-    INFO_SCHEMA_SUB_SCAN(30),
+    INFO_SCHEMA_SUB_SCAN(30, 30),
     /**
      * <code>COMPLEX_TO_JSON = 31;</code>
      */
-    COMPLEX_TO_JSON(31),
+    COMPLEX_TO_JSON(31, 31),
     /**
      * <code>PRODUCER_CONSUMER = 32;</code>
      */
-    PRODUCER_CONSUMER(32),
+    PRODUCER_CONSUMER(32, 32),
     /**
      * <code>HBASE_SUB_SCAN = 33;</code>
      */
-    HBASE_SUB_SCAN(33),
+    HBASE_SUB_SCAN(33, 33),
     /**
      * <code>WINDOW = 34;</code>
      */
-    WINDOW(34),
+    WINDOW(34, 34),
     /**
      * <code>NESTED_LOOP_JOIN = 35;</code>
      */
-    NESTED_LOOP_JOIN(35),
+    NESTED_LOOP_JOIN(35, 35),
     /**
      * <code>AVRO_SUB_SCAN = 36;</code>
      */
-    AVRO_SUB_SCAN(36),
+    AVRO_SUB_SCAN(36, 36),
     /**
      * <code>PCAP_SUB_SCAN = 37;</code>
      */
-    PCAP_SUB_SCAN(37),
+    PCAP_SUB_SCAN(37, 37),
     /**
      * <code>KAFKA_SUB_SCAN = 38;</code>
      */
-    KAFKA_SUB_SCAN(38),
+    KAFKA_SUB_SCAN(38, 38),
     /**
      * <code>KUDU_SUB_SCAN = 39;</code>
      */
-    KUDU_SUB_SCAN(39),
+    KUDU_SUB_SCAN(39, 39),
     /**
      * <code>FLATTEN = 40;</code>
      */
-    FLATTEN(40),
+    FLATTEN(40, 40),
     /**
      * <code>LATERAL_JOIN = 41;</code>
      */
-    LATERAL_JOIN(41),
+    LATERAL_JOIN(41, 41),
     /**
      * <code>UNNEST = 42;</code>
      */
-    UNNEST(42),
+    UNNEST(42, 42),
     /**
      * <code>HIVE_DRILL_NATIVE_PARQUET_ROW_GROUP_SCAN = 43;</code>
      */
-    HIVE_DRILL_NATIVE_PARQUET_ROW_GROUP_SCAN(43),
+    HIVE_DRILL_NATIVE_PARQUET_ROW_GROUP_SCAN(43, 43),
     /**
      * <code>JDBC_SCAN = 44;</code>
      */
-    JDBC_SCAN(44),
+    JDBC_SCAN(44, 44),
     /**
      * <code>REGEX_SUB_SCAN = 45;</code>
      */
-    REGEX_SUB_SCAN(45),
+    REGEX_SUB_SCAN(45, 45),
     /**
      * <code>MAPRDB_SUB_SCAN = 46;</code>
      */
-    MAPRDB_SUB_SCAN(46),
+    MAPRDB_SUB_SCAN(46, 46),
     /**
      * <code>MONGO_SUB_SCAN = 47;</code>
      */
-    MONGO_SUB_SCAN(47),
+    MONGO_SUB_SCAN(47, 47),
     /**
      * <code>KUDU_WRITER = 48;</code>
      */
-    KUDU_WRITER(48),
+    KUDU_WRITER(48, 48),
     /**
      * <code>OPEN_TSDB_SUB_SCAN = 49;</code>
      */
-    OPEN_TSDB_SUB_SCAN(49),
+    OPEN_TSDB_SUB_SCAN(49, 49),
     /**
      * <code>JSON_WRITER = 50;</code>
      */
-    JSON_WRITER(50),
+    JSON_WRITER(50, 50),
     /**
      * <code>HTPPD_LOG_SUB_SCAN = 51;</code>
      */
-    HTPPD_LOG_SUB_SCAN(51),
+    HTPPD_LOG_SUB_SCAN(51, 51),
     /**
      * <code>IMAGE_SUB_SCAN = 52;</code>
      */
-    IMAGE_SUB_SCAN(52),
+    IMAGE_SUB_SCAN(52, 52),
     /**
      * <code>SEQUENCE_SUB_SCAN = 53;</code>
      */
-    SEQUENCE_SUB_SCAN(53),
+    SEQUENCE_SUB_SCAN(53, 53),
     /**
      * <code>PARTITION_LIMIT = 54;</code>
      */
-    PARTITION_LIMIT(54),
+    PARTITION_LIMIT(54, 54),
     /**
      * <code>PCAPNG_SUB_SCAN = 55;</code>
      */
-    PCAPNG_SUB_SCAN(55),
+    PCAPNG_SUB_SCAN(55, 55),
     /**
      * <code>RUNTIME_FILTER = 56;</code>
      */
-    RUNTIME_FILTER(56),
+    RUNTIME_FILTER(56, 56),
     /**
      * <code>ROWKEY_JOIN = 57;</code>
      */
-    ROWKEY_JOIN(57),
+    ROWKEY_JOIN(57, 57),
     /**
      * <code>SYSLOG_SUB_SCAN = 58;</code>
      */
-    SYSLOG_SUB_SCAN(58),
+    SYSLOG_SUB_SCAN(58, 58),
     /**
      * <code>STATISTICS_AGGREGATE = 59;</code>
      */
-    STATISTICS_AGGREGATE(59),
+    STATISTICS_AGGREGATE(59, 59),
     /**
      * <code>UNPIVOT_MAPS = 60;</code>
      */
-    UNPIVOT_MAPS(60),
+    UNPIVOT_MAPS(60, 60),
     /**
      * <code>STATISTICS_MERGE = 61;</code>
      */
-    STATISTICS_MERGE(61),
+    STATISTICS_MERGE(61, 61),
     /**
      * <code>LTSV_SUB_SCAN = 62;</code>
      */
-    LTSV_SUB_SCAN(62),
+    LTSV_SUB_SCAN(62, 62),
     ;
 
     /**
@@ -903,19 +873,9 @@
     public static final int LTSV_SUB_SCAN_VALUE = 62;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static CoreOperatorType valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static CoreOperatorType forNumber(int value) {
       switch (value) {
         case 0: return SINGLE_SENDER;
         case 1: return BROADCAST_SENDER;
@@ -988,17 +948,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        CoreOperatorType> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<CoreOperatorType>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<CoreOperatorType>() {
             public CoreOperatorType findValueByNumber(int number) {
-              return CoreOperatorType.forNumber(number);
+              return CoreOperatorType.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -1020,9 +980,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private CoreOperatorType(int value) {
+    private CoreOperatorType(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -1037,23 +999,23 @@
     /**
      * <code>SASL_UNKNOWN = 0;</code>
      */
-    SASL_UNKNOWN(0),
+    SASL_UNKNOWN(0, 0),
     /**
      * <code>SASL_START = 1;</code>
      */
-    SASL_START(1),
+    SASL_START(1, 1),
     /**
      * <code>SASL_IN_PROGRESS = 2;</code>
      */
-    SASL_IN_PROGRESS(2),
+    SASL_IN_PROGRESS(2, 2),
     /**
      * <code>SASL_SUCCESS = 3;</code>
      */
-    SASL_SUCCESS(3),
+    SASL_SUCCESS(3, 3),
     /**
      * <code>SASL_FAILED = 4;</code>
      */
-    SASL_FAILED(4),
+    SASL_FAILED(4, 4),
     ;
 
     /**
@@ -1078,19 +1040,9 @@
     public static final int SASL_FAILED_VALUE = 4;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static SaslStatus valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static SaslStatus forNumber(int value) {
       switch (value) {
         case 0: return SASL_UNKNOWN;
         case 1: return SASL_START;
@@ -1105,17 +1057,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        SaslStatus> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<SaslStatus>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<SaslStatus>() {
             public SaslStatus findValueByNumber(int number) {
-              return SaslStatus.forNumber(number);
+              return SaslStatus.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -1137,19 +1089,21 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private SaslStatus(int value) {
+    private SaslStatus(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
     // @@protoc_insertion_point(enum_scope:exec.shared.SaslStatus)
   }
 
-  public interface UserCredentialsOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.UserCredentials)
-      com.google.protobuf.MessageOrBuilder {
+  public interface UserCredentialsOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string user_name = 1;
     /**
      * <code>optional string user_name = 1;</code>
      */
@@ -1167,32 +1121,36 @@
   /**
    * Protobuf type {@code exec.shared.UserCredentials}
    */
-  public  static final class UserCredentials extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.UserCredentials)
-      UserCredentialsOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class UserCredentials extends
+      com.google.protobuf.GeneratedMessage
+      implements UserCredentialsOrBuilder {
     // Use UserCredentials.newBuilder() to construct.
-    private UserCredentials(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private UserCredentials(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private UserCredentials() {
-      userName_ = "";
+    private UserCredentials(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final UserCredentials defaultInstance;
+    public static UserCredentials getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public UserCredentials getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private UserCredentials(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -1204,26 +1162,25 @@
             case 0:
               done = true;
               break;
-            case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
-              bitField0_ |= 0x00000001;
-              userName_ = bs;
-              break;
-            }
             default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
                 done = true;
               }
               break;
             }
+            case 10: {
+              bitField0_ |= 0x00000001;
+              userName_ = input.readBytes();
+              break;
+            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -1234,17 +1191,32 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_UserCredentials_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_UserCredentials_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.UserCredentials.class, org.apache.drill.exec.proto.UserBitShared.UserCredentials.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<UserCredentials> PARSER =
+        new com.google.protobuf.AbstractParser<UserCredentials>() {
+      public UserCredentials parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new UserCredentials(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<UserCredentials> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string user_name = 1;
     public static final int USER_NAME_FIELD_NUMBER = 1;
-    private volatile java.lang.Object userName_;
+    private java.lang.Object userName_;
     /**
      * <code>optional string user_name = 1;</code>
      */
@@ -1285,87 +1257,49 @@
       }
     }
 
+    private void initFields() {
+      userName_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, userName_);
+        output.writeBytes(1, getUserNameBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, userName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getUserNameBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.UserCredentials)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.UserCredentials other = (org.apache.drill.exec.proto.UserBitShared.UserCredentials) obj;
-
-      boolean result = true;
-      result = result && (hasUserName() == other.hasUserName());
-      if (hasUserName()) {
-        result = result && getUserName()
-            .equals(other.getUserName());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasUserName()) {
-        hash = (37 * hash) + USER_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getUserName().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.UserCredentials parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.UserCredentials parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.UserCredentials parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -1389,59 +1323,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.UserCredentials parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.UserCredentials parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.UserCredentials parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.UserCredentials parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.UserCredentials parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.UserCredentials parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.UserCredentials prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -1449,16 +1370,14 @@
      * Protobuf type {@code exec.shared.UserCredentials}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.UserCredentials)
-        org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_UserCredentials_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_UserCredentials_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -1471,16 +1390,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         userName_ = "";
@@ -1488,18 +1409,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_UserCredentials_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.UserCredentials getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.UserCredentials build() {
         org.apache.drill.exec.proto.UserBitShared.UserCredentials result = buildPartial();
         if (!result.isInitialized()) {
@@ -1508,7 +1430,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.UserCredentials buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.UserCredentials result = new org.apache.drill.exec.proto.UserBitShared.UserCredentials(this);
         int from_bitField0_ = bitField0_;
@@ -1522,39 +1443,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.UserCredentials) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.UserCredentials)other);
@@ -1571,17 +1459,14 @@
           userName_ = other.userName_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -1591,7 +1476,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.UserCredentials) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -1601,6 +1486,7 @@
       }
       private int bitField0_;
 
+      // optional string user_name = 1;
       private java.lang.Object userName_ = "";
       /**
        * <code>optional string user_name = 1;</code>
@@ -1614,12 +1500,9 @@
       public java.lang.String getUserName() {
         java.lang.Object ref = userName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            userName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          userName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -1676,63 +1559,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.UserCredentials)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.UserCredentials)
-    private static final org.apache.drill.exec.proto.UserBitShared.UserCredentials DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.UserCredentials();
+      defaultInstance = new UserCredentials(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.UserCredentials getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<UserCredentials>
-        PARSER = new com.google.protobuf.AbstractParser<UserCredentials>() {
-      @java.lang.Override
-      public UserCredentials parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new UserCredentials(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<UserCredentials> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<UserCredentials> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.UserCredentials getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.UserCredentials)
   }
 
-  public interface QueryIdOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.QueryId)
-      com.google.protobuf.MessageOrBuilder {
+  public interface QueryIdOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional sfixed64 part1 = 1;
     /**
      * <code>optional sfixed64 part1 = 1;</code>
      */
@@ -1742,6 +1584,7 @@
      */
     long getPart1();
 
+    // optional sfixed64 part2 = 2;
     /**
      * <code>optional sfixed64 part2 = 2;</code>
      */
@@ -1754,33 +1597,36 @@
   /**
    * Protobuf type {@code exec.shared.QueryId}
    */
-  public  static final class QueryId extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.QueryId)
-      QueryIdOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class QueryId extends
+      com.google.protobuf.GeneratedMessage
+      implements QueryIdOrBuilder {
     // Use QueryId.newBuilder() to construct.
-    private QueryId(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private QueryId(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private QueryId() {
-      part1_ = 0L;
-      part2_ = 0L;
+    private QueryId(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final QueryId defaultInstance;
+    public static QueryId getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public QueryId getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private QueryId(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -1792,6 +1638,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 9: {
               bitField0_ |= 0x00000001;
               part1_ = input.readSFixed64();
@@ -1802,20 +1655,13 @@
               part2_ = input.readSFixed64();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -1826,15 +1672,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryId_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryId_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.QueryId.class, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<QueryId> PARSER =
+        new com.google.protobuf.AbstractParser<QueryId>() {
+      public QueryId parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new QueryId(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<QueryId> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional sfixed64 part1 = 1;
     public static final int PART1_FIELD_NUMBER = 1;
     private long part1_;
     /**
@@ -1850,6 +1711,7 @@
       return part1_;
     }
 
+    // optional sfixed64 part2 = 2;
     public static final int PART2_FIELD_NUMBER = 2;
     private long part2_;
     /**
@@ -1865,32 +1727,34 @@
       return part2_;
     }
 
+    private void initFields() {
+      part1_ = 0L;
+      part2_ = 0L;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeSFixed64(1, part1_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeSFixed64(2, part2_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -1902,69 +1766,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeSFixed64Size(2, part2_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.QueryId)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.QueryId other = (org.apache.drill.exec.proto.UserBitShared.QueryId) obj;
-
-      boolean result = true;
-      result = result && (hasPart1() == other.hasPart1());
-      if (hasPart1()) {
-        result = result && (getPart1()
-            == other.getPart1());
-      }
-      result = result && (hasPart2() == other.hasPart2());
-      if (hasPart2()) {
-        result = result && (getPart2()
-            == other.getPart2());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasPart1()) {
-        hash = (37 * hash) + PART1_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getPart1());
-      }
-      if (hasPart2()) {
-        hash = (37 * hash) + PART2_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getPart2());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.QueryId parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.QueryId parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.QueryId parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -1988,59 +1801,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryId parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryId parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryId parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryId parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryId parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryId parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.QueryId prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -2048,16 +1848,14 @@
      * Protobuf type {@code exec.shared.QueryId}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.QueryId)
-        org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryId_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryId_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -2070,16 +1868,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         part1_ = 0L;
@@ -2089,18 +1889,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryId_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryId getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryId build() {
         org.apache.drill.exec.proto.UserBitShared.QueryId result = buildPartial();
         if (!result.isInitialized()) {
@@ -2109,7 +1910,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryId buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.QueryId result = new org.apache.drill.exec.proto.UserBitShared.QueryId(this);
         int from_bitField0_ = bitField0_;
@@ -2127,39 +1927,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.QueryId) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.QueryId)other);
@@ -2177,17 +1944,14 @@
         if (other.hasPart2()) {
           setPart2(other.getPart2());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -2197,7 +1961,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.QueryId) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -2207,6 +1971,7 @@
       }
       private int bitField0_;
 
+      // optional sfixed64 part1 = 1;
       private long part1_ ;
       /**
        * <code>optional sfixed64 part1 = 1;</code>
@@ -2239,6 +2004,7 @@
         return this;
       }
 
+      // optional sfixed64 part2 = 2;
       private long part2_ ;
       /**
        * <code>optional sfixed64 part2 = 2;</code>
@@ -2270,89 +2036,49 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.QueryId)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.QueryId)
-    private static final org.apache.drill.exec.proto.UserBitShared.QueryId DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.QueryId();
+      defaultInstance = new QueryId(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.QueryId getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<QueryId>
-        PARSER = new com.google.protobuf.AbstractParser<QueryId>() {
-      @java.lang.Override
-      public QueryId parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new QueryId(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<QueryId> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<QueryId> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.QueryId getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.QueryId)
   }
 
-  public interface DrillPBErrorOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.DrillPBError)
-      com.google.protobuf.MessageOrBuilder {
+  public interface DrillPBErrorOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string error_id = 1;
     /**
+     * <code>optional string error_id = 1;</code>
+     *
      * <pre>
      * for debug tracing purposes
      * </pre>
-     *
-     * <code>optional string error_id = 1;</code>
      */
     boolean hasErrorId();
     /**
+     * <code>optional string error_id = 1;</code>
+     *
      * <pre>
      * for debug tracing purposes
      * </pre>
-     *
-     * <code>optional string error_id = 1;</code>
      */
     java.lang.String getErrorId();
     /**
+     * <code>optional string error_id = 1;</code>
+     *
      * <pre>
      * for debug tracing purposes
      * </pre>
-     *
-     * <code>optional string error_id = 1;</code>
      */
     com.google.protobuf.ByteString
         getErrorIdBytes();
 
+    // optional .exec.DrillbitEndpoint endpoint = 2;
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 2;</code>
      */
@@ -2366,6 +2092,7 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getEndpointOrBuilder();
 
+    // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
     /**
      * <code>optional .exec.shared.DrillPBError.ErrorType error_type = 3;</code>
      */
@@ -2375,6 +2102,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType getErrorType();
 
+    // optional string message = 4;
     /**
      * <code>optional string message = 4;</code>
      */
@@ -2389,6 +2117,7 @@
     com.google.protobuf.ByteString
         getMessageBytes();
 
+    // optional .exec.shared.ExceptionWrapper exception = 5;
     /**
      * <code>optional .exec.shared.ExceptionWrapper exception = 5;</code>
      */
@@ -2402,46 +2131,47 @@
      */
     org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder getExceptionOrBuilder();
 
+    // repeated .exec.shared.ParsingError parsing_error = 6;
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     java.util.List<org.apache.drill.exec.proto.UserBitShared.ParsingError> 
         getParsingErrorList();
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     org.apache.drill.exec.proto.UserBitShared.ParsingError getParsingError(int index);
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     int getParsingErrorCount();
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     java.util.List<? extends org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder> 
         getParsingErrorOrBuilderList();
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder getParsingErrorOrBuilder(
         int index);
@@ -2449,35 +2179,36 @@
   /**
    * Protobuf type {@code exec.shared.DrillPBError}
    */
-  public  static final class DrillPBError extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.DrillPBError)
-      DrillPBErrorOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class DrillPBError extends
+      com.google.protobuf.GeneratedMessage
+      implements DrillPBErrorOrBuilder {
     // Use DrillPBError.newBuilder() to construct.
-    private DrillPBError(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private DrillPBError(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private DrillPBError() {
-      errorId_ = "";
-      errorType_ = 0;
-      message_ = "";
-      parsingError_ = java.util.Collections.emptyList();
+    private DrillPBError(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final DrillPBError defaultInstance;
+    public static DrillPBError getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public DrillPBError getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private DrillPBError(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -2489,10 +2220,16 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              errorId_ = bs;
+              errorId_ = input.readBytes();
               break;
             }
             case 18: {
@@ -2510,20 +2247,18 @@
             }
             case 24: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType value = org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(3, rawValue);
               } else {
                 bitField0_ |= 0x00000004;
-                errorType_ = rawValue;
+                errorType_ = value;
               }
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              message_ = bs;
+              message_ = input.readBytes();
               break;
             }
             case 42: {
@@ -2544,15 +2279,7 @@
                 parsingError_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.ParsingError>();
                 mutable_bitField0_ |= 0x00000020;
               }
-              parsingError_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.ParsingError.PARSER, extensionRegistry));
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              parsingError_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.ParsingError.PARSER, extensionRegistry));
               break;
             }
           }
@@ -2561,7 +2288,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
           parsingError_ = java.util.Collections.unmodifiableList(parsingError_);
@@ -2575,60 +2302,76 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_DrillPBError_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_DrillPBError_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.class, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<DrillPBError> PARSER =
+        new com.google.protobuf.AbstractParser<DrillPBError>() {
+      public DrillPBError parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new DrillPBError(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<DrillPBError> getParserForType() {
+      return PARSER;
+    }
+
     /**
      * Protobuf enum {@code exec.shared.DrillPBError.ErrorType}
      */
     public enum ErrorType
         implements com.google.protobuf.ProtocolMessageEnum {
       /**
+       * <code>CONNECTION = 0;</code>
+       *
        * <pre>
        * equivalent to SQLClientInfoException
        * - handshake version error
        * - invalid schema
        * </pre>
-       *
-       * <code>CONNECTION = 0;</code>
        */
-      CONNECTION(0),
+      CONNECTION(0, 0),
       /**
+       * <code>DATA_READ = 1;</code>
+       *
        * <pre>
        * equivalent to SQLRecoverableException
        * - corrupt files: can't be read. FS read error
        * - parsing error due to incomplete or incorrectly written records
        * </pre>
-       *
-       * <code>DATA_READ = 1;</code>
        */
-      DATA_READ(1),
+      DATA_READ(1, 1),
       /**
+       * <code>DATA_WRITE = 2;</code>
+       *
        * <pre>
        * equivalent to SQLDataException
        * - data type unsupported by format
        * </pre>
-       *
-       * <code>DATA_WRITE = 2;</code>
        */
-      DATA_WRITE(2),
+      DATA_WRITE(2, 2),
       /**
+       * <code>FUNCTION = 3;</code>
+       *
        * <pre>
        * equivalent to SQLDataException
        * - Casting errors
        * - function not found for incoming types after implicit casting
        * - Flatten misuse
        * </pre>
-       *
-       * <code>FUNCTION = 3;</code>
        */
-      FUNCTION(3),
+      FUNCTION(3, 3),
       /**
+       * <code>PARSE = 4;</code>
+       *
        * <pre>
        * equivalent to SQLSyntaxErrorException
        * - typos
@@ -2636,37 +2379,37 @@
        * - SQL keyword misuse
        * - function names/resolution
        * </pre>
-       *
-       * <code>PARSE = 4;</code>
        */
-      PARSE(4),
+      PARSE(4, 4),
       /**
+       * <code>PERMISSION = 5;</code>
+       *
        * <pre>
        * equivalent to SQLInvalidAuthorizationSpecException
        * </pre>
-       *
-       * <code>PERMISSION = 5;</code>
        */
-      PERMISSION(5),
+      PERMISSION(5, 5),
       /**
+       * <code>PLAN = 6;</code>
+       *
        * <pre>
        * equivalent to SQLNonTransientException
        * </pre>
-       *
-       * <code>PLAN = 6;</code>
        */
-      PLAN(6),
+      PLAN(6, 6),
       /**
+       * <code>RESOURCE = 7;</code>
+       *
        * <pre>
        * equivalent to SQLRecoverableException or SQLTransientException
        * - Recoverable: memory, disk
        * - Transient: network
        * </pre>
-       *
-       * <code>RESOURCE = 7;</code>
        */
-      RESOURCE(7),
+      RESOURCE(7, 7),
       /**
+       * <code>SYSTEM = 8;</code>
+       *
        * <pre>
        * equivalent to SQLNonTransientException.
        * - unexpected internal state
@@ -2674,103 +2417,103 @@
        * general user action is to contact the Drill team for
        * assistance
        * </pre>
-       *
-       * <code>SYSTEM = 8;</code>
        */
-      SYSTEM(8),
+      SYSTEM(8, 8),
       /**
+       * <code>UNSUPPORTED_OPERATION = 9;</code>
+       *
        * <pre>
        * equivalent to SQLFeatureNotSupportedException
        * - unimplemented feature, option, or execution path
        * - schema change in operator that does not support it
        * </pre>
-       *
-       * <code>UNSUPPORTED_OPERATION = 9;</code>
        */
-      UNSUPPORTED_OPERATION(9),
+      UNSUPPORTED_OPERATION(9, 9),
       /**
+       * <code>VALIDATION = 10;</code>
+       *
        * <pre>
        * SQL validation exception
        * - invalid schema path
        * - invalid entries in SQL tree
        * </pre>
-       *
-       * <code>VALIDATION = 10;</code>
        */
-      VALIDATION(10),
+      VALIDATION(10, 10),
       /**
+       * <code>EXECUTION_ERROR = 11;</code>
+       *
        * <pre>
        * Execution exception
        *  - Internal errors not related to bad code
        * </pre>
-       *
-       * <code>EXECUTION_ERROR = 11;</code>
        */
-      EXECUTION_ERROR(11),
+      EXECUTION_ERROR(11, 11),
       /**
+       * <code>INTERNAL_ERROR = 12;</code>
+       *
        * <pre>
        * Internal exception
        *  - Failed assertions
        *  - Other "this should not happen" cases
        * </pre>
-       *
-       * <code>INTERNAL_ERROR = 12;</code>
        */
-      INTERNAL_ERROR(12),
+      INTERNAL_ERROR(12, 12),
       /**
+       * <code>UNSPECIFIED_ERROR = 13;</code>
+       *
        * <pre>
        * Unspecified exception
        *  - Exception caught but cause is unknown
        * Indicates code that needs revisiting to move error reporting
        * closer to the cause.
        * </pre>
-       *
-       * <code>UNSPECIFIED_ERROR = 13;</code>
        */
-      UNSPECIFIED_ERROR(13),
+      UNSPECIFIED_ERROR(13, 13),
       ;
 
       /**
+       * <code>CONNECTION = 0;</code>
+       *
        * <pre>
        * equivalent to SQLClientInfoException
        * - handshake version error
        * - invalid schema
        * </pre>
-       *
-       * <code>CONNECTION = 0;</code>
        */
       public static final int CONNECTION_VALUE = 0;
       /**
+       * <code>DATA_READ = 1;</code>
+       *
        * <pre>
        * equivalent to SQLRecoverableException
        * - corrupt files: can't be read. FS read error
        * - parsing error due to incomplete or incorrectly written records
        * </pre>
-       *
-       * <code>DATA_READ = 1;</code>
        */
       public static final int DATA_READ_VALUE = 1;
       /**
+       * <code>DATA_WRITE = 2;</code>
+       *
        * <pre>
        * equivalent to SQLDataException
        * - data type unsupported by format
        * </pre>
-       *
-       * <code>DATA_WRITE = 2;</code>
        */
       public static final int DATA_WRITE_VALUE = 2;
       /**
+       * <code>FUNCTION = 3;</code>
+       *
        * <pre>
        * equivalent to SQLDataException
        * - Casting errors
        * - function not found for incoming types after implicit casting
        * - Flatten misuse
        * </pre>
-       *
-       * <code>FUNCTION = 3;</code>
        */
       public static final int FUNCTION_VALUE = 3;
       /**
+       * <code>PARSE = 4;</code>
+       *
        * <pre>
        * equivalent to SQLSyntaxErrorException
        * - typos
@@ -2778,37 +2521,37 @@
        * - SQL keyword misuse
        * - function names/resolution
        * </pre>
-       *
-       * <code>PARSE = 4;</code>
        */
       public static final int PARSE_VALUE = 4;
       /**
+       * <code>PERMISSION = 5;</code>
+       *
        * <pre>
        * equivalent to SQLInvalidAuthorizationSpecException
        * </pre>
-       *
-       * <code>PERMISSION = 5;</code>
        */
       public static final int PERMISSION_VALUE = 5;
       /**
+       * <code>PLAN = 6;</code>
+       *
        * <pre>
        * equivalent to SQLNonTransientException
        * </pre>
-       *
-       * <code>PLAN = 6;</code>
        */
       public static final int PLAN_VALUE = 6;
       /**
+       * <code>RESOURCE = 7;</code>
+       *
        * <pre>
        * equivalent to SQLRecoverableException or SQLTransientException
        * - Recoverable: memory, disk
        * - Transient: network
        * </pre>
-       *
-       * <code>RESOURCE = 7;</code>
        */
       public static final int RESOURCE_VALUE = 7;
       /**
+       * <code>SYSTEM = 8;</code>
+       *
        * <pre>
        * equivalent to SQLNonTransientException.
        * - unexpected internal state
@@ -2816,75 +2559,63 @@
        * general user action is to contact the Drill team for
        * assistance
        * </pre>
-       *
-       * <code>SYSTEM = 8;</code>
        */
       public static final int SYSTEM_VALUE = 8;
       /**
+       * <code>UNSUPPORTED_OPERATION = 9;</code>
+       *
        * <pre>
        * equivalent to SQLFeatureNotSupportedException
        * - unimplemented feature, option, or execution path
        * - schema change in operator that does not support it
        * </pre>
-       *
-       * <code>UNSUPPORTED_OPERATION = 9;</code>
        */
       public static final int UNSUPPORTED_OPERATION_VALUE = 9;
       /**
+       * <code>VALIDATION = 10;</code>
+       *
        * <pre>
        * SQL validation exception
        * - invalid schema path
        * - invalid entries in SQL tree
        * </pre>
-       *
-       * <code>VALIDATION = 10;</code>
        */
       public static final int VALIDATION_VALUE = 10;
       /**
+       * <code>EXECUTION_ERROR = 11;</code>
+       *
        * <pre>
        * Execution exception
        *  - Internal errors not related to bad code
        * </pre>
-       *
-       * <code>EXECUTION_ERROR = 11;</code>
        */
       public static final int EXECUTION_ERROR_VALUE = 11;
       /**
+       * <code>INTERNAL_ERROR = 12;</code>
+       *
        * <pre>
        * Internal exception
        *  - Failed assertions
        *  - Other "this should not happen" cases
        * </pre>
-       *
-       * <code>INTERNAL_ERROR = 12;</code>
        */
       public static final int INTERNAL_ERROR_VALUE = 12;
       /**
+       * <code>UNSPECIFIED_ERROR = 13;</code>
+       *
        * <pre>
        * Unspecified exception
        *  - Exception caught but cause is unknown
        * Indicates code that needs revisiting to move error reporting
        * closer to the cause.
        * </pre>
-       *
-       * <code>UNSPECIFIED_ERROR = 13;</code>
        */
       public static final int UNSPECIFIED_ERROR_VALUE = 13;
 
 
-      public final int getNumber() {
-        return value;
-      }
+      public final int getNumber() { return value; }
 
-      /**
-       * @deprecated Use {@link #forNumber(int)} instead.
-       */
-      @java.lang.Deprecated
       public static ErrorType valueOf(int value) {
-        return forNumber(value);
-      }
-
-      public static ErrorType forNumber(int value) {
         switch (value) {
           case 0: return CONNECTION;
           case 1: return DATA_READ;
@@ -2908,17 +2639,17 @@
           internalGetValueMap() {
         return internalValueMap;
       }
-      private static final com.google.protobuf.Internal.EnumLiteMap<
-          ErrorType> internalValueMap =
+      private static com.google.protobuf.Internal.EnumLiteMap<ErrorType>
+          internalValueMap =
             new com.google.protobuf.Internal.EnumLiteMap<ErrorType>() {
               public ErrorType findValueByNumber(int number) {
-                return ErrorType.forNumber(number);
+                return ErrorType.valueOf(number);
               }
             };
 
       public final com.google.protobuf.Descriptors.EnumValueDescriptor
           getValueDescriptor() {
-        return getDescriptor().getValues().get(ordinal());
+        return getDescriptor().getValues().get(index);
       }
       public final com.google.protobuf.Descriptors.EnumDescriptor
           getDescriptorForType() {
@@ -2940,9 +2671,11 @@
         return VALUES[desc.getIndex()];
       }
 
+      private final int index;
       private final int value;
 
-      private ErrorType(int value) {
+      private ErrorType(int index, int value) {
+        this.index = index;
         this.value = value;
       }
 
@@ -2950,24 +2683,25 @@
     }
 
     private int bitField0_;
+    // optional string error_id = 1;
     public static final int ERROR_ID_FIELD_NUMBER = 1;
-    private volatile java.lang.Object errorId_;
+    private java.lang.Object errorId_;
     /**
+     * <code>optional string error_id = 1;</code>
+     *
      * <pre>
      * for debug tracing purposes
      * </pre>
-     *
-     * <code>optional string error_id = 1;</code>
      */
     public boolean hasErrorId() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional string error_id = 1;</code>
+     *
      * <pre>
      * for debug tracing purposes
      * </pre>
-     *
-     * <code>optional string error_id = 1;</code>
      */
     public java.lang.String getErrorId() {
       java.lang.Object ref = errorId_;
@@ -2984,11 +2718,11 @@
       }
     }
     /**
+     * <code>optional string error_id = 1;</code>
+     *
      * <pre>
      * for debug tracing purposes
      * </pre>
-     *
-     * <code>optional string error_id = 1;</code>
      */
     public com.google.protobuf.ByteString
         getErrorIdBytes() {
@@ -3004,6 +2738,7 @@
       }
     }
 
+    // optional .exec.DrillbitEndpoint endpoint = 2;
     public static final int ENDPOINT_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_;
     /**
@@ -3016,17 +2751,18 @@
      * <code>optional .exec.DrillbitEndpoint endpoint = 2;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 2;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getEndpointOrBuilder() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
 
+    // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
     public static final int ERROR_TYPE_FIELD_NUMBER = 3;
-    private int errorType_;
+    private org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType errorType_;
     /**
      * <code>optional .exec.shared.DrillPBError.ErrorType error_type = 3;</code>
      */
@@ -3037,13 +2773,12 @@
      * <code>optional .exec.shared.DrillPBError.ErrorType error_type = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType getErrorType() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType result = org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType.valueOf(errorType_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType.CONNECTION : result;
+      return errorType_;
     }
 
+    // optional string message = 4;
     public static final int MESSAGE_FIELD_NUMBER = 4;
-    private volatile java.lang.Object message_;
+    private java.lang.Object message_;
     /**
      * <code>optional string message = 4;</code>
      */
@@ -3084,6 +2819,7 @@
       }
     }
 
+    // optional .exec.shared.ExceptionWrapper exception = 5;
     public static final int EXCEPTION_FIELD_NUMBER = 5;
     private org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper exception_;
     /**
@@ -3096,226 +2832,154 @@
      * <code>optional .exec.shared.ExceptionWrapper exception = 5;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper getException() {
-      return exception_ == null ? org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance() : exception_;
+      return exception_;
     }
     /**
      * <code>optional .exec.shared.ExceptionWrapper exception = 5;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder getExceptionOrBuilder() {
-      return exception_ == null ? org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance() : exception_;
+      return exception_;
     }
 
+    // repeated .exec.shared.ParsingError parsing_error = 6;
     public static final int PARSING_ERROR_FIELD_NUMBER = 6;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.ParsingError> parsingError_;
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserBitShared.ParsingError> getParsingErrorList() {
       return parsingError_;
     }
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     public java.util.List<? extends org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder> 
         getParsingErrorOrBuilderList() {
       return parsingError_;
     }
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     public int getParsingErrorCount() {
       return parsingError_.size();
     }
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.ParsingError getParsingError(int index) {
       return parsingError_.get(index);
     }
     /**
+     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+     *
      * <pre>
      *optional, used when providing location of error within a piece of text.
      * </pre>
-     *
-     * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder getParsingErrorOrBuilder(
         int index) {
       return parsingError_.get(index);
     }
 
+    private void initFields() {
+      errorId_ = "";
+      endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      errorType_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType.CONNECTION;
+      message_ = "";
+      exception_ = org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance();
+      parsingError_ = java.util.Collections.emptyList();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, errorId_);
+        output.writeBytes(1, getErrorIdBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getEndpoint());
+        output.writeMessage(2, endpoint_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeEnum(3, errorType_);
+        output.writeEnum(3, errorType_.getNumber());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, message_);
+        output.writeBytes(4, getMessageBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        output.writeMessage(5, getException());
+        output.writeMessage(5, exception_);
       }
       for (int i = 0; i < parsingError_.size(); i++) {
         output.writeMessage(6, parsingError_.get(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, errorId_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getErrorIdBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getEndpoint());
+          .computeMessageSize(2, endpoint_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(3, errorType_);
+          .computeEnumSize(3, errorType_.getNumber());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, message_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getMessageBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(5, getException());
+          .computeMessageSize(5, exception_);
       }
       for (int i = 0; i < parsingError_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
           .computeMessageSize(6, parsingError_.get(i));
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.DrillPBError)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.DrillPBError other = (org.apache.drill.exec.proto.UserBitShared.DrillPBError) obj;
-
-      boolean result = true;
-      result = result && (hasErrorId() == other.hasErrorId());
-      if (hasErrorId()) {
-        result = result && getErrorId()
-            .equals(other.getErrorId());
-      }
-      result = result && (hasEndpoint() == other.hasEndpoint());
-      if (hasEndpoint()) {
-        result = result && getEndpoint()
-            .equals(other.getEndpoint());
-      }
-      result = result && (hasErrorType() == other.hasErrorType());
-      if (hasErrorType()) {
-        result = result && errorType_ == other.errorType_;
-      }
-      result = result && (hasMessage() == other.hasMessage());
-      if (hasMessage()) {
-        result = result && getMessage()
-            .equals(other.getMessage());
-      }
-      result = result && (hasException() == other.hasException());
-      if (hasException()) {
-        result = result && getException()
-            .equals(other.getException());
-      }
-      result = result && getParsingErrorList()
-          .equals(other.getParsingErrorList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasErrorId()) {
-        hash = (37 * hash) + ERROR_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getErrorId().hashCode();
-      }
-      if (hasEndpoint()) {
-        hash = (37 * hash) + ENDPOINT_FIELD_NUMBER;
-        hash = (53 * hash) + getEndpoint().hashCode();
-      }
-      if (hasErrorType()) {
-        hash = (37 * hash) + ERROR_TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + errorType_;
-      }
-      if (hasMessage()) {
-        hash = (37 * hash) + MESSAGE_FIELD_NUMBER;
-        hash = (53 * hash) + getMessage().hashCode();
-      }
-      if (hasException()) {
-        hash = (37 * hash) + EXCEPTION_FIELD_NUMBER;
-        hash = (53 * hash) + getException().hashCode();
-      }
-      if (getParsingErrorCount() > 0) {
-        hash = (37 * hash) + PARSING_ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getParsingErrorList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.DrillPBError parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.DrillPBError parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.DrillPBError parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -3339,59 +3003,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.DrillPBError parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.DrillPBError parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.DrillPBError parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.DrillPBError parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.DrillPBError parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.DrillPBError parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.DrillPBError prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -3399,16 +3050,14 @@
      * Protobuf type {@code exec.shared.DrillPBError}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.DrillPBError)
-        org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_DrillPBError_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_DrillPBError_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -3421,35 +3070,37 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getEndpointFieldBuilder();
           getExceptionFieldBuilder();
           getParsingErrorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         errorId_ = "";
         bitField0_ = (bitField0_ & ~0x00000001);
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
         } else {
           endpointBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000002);
-        errorType_ = 0;
+        errorType_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType.CONNECTION;
         bitField0_ = (bitField0_ & ~0x00000004);
         message_ = "";
         bitField0_ = (bitField0_ & ~0x00000008);
         if (exceptionBuilder_ == null) {
-          exception_ = null;
+          exception_ = org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance();
         } else {
           exceptionBuilder_.clear();
         }
@@ -3463,18 +3114,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_DrillPBError_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError build() {
         org.apache.drill.exec.proto.UserBitShared.DrillPBError result = buildPartial();
         if (!result.isInitialized()) {
@@ -3483,7 +3135,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.DrillPBError result = new org.apache.drill.exec.proto.UserBitShared.DrillPBError(this);
         int from_bitField0_ = bitField0_;
@@ -3530,39 +3181,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.DrillPBError) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.DrillPBError)other);
@@ -3612,24 +3230,21 @@
               parsingError_ = other.parsingError_;
               bitField0_ = (bitField0_ & ~0x00000020);
               parsingErrorBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getParsingErrorFieldBuilder() : null;
             } else {
               parsingErrorBuilder_.addAllMessages(other.parsingError_);
             }
           }
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -3639,7 +3254,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.DrillPBError) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -3649,44 +3264,42 @@
       }
       private int bitField0_;
 
+      // optional string error_id = 1;
       private java.lang.Object errorId_ = "";
       /**
+       * <code>optional string error_id = 1;</code>
+       *
        * <pre>
        * for debug tracing purposes
        * </pre>
-       *
-       * <code>optional string error_id = 1;</code>
        */
       public boolean hasErrorId() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
+       * <code>optional string error_id = 1;</code>
+       *
        * <pre>
        * for debug tracing purposes
        * </pre>
-       *
-       * <code>optional string error_id = 1;</code>
        */
       public java.lang.String getErrorId() {
         java.lang.Object ref = errorId_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            errorId_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          errorId_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string error_id = 1;</code>
+       *
        * <pre>
        * for debug tracing purposes
        * </pre>
-       *
-       * <code>optional string error_id = 1;</code>
        */
       public com.google.protobuf.ByteString
           getErrorIdBytes() {
@@ -3702,11 +3315,11 @@
         }
       }
       /**
+       * <code>optional string error_id = 1;</code>
+       *
        * <pre>
        * for debug tracing purposes
        * </pre>
-       *
-       * <code>optional string error_id = 1;</code>
        */
       public Builder setErrorId(
           java.lang.String value) {
@@ -3719,11 +3332,11 @@
         return this;
       }
       /**
+       * <code>optional string error_id = 1;</code>
+       *
        * <pre>
        * for debug tracing purposes
        * </pre>
-       *
-       * <code>optional string error_id = 1;</code>
        */
       public Builder clearErrorId() {
         bitField0_ = (bitField0_ & ~0x00000001);
@@ -3732,11 +3345,11 @@
         return this;
       }
       /**
+       * <code>optional string error_id = 1;</code>
+       *
        * <pre>
        * for debug tracing purposes
        * </pre>
-       *
-       * <code>optional string error_id = 1;</code>
        */
       public Builder setErrorIdBytes(
           com.google.protobuf.ByteString value) {
@@ -3749,8 +3362,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.DrillbitEndpoint endpoint = 2;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> endpointBuilder_;
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 2;</code>
@@ -3763,7 +3377,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
         if (endpointBuilder_ == null) {
-          return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         } else {
           return endpointBuilder_.getMessage();
         }
@@ -3804,7 +3418,6 @@
       public Builder mergeEndpoint(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint value) {
         if (endpointBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              endpoint_ != null &&
               endpoint_ != org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance()) {
             endpoint_ =
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.newBuilder(endpoint_).mergeFrom(value).buildPartial();
@@ -3823,7 +3436,7 @@
        */
       public Builder clearEndpoint() {
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
           onChanged();
         } else {
           endpointBuilder_.clear();
@@ -3846,20 +3459,19 @@
         if (endpointBuilder_ != null) {
           return endpointBuilder_.getMessageOrBuilder();
         } else {
-          return endpoint_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         }
       }
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> 
           getEndpointFieldBuilder() {
         if (endpointBuilder_ == null) {
-          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder>(
-                  getEndpoint(),
+                  endpoint_,
                   getParentForChildren(),
                   isClean());
           endpoint_ = null;
@@ -3867,7 +3479,8 @@
         return endpointBuilder_;
       }
 
-      private int errorType_ = 0;
+      // optional .exec.shared.DrillPBError.ErrorType error_type = 3;
+      private org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType errorType_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType.CONNECTION;
       /**
        * <code>optional .exec.shared.DrillPBError.ErrorType error_type = 3;</code>
        */
@@ -3878,9 +3491,7 @@
        * <code>optional .exec.shared.DrillPBError.ErrorType error_type = 3;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType getErrorType() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType result = org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType.valueOf(errorType_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType.CONNECTION : result;
+        return errorType_;
       }
       /**
        * <code>optional .exec.shared.DrillPBError.ErrorType error_type = 3;</code>
@@ -3890,7 +3501,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000004;
-        errorType_ = value.getNumber();
+        errorType_ = value;
         onChanged();
         return this;
       }
@@ -3899,11 +3510,12 @@
        */
       public Builder clearErrorType() {
         bitField0_ = (bitField0_ & ~0x00000004);
-        errorType_ = 0;
+        errorType_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.ErrorType.CONNECTION;
         onChanged();
         return this;
       }
 
+      // optional string message = 4;
       private java.lang.Object message_ = "";
       /**
        * <code>optional string message = 4;</code>
@@ -3917,12 +3529,9 @@
       public java.lang.String getMessage() {
         java.lang.Object ref = message_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            message_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          message_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -3980,8 +3589,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper exception_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.ExceptionWrapper exception = 5;
+      private org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper exception_ = org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.Builder, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder> exceptionBuilder_;
       /**
        * <code>optional .exec.shared.ExceptionWrapper exception = 5;</code>
@@ -3994,7 +3604,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper getException() {
         if (exceptionBuilder_ == null) {
-          return exception_ == null ? org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance() : exception_;
+          return exception_;
         } else {
           return exceptionBuilder_.getMessage();
         }
@@ -4035,7 +3645,6 @@
       public Builder mergeException(org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper value) {
         if (exceptionBuilder_ == null) {
           if (((bitField0_ & 0x00000010) == 0x00000010) &&
-              exception_ != null &&
               exception_ != org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance()) {
             exception_ =
               org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.newBuilder(exception_).mergeFrom(value).buildPartial();
@@ -4054,7 +3663,7 @@
        */
       public Builder clearException() {
         if (exceptionBuilder_ == null) {
-          exception_ = null;
+          exception_ = org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance();
           onChanged();
         } else {
           exceptionBuilder_.clear();
@@ -4077,20 +3686,19 @@
         if (exceptionBuilder_ != null) {
           return exceptionBuilder_.getMessageOrBuilder();
         } else {
-          return exception_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance() : exception_;
+          return exception_;
         }
       }
       /**
        * <code>optional .exec.shared.ExceptionWrapper exception = 5;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.Builder, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder> 
           getExceptionFieldBuilder() {
         if (exceptionBuilder_ == null) {
-          exceptionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          exceptionBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.Builder, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder>(
-                  getException(),
+                  exception_,
                   getParentForChildren(),
                   isClean());
           exception_ = null;
@@ -4098,6 +3706,7 @@
         return exceptionBuilder_;
       }
 
+      // repeated .exec.shared.ParsingError parsing_error = 6;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.ParsingError> parsingError_ =
         java.util.Collections.emptyList();
       private void ensureParsingErrorIsMutable() {
@@ -4107,15 +3716,15 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.ParsingError, org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder, org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder> parsingErrorBuilder_;
 
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserBitShared.ParsingError> getParsingErrorList() {
         if (parsingErrorBuilder_ == null) {
@@ -4125,11 +3734,11 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public int getParsingErrorCount() {
         if (parsingErrorBuilder_ == null) {
@@ -4139,11 +3748,11 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.ParsingError getParsingError(int index) {
         if (parsingErrorBuilder_ == null) {
@@ -4153,11 +3762,11 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public Builder setParsingError(
           int index, org.apache.drill.exec.proto.UserBitShared.ParsingError value) {
@@ -4174,11 +3783,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public Builder setParsingError(
           int index, org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder builderForValue) {
@@ -4192,11 +3801,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public Builder addParsingError(org.apache.drill.exec.proto.UserBitShared.ParsingError value) {
         if (parsingErrorBuilder_ == null) {
@@ -4212,11 +3821,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public Builder addParsingError(
           int index, org.apache.drill.exec.proto.UserBitShared.ParsingError value) {
@@ -4233,11 +3842,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public Builder addParsingError(
           org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder builderForValue) {
@@ -4251,11 +3860,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public Builder addParsingError(
           int index, org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder builderForValue) {
@@ -4269,18 +3878,17 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public Builder addAllParsingError(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.ParsingError> values) {
         if (parsingErrorBuilder_ == null) {
           ensureParsingErrorIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, parsingError_);
+          super.addAll(values, parsingError_);
           onChanged();
         } else {
           parsingErrorBuilder_.addAllMessages(values);
@@ -4288,11 +3896,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public Builder clearParsingError() {
         if (parsingErrorBuilder_ == null) {
@@ -4305,11 +3913,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public Builder removeParsingError(int index) {
         if (parsingErrorBuilder_ == null) {
@@ -4322,22 +3930,22 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder getParsingErrorBuilder(
           int index) {
         return getParsingErrorFieldBuilder().getBuilder(index);
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder getParsingErrorOrBuilder(
           int index) {
@@ -4347,11 +3955,11 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public java.util.List<? extends org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder> 
            getParsingErrorOrBuilderList() {
@@ -4362,22 +3970,22 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder addParsingErrorBuilder() {
         return getParsingErrorFieldBuilder().addBuilder(
             org.apache.drill.exec.proto.UserBitShared.ParsingError.getDefaultInstance());
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder addParsingErrorBuilder(
           int index) {
@@ -4385,21 +3993,21 @@
             index, org.apache.drill.exec.proto.UserBitShared.ParsingError.getDefaultInstance());
       }
       /**
+       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
+       *
        * <pre>
        *optional, used when providing location of error within a piece of text.
        * </pre>
-       *
-       * <code>repeated .exec.shared.ParsingError parsing_error = 6;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder> 
            getParsingErrorBuilderList() {
         return getParsingErrorFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.ParsingError, org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder, org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder> 
           getParsingErrorFieldBuilder() {
         if (parsingErrorBuilder_ == null) {
-          parsingErrorBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          parsingErrorBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.ParsingError, org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder, org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder>(
                   parsingError_,
                   ((bitField0_ & 0x00000020) == 0x00000020),
@@ -4409,63 +4017,22 @@
         }
         return parsingErrorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.DrillPBError)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.DrillPBError)
-    private static final org.apache.drill.exec.proto.UserBitShared.DrillPBError DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.DrillPBError();
+      defaultInstance = new DrillPBError(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.DrillPBError getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<DrillPBError>
-        PARSER = new com.google.protobuf.AbstractParser<DrillPBError>() {
-      @java.lang.Override
-      public DrillPBError parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new DrillPBError(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<DrillPBError> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<DrillPBError> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.DrillPBError getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.DrillPBError)
   }
 
-  public interface ExceptionWrapperOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.ExceptionWrapper)
-      com.google.protobuf.MessageOrBuilder {
+  public interface ExceptionWrapperOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string exception_class = 1;
     /**
      * <code>optional string exception_class = 1;</code>
      */
@@ -4480,6 +4047,7 @@
     com.google.protobuf.ByteString
         getExceptionClassBytes();
 
+    // optional string message = 2;
     /**
      * <code>optional string message = 2;</code>
      */
@@ -4494,6 +4062,7 @@
     com.google.protobuf.ByteString
         getMessageBytes();
 
+    // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
     /**
      * <code>repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;</code>
      */
@@ -4518,6 +4087,7 @@
     org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapperOrBuilder getStackTraceOrBuilder(
         int index);
 
+    // optional .exec.shared.ExceptionWrapper cause = 4;
     /**
      * <code>optional .exec.shared.ExceptionWrapper cause = 4;</code>
      */
@@ -4534,34 +4104,36 @@
   /**
    * Protobuf type {@code exec.shared.ExceptionWrapper}
    */
-  public  static final class ExceptionWrapper extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.ExceptionWrapper)
-      ExceptionWrapperOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class ExceptionWrapper extends
+      com.google.protobuf.GeneratedMessage
+      implements ExceptionWrapperOrBuilder {
     // Use ExceptionWrapper.newBuilder() to construct.
-    private ExceptionWrapper(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private ExceptionWrapper(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private ExceptionWrapper() {
-      exceptionClass_ = "";
-      message_ = "";
-      stackTrace_ = java.util.Collections.emptyList();
+    private ExceptionWrapper(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final ExceptionWrapper defaultInstance;
+    public static ExceptionWrapper getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public ExceptionWrapper getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private ExceptionWrapper(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -4573,16 +4145,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              exceptionClass_ = bs;
+              exceptionClass_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              message_ = bs;
+              message_ = input.readBytes();
               break;
             }
             case 26: {
@@ -4590,8 +4167,7 @@
                 stackTrace_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper>();
                 mutable_bitField0_ |= 0x00000004;
               }
-              stackTrace_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper.PARSER, extensionRegistry));
+              stackTrace_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper.PARSER, extensionRegistry));
               break;
             }
             case 34: {
@@ -4607,20 +4183,13 @@
               bitField0_ |= 0x00000004;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
           stackTrace_ = java.util.Collections.unmodifiableList(stackTrace_);
@@ -4634,17 +4203,32 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ExceptionWrapper_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ExceptionWrapper_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.class, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<ExceptionWrapper> PARSER =
+        new com.google.protobuf.AbstractParser<ExceptionWrapper>() {
+      public ExceptionWrapper parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new ExceptionWrapper(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<ExceptionWrapper> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string exception_class = 1;
     public static final int EXCEPTION_CLASS_FIELD_NUMBER = 1;
-    private volatile java.lang.Object exceptionClass_;
+    private java.lang.Object exceptionClass_;
     /**
      * <code>optional string exception_class = 1;</code>
      */
@@ -4685,8 +4269,9 @@
       }
     }
 
+    // optional string message = 2;
     public static final int MESSAGE_FIELD_NUMBER = 2;
-    private volatile java.lang.Object message_;
+    private java.lang.Object message_;
     /**
      * <code>optional string message = 2;</code>
      */
@@ -4727,6 +4312,7 @@
       }
     }
 
+    // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
     public static final int STACK_TRACE_FIELD_NUMBER = 3;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper> stackTrace_;
     /**
@@ -4762,6 +4348,7 @@
       return stackTrace_.get(index);
     }
 
+    // optional .exec.shared.ExceptionWrapper cause = 4;
     public static final int CAUSE_FIELD_NUMBER = 4;
     private org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper cause_;
     /**
@@ -4774,55 +4361,61 @@
      * <code>optional .exec.shared.ExceptionWrapper cause = 4;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper getCause() {
-      return cause_ == null ? org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance() : cause_;
+      return cause_;
     }
     /**
      * <code>optional .exec.shared.ExceptionWrapper cause = 4;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder getCauseOrBuilder() {
-      return cause_ == null ? org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance() : cause_;
+      return cause_;
     }
 
+    private void initFields() {
+      exceptionClass_ = "";
+      message_ = "";
+      stackTrace_ = java.util.Collections.emptyList();
+      cause_ = org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, exceptionClass_);
+        output.writeBytes(1, getExceptionClassBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, message_);
+        output.writeBytes(2, getMessageBytes());
       }
       for (int i = 0; i < stackTrace_.size(); i++) {
         output.writeMessage(3, stackTrace_.get(i));
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(4, getCause());
+        output.writeMessage(4, cause_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, exceptionClass_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getExceptionClassBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, message_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getMessageBytes());
       }
       for (int i = 0; i < stackTrace_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
@@ -4830,84 +4423,20 @@
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(4, getCause());
+          .computeMessageSize(4, cause_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper other = (org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper) obj;
-
-      boolean result = true;
-      result = result && (hasExceptionClass() == other.hasExceptionClass());
-      if (hasExceptionClass()) {
-        result = result && getExceptionClass()
-            .equals(other.getExceptionClass());
-      }
-      result = result && (hasMessage() == other.hasMessage());
-      if (hasMessage()) {
-        result = result && getMessage()
-            .equals(other.getMessage());
-      }
-      result = result && getStackTraceList()
-          .equals(other.getStackTraceList());
-      result = result && (hasCause() == other.hasCause());
-      if (hasCause()) {
-        result = result && getCause()
-            .equals(other.getCause());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasExceptionClass()) {
-        hash = (37 * hash) + EXCEPTION_CLASS_FIELD_NUMBER;
-        hash = (53 * hash) + getExceptionClass().hashCode();
-      }
-      if (hasMessage()) {
-        hash = (37 * hash) + MESSAGE_FIELD_NUMBER;
-        hash = (53 * hash) + getMessage().hashCode();
-      }
-      if (getStackTraceCount() > 0) {
-        hash = (37 * hash) + STACK_TRACE_FIELD_NUMBER;
-        hash = (53 * hash) + getStackTraceList().hashCode();
-      }
-      if (hasCause()) {
-        hash = (37 * hash) + CAUSE_FIELD_NUMBER;
-        hash = (53 * hash) + getCause().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -4931,59 +4460,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -4991,16 +4507,14 @@
      * Protobuf type {@code exec.shared.ExceptionWrapper}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.ExceptionWrapper)
-        org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ExceptionWrapper_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ExceptionWrapper_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -5013,18 +4527,20 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getStackTraceFieldBuilder();
           getCauseFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         exceptionClass_ = "";
@@ -5038,7 +4554,7 @@
           stackTraceBuilder_.clear();
         }
         if (causeBuilder_ == null) {
-          cause_ = null;
+          cause_ = org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance();
         } else {
           causeBuilder_.clear();
         }
@@ -5046,18 +4562,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ExceptionWrapper_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper build() {
         org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper result = buildPartial();
         if (!result.isInitialized()) {
@@ -5066,7 +4583,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper result = new org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper(this);
         int from_bitField0_ = bitField0_;
@@ -5101,39 +4617,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper)other);
@@ -5174,7 +4657,7 @@
               stackTrace_ = other.stackTrace_;
               bitField0_ = (bitField0_ & ~0x00000004);
               stackTraceBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getStackTraceFieldBuilder() : null;
             } else {
               stackTraceBuilder_.addAllMessages(other.stackTrace_);
@@ -5184,17 +4667,14 @@
         if (other.hasCause()) {
           mergeCause(other.getCause());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -5204,7 +4684,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -5214,6 +4694,7 @@
       }
       private int bitField0_;
 
+      // optional string exception_class = 1;
       private java.lang.Object exceptionClass_ = "";
       /**
        * <code>optional string exception_class = 1;</code>
@@ -5227,12 +4708,9 @@
       public java.lang.String getExceptionClass() {
         java.lang.Object ref = exceptionClass_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            exceptionClass_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          exceptionClass_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -5290,6 +4768,7 @@
         return this;
       }
 
+      // optional string message = 2;
       private java.lang.Object message_ = "";
       /**
        * <code>optional string message = 2;</code>
@@ -5303,12 +4782,9 @@
       public java.lang.String getMessage() {
         java.lang.Object ref = message_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            message_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          message_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -5366,6 +4842,7 @@
         return this;
       }
 
+      // repeated .exec.shared.StackTraceElementWrapper stack_trace = 3;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper> stackTrace_ =
         java.util.Collections.emptyList();
       private void ensureStackTraceIsMutable() {
@@ -5375,7 +4852,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper, org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper.Builder, org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapperOrBuilder> stackTraceBuilder_;
 
       /**
@@ -5507,8 +4984,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper> values) {
         if (stackTraceBuilder_ == null) {
           ensureStackTraceIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, stackTrace_);
+          super.addAll(values, stackTrace_);
           onChanged();
         } else {
           stackTraceBuilder_.addAllMessages(values);
@@ -5591,11 +5067,11 @@
            getStackTraceBuilderList() {
         return getStackTraceFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper, org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper.Builder, org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapperOrBuilder> 
           getStackTraceFieldBuilder() {
         if (stackTraceBuilder_ == null) {
-          stackTraceBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          stackTraceBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper, org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper.Builder, org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapperOrBuilder>(
                   stackTrace_,
                   ((bitField0_ & 0x00000004) == 0x00000004),
@@ -5606,8 +5082,9 @@
         return stackTraceBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper cause_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.ExceptionWrapper cause = 4;
+      private org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper cause_ = org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.Builder, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder> causeBuilder_;
       /**
        * <code>optional .exec.shared.ExceptionWrapper cause = 4;</code>
@@ -5620,7 +5097,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper getCause() {
         if (causeBuilder_ == null) {
-          return cause_ == null ? org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance() : cause_;
+          return cause_;
         } else {
           return causeBuilder_.getMessage();
         }
@@ -5661,7 +5138,6 @@
       public Builder mergeCause(org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper value) {
         if (causeBuilder_ == null) {
           if (((bitField0_ & 0x00000008) == 0x00000008) &&
-              cause_ != null &&
               cause_ != org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance()) {
             cause_ =
               org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.newBuilder(cause_).mergeFrom(value).buildPartial();
@@ -5680,7 +5156,7 @@
        */
       public Builder clearCause() {
         if (causeBuilder_ == null) {
-          cause_ = null;
+          cause_ = org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance();
           onChanged();
         } else {
           causeBuilder_.clear();
@@ -5703,83 +5179,41 @@
         if (causeBuilder_ != null) {
           return causeBuilder_.getMessageOrBuilder();
         } else {
-          return cause_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.getDefaultInstance() : cause_;
+          return cause_;
         }
       }
       /**
        * <code>optional .exec.shared.ExceptionWrapper cause = 4;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.Builder, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder> 
           getCauseFieldBuilder() {
         if (causeBuilder_ == null) {
-          causeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          causeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper.Builder, org.apache.drill.exec.proto.UserBitShared.ExceptionWrapperOrBuilder>(
-                  getCause(),
+                  cause_,
                   getParentForChildren(),
                   isClean());
           cause_ = null;
         }
         return causeBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.ExceptionWrapper)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.ExceptionWrapper)
-    private static final org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper();
+      defaultInstance = new ExceptionWrapper(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<ExceptionWrapper>
-        PARSER = new com.google.protobuf.AbstractParser<ExceptionWrapper>() {
-      @java.lang.Override
-      public ExceptionWrapper parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new ExceptionWrapper(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<ExceptionWrapper> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<ExceptionWrapper> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.ExceptionWrapper getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.ExceptionWrapper)
   }
 
-  public interface StackTraceElementWrapperOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.StackTraceElementWrapper)
-      com.google.protobuf.MessageOrBuilder {
+  public interface StackTraceElementWrapperOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string class_name = 1;
     /**
      * <code>optional string class_name = 1;</code>
      */
@@ -5794,6 +5228,7 @@
     com.google.protobuf.ByteString
         getClassNameBytes();
 
+    // optional string file_name = 2;
     /**
      * <code>optional string file_name = 2;</code>
      */
@@ -5808,6 +5243,7 @@
     com.google.protobuf.ByteString
         getFileNameBytes();
 
+    // optional int32 line_number = 3;
     /**
      * <code>optional int32 line_number = 3;</code>
      */
@@ -5817,6 +5253,7 @@
      */
     int getLineNumber();
 
+    // optional string method_name = 4;
     /**
      * <code>optional string method_name = 4;</code>
      */
@@ -5831,6 +5268,7 @@
     com.google.protobuf.ByteString
         getMethodNameBytes();
 
+    // optional bool is_native_method = 5;
     /**
      * <code>optional bool is_native_method = 5;</code>
      */
@@ -5843,36 +5281,36 @@
   /**
    * Protobuf type {@code exec.shared.StackTraceElementWrapper}
    */
-  public  static final class StackTraceElementWrapper extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.StackTraceElementWrapper)
-      StackTraceElementWrapperOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class StackTraceElementWrapper extends
+      com.google.protobuf.GeneratedMessage
+      implements StackTraceElementWrapperOrBuilder {
     // Use StackTraceElementWrapper.newBuilder() to construct.
-    private StackTraceElementWrapper(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private StackTraceElementWrapper(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private StackTraceElementWrapper() {
-      className_ = "";
-      fileName_ = "";
-      lineNumber_ = 0;
-      methodName_ = "";
-      isNativeMethod_ = false;
+    private StackTraceElementWrapper(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final StackTraceElementWrapper defaultInstance;
+    public static StackTraceElementWrapper getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public StackTraceElementWrapper getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private StackTraceElementWrapper(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -5884,16 +5322,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              className_ = bs;
+              className_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              fileName_ = bs;
+              fileName_ = input.readBytes();
               break;
             }
             case 24: {
@@ -5902,9 +5345,8 @@
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              methodName_ = bs;
+              methodName_ = input.readBytes();
               break;
             }
             case 40: {
@@ -5912,20 +5354,13 @@
               isNativeMethod_ = input.readBool();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -5936,17 +5371,32 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StackTraceElementWrapper_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StackTraceElementWrapper_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper.class, org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<StackTraceElementWrapper> PARSER =
+        new com.google.protobuf.AbstractParser<StackTraceElementWrapper>() {
+      public StackTraceElementWrapper parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new StackTraceElementWrapper(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<StackTraceElementWrapper> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string class_name = 1;
     public static final int CLASS_NAME_FIELD_NUMBER = 1;
-    private volatile java.lang.Object className_;
+    private java.lang.Object className_;
     /**
      * <code>optional string class_name = 1;</code>
      */
@@ -5987,8 +5437,9 @@
       }
     }
 
+    // optional string file_name = 2;
     public static final int FILE_NAME_FIELD_NUMBER = 2;
-    private volatile java.lang.Object fileName_;
+    private java.lang.Object fileName_;
     /**
      * <code>optional string file_name = 2;</code>
      */
@@ -6029,6 +5480,7 @@
       }
     }
 
+    // optional int32 line_number = 3;
     public static final int LINE_NUMBER_FIELD_NUMBER = 3;
     private int lineNumber_;
     /**
@@ -6044,8 +5496,9 @@
       return lineNumber_;
     }
 
+    // optional string method_name = 4;
     public static final int METHOD_NAME_FIELD_NUMBER = 4;
-    private volatile java.lang.Object methodName_;
+    private java.lang.Object methodName_;
     /**
      * <code>optional string method_name = 4;</code>
      */
@@ -6086,6 +5539,7 @@
       }
     }
 
+    // optional bool is_native_method = 5;
     public static final int IS_NATIVE_METHOD_FIELD_NUMBER = 5;
     private boolean isNativeMethod_;
     /**
@@ -6101,150 +5555,81 @@
       return isNativeMethod_;
     }
 
+    private void initFields() {
+      className_ = "";
+      fileName_ = "";
+      lineNumber_ = 0;
+      methodName_ = "";
+      isNativeMethod_ = false;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, className_);
+        output.writeBytes(1, getClassNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, fileName_);
+        output.writeBytes(2, getFileNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeInt32(3, lineNumber_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, methodName_);
+        output.writeBytes(4, getMethodNameBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         output.writeBool(5, isNativeMethod_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, className_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getClassNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, fileName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getFileNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(3, lineNumber_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, methodName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getMethodNameBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(5, isNativeMethod_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper other = (org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper) obj;
-
-      boolean result = true;
-      result = result && (hasClassName() == other.hasClassName());
-      if (hasClassName()) {
-        result = result && getClassName()
-            .equals(other.getClassName());
-      }
-      result = result && (hasFileName() == other.hasFileName());
-      if (hasFileName()) {
-        result = result && getFileName()
-            .equals(other.getFileName());
-      }
-      result = result && (hasLineNumber() == other.hasLineNumber());
-      if (hasLineNumber()) {
-        result = result && (getLineNumber()
-            == other.getLineNumber());
-      }
-      result = result && (hasMethodName() == other.hasMethodName());
-      if (hasMethodName()) {
-        result = result && getMethodName()
-            .equals(other.getMethodName());
-      }
-      result = result && (hasIsNativeMethod() == other.hasIsNativeMethod());
-      if (hasIsNativeMethod()) {
-        result = result && (getIsNativeMethod()
-            == other.getIsNativeMethod());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasClassName()) {
-        hash = (37 * hash) + CLASS_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getClassName().hashCode();
-      }
-      if (hasFileName()) {
-        hash = (37 * hash) + FILE_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getFileName().hashCode();
-      }
-      if (hasLineNumber()) {
-        hash = (37 * hash) + LINE_NUMBER_FIELD_NUMBER;
-        hash = (53 * hash) + getLineNumber();
-      }
-      if (hasMethodName()) {
-        hash = (37 * hash) + METHOD_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getMethodName().hashCode();
-      }
-      if (hasIsNativeMethod()) {
-        hash = (37 * hash) + IS_NATIVE_METHOD_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getIsNativeMethod());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -6268,59 +5653,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -6328,16 +5700,14 @@
      * Protobuf type {@code exec.shared.StackTraceElementWrapper}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.StackTraceElementWrapper)
-        org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapperOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapperOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StackTraceElementWrapper_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StackTraceElementWrapper_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -6350,16 +5720,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         className_ = "";
@@ -6375,18 +5747,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StackTraceElementWrapper_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper build() {
         org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper result = buildPartial();
         if (!result.isInitialized()) {
@@ -6395,7 +5768,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper result = new org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper(this);
         int from_bitField0_ = bitField0_;
@@ -6425,39 +5797,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper)other);
@@ -6490,17 +5829,14 @@
         if (other.hasIsNativeMethod()) {
           setIsNativeMethod(other.getIsNativeMethod());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -6510,7 +5846,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -6520,6 +5856,7 @@
       }
       private int bitField0_;
 
+      // optional string class_name = 1;
       private java.lang.Object className_ = "";
       /**
        * <code>optional string class_name = 1;</code>
@@ -6533,12 +5870,9 @@
       public java.lang.String getClassName() {
         java.lang.Object ref = className_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            className_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          className_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -6596,6 +5930,7 @@
         return this;
       }
 
+      // optional string file_name = 2;
       private java.lang.Object fileName_ = "";
       /**
        * <code>optional string file_name = 2;</code>
@@ -6609,12 +5944,9 @@
       public java.lang.String getFileName() {
         java.lang.Object ref = fileName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            fileName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          fileName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -6672,6 +6004,7 @@
         return this;
       }
 
+      // optional int32 line_number = 3;
       private int lineNumber_ ;
       /**
        * <code>optional int32 line_number = 3;</code>
@@ -6704,6 +6037,7 @@
         return this;
       }
 
+      // optional string method_name = 4;
       private java.lang.Object methodName_ = "";
       /**
        * <code>optional string method_name = 4;</code>
@@ -6717,12 +6051,9 @@
       public java.lang.String getMethodName() {
         java.lang.Object ref = methodName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            methodName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          methodName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -6780,6 +6111,7 @@
         return this;
       }
 
+      // optional bool is_native_method = 5;
       private boolean isNativeMethod_ ;
       /**
        * <code>optional bool is_native_method = 5;</code>
@@ -6811,63 +6143,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.StackTraceElementWrapper)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.StackTraceElementWrapper)
-    private static final org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper();
+      defaultInstance = new StackTraceElementWrapper(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<StackTraceElementWrapper>
-        PARSER = new com.google.protobuf.AbstractParser<StackTraceElementWrapper>() {
-      @java.lang.Override
-      public StackTraceElementWrapper parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new StackTraceElementWrapper(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<StackTraceElementWrapper> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<StackTraceElementWrapper> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.StackTraceElementWrapper getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.StackTraceElementWrapper)
   }
 
-  public interface ParsingErrorOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.ParsingError)
-      com.google.protobuf.MessageOrBuilder {
+  public interface ParsingErrorOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 start_column = 2;
     /**
      * <code>optional int32 start_column = 2;</code>
      */
@@ -6877,6 +6168,7 @@
      */
     int getStartColumn();
 
+    // optional int32 start_row = 3;
     /**
      * <code>optional int32 start_row = 3;</code>
      */
@@ -6886,6 +6178,7 @@
      */
     int getStartRow();
 
+    // optional int32 end_column = 4;
     /**
      * <code>optional int32 end_column = 4;</code>
      */
@@ -6895,6 +6188,7 @@
      */
     int getEndColumn();
 
+    // optional int32 end_row = 5;
     /**
      * <code>optional int32 end_row = 5;</code>
      */
@@ -6907,35 +6201,36 @@
   /**
    * Protobuf type {@code exec.shared.ParsingError}
    */
-  public  static final class ParsingError extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.ParsingError)
-      ParsingErrorOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class ParsingError extends
+      com.google.protobuf.GeneratedMessage
+      implements ParsingErrorOrBuilder {
     // Use ParsingError.newBuilder() to construct.
-    private ParsingError(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private ParsingError(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private ParsingError() {
-      startColumn_ = 0;
-      startRow_ = 0;
-      endColumn_ = 0;
-      endRow_ = 0;
+    private ParsingError(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final ParsingError defaultInstance;
+    public static ParsingError getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public ParsingError getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private ParsingError(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -6947,6 +6242,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 16: {
               bitField0_ |= 0x00000001;
               startColumn_ = input.readInt32();
@@ -6967,20 +6269,13 @@
               endRow_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -6991,15 +6286,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ParsingError_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ParsingError_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.ParsingError.class, org.apache.drill.exec.proto.UserBitShared.ParsingError.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<ParsingError> PARSER =
+        new com.google.protobuf.AbstractParser<ParsingError>() {
+      public ParsingError parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new ParsingError(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<ParsingError> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 start_column = 2;
     public static final int START_COLUMN_FIELD_NUMBER = 2;
     private int startColumn_;
     /**
@@ -7015,6 +6325,7 @@
       return startColumn_;
     }
 
+    // optional int32 start_row = 3;
     public static final int START_ROW_FIELD_NUMBER = 3;
     private int startRow_;
     /**
@@ -7030,6 +6341,7 @@
       return startRow_;
     }
 
+    // optional int32 end_column = 4;
     public static final int END_COLUMN_FIELD_NUMBER = 4;
     private int endColumn_;
     /**
@@ -7045,6 +6357,7 @@
       return endColumn_;
     }
 
+    // optional int32 end_row = 5;
     public static final int END_ROW_FIELD_NUMBER = 5;
     private int endRow_;
     /**
@@ -7060,20 +6373,24 @@
       return endRow_;
     }
 
+    private void initFields() {
+      startColumn_ = 0;
+      startRow_ = 0;
+      endColumn_ = 0;
+      endRow_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(2, startColumn_);
       }
@@ -7086,12 +6403,12 @@
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
         output.writeInt32(5, endRow_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -7111,85 +6428,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(5, endRow_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.ParsingError)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.ParsingError other = (org.apache.drill.exec.proto.UserBitShared.ParsingError) obj;
-
-      boolean result = true;
-      result = result && (hasStartColumn() == other.hasStartColumn());
-      if (hasStartColumn()) {
-        result = result && (getStartColumn()
-            == other.getStartColumn());
-      }
-      result = result && (hasStartRow() == other.hasStartRow());
-      if (hasStartRow()) {
-        result = result && (getStartRow()
-            == other.getStartRow());
-      }
-      result = result && (hasEndColumn() == other.hasEndColumn());
-      if (hasEndColumn()) {
-        result = result && (getEndColumn()
-            == other.getEndColumn());
-      }
-      result = result && (hasEndRow() == other.hasEndRow());
-      if (hasEndRow()) {
-        result = result && (getEndRow()
-            == other.getEndRow());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasStartColumn()) {
-        hash = (37 * hash) + START_COLUMN_FIELD_NUMBER;
-        hash = (53 * hash) + getStartColumn();
-      }
-      if (hasStartRow()) {
-        hash = (37 * hash) + START_ROW_FIELD_NUMBER;
-        hash = (53 * hash) + getStartRow();
-      }
-      if (hasEndColumn()) {
-        hash = (37 * hash) + END_COLUMN_FIELD_NUMBER;
-        hash = (53 * hash) + getEndColumn();
-      }
-      if (hasEndRow()) {
-        hash = (37 * hash) + END_ROW_FIELD_NUMBER;
-        hash = (53 * hash) + getEndRow();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.ParsingError parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.ParsingError parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.ParsingError parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -7213,59 +6463,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.ParsingError parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ParsingError parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ParsingError parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ParsingError parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ParsingError parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.ParsingError parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.ParsingError prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -7273,16 +6510,14 @@
      * Protobuf type {@code exec.shared.ParsingError}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.ParsingError)
-        org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.ParsingErrorOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ParsingError_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ParsingError_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -7295,16 +6530,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         startColumn_ = 0;
@@ -7318,18 +6555,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_ParsingError_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.ParsingError getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.ParsingError.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.ParsingError build() {
         org.apache.drill.exec.proto.UserBitShared.ParsingError result = buildPartial();
         if (!result.isInitialized()) {
@@ -7338,7 +6576,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.ParsingError buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.ParsingError result = new org.apache.drill.exec.proto.UserBitShared.ParsingError(this);
         int from_bitField0_ = bitField0_;
@@ -7364,39 +6601,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.ParsingError) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.ParsingError)other);
@@ -7420,17 +6624,14 @@
         if (other.hasEndRow()) {
           setEndRow(other.getEndRow());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -7440,7 +6641,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.ParsingError) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -7450,6 +6651,7 @@
       }
       private int bitField0_;
 
+      // optional int32 start_column = 2;
       private int startColumn_ ;
       /**
        * <code>optional int32 start_column = 2;</code>
@@ -7482,6 +6684,7 @@
         return this;
       }
 
+      // optional int32 start_row = 3;
       private int startRow_ ;
       /**
        * <code>optional int32 start_row = 3;</code>
@@ -7514,6 +6717,7 @@
         return this;
       }
 
+      // optional int32 end_column = 4;
       private int endColumn_ ;
       /**
        * <code>optional int32 end_column = 4;</code>
@@ -7546,6 +6750,7 @@
         return this;
       }
 
+      // optional int32 end_row = 5;
       private int endRow_ ;
       /**
        * <code>optional int32 end_row = 5;</code>
@@ -7577,63 +6782,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.ParsingError)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.ParsingError)
-    private static final org.apache.drill.exec.proto.UserBitShared.ParsingError DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.ParsingError();
+      defaultInstance = new ParsingError(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.ParsingError getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<ParsingError>
-        PARSER = new com.google.protobuf.AbstractParser<ParsingError>() {
-      @java.lang.Override
-      public ParsingError parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new ParsingError(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<ParsingError> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<ParsingError> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.ParsingError getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.ParsingError)
   }
 
-  public interface RecordBatchDefOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.RecordBatchDef)
-      com.google.protobuf.MessageOrBuilder {
+  public interface RecordBatchDefOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 record_count = 1;
     /**
      * <code>optional int32 record_count = 1;</code>
      */
@@ -7643,6 +6807,7 @@
      */
     int getRecordCount();
 
+    // repeated .exec.shared.SerializedField field = 2;
     /**
      * <code>repeated .exec.shared.SerializedField field = 2;</code>
      */
@@ -7667,6 +6832,7 @@
     org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder getFieldOrBuilder(
         int index);
 
+    // optional bool carries_two_byte_selection_vector = 3;
     /**
      * <code>optional bool carries_two_byte_selection_vector = 3;</code>
      */
@@ -7676,57 +6842,59 @@
      */
     boolean getCarriesTwoByteSelectionVector();
 
+    // optional int32 affected_rows_count = 4;
     /**
+     * <code>optional int32 affected_rows_count = 4;</code>
+     *
      * <pre>
      * The value is set when result set is disabled and its value corresponds to number
      * of rows affected by query (see JDBC java.sql.ResultSet#getUpdateCount())
      * </pre>
-     *
-     * <code>optional int32 affected_rows_count = 4;</code>
      */
     boolean hasAffectedRowsCount();
     /**
+     * <code>optional int32 affected_rows_count = 4;</code>
+     *
      * <pre>
      * The value is set when result set is disabled and its value corresponds to number
      * of rows affected by query (see JDBC java.sql.ResultSet#getUpdateCount())
      * </pre>
-     *
-     * <code>optional int32 affected_rows_count = 4;</code>
      */
     int getAffectedRowsCount();
   }
   /**
    * Protobuf type {@code exec.shared.RecordBatchDef}
    */
-  public  static final class RecordBatchDef extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.RecordBatchDef)
-      RecordBatchDefOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class RecordBatchDef extends
+      com.google.protobuf.GeneratedMessage
+      implements RecordBatchDefOrBuilder {
     // Use RecordBatchDef.newBuilder() to construct.
-    private RecordBatchDef(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private RecordBatchDef(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private RecordBatchDef() {
-      recordCount_ = 0;
-      field_ = java.util.Collections.emptyList();
-      carriesTwoByteSelectionVector_ = false;
-      affectedRowsCount_ = 0;
+    private RecordBatchDef(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final RecordBatchDef defaultInstance;
+    public static RecordBatchDef getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public RecordBatchDef getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private RecordBatchDef(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -7738,6 +6906,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               recordCount_ = input.readInt32();
@@ -7748,8 +6923,7 @@
                 field_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.SerializedField>();
                 mutable_bitField0_ |= 0x00000002;
               }
-              field_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.SerializedField.PARSER, extensionRegistry));
+              field_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.SerializedField.PARSER, extensionRegistry));
               break;
             }
             case 24: {
@@ -7762,20 +6936,13 @@
               affectedRowsCount_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
           field_ = java.util.Collections.unmodifiableList(field_);
@@ -7789,15 +6956,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_RecordBatchDef_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_RecordBatchDef_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.class, org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<RecordBatchDef> PARSER =
+        new com.google.protobuf.AbstractParser<RecordBatchDef>() {
+      public RecordBatchDef parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new RecordBatchDef(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<RecordBatchDef> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 record_count = 1;
     public static final int RECORD_COUNT_FIELD_NUMBER = 1;
     private int recordCount_;
     /**
@@ -7813,6 +6995,7 @@
       return recordCount_;
     }
 
+    // repeated .exec.shared.SerializedField field = 2;
     public static final int FIELD_FIELD_NUMBER = 2;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.SerializedField> field_;
     /**
@@ -7848,6 +7031,7 @@
       return field_.get(index);
     }
 
+    // optional bool carries_two_byte_selection_vector = 3;
     public static final int CARRIES_TWO_BYTE_SELECTION_VECTOR_FIELD_NUMBER = 3;
     private boolean carriesTwoByteSelectionVector_;
     /**
@@ -7863,45 +7047,50 @@
       return carriesTwoByteSelectionVector_;
     }
 
+    // optional int32 affected_rows_count = 4;
     public static final int AFFECTED_ROWS_COUNT_FIELD_NUMBER = 4;
     private int affectedRowsCount_;
     /**
+     * <code>optional int32 affected_rows_count = 4;</code>
+     *
      * <pre>
      * The value is set when result set is disabled and its value corresponds to number
      * of rows affected by query (see JDBC java.sql.ResultSet#getUpdateCount())
      * </pre>
-     *
-     * <code>optional int32 affected_rows_count = 4;</code>
      */
     public boolean hasAffectedRowsCount() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
+     * <code>optional int32 affected_rows_count = 4;</code>
+     *
      * <pre>
      * The value is set when result set is disabled and its value corresponds to number
      * of rows affected by query (see JDBC java.sql.ResultSet#getUpdateCount())
      * </pre>
-     *
-     * <code>optional int32 affected_rows_count = 4;</code>
      */
     public int getAffectedRowsCount() {
       return affectedRowsCount_;
     }
 
+    private void initFields() {
+      recordCount_ = 0;
+      field_ = java.util.Collections.emptyList();
+      carriesTwoByteSelectionVector_ = false;
+      affectedRowsCount_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(1, recordCount_);
       }
@@ -7914,12 +7103,12 @@
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeInt32(4, affectedRowsCount_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -7939,83 +7128,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(4, affectedRowsCount_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.RecordBatchDef)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.RecordBatchDef other = (org.apache.drill.exec.proto.UserBitShared.RecordBatchDef) obj;
-
-      boolean result = true;
-      result = result && (hasRecordCount() == other.hasRecordCount());
-      if (hasRecordCount()) {
-        result = result && (getRecordCount()
-            == other.getRecordCount());
-      }
-      result = result && getFieldList()
-          .equals(other.getFieldList());
-      result = result && (hasCarriesTwoByteSelectionVector() == other.hasCarriesTwoByteSelectionVector());
-      if (hasCarriesTwoByteSelectionVector()) {
-        result = result && (getCarriesTwoByteSelectionVector()
-            == other.getCarriesTwoByteSelectionVector());
-      }
-      result = result && (hasAffectedRowsCount() == other.hasAffectedRowsCount());
-      if (hasAffectedRowsCount()) {
-        result = result && (getAffectedRowsCount()
-            == other.getAffectedRowsCount());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasRecordCount()) {
-        hash = (37 * hash) + RECORD_COUNT_FIELD_NUMBER;
-        hash = (53 * hash) + getRecordCount();
-      }
-      if (getFieldCount() > 0) {
-        hash = (37 * hash) + FIELD_FIELD_NUMBER;
-        hash = (53 * hash) + getFieldList().hashCode();
-      }
-      if (hasCarriesTwoByteSelectionVector()) {
-        hash = (37 * hash) + CARRIES_TWO_BYTE_SELECTION_VECTOR_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getCarriesTwoByteSelectionVector());
-      }
-      if (hasAffectedRowsCount()) {
-        hash = (37 * hash) + AFFECTED_ROWS_COUNT_FIELD_NUMBER;
-        hash = (53 * hash) + getAffectedRowsCount();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -8039,59 +7163,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.RecordBatchDef prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -8099,16 +7210,14 @@
      * Protobuf type {@code exec.shared.RecordBatchDef}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.RecordBatchDef)
-        org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_RecordBatchDef_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_RecordBatchDef_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -8121,17 +7230,19 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getFieldFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         recordCount_ = 0;
@@ -8149,18 +7260,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_RecordBatchDef_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.RecordBatchDef getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.RecordBatchDef build() {
         org.apache.drill.exec.proto.UserBitShared.RecordBatchDef result = buildPartial();
         if (!result.isInitialized()) {
@@ -8169,7 +7281,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.RecordBatchDef buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.RecordBatchDef result = new org.apache.drill.exec.proto.UserBitShared.RecordBatchDef(this);
         int from_bitField0_ = bitField0_;
@@ -8200,39 +7311,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.RecordBatchDef) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.RecordBatchDef)other);
@@ -8266,7 +7344,7 @@
               field_ = other.field_;
               bitField0_ = (bitField0_ & ~0x00000002);
               fieldBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getFieldFieldBuilder() : null;
             } else {
               fieldBuilder_.addAllMessages(other.field_);
@@ -8279,17 +7357,14 @@
         if (other.hasAffectedRowsCount()) {
           setAffectedRowsCount(other.getAffectedRowsCount());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -8299,7 +7374,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.RecordBatchDef) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -8309,6 +7384,7 @@
       }
       private int bitField0_;
 
+      // optional int32 record_count = 1;
       private int recordCount_ ;
       /**
        * <code>optional int32 record_count = 1;</code>
@@ -8341,6 +7417,7 @@
         return this;
       }
 
+      // repeated .exec.shared.SerializedField field = 2;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.SerializedField> field_ =
         java.util.Collections.emptyList();
       private void ensureFieldIsMutable() {
@@ -8350,7 +7427,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.SerializedField, org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder, org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder> fieldBuilder_;
 
       /**
@@ -8482,8 +7559,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.SerializedField> values) {
         if (fieldBuilder_ == null) {
           ensureFieldIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, field_);
+          super.addAll(values, field_);
           onChanged();
         } else {
           fieldBuilder_.addAllMessages(values);
@@ -8566,11 +7642,11 @@
            getFieldBuilderList() {
         return getFieldFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.SerializedField, org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder, org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder> 
           getFieldFieldBuilder() {
         if (fieldBuilder_ == null) {
-          fieldBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          fieldBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.SerializedField, org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder, org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder>(
                   field_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -8581,6 +7657,7 @@
         return fieldBuilder_;
       }
 
+      // optional bool carries_two_byte_selection_vector = 3;
       private boolean carriesTwoByteSelectionVector_ ;
       /**
        * <code>optional bool carries_two_byte_selection_vector = 3;</code>
@@ -8613,36 +7690,37 @@
         return this;
       }
 
+      // optional int32 affected_rows_count = 4;
       private int affectedRowsCount_ ;
       /**
+       * <code>optional int32 affected_rows_count = 4;</code>
+       *
        * <pre>
        * The value is set when result set is disabled and its value corresponds to number
        * of rows affected by query (see JDBC java.sql.ResultSet#getUpdateCount())
        * </pre>
-       *
-       * <code>optional int32 affected_rows_count = 4;</code>
        */
       public boolean hasAffectedRowsCount() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
+       * <code>optional int32 affected_rows_count = 4;</code>
+       *
        * <pre>
        * The value is set when result set is disabled and its value corresponds to number
        * of rows affected by query (see JDBC java.sql.ResultSet#getUpdateCount())
        * </pre>
-       *
-       * <code>optional int32 affected_rows_count = 4;</code>
        */
       public int getAffectedRowsCount() {
         return affectedRowsCount_;
       }
       /**
+       * <code>optional int32 affected_rows_count = 4;</code>
+       *
        * <pre>
        * The value is set when result set is disabled and its value corresponds to number
        * of rows affected by query (see JDBC java.sql.ResultSet#getUpdateCount())
        * </pre>
-       *
-       * <code>optional int32 affected_rows_count = 4;</code>
        */
       public Builder setAffectedRowsCount(int value) {
         bitField0_ |= 0x00000008;
@@ -8651,12 +7729,12 @@
         return this;
       }
       /**
+       * <code>optional int32 affected_rows_count = 4;</code>
+       *
        * <pre>
        * The value is set when result set is disabled and its value corresponds to number
        * of rows affected by query (see JDBC java.sql.ResultSet#getUpdateCount())
        * </pre>
-       *
-       * <code>optional int32 affected_rows_count = 4;</code>
        */
       public Builder clearAffectedRowsCount() {
         bitField0_ = (bitField0_ & ~0x00000008);
@@ -8664,63 +7742,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.RecordBatchDef)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.RecordBatchDef)
-    private static final org.apache.drill.exec.proto.UserBitShared.RecordBatchDef DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.RecordBatchDef();
+      defaultInstance = new RecordBatchDef(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.RecordBatchDef getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<RecordBatchDef>
-        PARSER = new com.google.protobuf.AbstractParser<RecordBatchDef>() {
-      @java.lang.Override
-      public RecordBatchDef parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new RecordBatchDef(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<RecordBatchDef> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<RecordBatchDef> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.RecordBatchDef getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.RecordBatchDef)
   }
 
-  public interface NamePartOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.NamePart)
-      com.google.protobuf.MessageOrBuilder {
+  public interface NamePartOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.NamePart.Type type = 1;
     /**
      * <code>optional .exec.shared.NamePart.Type type = 1;</code>
      */
@@ -8730,6 +7767,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.NamePart.Type getType();
 
+    // optional string name = 2;
     /**
      * <code>optional string name = 2;</code>
      */
@@ -8744,6 +7782,7 @@
     com.google.protobuf.ByteString
         getNameBytes();
 
+    // optional .exec.shared.NamePart child = 3;
     /**
      * <code>optional .exec.shared.NamePart child = 3;</code>
      */
@@ -8760,33 +7799,36 @@
   /**
    * Protobuf type {@code exec.shared.NamePart}
    */
-  public  static final class NamePart extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.NamePart)
-      NamePartOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class NamePart extends
+      com.google.protobuf.GeneratedMessage
+      implements NamePartOrBuilder {
     // Use NamePart.newBuilder() to construct.
-    private NamePart(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private NamePart(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private NamePart() {
-      type_ = 0;
-      name_ = "";
+    private NamePart(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final NamePart defaultInstance;
+    public static NamePart getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public NamePart getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private NamePart(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -8798,22 +7840,27 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.NamePart.Type value = org.apache.drill.exec.proto.UserBitShared.NamePart.Type.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                type_ = rawValue;
+                type_ = value;
               }
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              name_ = bs;
+              name_ = input.readBytes();
               break;
             }
             case 26: {
@@ -8829,20 +7876,13 @@
               bitField0_ |= 0x00000004;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -8853,14 +7893,28 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NamePart_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NamePart_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.NamePart.class, org.apache.drill.exec.proto.UserBitShared.NamePart.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<NamePart> PARSER =
+        new com.google.protobuf.AbstractParser<NamePart>() {
+      public NamePart parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new NamePart(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<NamePart> getParserForType() {
+      return PARSER;
+    }
+
     /**
      * Protobuf enum {@code exec.shared.NamePart.Type}
      */
@@ -8869,11 +7923,11 @@
       /**
        * <code>NAME = 0;</code>
        */
-      NAME(0),
+      NAME(0, 0),
       /**
        * <code>ARRAY = 1;</code>
        */
-      ARRAY(1),
+      ARRAY(1, 1),
       ;
 
       /**
@@ -8886,19 +7940,9 @@
       public static final int ARRAY_VALUE = 1;
 
 
-      public final int getNumber() {
-        return value;
-      }
+      public final int getNumber() { return value; }
 
-      /**
-       * @deprecated Use {@link #forNumber(int)} instead.
-       */
-      @java.lang.Deprecated
       public static Type valueOf(int value) {
-        return forNumber(value);
-      }
-
-      public static Type forNumber(int value) {
         switch (value) {
           case 0: return NAME;
           case 1: return ARRAY;
@@ -8910,17 +7954,17 @@
           internalGetValueMap() {
         return internalValueMap;
       }
-      private static final com.google.protobuf.Internal.EnumLiteMap<
-          Type> internalValueMap =
+      private static com.google.protobuf.Internal.EnumLiteMap<Type>
+          internalValueMap =
             new com.google.protobuf.Internal.EnumLiteMap<Type>() {
               public Type findValueByNumber(int number) {
-                return Type.forNumber(number);
+                return Type.valueOf(number);
               }
             };
 
       public final com.google.protobuf.Descriptors.EnumValueDescriptor
           getValueDescriptor() {
-        return getDescriptor().getValues().get(ordinal());
+        return getDescriptor().getValues().get(index);
       }
       public final com.google.protobuf.Descriptors.EnumDescriptor
           getDescriptorForType() {
@@ -8942,9 +7986,11 @@
         return VALUES[desc.getIndex()];
       }
 
+      private final int index;
       private final int value;
 
-      private Type(int value) {
+      private Type(int index, int value) {
+        this.index = index;
         this.value = value;
       }
 
@@ -8952,8 +7998,9 @@
     }
 
     private int bitField0_;
+    // optional .exec.shared.NamePart.Type type = 1;
     public static final int TYPE_FIELD_NUMBER = 1;
-    private int type_;
+    private org.apache.drill.exec.proto.UserBitShared.NamePart.Type type_;
     /**
      * <code>optional .exec.shared.NamePart.Type type = 1;</code>
      */
@@ -8964,13 +8011,12 @@
      * <code>optional .exec.shared.NamePart.Type type = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.NamePart.Type getType() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.NamePart.Type result = org.apache.drill.exec.proto.UserBitShared.NamePart.Type.valueOf(type_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.NamePart.Type.NAME : result;
+      return type_;
     }
 
+    // optional string name = 2;
     public static final int NAME_FIELD_NUMBER = 2;
-    private volatile java.lang.Object name_;
+    private java.lang.Object name_;
     /**
      * <code>optional string name = 2;</code>
      */
@@ -9011,6 +8057,7 @@
       }
     }
 
+    // optional .exec.shared.NamePart child = 3;
     public static final int CHILD_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserBitShared.NamePart child_;
     /**
@@ -9023,127 +8070,74 @@
      * <code>optional .exec.shared.NamePart child = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.NamePart getChild() {
-      return child_ == null ? org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance() : child_;
+      return child_;
     }
     /**
      * <code>optional .exec.shared.NamePart child = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder getChildOrBuilder() {
-      return child_ == null ? org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance() : child_;
+      return child_;
     }
 
+    private void initFields() {
+      type_ = org.apache.drill.exec.proto.UserBitShared.NamePart.Type.NAME;
+      name_ = "";
+      child_ = org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, type_);
+        output.writeEnum(1, type_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_);
+        output.writeBytes(2, getNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, getChild());
+        output.writeMessage(3, child_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, type_);
+          .computeEnumSize(1, type_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getChild());
+          .computeMessageSize(3, child_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.NamePart)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.NamePart other = (org.apache.drill.exec.proto.UserBitShared.NamePart) obj;
-
-      boolean result = true;
-      result = result && (hasType() == other.hasType());
-      if (hasType()) {
-        result = result && type_ == other.type_;
-      }
-      result = result && (hasName() == other.hasName());
-      if (hasName()) {
-        result = result && getName()
-            .equals(other.getName());
-      }
-      result = result && (hasChild() == other.hasChild());
-      if (hasChild()) {
-        result = result && getChild()
-            .equals(other.getChild());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasType()) {
-        hash = (37 * hash) + TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + type_;
-      }
-      if (hasName()) {
-        hash = (37 * hash) + NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getName().hashCode();
-      }
-      if (hasChild()) {
-        hash = (37 * hash) + CHILD_FIELD_NUMBER;
-        hash = (53 * hash) + getChild().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.NamePart parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.NamePart parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.NamePart parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -9167,59 +8161,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.NamePart parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NamePart parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NamePart parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NamePart parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NamePart parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NamePart parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.NamePart prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -9227,16 +8208,14 @@
      * Protobuf type {@code exec.shared.NamePart}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.NamePart)
-        org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NamePart_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NamePart_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -9249,25 +8228,27 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getChildFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        type_ = 0;
+        type_ = org.apache.drill.exec.proto.UserBitShared.NamePart.Type.NAME;
         bitField0_ = (bitField0_ & ~0x00000001);
         name_ = "";
         bitField0_ = (bitField0_ & ~0x00000002);
         if (childBuilder_ == null) {
-          child_ = null;
+          child_ = org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance();
         } else {
           childBuilder_.clear();
         }
@@ -9275,18 +8256,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NamePart_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.NamePart getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.NamePart build() {
         org.apache.drill.exec.proto.UserBitShared.NamePart result = buildPartial();
         if (!result.isInitialized()) {
@@ -9295,7 +8277,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.NamePart buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.NamePart result = new org.apache.drill.exec.proto.UserBitShared.NamePart(this);
         int from_bitField0_ = bitField0_;
@@ -9321,39 +8302,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.NamePart) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.NamePart)other);
@@ -9376,17 +8324,14 @@
         if (other.hasChild()) {
           mergeChild(other.getChild());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -9396,7 +8341,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.NamePart) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -9406,7 +8351,8 @@
       }
       private int bitField0_;
 
-      private int type_ = 0;
+      // optional .exec.shared.NamePart.Type type = 1;
+      private org.apache.drill.exec.proto.UserBitShared.NamePart.Type type_ = org.apache.drill.exec.proto.UserBitShared.NamePart.Type.NAME;
       /**
        * <code>optional .exec.shared.NamePart.Type type = 1;</code>
        */
@@ -9417,9 +8363,7 @@
        * <code>optional .exec.shared.NamePart.Type type = 1;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.NamePart.Type getType() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.NamePart.Type result = org.apache.drill.exec.proto.UserBitShared.NamePart.Type.valueOf(type_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.NamePart.Type.NAME : result;
+        return type_;
       }
       /**
        * <code>optional .exec.shared.NamePart.Type type = 1;</code>
@@ -9429,7 +8373,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        type_ = value.getNumber();
+        type_ = value;
         onChanged();
         return this;
       }
@@ -9438,11 +8382,12 @@
        */
       public Builder clearType() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        type_ = 0;
+        type_ = org.apache.drill.exec.proto.UserBitShared.NamePart.Type.NAME;
         onChanged();
         return this;
       }
 
+      // optional string name = 2;
       private java.lang.Object name_ = "";
       /**
        * <code>optional string name = 2;</code>
@@ -9456,12 +8401,9 @@
       public java.lang.String getName() {
         java.lang.Object ref = name_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            name_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          name_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -9519,8 +8461,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.NamePart child_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.NamePart child = 3;
+      private org.apache.drill.exec.proto.UserBitShared.NamePart child_ = org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.NamePart, org.apache.drill.exec.proto.UserBitShared.NamePart.Builder, org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder> childBuilder_;
       /**
        * <code>optional .exec.shared.NamePart child = 3;</code>
@@ -9533,7 +8476,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.NamePart getChild() {
         if (childBuilder_ == null) {
-          return child_ == null ? org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance() : child_;
+          return child_;
         } else {
           return childBuilder_.getMessage();
         }
@@ -9574,7 +8517,6 @@
       public Builder mergeChild(org.apache.drill.exec.proto.UserBitShared.NamePart value) {
         if (childBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              child_ != null &&
               child_ != org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance()) {
             child_ =
               org.apache.drill.exec.proto.UserBitShared.NamePart.newBuilder(child_).mergeFrom(value).buildPartial();
@@ -9593,7 +8535,7 @@
        */
       public Builder clearChild() {
         if (childBuilder_ == null) {
-          child_ = null;
+          child_ = org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance();
           onChanged();
         } else {
           childBuilder_.clear();
@@ -9616,108 +8558,67 @@
         if (childBuilder_ != null) {
           return childBuilder_.getMessageOrBuilder();
         } else {
-          return child_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance() : child_;
+          return child_;
         }
       }
       /**
        * <code>optional .exec.shared.NamePart child = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.NamePart, org.apache.drill.exec.proto.UserBitShared.NamePart.Builder, org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder> 
           getChildFieldBuilder() {
         if (childBuilder_ == null) {
-          childBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          childBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.NamePart, org.apache.drill.exec.proto.UserBitShared.NamePart.Builder, org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder>(
-                  getChild(),
+                  child_,
                   getParentForChildren(),
                   isClean());
           child_ = null;
         }
         return childBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.NamePart)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.NamePart)
-    private static final org.apache.drill.exec.proto.UserBitShared.NamePart DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.NamePart();
+      defaultInstance = new NamePart(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.NamePart getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<NamePart>
-        PARSER = new com.google.protobuf.AbstractParser<NamePart>() {
-      @java.lang.Override
-      public NamePart parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new NamePart(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<NamePart> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<NamePart> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.NamePart getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.NamePart)
   }
 
-  public interface SerializedFieldOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.SerializedField)
-      com.google.protobuf.MessageOrBuilder {
+  public interface SerializedFieldOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .common.MajorType major_type = 1;
     /**
+     * <code>optional .common.MajorType major_type = 1;</code>
+     *
      * <pre>
      * the type associated with this field.
      * </pre>
-     *
-     * <code>optional .common.MajorType major_type = 1;</code>
      */
     boolean hasMajorType();
     /**
+     * <code>optional .common.MajorType major_type = 1;</code>
+     *
      * <pre>
      * the type associated with this field.
      * </pre>
-     *
-     * <code>optional .common.MajorType major_type = 1;</code>
      */
     org.apache.drill.common.types.TypeProtos.MajorType getMajorType();
     /**
+     * <code>optional .common.MajorType major_type = 1;</code>
+     *
      * <pre>
      * the type associated with this field.
      * </pre>
-     *
-     * <code>optional .common.MajorType major_type = 1;</code>
      */
     org.apache.drill.common.types.TypeProtos.MajorTypeOrBuilder getMajorTypeOrBuilder();
 
+    // optional .exec.shared.NamePart name_part = 2;
     /**
      * <code>optional .exec.shared.NamePart name_part = 2;</code>
      */
@@ -9731,50 +8632,52 @@
      */
     org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder getNamePartOrBuilder();
 
+    // repeated .exec.shared.SerializedField child = 3;
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     java.util.List<org.apache.drill.exec.proto.UserBitShared.SerializedField> 
         getChildList();
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     org.apache.drill.exec.proto.UserBitShared.SerializedField getChild(int index);
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     int getChildCount();
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     java.util.List<? extends org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder> 
         getChildOrBuilderList();
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder getChildOrBuilder(
         int index);
 
+    // optional int32 value_count = 4;
     /**
      * <code>optional int32 value_count = 4;</code>
      */
@@ -9784,6 +8687,7 @@
      */
     int getValueCount();
 
+    // optional int32 var_byte_length = 5;
     /**
      * <code>optional int32 var_byte_length = 5;</code>
      */
@@ -9793,6 +8697,7 @@
      */
     int getVarByteLength();
 
+    // optional int32 buffer_length = 7;
     /**
      * <code>optional int32 buffer_length = 7;</code>
      */
@@ -9805,35 +8710,36 @@
   /**
    * Protobuf type {@code exec.shared.SerializedField}
    */
-  public  static final class SerializedField extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.SerializedField)
-      SerializedFieldOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class SerializedField extends
+      com.google.protobuf.GeneratedMessage
+      implements SerializedFieldOrBuilder {
     // Use SerializedField.newBuilder() to construct.
-    private SerializedField(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private SerializedField(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private SerializedField() {
-      child_ = java.util.Collections.emptyList();
-      valueCount_ = 0;
-      varByteLength_ = 0;
-      bufferLength_ = 0;
+    private SerializedField(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final SerializedField defaultInstance;
+    public static SerializedField getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public SerializedField getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private SerializedField(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -9845,6 +8751,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.common.types.TypeProtos.MajorType.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -9876,8 +8789,7 @@
                 child_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.SerializedField>();
                 mutable_bitField0_ |= 0x00000004;
               }
-              child_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.SerializedField.PARSER, extensionRegistry));
+              child_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.SerializedField.PARSER, extensionRegistry));
               break;
             }
             case 32: {
@@ -9895,20 +8807,13 @@
               bufferLength_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
           child_ = java.util.Collections.unmodifiableList(child_);
@@ -9922,48 +8827,64 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SerializedField_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SerializedField_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.SerializedField.class, org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<SerializedField> PARSER =
+        new com.google.protobuf.AbstractParser<SerializedField>() {
+      public SerializedField parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new SerializedField(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<SerializedField> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .common.MajorType major_type = 1;
     public static final int MAJOR_TYPE_FIELD_NUMBER = 1;
     private org.apache.drill.common.types.TypeProtos.MajorType majorType_;
     /**
+     * <code>optional .common.MajorType major_type = 1;</code>
+     *
      * <pre>
      * the type associated with this field.
      * </pre>
-     *
-     * <code>optional .common.MajorType major_type = 1;</code>
      */
     public boolean hasMajorType() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional .common.MajorType major_type = 1;</code>
+     *
      * <pre>
      * the type associated with this field.
      * </pre>
-     *
-     * <code>optional .common.MajorType major_type = 1;</code>
      */
     public org.apache.drill.common.types.TypeProtos.MajorType getMajorType() {
-      return majorType_ == null ? org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance() : majorType_;
+      return majorType_;
     }
     /**
+     * <code>optional .common.MajorType major_type = 1;</code>
+     *
      * <pre>
      * the type associated with this field.
      * </pre>
-     *
-     * <code>optional .common.MajorType major_type = 1;</code>
      */
     public org.apache.drill.common.types.TypeProtos.MajorTypeOrBuilder getMajorTypeOrBuilder() {
-      return majorType_ == null ? org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance() : majorType_;
+      return majorType_;
     }
 
+    // optional .exec.shared.NamePart name_part = 2;
     public static final int NAME_PART_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserBitShared.NamePart namePart_;
     /**
@@ -9976,70 +8897,72 @@
      * <code>optional .exec.shared.NamePart name_part = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.NamePart getNamePart() {
-      return namePart_ == null ? org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance() : namePart_;
+      return namePart_;
     }
     /**
      * <code>optional .exec.shared.NamePart name_part = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder getNamePartOrBuilder() {
-      return namePart_ == null ? org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance() : namePart_;
+      return namePart_;
     }
 
+    // repeated .exec.shared.SerializedField child = 3;
     public static final int CHILD_FIELD_NUMBER = 3;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.SerializedField> child_;
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserBitShared.SerializedField> getChildList() {
       return child_;
     }
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     public java.util.List<? extends org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder> 
         getChildOrBuilderList() {
       return child_;
     }
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     public int getChildCount() {
       return child_.size();
     }
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.SerializedField getChild(int index) {
       return child_.get(index);
     }
     /**
+     * <code>repeated .exec.shared.SerializedField child = 3;</code>
+     *
      * <pre>
      * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
      * </pre>
-     *
-     * <code>repeated .exec.shared.SerializedField child = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder getChildOrBuilder(
         int index) {
       return child_.get(index);
     }
 
+    // optional int32 value_count = 4;
     public static final int VALUE_COUNT_FIELD_NUMBER = 4;
     private int valueCount_;
     /**
@@ -10055,6 +8978,7 @@
       return valueCount_;
     }
 
+    // optional int32 var_byte_length = 5;
     public static final int VAR_BYTE_LENGTH_FIELD_NUMBER = 5;
     private int varByteLength_;
     /**
@@ -10070,6 +8994,7 @@
       return varByteLength_;
     }
 
+    // optional int32 buffer_length = 7;
     public static final int BUFFER_LENGTH_FIELD_NUMBER = 7;
     private int bufferLength_;
     /**
@@ -10085,25 +9010,31 @@
       return bufferLength_;
     }
 
+    private void initFields() {
+      majorType_ = org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance();
+      namePart_ = org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance();
+      child_ = java.util.Collections.emptyList();
+      valueCount_ = 0;
+      varByteLength_ = 0;
+      bufferLength_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getMajorType());
+        output.writeMessage(1, majorType_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getNamePart());
+        output.writeMessage(2, namePart_);
       }
       for (int i = 0; i < child_.size(); i++) {
         output.writeMessage(3, child_.get(i));
@@ -10117,22 +9048,22 @@
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         output.writeInt32(7, bufferLength_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getMajorType());
+          .computeMessageSize(1, majorType_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getNamePart());
+          .computeMessageSize(2, namePart_);
       }
       for (int i = 0; i < child_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
@@ -10150,100 +9081,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(7, bufferLength_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.SerializedField)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.SerializedField other = (org.apache.drill.exec.proto.UserBitShared.SerializedField) obj;
-
-      boolean result = true;
-      result = result && (hasMajorType() == other.hasMajorType());
-      if (hasMajorType()) {
-        result = result && getMajorType()
-            .equals(other.getMajorType());
-      }
-      result = result && (hasNamePart() == other.hasNamePart());
-      if (hasNamePart()) {
-        result = result && getNamePart()
-            .equals(other.getNamePart());
-      }
-      result = result && getChildList()
-          .equals(other.getChildList());
-      result = result && (hasValueCount() == other.hasValueCount());
-      if (hasValueCount()) {
-        result = result && (getValueCount()
-            == other.getValueCount());
-      }
-      result = result && (hasVarByteLength() == other.hasVarByteLength());
-      if (hasVarByteLength()) {
-        result = result && (getVarByteLength()
-            == other.getVarByteLength());
-      }
-      result = result && (hasBufferLength() == other.hasBufferLength());
-      if (hasBufferLength()) {
-        result = result && (getBufferLength()
-            == other.getBufferLength());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasMajorType()) {
-        hash = (37 * hash) + MAJOR_TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + getMajorType().hashCode();
-      }
-      if (hasNamePart()) {
-        hash = (37 * hash) + NAME_PART_FIELD_NUMBER;
-        hash = (53 * hash) + getNamePart().hashCode();
-      }
-      if (getChildCount() > 0) {
-        hash = (37 * hash) + CHILD_FIELD_NUMBER;
-        hash = (53 * hash) + getChildList().hashCode();
-      }
-      if (hasValueCount()) {
-        hash = (37 * hash) + VALUE_COUNT_FIELD_NUMBER;
-        hash = (53 * hash) + getValueCount();
-      }
-      if (hasVarByteLength()) {
-        hash = (37 * hash) + VAR_BYTE_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getVarByteLength();
-      }
-      if (hasBufferLength()) {
-        hash = (37 * hash) + BUFFER_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getBufferLength();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.SerializedField parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.SerializedField parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.SerializedField parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -10267,59 +9116,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.SerializedField parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SerializedField parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SerializedField parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SerializedField parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SerializedField parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SerializedField parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.SerializedField prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -10327,16 +9163,14 @@
      * Protobuf type {@code exec.shared.SerializedField}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.SerializedField)
-        org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SerializedField_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SerializedField_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -10349,29 +9183,31 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getMajorTypeFieldBuilder();
           getNamePartFieldBuilder();
           getChildFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (majorTypeBuilder_ == null) {
-          majorType_ = null;
+          majorType_ = org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance();
         } else {
           majorTypeBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000001);
         if (namePartBuilder_ == null) {
-          namePart_ = null;
+          namePart_ = org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance();
         } else {
           namePartBuilder_.clear();
         }
@@ -10391,18 +9227,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SerializedField_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.SerializedField getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.SerializedField.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.SerializedField build() {
         org.apache.drill.exec.proto.UserBitShared.SerializedField result = buildPartial();
         if (!result.isInitialized()) {
@@ -10411,7 +9248,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.SerializedField buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.SerializedField result = new org.apache.drill.exec.proto.UserBitShared.SerializedField(this);
         int from_bitField0_ = bitField0_;
@@ -10458,39 +9294,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.SerializedField) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.SerializedField)other);
@@ -10527,7 +9330,7 @@
               child_ = other.child_;
               bitField0_ = (bitField0_ & ~0x00000004);
               childBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getChildFieldBuilder() : null;
             } else {
               childBuilder_.addAllMessages(other.child_);
@@ -10543,17 +9346,14 @@
         if (other.hasBufferLength()) {
           setBufferLength(other.getBufferLength());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -10563,7 +9363,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.SerializedField) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -10573,39 +9373,40 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.common.types.TypeProtos.MajorType majorType_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .common.MajorType major_type = 1;
+      private org.apache.drill.common.types.TypeProtos.MajorType majorType_ = org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.common.types.TypeProtos.MajorType, org.apache.drill.common.types.TypeProtos.MajorType.Builder, org.apache.drill.common.types.TypeProtos.MajorTypeOrBuilder> majorTypeBuilder_;
       /**
+       * <code>optional .common.MajorType major_type = 1;</code>
+       *
        * <pre>
        * the type associated with this field.
        * </pre>
-       *
-       * <code>optional .common.MajorType major_type = 1;</code>
        */
       public boolean hasMajorType() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
+       * <code>optional .common.MajorType major_type = 1;</code>
+       *
        * <pre>
        * the type associated with this field.
        * </pre>
-       *
-       * <code>optional .common.MajorType major_type = 1;</code>
        */
       public org.apache.drill.common.types.TypeProtos.MajorType getMajorType() {
         if (majorTypeBuilder_ == null) {
-          return majorType_ == null ? org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance() : majorType_;
+          return majorType_;
         } else {
           return majorTypeBuilder_.getMessage();
         }
       }
       /**
+       * <code>optional .common.MajorType major_type = 1;</code>
+       *
        * <pre>
        * the type associated with this field.
        * </pre>
-       *
-       * <code>optional .common.MajorType major_type = 1;</code>
        */
       public Builder setMajorType(org.apache.drill.common.types.TypeProtos.MajorType value) {
         if (majorTypeBuilder_ == null) {
@@ -10621,11 +9422,11 @@
         return this;
       }
       /**
+       * <code>optional .common.MajorType major_type = 1;</code>
+       *
        * <pre>
        * the type associated with this field.
        * </pre>
-       *
-       * <code>optional .common.MajorType major_type = 1;</code>
        */
       public Builder setMajorType(
           org.apache.drill.common.types.TypeProtos.MajorType.Builder builderForValue) {
@@ -10639,16 +9440,15 @@
         return this;
       }
       /**
+       * <code>optional .common.MajorType major_type = 1;</code>
+       *
        * <pre>
        * the type associated with this field.
        * </pre>
-       *
-       * <code>optional .common.MajorType major_type = 1;</code>
        */
       public Builder mergeMajorType(org.apache.drill.common.types.TypeProtos.MajorType value) {
         if (majorTypeBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              majorType_ != null &&
               majorType_ != org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance()) {
             majorType_ =
               org.apache.drill.common.types.TypeProtos.MajorType.newBuilder(majorType_).mergeFrom(value).buildPartial();
@@ -10663,15 +9463,15 @@
         return this;
       }
       /**
+       * <code>optional .common.MajorType major_type = 1;</code>
+       *
        * <pre>
        * the type associated with this field.
        * </pre>
-       *
-       * <code>optional .common.MajorType major_type = 1;</code>
        */
       public Builder clearMajorType() {
         if (majorTypeBuilder_ == null) {
-          majorType_ = null;
+          majorType_ = org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance();
           onChanged();
         } else {
           majorTypeBuilder_.clear();
@@ -10680,11 +9480,11 @@
         return this;
       }
       /**
+       * <code>optional .common.MajorType major_type = 1;</code>
+       *
        * <pre>
        * the type associated with this field.
        * </pre>
-       *
-       * <code>optional .common.MajorType major_type = 1;</code>
        */
       public org.apache.drill.common.types.TypeProtos.MajorType.Builder getMajorTypeBuilder() {
         bitField0_ |= 0x00000001;
@@ -10692,34 +9492,33 @@
         return getMajorTypeFieldBuilder().getBuilder();
       }
       /**
+       * <code>optional .common.MajorType major_type = 1;</code>
+       *
        * <pre>
        * the type associated with this field.
        * </pre>
-       *
-       * <code>optional .common.MajorType major_type = 1;</code>
        */
       public org.apache.drill.common.types.TypeProtos.MajorTypeOrBuilder getMajorTypeOrBuilder() {
         if (majorTypeBuilder_ != null) {
           return majorTypeBuilder_.getMessageOrBuilder();
         } else {
-          return majorType_ == null ?
-              org.apache.drill.common.types.TypeProtos.MajorType.getDefaultInstance() : majorType_;
+          return majorType_;
         }
       }
       /**
+       * <code>optional .common.MajorType major_type = 1;</code>
+       *
        * <pre>
        * the type associated with this field.
        * </pre>
-       *
-       * <code>optional .common.MajorType major_type = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.common.types.TypeProtos.MajorType, org.apache.drill.common.types.TypeProtos.MajorType.Builder, org.apache.drill.common.types.TypeProtos.MajorTypeOrBuilder> 
           getMajorTypeFieldBuilder() {
         if (majorTypeBuilder_ == null) {
-          majorTypeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          majorTypeBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.common.types.TypeProtos.MajorType, org.apache.drill.common.types.TypeProtos.MajorType.Builder, org.apache.drill.common.types.TypeProtos.MajorTypeOrBuilder>(
-                  getMajorType(),
+                  majorType_,
                   getParentForChildren(),
                   isClean());
           majorType_ = null;
@@ -10727,8 +9526,9 @@
         return majorTypeBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.NamePart namePart_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.NamePart name_part = 2;
+      private org.apache.drill.exec.proto.UserBitShared.NamePart namePart_ = org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.NamePart, org.apache.drill.exec.proto.UserBitShared.NamePart.Builder, org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder> namePartBuilder_;
       /**
        * <code>optional .exec.shared.NamePart name_part = 2;</code>
@@ -10741,7 +9541,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.NamePart getNamePart() {
         if (namePartBuilder_ == null) {
-          return namePart_ == null ? org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance() : namePart_;
+          return namePart_;
         } else {
           return namePartBuilder_.getMessage();
         }
@@ -10782,7 +9582,6 @@
       public Builder mergeNamePart(org.apache.drill.exec.proto.UserBitShared.NamePart value) {
         if (namePartBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              namePart_ != null &&
               namePart_ != org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance()) {
             namePart_ =
               org.apache.drill.exec.proto.UserBitShared.NamePart.newBuilder(namePart_).mergeFrom(value).buildPartial();
@@ -10801,7 +9600,7 @@
        */
       public Builder clearNamePart() {
         if (namePartBuilder_ == null) {
-          namePart_ = null;
+          namePart_ = org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance();
           onChanged();
         } else {
           namePartBuilder_.clear();
@@ -10824,20 +9623,19 @@
         if (namePartBuilder_ != null) {
           return namePartBuilder_.getMessageOrBuilder();
         } else {
-          return namePart_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.NamePart.getDefaultInstance() : namePart_;
+          return namePart_;
         }
       }
       /**
        * <code>optional .exec.shared.NamePart name_part = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.NamePart, org.apache.drill.exec.proto.UserBitShared.NamePart.Builder, org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder> 
           getNamePartFieldBuilder() {
         if (namePartBuilder_ == null) {
-          namePartBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          namePartBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.NamePart, org.apache.drill.exec.proto.UserBitShared.NamePart.Builder, org.apache.drill.exec.proto.UserBitShared.NamePartOrBuilder>(
-                  getNamePart(),
+                  namePart_,
                   getParentForChildren(),
                   isClean());
           namePart_ = null;
@@ -10845,6 +9643,7 @@
         return namePartBuilder_;
       }
 
+      // repeated .exec.shared.SerializedField child = 3;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.SerializedField> child_ =
         java.util.Collections.emptyList();
       private void ensureChildIsMutable() {
@@ -10854,15 +9653,15 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.SerializedField, org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder, org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder> childBuilder_;
 
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserBitShared.SerializedField> getChildList() {
         if (childBuilder_ == null) {
@@ -10872,11 +9671,11 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public int getChildCount() {
         if (childBuilder_ == null) {
@@ -10886,11 +9685,11 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.SerializedField getChild(int index) {
         if (childBuilder_ == null) {
@@ -10900,11 +9699,11 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public Builder setChild(
           int index, org.apache.drill.exec.proto.UserBitShared.SerializedField value) {
@@ -10921,11 +9720,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public Builder setChild(
           int index, org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder builderForValue) {
@@ -10939,11 +9738,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public Builder addChild(org.apache.drill.exec.proto.UserBitShared.SerializedField value) {
         if (childBuilder_ == null) {
@@ -10959,11 +9758,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public Builder addChild(
           int index, org.apache.drill.exec.proto.UserBitShared.SerializedField value) {
@@ -10980,11 +9779,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public Builder addChild(
           org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder builderForValue) {
@@ -10998,11 +9797,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public Builder addChild(
           int index, org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder builderForValue) {
@@ -11016,18 +9815,17 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public Builder addAllChild(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.SerializedField> values) {
         if (childBuilder_ == null) {
           ensureChildIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, child_);
+          super.addAll(values, child_);
           onChanged();
         } else {
           childBuilder_.addAllMessages(values);
@@ -11035,11 +9833,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public Builder clearChild() {
         if (childBuilder_ == null) {
@@ -11052,11 +9850,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public Builder removeChild(int index) {
         if (childBuilder_ == null) {
@@ -11069,22 +9867,22 @@
         return this;
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder getChildBuilder(
           int index) {
         return getChildFieldBuilder().getBuilder(index);
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder getChildOrBuilder(
           int index) {
@@ -11094,11 +9892,11 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public java.util.List<? extends org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder> 
            getChildOrBuilderList() {
@@ -11109,22 +9907,22 @@
         }
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder addChildBuilder() {
         return getChildFieldBuilder().addBuilder(
             org.apache.drill.exec.proto.UserBitShared.SerializedField.getDefaultInstance());
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder addChildBuilder(
           int index) {
@@ -11132,21 +9930,21 @@
             index, org.apache.drill.exec.proto.UserBitShared.SerializedField.getDefaultInstance());
       }
       /**
+       * <code>repeated .exec.shared.SerializedField child = 3;</code>
+       *
        * <pre>
        * only in the cases of type == MAP or REPEAT_MAP or REPEATED_LIST
        * </pre>
-       *
-       * <code>repeated .exec.shared.SerializedField child = 3;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder> 
            getChildBuilderList() {
         return getChildFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.SerializedField, org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder, org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder> 
           getChildFieldBuilder() {
         if (childBuilder_ == null) {
-          childBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          childBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.SerializedField, org.apache.drill.exec.proto.UserBitShared.SerializedField.Builder, org.apache.drill.exec.proto.UserBitShared.SerializedFieldOrBuilder>(
                   child_,
                   ((bitField0_ & 0x00000004) == 0x00000004),
@@ -11157,6 +9955,7 @@
         return childBuilder_;
       }
 
+      // optional int32 value_count = 4;
       private int valueCount_ ;
       /**
        * <code>optional int32 value_count = 4;</code>
@@ -11189,6 +9988,7 @@
         return this;
       }
 
+      // optional int32 var_byte_length = 5;
       private int varByteLength_ ;
       /**
        * <code>optional int32 var_byte_length = 5;</code>
@@ -11221,6 +10021,7 @@
         return this;
       }
 
+      // optional int32 buffer_length = 7;
       private int bufferLength_ ;
       /**
        * <code>optional int32 buffer_length = 7;</code>
@@ -11252,63 +10053,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.SerializedField)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.SerializedField)
-    private static final org.apache.drill.exec.proto.UserBitShared.SerializedField DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.SerializedField();
+      defaultInstance = new SerializedField(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.SerializedField getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<SerializedField>
-        PARSER = new com.google.protobuf.AbstractParser<SerializedField>() {
-      @java.lang.Override
-      public SerializedField parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new SerializedField(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<SerializedField> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<SerializedField> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.SerializedField getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.SerializedField)
   }
 
-  public interface NodeStatusOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.NodeStatus)
-      com.google.protobuf.MessageOrBuilder {
+  public interface NodeStatusOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 node_id = 1;
     /**
      * <code>optional int32 node_id = 1;</code>
      */
@@ -11318,6 +10078,7 @@
      */
     int getNodeId();
 
+    // optional int64 memory_footprint = 2;
     /**
      * <code>optional int64 memory_footprint = 2;</code>
      */
@@ -11330,33 +10091,36 @@
   /**
    * Protobuf type {@code exec.shared.NodeStatus}
    */
-  public  static final class NodeStatus extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.NodeStatus)
-      NodeStatusOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class NodeStatus extends
+      com.google.protobuf.GeneratedMessage
+      implements NodeStatusOrBuilder {
     // Use NodeStatus.newBuilder() to construct.
-    private NodeStatus(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private NodeStatus(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private NodeStatus() {
-      nodeId_ = 0;
-      memoryFootprint_ = 0L;
+    private NodeStatus(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final NodeStatus defaultInstance;
+    public static NodeStatus getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public NodeStatus getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private NodeStatus(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -11368,6 +10132,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               nodeId_ = input.readInt32();
@@ -11378,20 +10149,13 @@
               memoryFootprint_ = input.readInt64();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -11402,15 +10166,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NodeStatus_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NodeStatus_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.NodeStatus.class, org.apache.drill.exec.proto.UserBitShared.NodeStatus.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<NodeStatus> PARSER =
+        new com.google.protobuf.AbstractParser<NodeStatus>() {
+      public NodeStatus parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new NodeStatus(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<NodeStatus> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 node_id = 1;
     public static final int NODE_ID_FIELD_NUMBER = 1;
     private int nodeId_;
     /**
@@ -11426,6 +10205,7 @@
       return nodeId_;
     }
 
+    // optional int64 memory_footprint = 2;
     public static final int MEMORY_FOOTPRINT_FIELD_NUMBER = 2;
     private long memoryFootprint_;
     /**
@@ -11441,32 +10221,34 @@
       return memoryFootprint_;
     }
 
+    private void initFields() {
+      nodeId_ = 0;
+      memoryFootprint_ = 0L;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(1, nodeId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt64(2, memoryFootprint_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -11478,68 +10260,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt64Size(2, memoryFootprint_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.NodeStatus)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.NodeStatus other = (org.apache.drill.exec.proto.UserBitShared.NodeStatus) obj;
-
-      boolean result = true;
-      result = result && (hasNodeId() == other.hasNodeId());
-      if (hasNodeId()) {
-        result = result && (getNodeId()
-            == other.getNodeId());
-      }
-      result = result && (hasMemoryFootprint() == other.hasMemoryFootprint());
-      if (hasMemoryFootprint()) {
-        result = result && (getMemoryFootprint()
-            == other.getMemoryFootprint());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasNodeId()) {
-        hash = (37 * hash) + NODE_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getNodeId();
-      }
-      if (hasMemoryFootprint()) {
-        hash = (37 * hash) + MEMORY_FOOTPRINT_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getMemoryFootprint());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.NodeStatus parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.NodeStatus parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.NodeStatus parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -11563,59 +10295,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.NodeStatus parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NodeStatus parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NodeStatus parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NodeStatus parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NodeStatus parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.NodeStatus parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.NodeStatus prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -11623,16 +10342,14 @@
      * Protobuf type {@code exec.shared.NodeStatus}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.NodeStatus)
-        org.apache.drill.exec.proto.UserBitShared.NodeStatusOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.NodeStatusOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NodeStatus_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NodeStatus_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -11645,16 +10362,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         nodeId_ = 0;
@@ -11664,18 +10383,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_NodeStatus_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.NodeStatus getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.NodeStatus.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.NodeStatus build() {
         org.apache.drill.exec.proto.UserBitShared.NodeStatus result = buildPartial();
         if (!result.isInitialized()) {
@@ -11684,7 +10404,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.NodeStatus buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.NodeStatus result = new org.apache.drill.exec.proto.UserBitShared.NodeStatus(this);
         int from_bitField0_ = bitField0_;
@@ -11702,39 +10421,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.NodeStatus) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.NodeStatus)other);
@@ -11752,17 +10438,14 @@
         if (other.hasMemoryFootprint()) {
           setMemoryFootprint(other.getMemoryFootprint());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -11772,7 +10455,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.NodeStatus) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -11782,6 +10465,7 @@
       }
       private int bitField0_;
 
+      // optional int32 node_id = 1;
       private int nodeId_ ;
       /**
        * <code>optional int32 node_id = 1;</code>
@@ -11814,6 +10498,7 @@
         return this;
       }
 
+      // optional int64 memory_footprint = 2;
       private long memoryFootprint_ ;
       /**
        * <code>optional int64 memory_footprint = 2;</code>
@@ -11845,63 +10530,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.NodeStatus)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.NodeStatus)
-    private static final org.apache.drill.exec.proto.UserBitShared.NodeStatus DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.NodeStatus();
+      defaultInstance = new NodeStatus(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.NodeStatus getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<NodeStatus>
-        PARSER = new com.google.protobuf.AbstractParser<NodeStatus>() {
-      @java.lang.Override
-      public NodeStatus parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new NodeStatus(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<NodeStatus> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<NodeStatus> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.NodeStatus getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.NodeStatus)
   }
 
-  public interface QueryResultOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.QueryResult)
-      com.google.protobuf.MessageOrBuilder {
+  public interface QueryResultOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.QueryResult.QueryState query_state = 1;
     /**
      * <code>optional .exec.shared.QueryResult.QueryState query_state = 1;</code>
      */
@@ -11911,6 +10555,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getQueryState();
 
+    // optional .exec.shared.QueryId query_id = 2;
     /**
      * <code>optional .exec.shared.QueryId query_id = 2;</code>
      */
@@ -11924,6 +10569,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder();
 
+    // repeated .exec.shared.DrillPBError error = 3;
     /**
      * <code>repeated .exec.shared.DrillPBError error = 3;</code>
      */
@@ -11949,39 +10595,43 @@
         int index);
   }
   /**
+   * Protobuf type {@code exec.shared.QueryResult}
+   *
    * <pre>
+   *
    * Used by the server to report informations about the query state to the client
    * </pre>
-   *
-   * Protobuf type {@code exec.shared.QueryResult}
    */
-  public  static final class QueryResult extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.QueryResult)
-      QueryResultOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class QueryResult extends
+      com.google.protobuf.GeneratedMessage
+      implements QueryResultOrBuilder {
     // Use QueryResult.newBuilder() to construct.
-    private QueryResult(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private QueryResult(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private QueryResult() {
-      queryState_ = 0;
-      error_ = java.util.Collections.emptyList();
+    private QueryResult(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final QueryResult defaultInstance;
+    public static QueryResult getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public QueryResult getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private QueryResult(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -11993,15 +10643,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState value = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                queryState_ = rawValue;
+                queryState_ = value;
               }
               break;
             }
@@ -12023,15 +10679,7 @@
                 error_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.DrillPBError>();
                 mutable_bitField0_ |= 0x00000004;
               }
-              error_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.DrillPBError.PARSER, extensionRegistry));
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              error_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.DrillPBError.PARSER, extensionRegistry));
               break;
             }
           }
@@ -12040,7 +10688,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
           error_ = java.util.Collections.unmodifiableList(error_);
@@ -12054,91 +10702,105 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryResult_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryResult_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.QueryResult.class, org.apache.drill.exec.proto.UserBitShared.QueryResult.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<QueryResult> PARSER =
+        new com.google.protobuf.AbstractParser<QueryResult>() {
+      public QueryResult parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new QueryResult(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<QueryResult> getParserForType() {
+      return PARSER;
+    }
+
     /**
      * Protobuf enum {@code exec.shared.QueryResult.QueryState}
      */
     public enum QueryState
         implements com.google.protobuf.ProtocolMessageEnum {
       /**
+       * <code>STARTING = 0;</code>
+       *
        * <pre>
        * query has been scheduled for execution. This is post-enqueued.
        * </pre>
-       *
-       * <code>STARTING = 0;</code>
        */
-      STARTING(0),
+      STARTING(0, 0),
       /**
        * <code>RUNNING = 1;</code>
        */
-      RUNNING(1),
+      RUNNING(1, 1),
       /**
+       * <code>COMPLETED = 2;</code>
+       *
        * <pre>
        * query has completed successfully
        * </pre>
-       *
-       * <code>COMPLETED = 2;</code>
        */
-      COMPLETED(2),
+      COMPLETED(2, 2),
       /**
+       * <code>CANCELED = 3;</code>
+       *
        * <pre>
        * query has been cancelled, and all cleanup is complete
        * </pre>
-       *
-       * <code>CANCELED = 3;</code>
        */
-      CANCELED(3),
+      CANCELED(3, 3),
       /**
        * <code>FAILED = 4;</code>
        */
-      FAILED(4),
+      FAILED(4, 4),
       /**
+       * <code>CANCELLATION_REQUESTED = 5;</code>
+       *
        * <pre>
        * cancellation has been requested, and is being processed
        * </pre>
-       *
-       * <code>CANCELLATION_REQUESTED = 5;</code>
        */
-      CANCELLATION_REQUESTED(5),
+      CANCELLATION_REQUESTED(5, 5),
       /**
+       * <code>ENQUEUED = 6;</code>
+       *
        * <pre>
        * query has been enqueued. this is pre-starting.
        * </pre>
-       *
-       * <code>ENQUEUED = 6;</code>
        */
-      ENQUEUED(6),
+      ENQUEUED(6, 6),
       /**
+       * <code>PREPARING = 7;</code>
+       *
        * <pre>
        * query is at preparation stage, foreman is initializing
        * </pre>
-       *
-       * <code>PREPARING = 7;</code>
        */
-      PREPARING(7),
+      PREPARING(7, 7),
       /**
+       * <code>PLANNING = 8;</code>
+       *
        * <pre>
        * query is at planning stage (includes logical or / and physical planning)
        * </pre>
-       *
-       * <code>PLANNING = 8;</code>
        */
-      PLANNING(8),
+      PLANNING(8, 8),
       ;
 
       /**
+       * <code>STARTING = 0;</code>
+       *
        * <pre>
        * query has been scheduled for execution. This is post-enqueued.
        * </pre>
-       *
-       * <code>STARTING = 0;</code>
        */
       public static final int STARTING_VALUE = 0;
       /**
@@ -12146,19 +10808,19 @@
        */
       public static final int RUNNING_VALUE = 1;
       /**
+       * <code>COMPLETED = 2;</code>
+       *
        * <pre>
        * query has completed successfully
        * </pre>
-       *
-       * <code>COMPLETED = 2;</code>
        */
       public static final int COMPLETED_VALUE = 2;
       /**
+       * <code>CANCELED = 3;</code>
+       *
        * <pre>
        * query has been cancelled, and all cleanup is complete
        * </pre>
-       *
-       * <code>CANCELED = 3;</code>
        */
       public static final int CANCELED_VALUE = 3;
       /**
@@ -12166,52 +10828,42 @@
        */
       public static final int FAILED_VALUE = 4;
       /**
+       * <code>CANCELLATION_REQUESTED = 5;</code>
+       *
        * <pre>
        * cancellation has been requested, and is being processed
        * </pre>
-       *
-       * <code>CANCELLATION_REQUESTED = 5;</code>
        */
       public static final int CANCELLATION_REQUESTED_VALUE = 5;
       /**
+       * <code>ENQUEUED = 6;</code>
+       *
        * <pre>
        * query has been enqueued. this is pre-starting.
        * </pre>
-       *
-       * <code>ENQUEUED = 6;</code>
        */
       public static final int ENQUEUED_VALUE = 6;
       /**
+       * <code>PREPARING = 7;</code>
+       *
        * <pre>
        * query is at preparation stage, foreman is initializing
        * </pre>
-       *
-       * <code>PREPARING = 7;</code>
        */
       public static final int PREPARING_VALUE = 7;
       /**
+       * <code>PLANNING = 8;</code>
+       *
        * <pre>
        * query is at planning stage (includes logical or / and physical planning)
        * </pre>
-       *
-       * <code>PLANNING = 8;</code>
        */
       public static final int PLANNING_VALUE = 8;
 
 
-      public final int getNumber() {
-        return value;
-      }
+      public final int getNumber() { return value; }
 
-      /**
-       * @deprecated Use {@link #forNumber(int)} instead.
-       */
-      @java.lang.Deprecated
       public static QueryState valueOf(int value) {
-        return forNumber(value);
-      }
-
-      public static QueryState forNumber(int value) {
         switch (value) {
           case 0: return STARTING;
           case 1: return RUNNING;
@@ -12230,17 +10882,17 @@
           internalGetValueMap() {
         return internalValueMap;
       }
-      private static final com.google.protobuf.Internal.EnumLiteMap<
-          QueryState> internalValueMap =
+      private static com.google.protobuf.Internal.EnumLiteMap<QueryState>
+          internalValueMap =
             new com.google.protobuf.Internal.EnumLiteMap<QueryState>() {
               public QueryState findValueByNumber(int number) {
-                return QueryState.forNumber(number);
+                return QueryState.valueOf(number);
               }
             };
 
       public final com.google.protobuf.Descriptors.EnumValueDescriptor
           getValueDescriptor() {
-        return getDescriptor().getValues().get(ordinal());
+        return getDescriptor().getValues().get(index);
       }
       public final com.google.protobuf.Descriptors.EnumDescriptor
           getDescriptorForType() {
@@ -12262,9 +10914,11 @@
         return VALUES[desc.getIndex()];
       }
 
+      private final int index;
       private final int value;
 
-      private QueryState(int value) {
+      private QueryState(int index, int value) {
+        this.index = index;
         this.value = value;
       }
 
@@ -12272,8 +10926,9 @@
     }
 
     private int bitField0_;
+    // optional .exec.shared.QueryResult.QueryState query_state = 1;
     public static final int QUERY_STATE_FIELD_NUMBER = 1;
-    private int queryState_;
+    private org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState queryState_;
     /**
      * <code>optional .exec.shared.QueryResult.QueryState query_state = 1;</code>
      */
@@ -12284,11 +10939,10 @@
      * <code>optional .exec.shared.QueryResult.QueryState query_state = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getQueryState() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState result = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(queryState_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING : result;
+      return queryState_;
     }
 
+    // optional .exec.shared.QueryId query_id = 2;
     public static final int QUERY_ID_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_;
     /**
@@ -12301,15 +10955,16 @@
      * <code>optional .exec.shared.QueryId query_id = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
     /**
      * <code>optional .exec.shared.QueryId query_id = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
 
+    // repeated .exec.shared.DrillPBError error = 3;
     public static final int ERROR_FIELD_NUMBER = 3;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.DrillPBError> error_;
     /**
@@ -12345,116 +11000,65 @@
       return error_.get(index);
     }
 
+    private void initFields() {
+      queryState_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
+      queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      error_ = java.util.Collections.emptyList();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, queryState_);
+        output.writeEnum(1, queryState_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getQueryId());
+        output.writeMessage(2, queryId_);
       }
       for (int i = 0; i < error_.size(); i++) {
         output.writeMessage(3, error_.get(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, queryState_);
+          .computeEnumSize(1, queryState_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getQueryId());
+          .computeMessageSize(2, queryId_);
       }
       for (int i = 0; i < error_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
           .computeMessageSize(3, error_.get(i));
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.QueryResult)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.QueryResult other = (org.apache.drill.exec.proto.UserBitShared.QueryResult) obj;
-
-      boolean result = true;
-      result = result && (hasQueryState() == other.hasQueryState());
-      if (hasQueryState()) {
-        result = result && queryState_ == other.queryState_;
-      }
-      result = result && (hasQueryId() == other.hasQueryId());
-      if (hasQueryId()) {
-        result = result && getQueryId()
-            .equals(other.getQueryId());
-      }
-      result = result && getErrorList()
-          .equals(other.getErrorList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasQueryState()) {
-        hash = (37 * hash) + QUERY_STATE_FIELD_NUMBER;
-        hash = (53 * hash) + queryState_;
-      }
-      if (hasQueryId()) {
-        hash = (37 * hash) + QUERY_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getQueryId().hashCode();
-      }
-      if (getErrorCount() > 0) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getErrorList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.QueryResult parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.QueryResult parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.QueryResult parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -12478,80 +11082,66 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryResult parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryResult parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryResult parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryResult parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryResult parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryResult parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.QueryResult prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.shared.QueryResult}
+     *
      * <pre>
+     *
      * Used by the server to report informations about the query state to the client
      * </pre>
-     *
-     * Protobuf type {@code exec.shared.QueryResult}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.QueryResult)
-        org.apache.drill.exec.proto.UserBitShared.QueryResultOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.QueryResultOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryResult_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryResult_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -12564,24 +11154,26 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getQueryIdFieldBuilder();
           getErrorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        queryState_ = 0;
+        queryState_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
         bitField0_ = (bitField0_ & ~0x00000001);
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
         } else {
           queryIdBuilder_.clear();
         }
@@ -12595,18 +11187,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryResult_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryResult getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.QueryResult.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryResult build() {
         org.apache.drill.exec.proto.UserBitShared.QueryResult result = buildPartial();
         if (!result.isInitialized()) {
@@ -12615,7 +11208,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryResult buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.QueryResult result = new org.apache.drill.exec.proto.UserBitShared.QueryResult(this);
         int from_bitField0_ = bitField0_;
@@ -12646,39 +11238,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.QueryResult) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.QueryResult)other);
@@ -12715,24 +11274,21 @@
               error_ = other.error_;
               bitField0_ = (bitField0_ & ~0x00000004);
               errorBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getErrorFieldBuilder() : null;
             } else {
               errorBuilder_.addAllMessages(other.error_);
             }
           }
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -12742,7 +11298,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.QueryResult) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -12752,7 +11308,8 @@
       }
       private int bitField0_;
 
-      private int queryState_ = 0;
+      // optional .exec.shared.QueryResult.QueryState query_state = 1;
+      private org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState queryState_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
       /**
        * <code>optional .exec.shared.QueryResult.QueryState query_state = 1;</code>
        */
@@ -12763,9 +11320,7 @@
        * <code>optional .exec.shared.QueryResult.QueryState query_state = 1;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getQueryState() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState result = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(queryState_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING : result;
+        return queryState_;
       }
       /**
        * <code>optional .exec.shared.QueryResult.QueryState query_state = 1;</code>
@@ -12775,7 +11330,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        queryState_ = value.getNumber();
+        queryState_ = value;
         onChanged();
         return this;
       }
@@ -12784,13 +11339,14 @@
        */
       public Builder clearQueryState() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        queryState_ = 0;
+        queryState_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
         onChanged();
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.QueryId query_id = 2;
+      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> queryIdBuilder_;
       /**
        * <code>optional .exec.shared.QueryId query_id = 2;</code>
@@ -12803,7 +11359,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
         if (queryIdBuilder_ == null) {
-          return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         } else {
           return queryIdBuilder_.getMessage();
         }
@@ -12844,7 +11400,6 @@
       public Builder mergeQueryId(org.apache.drill.exec.proto.UserBitShared.QueryId value) {
         if (queryIdBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              queryId_ != null &&
               queryId_ != org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance()) {
             queryId_ =
               org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(queryId_).mergeFrom(value).buildPartial();
@@ -12863,7 +11418,7 @@
        */
       public Builder clearQueryId() {
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
           onChanged();
         } else {
           queryIdBuilder_.clear();
@@ -12886,20 +11441,19 @@
         if (queryIdBuilder_ != null) {
           return queryIdBuilder_.getMessageOrBuilder();
         } else {
-          return queryId_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         }
       }
       /**
        * <code>optional .exec.shared.QueryId query_id = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> 
           getQueryIdFieldBuilder() {
         if (queryIdBuilder_ == null) {
-          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder>(
-                  getQueryId(),
+                  queryId_,
                   getParentForChildren(),
                   isClean());
           queryId_ = null;
@@ -12907,6 +11461,7 @@
         return queryIdBuilder_;
       }
 
+      // repeated .exec.shared.DrillPBError error = 3;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.DrillPBError> error_ =
         java.util.Collections.emptyList();
       private void ensureErrorIsMutable() {
@@ -12916,7 +11471,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> errorBuilder_;
 
       /**
@@ -13048,8 +11603,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.DrillPBError> values) {
         if (errorBuilder_ == null) {
           ensureErrorIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, error_);
+          super.addAll(values, error_);
           onChanged();
         } else {
           errorBuilder_.addAllMessages(values);
@@ -13132,11 +11686,11 @@
            getErrorBuilderList() {
         return getErrorFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> 
           getErrorFieldBuilder() {
         if (errorBuilder_ == null) {
-          errorBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          errorBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder>(
                   error_,
                   ((bitField0_ & 0x00000004) == 0x00000004),
@@ -13146,63 +11700,22 @@
         }
         return errorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.QueryResult)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.QueryResult)
-    private static final org.apache.drill.exec.proto.UserBitShared.QueryResult DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.QueryResult();
+      defaultInstance = new QueryResult(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.QueryResult getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<QueryResult>
-        PARSER = new com.google.protobuf.AbstractParser<QueryResult>() {
-      @java.lang.Override
-      public QueryResult parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new QueryResult(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<QueryResult> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<QueryResult> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.QueryResult getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.QueryResult)
   }
 
-  public interface QueryDataOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.QueryData)
-      com.google.protobuf.MessageOrBuilder {
+  public interface QueryDataOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.QueryId query_id = 1;
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
@@ -13216,6 +11729,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder();
 
+    // optional int32 row_count = 2;
     /**
      * <code>optional int32 row_count = 2;</code>
      */
@@ -13225,6 +11739,7 @@
      */
     int getRowCount();
 
+    // optional .exec.shared.RecordBatchDef def = 3;
     /**
      * <code>optional .exec.shared.RecordBatchDef def = 3;</code>
      */
@@ -13238,6 +11753,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder getDefOrBuilder();
 
+    // optional int32 affected_rows_count = 4;
     /**
      * <code>optional int32 affected_rows_count = 4;</code>
      */
@@ -13248,39 +11764,43 @@
     int getAffectedRowsCount();
   }
   /**
+   * Protobuf type {@code exec.shared.QueryData}
+   *
    * <pre>
+   *
    * Used by the server when sending query result data batches to the client
    * </pre>
-   *
-   * Protobuf type {@code exec.shared.QueryData}
    */
-  public  static final class QueryData extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.QueryData)
-      QueryDataOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class QueryData extends
+      com.google.protobuf.GeneratedMessage
+      implements QueryDataOrBuilder {
     // Use QueryData.newBuilder() to construct.
-    private QueryData(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private QueryData(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private QueryData() {
-      rowCount_ = 0;
-      affectedRowsCount_ = 0;
+    private QueryData(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final QueryData defaultInstance;
+    public static QueryData getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public QueryData getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private QueryData(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -13292,6 +11812,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserBitShared.QueryId.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -13328,20 +11855,13 @@
               affectedRowsCount_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -13352,15 +11872,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryData_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryData_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.QueryData.class, org.apache.drill.exec.proto.UserBitShared.QueryData.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<QueryData> PARSER =
+        new com.google.protobuf.AbstractParser<QueryData>() {
+      public QueryData parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new QueryData(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<QueryData> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.shared.QueryId query_id = 1;
     public static final int QUERY_ID_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_;
     /**
@@ -13373,15 +11908,16 @@
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
 
+    // optional int32 row_count = 2;
     public static final int ROW_COUNT_FIELD_NUMBER = 2;
     private int rowCount_;
     /**
@@ -13397,6 +11933,7 @@
       return rowCount_;
     }
 
+    // optional .exec.shared.RecordBatchDef def = 3;
     public static final int DEF_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserBitShared.RecordBatchDef def_;
     /**
@@ -13409,15 +11946,16 @@
      * <code>optional .exec.shared.RecordBatchDef def = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.RecordBatchDef getDef() {
-      return def_ == null ? org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance() : def_;
+      return def_;
     }
     /**
      * <code>optional .exec.shared.RecordBatchDef def = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder getDefOrBuilder() {
-      return def_ == null ? org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance() : def_;
+      return def_;
     }
 
+    // optional int32 affected_rows_count = 4;
     public static final int AFFECTED_ROWS_COUNT_FIELD_NUMBER = 4;
     private int affectedRowsCount_;
     /**
@@ -13433,44 +11971,48 @@
       return affectedRowsCount_;
     }
 
+    private void initFields() {
+      queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      rowCount_ = 0;
+      def_ = org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance();
+      affectedRowsCount_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getQueryId());
+        output.writeMessage(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt32(2, rowCount_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, getDef());
+        output.writeMessage(3, def_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
         output.writeInt32(4, affectedRowsCount_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getQueryId());
+          .computeMessageSize(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -13478,91 +12020,24 @@
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getDef());
+          .computeMessageSize(3, def_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(4, affectedRowsCount_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.QueryData)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.QueryData other = (org.apache.drill.exec.proto.UserBitShared.QueryData) obj;
-
-      boolean result = true;
-      result = result && (hasQueryId() == other.hasQueryId());
-      if (hasQueryId()) {
-        result = result && getQueryId()
-            .equals(other.getQueryId());
-      }
-      result = result && (hasRowCount() == other.hasRowCount());
-      if (hasRowCount()) {
-        result = result && (getRowCount()
-            == other.getRowCount());
-      }
-      result = result && (hasDef() == other.hasDef());
-      if (hasDef()) {
-        result = result && getDef()
-            .equals(other.getDef());
-      }
-      result = result && (hasAffectedRowsCount() == other.hasAffectedRowsCount());
-      if (hasAffectedRowsCount()) {
-        result = result && (getAffectedRowsCount()
-            == other.getAffectedRowsCount());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasQueryId()) {
-        hash = (37 * hash) + QUERY_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getQueryId().hashCode();
-      }
-      if (hasRowCount()) {
-        hash = (37 * hash) + ROW_COUNT_FIELD_NUMBER;
-        hash = (53 * hash) + getRowCount();
-      }
-      if (hasDef()) {
-        hash = (37 * hash) + DEF_FIELD_NUMBER;
-        hash = (53 * hash) + getDef().hashCode();
-      }
-      if (hasAffectedRowsCount()) {
-        hash = (37 * hash) + AFFECTED_ROWS_COUNT_FIELD_NUMBER;
-        hash = (53 * hash) + getAffectedRowsCount();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.QueryData parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.QueryData parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.QueryData parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -13586,80 +12061,66 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryData parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryData parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryData parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryData parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryData parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryData parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.QueryData prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.shared.QueryData}
+     *
      * <pre>
+     *
      * Used by the server when sending query result data batches to the client
      * </pre>
-     *
-     * Protobuf type {@code exec.shared.QueryData}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.QueryData)
-        org.apache.drill.exec.proto.UserBitShared.QueryDataOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.QueryDataOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryData_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryData_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -13672,22 +12133,24 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getQueryIdFieldBuilder();
           getDefFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
         } else {
           queryIdBuilder_.clear();
         }
@@ -13695,7 +12158,7 @@
         rowCount_ = 0;
         bitField0_ = (bitField0_ & ~0x00000002);
         if (defBuilder_ == null) {
-          def_ = null;
+          def_ = org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance();
         } else {
           defBuilder_.clear();
         }
@@ -13705,18 +12168,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryData_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryData getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.QueryData.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryData build() {
         org.apache.drill.exec.proto.UserBitShared.QueryData result = buildPartial();
         if (!result.isInitialized()) {
@@ -13725,7 +12189,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryData buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.QueryData result = new org.apache.drill.exec.proto.UserBitShared.QueryData(this);
         int from_bitField0_ = bitField0_;
@@ -13759,39 +12222,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.QueryData) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.QueryData)other);
@@ -13815,17 +12245,14 @@
         if (other.hasAffectedRowsCount()) {
           setAffectedRowsCount(other.getAffectedRowsCount());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -13835,7 +12262,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.QueryData) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -13845,8 +12272,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.QueryId query_id = 1;
+      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> queryIdBuilder_;
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
@@ -13859,7 +12287,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
         if (queryIdBuilder_ == null) {
-          return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         } else {
           return queryIdBuilder_.getMessage();
         }
@@ -13900,7 +12328,6 @@
       public Builder mergeQueryId(org.apache.drill.exec.proto.UserBitShared.QueryId value) {
         if (queryIdBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              queryId_ != null &&
               queryId_ != org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance()) {
             queryId_ =
               org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(queryId_).mergeFrom(value).buildPartial();
@@ -13919,7 +12346,7 @@
        */
       public Builder clearQueryId() {
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
           onChanged();
         } else {
           queryIdBuilder_.clear();
@@ -13942,20 +12369,19 @@
         if (queryIdBuilder_ != null) {
           return queryIdBuilder_.getMessageOrBuilder();
         } else {
-          return queryId_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         }
       }
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> 
           getQueryIdFieldBuilder() {
         if (queryIdBuilder_ == null) {
-          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder>(
-                  getQueryId(),
+                  queryId_,
                   getParentForChildren(),
                   isClean());
           queryId_ = null;
@@ -13963,6 +12389,7 @@
         return queryIdBuilder_;
       }
 
+      // optional int32 row_count = 2;
       private int rowCount_ ;
       /**
        * <code>optional int32 row_count = 2;</code>
@@ -13995,8 +12422,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.RecordBatchDef def_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.RecordBatchDef def = 3;
+      private org.apache.drill.exec.proto.UserBitShared.RecordBatchDef def_ = org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.RecordBatchDef, org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.Builder, org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder> defBuilder_;
       /**
        * <code>optional .exec.shared.RecordBatchDef def = 3;</code>
@@ -14009,7 +12437,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.RecordBatchDef getDef() {
         if (defBuilder_ == null) {
-          return def_ == null ? org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance() : def_;
+          return def_;
         } else {
           return defBuilder_.getMessage();
         }
@@ -14050,7 +12478,6 @@
       public Builder mergeDef(org.apache.drill.exec.proto.UserBitShared.RecordBatchDef value) {
         if (defBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              def_ != null &&
               def_ != org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance()) {
             def_ =
               org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.newBuilder(def_).mergeFrom(value).buildPartial();
@@ -14069,7 +12496,7 @@
        */
       public Builder clearDef() {
         if (defBuilder_ == null) {
-          def_ = null;
+          def_ = org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance();
           onChanged();
         } else {
           defBuilder_.clear();
@@ -14092,20 +12519,19 @@
         if (defBuilder_ != null) {
           return defBuilder_.getMessageOrBuilder();
         } else {
-          return def_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.getDefaultInstance() : def_;
+          return def_;
         }
       }
       /**
        * <code>optional .exec.shared.RecordBatchDef def = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.RecordBatchDef, org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.Builder, org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder> 
           getDefFieldBuilder() {
         if (defBuilder_ == null) {
-          defBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          defBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.RecordBatchDef, org.apache.drill.exec.proto.UserBitShared.RecordBatchDef.Builder, org.apache.drill.exec.proto.UserBitShared.RecordBatchDefOrBuilder>(
-                  getDef(),
+                  def_,
                   getParentForChildren(),
                   isClean());
           def_ = null;
@@ -14113,6 +12539,7 @@
         return defBuilder_;
       }
 
+      // optional int32 affected_rows_count = 4;
       private int affectedRowsCount_ ;
       /**
        * <code>optional int32 affected_rows_count = 4;</code>
@@ -14144,63 +12571,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.QueryData)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.QueryData)
-    private static final org.apache.drill.exec.proto.UserBitShared.QueryData DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.QueryData();
+      defaultInstance = new QueryData(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.QueryData getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<QueryData>
-        PARSER = new com.google.protobuf.AbstractParser<QueryData>() {
-      @java.lang.Override
-      public QueryData parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new QueryData(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<QueryData> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<QueryData> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.QueryData getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.QueryData)
   }
 
-  public interface QueryInfoOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.QueryInfo)
-      com.google.protobuf.MessageOrBuilder {
+  public interface QueryInfoOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string query = 1;
     /**
      * <code>optional string query = 1;</code>
      */
@@ -14215,6 +12601,7 @@
     com.google.protobuf.ByteString
         getQueryBytes();
 
+    // optional int64 start = 2;
     /**
      * <code>optional int64 start = 2;</code>
      */
@@ -14224,6 +12611,7 @@
      */
     long getStart();
 
+    // optional .exec.shared.QueryResult.QueryState state = 3;
     /**
      * <code>optional .exec.shared.QueryResult.QueryState state = 3;</code>
      */
@@ -14233,6 +12621,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getState();
 
+    // optional string user = 4 [default = "-"];
     /**
      * <code>optional string user = 4 [default = "-"];</code>
      */
@@ -14247,6 +12636,7 @@
     com.google.protobuf.ByteString
         getUserBytes();
 
+    // optional .exec.DrillbitEndpoint foreman = 5;
     /**
      * <code>optional .exec.DrillbitEndpoint foreman = 5;</code>
      */
@@ -14260,6 +12650,7 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getForemanOrBuilder();
 
+    // optional string options_json = 6;
     /**
      * <code>optional string options_json = 6;</code>
      */
@@ -14274,6 +12665,7 @@
     com.google.protobuf.ByteString
         getOptionsJsonBytes();
 
+    // optional double total_cost = 7;
     /**
      * <code>optional double total_cost = 7;</code>
      */
@@ -14283,6 +12675,7 @@
      */
     double getTotalCost();
 
+    // optional string queue_name = 8 [default = "-"];
     /**
      * <code>optional string queue_name = 8 [default = "-"];</code>
      */
@@ -14300,38 +12693,36 @@
   /**
    * Protobuf type {@code exec.shared.QueryInfo}
    */
-  public  static final class QueryInfo extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.QueryInfo)
-      QueryInfoOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class QueryInfo extends
+      com.google.protobuf.GeneratedMessage
+      implements QueryInfoOrBuilder {
     // Use QueryInfo.newBuilder() to construct.
-    private QueryInfo(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private QueryInfo(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private QueryInfo() {
-      query_ = "";
-      start_ = 0L;
-      state_ = 0;
-      user_ = "-";
-      optionsJson_ = "";
-      totalCost_ = 0D;
-      queueName_ = "-";
+    private QueryInfo(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final QueryInfo defaultInstance;
+    public static QueryInfo getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public QueryInfo getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private QueryInfo(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -14343,10 +12734,16 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              query_ = bs;
+              query_ = input.readBytes();
               break;
             }
             case 16: {
@@ -14356,20 +12753,18 @@
             }
             case 24: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState value = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(3, rawValue);
               } else {
                 bitField0_ |= 0x00000004;
-                state_ = rawValue;
+                state_ = value;
               }
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              user_ = bs;
+              user_ = input.readBytes();
               break;
             }
             case 42: {
@@ -14386,9 +12781,8 @@
               break;
             }
             case 50: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000020;
-              optionsJson_ = bs;
+              optionsJson_ = input.readBytes();
               break;
             }
             case 57: {
@@ -14397,16 +12791,8 @@
               break;
             }
             case 66: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000080;
-              queueName_ = bs;
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              queueName_ = input.readBytes();
               break;
             }
           }
@@ -14415,7 +12801,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -14426,17 +12812,32 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryInfo_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryInfo_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.QueryInfo.class, org.apache.drill.exec.proto.UserBitShared.QueryInfo.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<QueryInfo> PARSER =
+        new com.google.protobuf.AbstractParser<QueryInfo>() {
+      public QueryInfo parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new QueryInfo(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<QueryInfo> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string query = 1;
     public static final int QUERY_FIELD_NUMBER = 1;
-    private volatile java.lang.Object query_;
+    private java.lang.Object query_;
     /**
      * <code>optional string query = 1;</code>
      */
@@ -14477,6 +12878,7 @@
       }
     }
 
+    // optional int64 start = 2;
     public static final int START_FIELD_NUMBER = 2;
     private long start_;
     /**
@@ -14492,8 +12894,9 @@
       return start_;
     }
 
+    // optional .exec.shared.QueryResult.QueryState state = 3;
     public static final int STATE_FIELD_NUMBER = 3;
-    private int state_;
+    private org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState state_;
     /**
      * <code>optional .exec.shared.QueryResult.QueryState state = 3;</code>
      */
@@ -14504,13 +12907,12 @@
      * <code>optional .exec.shared.QueryResult.QueryState state = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getState() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState result = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(state_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING : result;
+      return state_;
     }
 
+    // optional string user = 4 [default = "-"];
     public static final int USER_FIELD_NUMBER = 4;
-    private volatile java.lang.Object user_;
+    private java.lang.Object user_;
     /**
      * <code>optional string user = 4 [default = "-"];</code>
      */
@@ -14551,6 +12953,7 @@
       }
     }
 
+    // optional .exec.DrillbitEndpoint foreman = 5;
     public static final int FOREMAN_FIELD_NUMBER = 5;
     private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint foreman_;
     /**
@@ -14563,17 +12966,18 @@
      * <code>optional .exec.DrillbitEndpoint foreman = 5;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getForeman() {
-      return foreman_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+      return foreman_;
     }
     /**
      * <code>optional .exec.DrillbitEndpoint foreman = 5;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getForemanOrBuilder() {
-      return foreman_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+      return foreman_;
     }
 
+    // optional string options_json = 6;
     public static final int OPTIONS_JSON_FIELD_NUMBER = 6;
-    private volatile java.lang.Object optionsJson_;
+    private java.lang.Object optionsJson_;
     /**
      * <code>optional string options_json = 6;</code>
      */
@@ -14614,6 +13018,7 @@
       }
     }
 
+    // optional double total_cost = 7;
     public static final int TOTAL_COST_FIELD_NUMBER = 7;
     private double totalCost_;
     /**
@@ -14629,8 +13034,9 @@
       return totalCost_;
     }
 
+    // optional string queue_name = 8 [default = "-"];
     public static final int QUEUE_NAME_FIELD_NUMBER = 8;
-    private volatile java.lang.Object queueName_;
+    private java.lang.Object queueName_;
     /**
      * <code>optional string queue_name = 8 [default = "-"];</code>
      */
@@ -14671,55 +13077,64 @@
       }
     }
 
+    private void initFields() {
+      query_ = "";
+      start_ = 0L;
+      state_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
+      user_ = "-";
+      foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      optionsJson_ = "";
+      totalCost_ = 0D;
+      queueName_ = "-";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, query_);
+        output.writeBytes(1, getQueryBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt64(2, start_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeEnum(3, state_);
+        output.writeEnum(3, state_.getNumber());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, user_);
+        output.writeBytes(4, getUserBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        output.writeMessage(5, getForeman());
+        output.writeMessage(5, foreman_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, optionsJson_);
+        output.writeBytes(6, getOptionsJsonBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         output.writeDouble(7, totalCost_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 8, queueName_);
+        output.writeBytes(8, getQueueNameBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, query_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getQueryBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -14727,143 +13142,40 @@
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(3, state_);
+          .computeEnumSize(3, state_.getNumber());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, user_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getUserBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(5, getForeman());
+          .computeMessageSize(5, foreman_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, optionsJson_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(6, getOptionsJsonBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         size += com.google.protobuf.CodedOutputStream
           .computeDoubleSize(7, totalCost_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, queueName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(8, getQueueNameBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.QueryInfo)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.QueryInfo other = (org.apache.drill.exec.proto.UserBitShared.QueryInfo) obj;
-
-      boolean result = true;
-      result = result && (hasQuery() == other.hasQuery());
-      if (hasQuery()) {
-        result = result && getQuery()
-            .equals(other.getQuery());
-      }
-      result = result && (hasStart() == other.hasStart());
-      if (hasStart()) {
-        result = result && (getStart()
-            == other.getStart());
-      }
-      result = result && (hasState() == other.hasState());
-      if (hasState()) {
-        result = result && state_ == other.state_;
-      }
-      result = result && (hasUser() == other.hasUser());
-      if (hasUser()) {
-        result = result && getUser()
-            .equals(other.getUser());
-      }
-      result = result && (hasForeman() == other.hasForeman());
-      if (hasForeman()) {
-        result = result && getForeman()
-            .equals(other.getForeman());
-      }
-      result = result && (hasOptionsJson() == other.hasOptionsJson());
-      if (hasOptionsJson()) {
-        result = result && getOptionsJson()
-            .equals(other.getOptionsJson());
-      }
-      result = result && (hasTotalCost() == other.hasTotalCost());
-      if (hasTotalCost()) {
-        result = result && (
-            java.lang.Double.doubleToLongBits(getTotalCost())
-            == java.lang.Double.doubleToLongBits(
-                other.getTotalCost()));
-      }
-      result = result && (hasQueueName() == other.hasQueueName());
-      if (hasQueueName()) {
-        result = result && getQueueName()
-            .equals(other.getQueueName());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasQuery()) {
-        hash = (37 * hash) + QUERY_FIELD_NUMBER;
-        hash = (53 * hash) + getQuery().hashCode();
-      }
-      if (hasStart()) {
-        hash = (37 * hash) + START_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getStart());
-      }
-      if (hasState()) {
-        hash = (37 * hash) + STATE_FIELD_NUMBER;
-        hash = (53 * hash) + state_;
-      }
-      if (hasUser()) {
-        hash = (37 * hash) + USER_FIELD_NUMBER;
-        hash = (53 * hash) + getUser().hashCode();
-      }
-      if (hasForeman()) {
-        hash = (37 * hash) + FOREMAN_FIELD_NUMBER;
-        hash = (53 * hash) + getForeman().hashCode();
-      }
-      if (hasOptionsJson()) {
-        hash = (37 * hash) + OPTIONS_JSON_FIELD_NUMBER;
-        hash = (53 * hash) + getOptionsJson().hashCode();
-      }
-      if (hasTotalCost()) {
-        hash = (37 * hash) + TOTAL_COST_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            java.lang.Double.doubleToLongBits(getTotalCost()));
-      }
-      if (hasQueueName()) {
-        hash = (37 * hash) + QUEUE_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getQueueName().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.QueryInfo parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.QueryInfo parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.QueryInfo parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -14887,59 +13199,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryInfo parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryInfo parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryInfo parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryInfo parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryInfo parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryInfo parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.QueryInfo prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -14947,16 +13246,14 @@
      * Protobuf type {@code exec.shared.QueryInfo}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.QueryInfo)
-        org.apache.drill.exec.proto.UserBitShared.QueryInfoOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.QueryInfoOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryInfo_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryInfo_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -14969,29 +13266,31 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getForemanFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         query_ = "";
         bitField0_ = (bitField0_ & ~0x00000001);
         start_ = 0L;
         bitField0_ = (bitField0_ & ~0x00000002);
-        state_ = 0;
+        state_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
         bitField0_ = (bitField0_ & ~0x00000004);
         user_ = "-";
         bitField0_ = (bitField0_ & ~0x00000008);
         if (foremanBuilder_ == null) {
-          foreman_ = null;
+          foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
         } else {
           foremanBuilder_.clear();
         }
@@ -15005,18 +13304,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryInfo_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryInfo getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.QueryInfo.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryInfo build() {
         org.apache.drill.exec.proto.UserBitShared.QueryInfo result = buildPartial();
         if (!result.isInitialized()) {
@@ -15025,7 +13325,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryInfo buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.QueryInfo result = new org.apache.drill.exec.proto.UserBitShared.QueryInfo(this);
         int from_bitField0_ = bitField0_;
@@ -15071,39 +13370,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.QueryInfo) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.QueryInfo)other);
@@ -15147,17 +13413,14 @@
           queueName_ = other.queueName_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -15167,7 +13430,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.QueryInfo) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -15177,6 +13440,7 @@
       }
       private int bitField0_;
 
+      // optional string query = 1;
       private java.lang.Object query_ = "";
       /**
        * <code>optional string query = 1;</code>
@@ -15190,12 +13454,9 @@
       public java.lang.String getQuery() {
         java.lang.Object ref = query_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            query_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          query_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -15253,6 +13514,7 @@
         return this;
       }
 
+      // optional int64 start = 2;
       private long start_ ;
       /**
        * <code>optional int64 start = 2;</code>
@@ -15285,7 +13547,8 @@
         return this;
       }
 
-      private int state_ = 0;
+      // optional .exec.shared.QueryResult.QueryState state = 3;
+      private org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState state_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
       /**
        * <code>optional .exec.shared.QueryResult.QueryState state = 3;</code>
        */
@@ -15296,9 +13559,7 @@
        * <code>optional .exec.shared.QueryResult.QueryState state = 3;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getState() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState result = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(state_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING : result;
+        return state_;
       }
       /**
        * <code>optional .exec.shared.QueryResult.QueryState state = 3;</code>
@@ -15308,7 +13569,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000004;
-        state_ = value.getNumber();
+        state_ = value;
         onChanged();
         return this;
       }
@@ -15317,11 +13578,12 @@
        */
       public Builder clearState() {
         bitField0_ = (bitField0_ & ~0x00000004);
-        state_ = 0;
+        state_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
         onChanged();
         return this;
       }
 
+      // optional string user = 4 [default = "-"];
       private java.lang.Object user_ = "-";
       /**
        * <code>optional string user = 4 [default = "-"];</code>
@@ -15335,12 +13597,9 @@
       public java.lang.String getUser() {
         java.lang.Object ref = user_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            user_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          user_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -15398,8 +13657,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint foreman_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.DrillbitEndpoint foreman = 5;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> foremanBuilder_;
       /**
        * <code>optional .exec.DrillbitEndpoint foreman = 5;</code>
@@ -15412,7 +13672,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getForeman() {
         if (foremanBuilder_ == null) {
-          return foreman_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+          return foreman_;
         } else {
           return foremanBuilder_.getMessage();
         }
@@ -15453,7 +13713,6 @@
       public Builder mergeForeman(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint value) {
         if (foremanBuilder_ == null) {
           if (((bitField0_ & 0x00000010) == 0x00000010) &&
-              foreman_ != null &&
               foreman_ != org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance()) {
             foreman_ =
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.newBuilder(foreman_).mergeFrom(value).buildPartial();
@@ -15472,7 +13731,7 @@
        */
       public Builder clearForeman() {
         if (foremanBuilder_ == null) {
-          foreman_ = null;
+          foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
           onChanged();
         } else {
           foremanBuilder_.clear();
@@ -15495,20 +13754,19 @@
         if (foremanBuilder_ != null) {
           return foremanBuilder_.getMessageOrBuilder();
         } else {
-          return foreman_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+          return foreman_;
         }
       }
       /**
        * <code>optional .exec.DrillbitEndpoint foreman = 5;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> 
           getForemanFieldBuilder() {
         if (foremanBuilder_ == null) {
-          foremanBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          foremanBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder>(
-                  getForeman(),
+                  foreman_,
                   getParentForChildren(),
                   isClean());
           foreman_ = null;
@@ -15516,6 +13774,7 @@
         return foremanBuilder_;
       }
 
+      // optional string options_json = 6;
       private java.lang.Object optionsJson_ = "";
       /**
        * <code>optional string options_json = 6;</code>
@@ -15529,12 +13788,9 @@
       public java.lang.String getOptionsJson() {
         java.lang.Object ref = optionsJson_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            optionsJson_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          optionsJson_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -15592,6 +13848,7 @@
         return this;
       }
 
+      // optional double total_cost = 7;
       private double totalCost_ ;
       /**
        * <code>optional double total_cost = 7;</code>
@@ -15624,6 +13881,7 @@
         return this;
       }
 
+      // optional string queue_name = 8 [default = "-"];
       private java.lang.Object queueName_ = "-";
       /**
        * <code>optional string queue_name = 8 [default = "-"];</code>
@@ -15637,12 +13895,9 @@
       public java.lang.String getQueueName() {
         java.lang.Object ref = queueName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            queueName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          queueName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -15699,63 +13954,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.QueryInfo)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.QueryInfo)
-    private static final org.apache.drill.exec.proto.UserBitShared.QueryInfo DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.QueryInfo();
+      defaultInstance = new QueryInfo(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.QueryInfo getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<QueryInfo>
-        PARSER = new com.google.protobuf.AbstractParser<QueryInfo>() {
-      @java.lang.Override
-      public QueryInfo parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new QueryInfo(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<QueryInfo> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<QueryInfo> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.QueryInfo getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.QueryInfo)
   }
 
-  public interface QueryProfileOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.QueryProfile)
-      com.google.protobuf.MessageOrBuilder {
+  public interface QueryProfileOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.QueryId id = 1;
     /**
      * <code>optional .exec.shared.QueryId id = 1;</code>
      */
@@ -15769,6 +13983,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getIdOrBuilder();
 
+    // optional .exec.shared.QueryType type = 2;
     /**
      * <code>optional .exec.shared.QueryType type = 2;</code>
      */
@@ -15778,6 +13993,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryType getType();
 
+    // optional int64 start = 3;
     /**
      * <code>optional int64 start = 3;</code>
      */
@@ -15787,6 +14003,7 @@
      */
     long getStart();
 
+    // optional int64 end = 4;
     /**
      * <code>optional int64 end = 4;</code>
      */
@@ -15796,6 +14013,7 @@
      */
     long getEnd();
 
+    // optional string query = 5;
     /**
      * <code>optional string query = 5;</code>
      */
@@ -15810,6 +14028,7 @@
     com.google.protobuf.ByteString
         getQueryBytes();
 
+    // optional string plan = 6;
     /**
      * <code>optional string plan = 6;</code>
      */
@@ -15824,6 +14043,7 @@
     com.google.protobuf.ByteString
         getPlanBytes();
 
+    // optional .exec.DrillbitEndpoint foreman = 7;
     /**
      * <code>optional .exec.DrillbitEndpoint foreman = 7;</code>
      */
@@ -15837,6 +14057,7 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getForemanOrBuilder();
 
+    // optional .exec.shared.QueryResult.QueryState state = 8;
     /**
      * <code>optional .exec.shared.QueryResult.QueryState state = 8;</code>
      */
@@ -15846,6 +14067,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getState();
 
+    // optional int32 total_fragments = 9;
     /**
      * <code>optional int32 total_fragments = 9;</code>
      */
@@ -15855,6 +14077,7 @@
      */
     int getTotalFragments();
 
+    // optional int32 finished_fragments = 10;
     /**
      * <code>optional int32 finished_fragments = 10;</code>
      */
@@ -15864,6 +14087,7 @@
      */
     int getFinishedFragments();
 
+    // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
     /**
      * <code>repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;</code>
      */
@@ -15888,6 +14112,7 @@
     org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfileOrBuilder getFragmentProfileOrBuilder(
         int index);
 
+    // optional string user = 12 [default = "-"];
     /**
      * <code>optional string user = 12 [default = "-"];</code>
      */
@@ -15902,6 +14127,7 @@
     com.google.protobuf.ByteString
         getUserBytes();
 
+    // optional string error = 13;
     /**
      * <code>optional string error = 13;</code>
      */
@@ -15916,6 +14142,7 @@
     com.google.protobuf.ByteString
         getErrorBytes();
 
+    // optional string verboseError = 14;
     /**
      * <code>optional string verboseError = 14;</code>
      */
@@ -15930,6 +14157,7 @@
     com.google.protobuf.ByteString
         getVerboseErrorBytes();
 
+    // optional string error_id = 15;
     /**
      * <code>optional string error_id = 15;</code>
      */
@@ -15944,6 +14172,7 @@
     com.google.protobuf.ByteString
         getErrorIdBytes();
 
+    // optional string error_node = 16;
     /**
      * <code>optional string error_node = 16;</code>
      */
@@ -15958,6 +14187,7 @@
     com.google.protobuf.ByteString
         getErrorNodeBytes();
 
+    // optional string options_json = 17;
     /**
      * <code>optional string options_json = 17;</code>
      */
@@ -15972,6 +14202,7 @@
     com.google.protobuf.ByteString
         getOptionsJsonBytes();
 
+    // optional int64 planEnd = 18;
     /**
      * <code>optional int64 planEnd = 18;</code>
      */
@@ -15981,6 +14212,7 @@
      */
     long getPlanEnd();
 
+    // optional int64 queueWaitEnd = 19;
     /**
      * <code>optional int64 queueWaitEnd = 19;</code>
      */
@@ -15990,6 +14222,7 @@
      */
     long getQueueWaitEnd();
 
+    // optional double total_cost = 20;
     /**
      * <code>optional double total_cost = 20;</code>
      */
@@ -15999,6 +14232,7 @@
      */
     double getTotalCost();
 
+    // optional string queue_name = 21 [default = "-"];
     /**
      * <code>optional string queue_name = 21 [default = "-"];</code>
      */
@@ -16013,6 +14247,7 @@
     com.google.protobuf.ByteString
         getQueueNameBytes();
 
+    // optional string queryId = 22;
     /**
      * <code>optional string queryId = 22;</code>
      */
@@ -16027,6 +14262,7 @@
     com.google.protobuf.ByteString
         getQueryIdBytes();
 
+    // optional int32 autoLimit = 23;
     /**
      * <code>optional int32 autoLimit = 23;</code>
      */
@@ -16039,52 +14275,36 @@
   /**
    * Protobuf type {@code exec.shared.QueryProfile}
    */
-  public  static final class QueryProfile extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.QueryProfile)
-      QueryProfileOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class QueryProfile extends
+      com.google.protobuf.GeneratedMessage
+      implements QueryProfileOrBuilder {
     // Use QueryProfile.newBuilder() to construct.
-    private QueryProfile(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private QueryProfile(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private QueryProfile() {
-      type_ = 1;
-      start_ = 0L;
-      end_ = 0L;
-      query_ = "";
-      plan_ = "";
-      state_ = 0;
-      totalFragments_ = 0;
-      finishedFragments_ = 0;
-      fragmentProfile_ = java.util.Collections.emptyList();
-      user_ = "-";
-      error_ = "";
-      verboseError_ = "";
-      errorId_ = "";
-      errorNode_ = "";
-      optionsJson_ = "";
-      planEnd_ = 0L;
-      queueWaitEnd_ = 0L;
-      totalCost_ = 0D;
-      queueName_ = "-";
-      queryId_ = "";
-      autoLimit_ = 0;
+    private QueryProfile(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final QueryProfile defaultInstance;
+    public static QueryProfile getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public QueryProfile getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private QueryProfile(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -16096,6 +14316,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserBitShared.QueryId.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -16111,13 +14338,12 @@
             }
             case 16: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.QueryType value = org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(2, rawValue);
               } else {
                 bitField0_ |= 0x00000002;
-                type_ = rawValue;
+                type_ = value;
               }
               break;
             }
@@ -16132,15 +14358,13 @@
               break;
             }
             case 42: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000010;
-              query_ = bs;
+              query_ = input.readBytes();
               break;
             }
             case 50: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000020;
-              plan_ = bs;
+              plan_ = input.readBytes();
               break;
             }
             case 58: {
@@ -16158,13 +14382,12 @@
             }
             case 64: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState value = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(8, rawValue);
               } else {
                 bitField0_ |= 0x00000080;
-                state_ = rawValue;
+                state_ = value;
               }
               break;
             }
@@ -16183,44 +14406,37 @@
                 fragmentProfile_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile>();
                 mutable_bitField0_ |= 0x00000400;
               }
-              fragmentProfile_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile.PARSER, extensionRegistry));
+              fragmentProfile_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile.PARSER, extensionRegistry));
               break;
             }
             case 98: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000400;
-              user_ = bs;
+              user_ = input.readBytes();
               break;
             }
             case 106: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000800;
-              error_ = bs;
+              error_ = input.readBytes();
               break;
             }
             case 114: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00001000;
-              verboseError_ = bs;
+              verboseError_ = input.readBytes();
               break;
             }
             case 122: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00002000;
-              errorId_ = bs;
+              errorId_ = input.readBytes();
               break;
             }
             case 130: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00004000;
-              errorNode_ = bs;
+              errorNode_ = input.readBytes();
               break;
             }
             case 138: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00008000;
-              optionsJson_ = bs;
+              optionsJson_ = input.readBytes();
               break;
             }
             case 144: {
@@ -16239,15 +14455,13 @@
               break;
             }
             case 170: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00080000;
-              queueName_ = bs;
+              queueName_ = input.readBytes();
               break;
             }
             case 178: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00100000;
-              queryId_ = bs;
+              queryId_ = input.readBytes();
               break;
             }
             case 184: {
@@ -16255,20 +14469,13 @@
               autoLimit_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
           fragmentProfile_ = java.util.Collections.unmodifiableList(fragmentProfile_);
@@ -16282,15 +14489,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryProfile_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryProfile_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.QueryProfile.class, org.apache.drill.exec.proto.UserBitShared.QueryProfile.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<QueryProfile> PARSER =
+        new com.google.protobuf.AbstractParser<QueryProfile>() {
+      public QueryProfile parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new QueryProfile(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<QueryProfile> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.shared.QueryId id = 1;
     public static final int ID_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserBitShared.QueryId id_;
     /**
@@ -16303,17 +14525,18 @@
      * <code>optional .exec.shared.QueryId id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryId getId() {
-      return id_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : id_;
+      return id_;
     }
     /**
      * <code>optional .exec.shared.QueryId id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getIdOrBuilder() {
-      return id_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : id_;
+      return id_;
     }
 
+    // optional .exec.shared.QueryType type = 2;
     public static final int TYPE_FIELD_NUMBER = 2;
-    private int type_;
+    private org.apache.drill.exec.proto.UserBitShared.QueryType type_;
     /**
      * <code>optional .exec.shared.QueryType type = 2;</code>
      */
@@ -16324,11 +14547,10 @@
      * <code>optional .exec.shared.QueryType type = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryType getType() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.QueryType result = org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(type_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryType.SQL : result;
+      return type_;
     }
 
+    // optional int64 start = 3;
     public static final int START_FIELD_NUMBER = 3;
     private long start_;
     /**
@@ -16344,6 +14566,7 @@
       return start_;
     }
 
+    // optional int64 end = 4;
     public static final int END_FIELD_NUMBER = 4;
     private long end_;
     /**
@@ -16359,8 +14582,9 @@
       return end_;
     }
 
+    // optional string query = 5;
     public static final int QUERY_FIELD_NUMBER = 5;
-    private volatile java.lang.Object query_;
+    private java.lang.Object query_;
     /**
      * <code>optional string query = 5;</code>
      */
@@ -16401,8 +14625,9 @@
       }
     }
 
+    // optional string plan = 6;
     public static final int PLAN_FIELD_NUMBER = 6;
-    private volatile java.lang.Object plan_;
+    private java.lang.Object plan_;
     /**
      * <code>optional string plan = 6;</code>
      */
@@ -16443,6 +14668,7 @@
       }
     }
 
+    // optional .exec.DrillbitEndpoint foreman = 7;
     public static final int FOREMAN_FIELD_NUMBER = 7;
     private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint foreman_;
     /**
@@ -16455,17 +14681,18 @@
      * <code>optional .exec.DrillbitEndpoint foreman = 7;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getForeman() {
-      return foreman_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+      return foreman_;
     }
     /**
      * <code>optional .exec.DrillbitEndpoint foreman = 7;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getForemanOrBuilder() {
-      return foreman_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+      return foreman_;
     }
 
+    // optional .exec.shared.QueryResult.QueryState state = 8;
     public static final int STATE_FIELD_NUMBER = 8;
-    private int state_;
+    private org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState state_;
     /**
      * <code>optional .exec.shared.QueryResult.QueryState state = 8;</code>
      */
@@ -16476,11 +14703,10 @@
      * <code>optional .exec.shared.QueryResult.QueryState state = 8;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getState() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState result = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(state_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING : result;
+      return state_;
     }
 
+    // optional int32 total_fragments = 9;
     public static final int TOTAL_FRAGMENTS_FIELD_NUMBER = 9;
     private int totalFragments_;
     /**
@@ -16496,6 +14722,7 @@
       return totalFragments_;
     }
 
+    // optional int32 finished_fragments = 10;
     public static final int FINISHED_FRAGMENTS_FIELD_NUMBER = 10;
     private int finishedFragments_;
     /**
@@ -16511,6 +14738,7 @@
       return finishedFragments_;
     }
 
+    // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
     public static final int FRAGMENT_PROFILE_FIELD_NUMBER = 11;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile> fragmentProfile_;
     /**
@@ -16546,8 +14774,9 @@
       return fragmentProfile_.get(index);
     }
 
+    // optional string user = 12 [default = "-"];
     public static final int USER_FIELD_NUMBER = 12;
-    private volatile java.lang.Object user_;
+    private java.lang.Object user_;
     /**
      * <code>optional string user = 12 [default = "-"];</code>
      */
@@ -16588,8 +14817,9 @@
       }
     }
 
+    // optional string error = 13;
     public static final int ERROR_FIELD_NUMBER = 13;
-    private volatile java.lang.Object error_;
+    private java.lang.Object error_;
     /**
      * <code>optional string error = 13;</code>
      */
@@ -16630,8 +14860,9 @@
       }
     }
 
+    // optional string verboseError = 14;
     public static final int VERBOSEERROR_FIELD_NUMBER = 14;
-    private volatile java.lang.Object verboseError_;
+    private java.lang.Object verboseError_;
     /**
      * <code>optional string verboseError = 14;</code>
      */
@@ -16672,8 +14903,9 @@
       }
     }
 
+    // optional string error_id = 15;
     public static final int ERROR_ID_FIELD_NUMBER = 15;
-    private volatile java.lang.Object errorId_;
+    private java.lang.Object errorId_;
     /**
      * <code>optional string error_id = 15;</code>
      */
@@ -16714,8 +14946,9 @@
       }
     }
 
+    // optional string error_node = 16;
     public static final int ERROR_NODE_FIELD_NUMBER = 16;
-    private volatile java.lang.Object errorNode_;
+    private java.lang.Object errorNode_;
     /**
      * <code>optional string error_node = 16;</code>
      */
@@ -16756,8 +14989,9 @@
       }
     }
 
+    // optional string options_json = 17;
     public static final int OPTIONS_JSON_FIELD_NUMBER = 17;
-    private volatile java.lang.Object optionsJson_;
+    private java.lang.Object optionsJson_;
     /**
      * <code>optional string options_json = 17;</code>
      */
@@ -16798,6 +15032,7 @@
       }
     }
 
+    // optional int64 planEnd = 18;
     public static final int PLANEND_FIELD_NUMBER = 18;
     private long planEnd_;
     /**
@@ -16813,6 +15048,7 @@
       return planEnd_;
     }
 
+    // optional int64 queueWaitEnd = 19;
     public static final int QUEUEWAITEND_FIELD_NUMBER = 19;
     private long queueWaitEnd_;
     /**
@@ -16828,6 +15064,7 @@
       return queueWaitEnd_;
     }
 
+    // optional double total_cost = 20;
     public static final int TOTAL_COST_FIELD_NUMBER = 20;
     private double totalCost_;
     /**
@@ -16843,8 +15080,9 @@
       return totalCost_;
     }
 
+    // optional string queue_name = 21 [default = "-"];
     public static final int QUEUE_NAME_FIELD_NUMBER = 21;
-    private volatile java.lang.Object queueName_;
+    private java.lang.Object queueName_;
     /**
      * <code>optional string queue_name = 21 [default = "-"];</code>
      */
@@ -16885,8 +15123,9 @@
       }
     }
 
+    // optional string queryId = 22;
     public static final int QUERYID_FIELD_NUMBER = 22;
-    private volatile java.lang.Object queryId_;
+    private java.lang.Object queryId_;
     /**
      * <code>optional string queryId = 22;</code>
      */
@@ -16927,6 +15166,7 @@
       }
     }
 
+    // optional int32 autoLimit = 23;
     public static final int AUTOLIMIT_FIELD_NUMBER = 23;
     private int autoLimit_;
     /**
@@ -16942,25 +15182,48 @@
       return autoLimit_;
     }
 
+    private void initFields() {
+      id_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
+      start_ = 0L;
+      end_ = 0L;
+      query_ = "";
+      plan_ = "";
+      foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      state_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
+      totalFragments_ = 0;
+      finishedFragments_ = 0;
+      fragmentProfile_ = java.util.Collections.emptyList();
+      user_ = "-";
+      error_ = "";
+      verboseError_ = "";
+      errorId_ = "";
+      errorNode_ = "";
+      optionsJson_ = "";
+      planEnd_ = 0L;
+      queueWaitEnd_ = 0L;
+      totalCost_ = 0D;
+      queueName_ = "-";
+      queryId_ = "";
+      autoLimit_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getId());
+        output.writeMessage(1, id_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeEnum(2, type_);
+        output.writeEnum(2, type_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeInt64(3, start_);
@@ -16969,16 +15232,16 @@
         output.writeInt64(4, end_);
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, query_);
+        output.writeBytes(5, getQueryBytes());
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, plan_);
+        output.writeBytes(6, getPlanBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
-        output.writeMessage(7, getForeman());
+        output.writeMessage(7, foreman_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        output.writeEnum(8, state_);
+        output.writeEnum(8, state_.getNumber());
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
         output.writeInt32(9, totalFragments_);
@@ -16990,22 +15253,22 @@
         output.writeMessage(11, fragmentProfile_.get(i));
       }
       if (((bitField0_ & 0x00000400) == 0x00000400)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 12, user_);
+        output.writeBytes(12, getUserBytes());
       }
       if (((bitField0_ & 0x00000800) == 0x00000800)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 13, error_);
+        output.writeBytes(13, getErrorBytes());
       }
       if (((bitField0_ & 0x00001000) == 0x00001000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 14, verboseError_);
+        output.writeBytes(14, getVerboseErrorBytes());
       }
       if (((bitField0_ & 0x00002000) == 0x00002000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 15, errorId_);
+        output.writeBytes(15, getErrorIdBytes());
       }
       if (((bitField0_ & 0x00004000) == 0x00004000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 16, errorNode_);
+        output.writeBytes(16, getErrorNodeBytes());
       }
       if (((bitField0_ & 0x00008000) == 0x00008000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 17, optionsJson_);
+        output.writeBytes(17, getOptionsJsonBytes());
       }
       if (((bitField0_ & 0x00010000) == 0x00010000)) {
         output.writeInt64(18, planEnd_);
@@ -17017,30 +15280,30 @@
         output.writeDouble(20, totalCost_);
       }
       if (((bitField0_ & 0x00080000) == 0x00080000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 21, queueName_);
+        output.writeBytes(21, getQueueNameBytes());
       }
       if (((bitField0_ & 0x00100000) == 0x00100000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 22, queryId_);
+        output.writeBytes(22, getQueryIdBytes());
       }
       if (((bitField0_ & 0x00200000) == 0x00200000)) {
         output.writeInt32(23, autoLimit_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getId());
+          .computeMessageSize(1, id_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(2, type_);
+          .computeEnumSize(2, type_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
@@ -17051,18 +15314,20 @@
           .computeInt64Size(4, end_);
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, query_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(5, getQueryBytes());
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, plan_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(6, getPlanBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(7, getForeman());
+          .computeMessageSize(7, foreman_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(8, state_);
+          .computeEnumSize(8, state_.getNumber());
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
         size += com.google.protobuf.CodedOutputStream
@@ -17077,22 +15342,28 @@
           .computeMessageSize(11, fragmentProfile_.get(i));
       }
       if (((bitField0_ & 0x00000400) == 0x00000400)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(12, user_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(12, getUserBytes());
       }
       if (((bitField0_ & 0x00000800) == 0x00000800)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, error_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(13, getErrorBytes());
       }
       if (((bitField0_ & 0x00001000) == 0x00001000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, verboseError_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(14, getVerboseErrorBytes());
       }
       if (((bitField0_ & 0x00002000) == 0x00002000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, errorId_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(15, getErrorIdBytes());
       }
       if (((bitField0_ & 0x00004000) == 0x00004000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(16, errorNode_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(16, getErrorNodeBytes());
       }
       if (((bitField0_ & 0x00008000) == 0x00008000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(17, optionsJson_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(17, getOptionsJsonBytes());
       }
       if (((bitField0_ & 0x00010000) == 0x00010000)) {
         size += com.google.protobuf.CodedOutputStream
@@ -17107,267 +15378,29 @@
           .computeDoubleSize(20, totalCost_);
       }
       if (((bitField0_ & 0x00080000) == 0x00080000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(21, queueName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(21, getQueueNameBytes());
       }
       if (((bitField0_ & 0x00100000) == 0x00100000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(22, queryId_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(22, getQueryIdBytes());
       }
       if (((bitField0_ & 0x00200000) == 0x00200000)) {
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(23, autoLimit_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.QueryProfile)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.QueryProfile other = (org.apache.drill.exec.proto.UserBitShared.QueryProfile) obj;
-
-      boolean result = true;
-      result = result && (hasId() == other.hasId());
-      if (hasId()) {
-        result = result && getId()
-            .equals(other.getId());
-      }
-      result = result && (hasType() == other.hasType());
-      if (hasType()) {
-        result = result && type_ == other.type_;
-      }
-      result = result && (hasStart() == other.hasStart());
-      if (hasStart()) {
-        result = result && (getStart()
-            == other.getStart());
-      }
-      result = result && (hasEnd() == other.hasEnd());
-      if (hasEnd()) {
-        result = result && (getEnd()
-            == other.getEnd());
-      }
-      result = result && (hasQuery() == other.hasQuery());
-      if (hasQuery()) {
-        result = result && getQuery()
-            .equals(other.getQuery());
-      }
-      result = result && (hasPlan() == other.hasPlan());
-      if (hasPlan()) {
-        result = result && getPlan()
-            .equals(other.getPlan());
-      }
-      result = result && (hasForeman() == other.hasForeman());
-      if (hasForeman()) {
-        result = result && getForeman()
-            .equals(other.getForeman());
-      }
-      result = result && (hasState() == other.hasState());
-      if (hasState()) {
-        result = result && state_ == other.state_;
-      }
-      result = result && (hasTotalFragments() == other.hasTotalFragments());
-      if (hasTotalFragments()) {
-        result = result && (getTotalFragments()
-            == other.getTotalFragments());
-      }
-      result = result && (hasFinishedFragments() == other.hasFinishedFragments());
-      if (hasFinishedFragments()) {
-        result = result && (getFinishedFragments()
-            == other.getFinishedFragments());
-      }
-      result = result && getFragmentProfileList()
-          .equals(other.getFragmentProfileList());
-      result = result && (hasUser() == other.hasUser());
-      if (hasUser()) {
-        result = result && getUser()
-            .equals(other.getUser());
-      }
-      result = result && (hasError() == other.hasError());
-      if (hasError()) {
-        result = result && getError()
-            .equals(other.getError());
-      }
-      result = result && (hasVerboseError() == other.hasVerboseError());
-      if (hasVerboseError()) {
-        result = result && getVerboseError()
-            .equals(other.getVerboseError());
-      }
-      result = result && (hasErrorId() == other.hasErrorId());
-      if (hasErrorId()) {
-        result = result && getErrorId()
-            .equals(other.getErrorId());
-      }
-      result = result && (hasErrorNode() == other.hasErrorNode());
-      if (hasErrorNode()) {
-        result = result && getErrorNode()
-            .equals(other.getErrorNode());
-      }
-      result = result && (hasOptionsJson() == other.hasOptionsJson());
-      if (hasOptionsJson()) {
-        result = result && getOptionsJson()
-            .equals(other.getOptionsJson());
-      }
-      result = result && (hasPlanEnd() == other.hasPlanEnd());
-      if (hasPlanEnd()) {
-        result = result && (getPlanEnd()
-            == other.getPlanEnd());
-      }
-      result = result && (hasQueueWaitEnd() == other.hasQueueWaitEnd());
-      if (hasQueueWaitEnd()) {
-        result = result && (getQueueWaitEnd()
-            == other.getQueueWaitEnd());
-      }
-      result = result && (hasTotalCost() == other.hasTotalCost());
-      if (hasTotalCost()) {
-        result = result && (
-            java.lang.Double.doubleToLongBits(getTotalCost())
-            == java.lang.Double.doubleToLongBits(
-                other.getTotalCost()));
-      }
-      result = result && (hasQueueName() == other.hasQueueName());
-      if (hasQueueName()) {
-        result = result && getQueueName()
-            .equals(other.getQueueName());
-      }
-      result = result && (hasQueryId() == other.hasQueryId());
-      if (hasQueryId()) {
-        result = result && getQueryId()
-            .equals(other.getQueryId());
-      }
-      result = result && (hasAutoLimit() == other.hasAutoLimit());
-      if (hasAutoLimit()) {
-        result = result && (getAutoLimit()
-            == other.getAutoLimit());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasId()) {
-        hash = (37 * hash) + ID_FIELD_NUMBER;
-        hash = (53 * hash) + getId().hashCode();
-      }
-      if (hasType()) {
-        hash = (37 * hash) + TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + type_;
-      }
-      if (hasStart()) {
-        hash = (37 * hash) + START_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getStart());
-      }
-      if (hasEnd()) {
-        hash = (37 * hash) + END_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getEnd());
-      }
-      if (hasQuery()) {
-        hash = (37 * hash) + QUERY_FIELD_NUMBER;
-        hash = (53 * hash) + getQuery().hashCode();
-      }
-      if (hasPlan()) {
-        hash = (37 * hash) + PLAN_FIELD_NUMBER;
-        hash = (53 * hash) + getPlan().hashCode();
-      }
-      if (hasForeman()) {
-        hash = (37 * hash) + FOREMAN_FIELD_NUMBER;
-        hash = (53 * hash) + getForeman().hashCode();
-      }
-      if (hasState()) {
-        hash = (37 * hash) + STATE_FIELD_NUMBER;
-        hash = (53 * hash) + state_;
-      }
-      if (hasTotalFragments()) {
-        hash = (37 * hash) + TOTAL_FRAGMENTS_FIELD_NUMBER;
-        hash = (53 * hash) + getTotalFragments();
-      }
-      if (hasFinishedFragments()) {
-        hash = (37 * hash) + FINISHED_FRAGMENTS_FIELD_NUMBER;
-        hash = (53 * hash) + getFinishedFragments();
-      }
-      if (getFragmentProfileCount() > 0) {
-        hash = (37 * hash) + FRAGMENT_PROFILE_FIELD_NUMBER;
-        hash = (53 * hash) + getFragmentProfileList().hashCode();
-      }
-      if (hasUser()) {
-        hash = (37 * hash) + USER_FIELD_NUMBER;
-        hash = (53 * hash) + getUser().hashCode();
-      }
-      if (hasError()) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getError().hashCode();
-      }
-      if (hasVerboseError()) {
-        hash = (37 * hash) + VERBOSEERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getVerboseError().hashCode();
-      }
-      if (hasErrorId()) {
-        hash = (37 * hash) + ERROR_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getErrorId().hashCode();
-      }
-      if (hasErrorNode()) {
-        hash = (37 * hash) + ERROR_NODE_FIELD_NUMBER;
-        hash = (53 * hash) + getErrorNode().hashCode();
-      }
-      if (hasOptionsJson()) {
-        hash = (37 * hash) + OPTIONS_JSON_FIELD_NUMBER;
-        hash = (53 * hash) + getOptionsJson().hashCode();
-      }
-      if (hasPlanEnd()) {
-        hash = (37 * hash) + PLANEND_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getPlanEnd());
-      }
-      if (hasQueueWaitEnd()) {
-        hash = (37 * hash) + QUEUEWAITEND_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getQueueWaitEnd());
-      }
-      if (hasTotalCost()) {
-        hash = (37 * hash) + TOTAL_COST_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            java.lang.Double.doubleToLongBits(getTotalCost()));
-      }
-      if (hasQueueName()) {
-        hash = (37 * hash) + QUEUE_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getQueueName().hashCode();
-      }
-      if (hasQueryId()) {
-        hash = (37 * hash) + QUERYID_FIELD_NUMBER;
-        hash = (53 * hash) + getQueryId().hashCode();
-      }
-      if (hasAutoLimit()) {
-        hash = (37 * hash) + AUTOLIMIT_FIELD_NUMBER;
-        hash = (53 * hash) + getAutoLimit();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.QueryProfile parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.QueryProfile parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.QueryProfile parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -17391,59 +15424,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryProfile parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryProfile parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryProfile parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryProfile parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryProfile parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.QueryProfile parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.QueryProfile prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -17451,16 +15471,14 @@
      * Protobuf type {@code exec.shared.QueryProfile}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.QueryProfile)
-        org.apache.drill.exec.proto.UserBitShared.QueryProfileOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.QueryProfileOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryProfile_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryProfile_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -17473,28 +15491,30 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getIdFieldBuilder();
           getForemanFieldBuilder();
           getFragmentProfileFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (idBuilder_ == null) {
-          id_ = null;
+          id_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
         } else {
           idBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000001);
-        type_ = 1;
+        type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
         bitField0_ = (bitField0_ & ~0x00000002);
         start_ = 0L;
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -17505,12 +15525,12 @@
         plan_ = "";
         bitField0_ = (bitField0_ & ~0x00000020);
         if (foremanBuilder_ == null) {
-          foreman_ = null;
+          foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
         } else {
           foremanBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000040);
-        state_ = 0;
+        state_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
         bitField0_ = (bitField0_ & ~0x00000080);
         totalFragments_ = 0;
         bitField0_ = (bitField0_ & ~0x00000100);
@@ -17549,18 +15569,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_QueryProfile_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryProfile getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.QueryProfile.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryProfile build() {
         org.apache.drill.exec.proto.UserBitShared.QueryProfile result = buildPartial();
         if (!result.isInitialized()) {
@@ -17569,7 +15590,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.QueryProfile buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.QueryProfile result = new org.apache.drill.exec.proto.UserBitShared.QueryProfile(this);
         int from_bitField0_ = bitField0_;
@@ -17684,39 +15704,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.QueryProfile) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.QueryProfile)other);
@@ -17781,7 +15768,7 @@
               fragmentProfile_ = other.fragmentProfile_;
               bitField0_ = (bitField0_ & ~0x00000400);
               fragmentProfileBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getFragmentProfileFieldBuilder() : null;
             } else {
               fragmentProfileBuilder_.addAllMessages(other.fragmentProfile_);
@@ -17840,17 +15827,14 @@
         if (other.hasAutoLimit()) {
           setAutoLimit(other.getAutoLimit());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -17860,7 +15844,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.QueryProfile) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -17870,8 +15854,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserBitShared.QueryId id_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.QueryId id = 1;
+      private org.apache.drill.exec.proto.UserBitShared.QueryId id_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> idBuilder_;
       /**
        * <code>optional .exec.shared.QueryId id = 1;</code>
@@ -17884,7 +15869,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryId getId() {
         if (idBuilder_ == null) {
-          return id_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : id_;
+          return id_;
         } else {
           return idBuilder_.getMessage();
         }
@@ -17925,7 +15910,6 @@
       public Builder mergeId(org.apache.drill.exec.proto.UserBitShared.QueryId value) {
         if (idBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              id_ != null &&
               id_ != org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance()) {
             id_ =
               org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(id_).mergeFrom(value).buildPartial();
@@ -17944,7 +15928,7 @@
        */
       public Builder clearId() {
         if (idBuilder_ == null) {
-          id_ = null;
+          id_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
           onChanged();
         } else {
           idBuilder_.clear();
@@ -17967,20 +15951,19 @@
         if (idBuilder_ != null) {
           return idBuilder_.getMessageOrBuilder();
         } else {
-          return id_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : id_;
+          return id_;
         }
       }
       /**
        * <code>optional .exec.shared.QueryId id = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> 
           getIdFieldBuilder() {
         if (idBuilder_ == null) {
-          idBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          idBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder>(
-                  getId(),
+                  id_,
                   getParentForChildren(),
                   isClean());
           id_ = null;
@@ -17988,7 +15971,8 @@
         return idBuilder_;
       }
 
-      private int type_ = 1;
+      // optional .exec.shared.QueryType type = 2;
+      private org.apache.drill.exec.proto.UserBitShared.QueryType type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
       /**
        * <code>optional .exec.shared.QueryType type = 2;</code>
        */
@@ -17999,9 +15983,7 @@
        * <code>optional .exec.shared.QueryType type = 2;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryType getType() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.QueryType result = org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(type_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryType.SQL : result;
+        return type_;
       }
       /**
        * <code>optional .exec.shared.QueryType type = 2;</code>
@@ -18011,7 +15993,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000002;
-        type_ = value.getNumber();
+        type_ = value;
         onChanged();
         return this;
       }
@@ -18020,11 +16002,12 @@
        */
       public Builder clearType() {
         bitField0_ = (bitField0_ & ~0x00000002);
-        type_ = 1;
+        type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
         onChanged();
         return this;
       }
 
+      // optional int64 start = 3;
       private long start_ ;
       /**
        * <code>optional int64 start = 3;</code>
@@ -18057,6 +16040,7 @@
         return this;
       }
 
+      // optional int64 end = 4;
       private long end_ ;
       /**
        * <code>optional int64 end = 4;</code>
@@ -18089,6 +16073,7 @@
         return this;
       }
 
+      // optional string query = 5;
       private java.lang.Object query_ = "";
       /**
        * <code>optional string query = 5;</code>
@@ -18102,12 +16087,9 @@
       public java.lang.String getQuery() {
         java.lang.Object ref = query_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            query_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          query_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -18165,6 +16147,7 @@
         return this;
       }
 
+      // optional string plan = 6;
       private java.lang.Object plan_ = "";
       /**
        * <code>optional string plan = 6;</code>
@@ -18178,12 +16161,9 @@
       public java.lang.String getPlan() {
         java.lang.Object ref = plan_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            plan_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          plan_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -18241,8 +16221,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint foreman_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.DrillbitEndpoint foreman = 7;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> foremanBuilder_;
       /**
        * <code>optional .exec.DrillbitEndpoint foreman = 7;</code>
@@ -18255,7 +16236,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getForeman() {
         if (foremanBuilder_ == null) {
-          return foreman_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+          return foreman_;
         } else {
           return foremanBuilder_.getMessage();
         }
@@ -18296,7 +16277,6 @@
       public Builder mergeForeman(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint value) {
         if (foremanBuilder_ == null) {
           if (((bitField0_ & 0x00000040) == 0x00000040) &&
-              foreman_ != null &&
               foreman_ != org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance()) {
             foreman_ =
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.newBuilder(foreman_).mergeFrom(value).buildPartial();
@@ -18315,7 +16295,7 @@
        */
       public Builder clearForeman() {
         if (foremanBuilder_ == null) {
-          foreman_ = null;
+          foreman_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
           onChanged();
         } else {
           foremanBuilder_.clear();
@@ -18338,20 +16318,19 @@
         if (foremanBuilder_ != null) {
           return foremanBuilder_.getMessageOrBuilder();
         } else {
-          return foreman_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : foreman_;
+          return foreman_;
         }
       }
       /**
        * <code>optional .exec.DrillbitEndpoint foreman = 7;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> 
           getForemanFieldBuilder() {
         if (foremanBuilder_ == null) {
-          foremanBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          foremanBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder>(
-                  getForeman(),
+                  foreman_,
                   getParentForChildren(),
                   isClean());
           foreman_ = null;
@@ -18359,7 +16338,8 @@
         return foremanBuilder_;
       }
 
-      private int state_ = 0;
+      // optional .exec.shared.QueryResult.QueryState state = 8;
+      private org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState state_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
       /**
        * <code>optional .exec.shared.QueryResult.QueryState state = 8;</code>
        */
@@ -18370,9 +16350,7 @@
        * <code>optional .exec.shared.QueryResult.QueryState state = 8;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getState() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState result = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(state_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING : result;
+        return state_;
       }
       /**
        * <code>optional .exec.shared.QueryResult.QueryState state = 8;</code>
@@ -18382,7 +16360,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000080;
-        state_ = value.getNumber();
+        state_ = value;
         onChanged();
         return this;
       }
@@ -18391,11 +16369,12 @@
        */
       public Builder clearState() {
         bitField0_ = (bitField0_ & ~0x00000080);
-        state_ = 0;
+        state_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
         onChanged();
         return this;
       }
 
+      // optional int32 total_fragments = 9;
       private int totalFragments_ ;
       /**
        * <code>optional int32 total_fragments = 9;</code>
@@ -18428,6 +16407,7 @@
         return this;
       }
 
+      // optional int32 finished_fragments = 10;
       private int finishedFragments_ ;
       /**
        * <code>optional int32 finished_fragments = 10;</code>
@@ -18460,6 +16440,7 @@
         return this;
       }
 
+      // repeated .exec.shared.MajorFragmentProfile fragment_profile = 11;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile> fragmentProfile_ =
         java.util.Collections.emptyList();
       private void ensureFragmentProfileIsMutable() {
@@ -18469,7 +16450,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile, org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile.Builder, org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfileOrBuilder> fragmentProfileBuilder_;
 
       /**
@@ -18601,8 +16582,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile> values) {
         if (fragmentProfileBuilder_ == null) {
           ensureFragmentProfileIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, fragmentProfile_);
+          super.addAll(values, fragmentProfile_);
           onChanged();
         } else {
           fragmentProfileBuilder_.addAllMessages(values);
@@ -18685,11 +16665,11 @@
            getFragmentProfileBuilderList() {
         return getFragmentProfileFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile, org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile.Builder, org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfileOrBuilder> 
           getFragmentProfileFieldBuilder() {
         if (fragmentProfileBuilder_ == null) {
-          fragmentProfileBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          fragmentProfileBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile, org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile.Builder, org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfileOrBuilder>(
                   fragmentProfile_,
                   ((bitField0_ & 0x00000400) == 0x00000400),
@@ -18700,6 +16680,7 @@
         return fragmentProfileBuilder_;
       }
 
+      // optional string user = 12 [default = "-"];
       private java.lang.Object user_ = "-";
       /**
        * <code>optional string user = 12 [default = "-"];</code>
@@ -18713,12 +16694,9 @@
       public java.lang.String getUser() {
         java.lang.Object ref = user_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            user_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          user_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -18776,6 +16754,7 @@
         return this;
       }
 
+      // optional string error = 13;
       private java.lang.Object error_ = "";
       /**
        * <code>optional string error = 13;</code>
@@ -18789,12 +16768,9 @@
       public java.lang.String getError() {
         java.lang.Object ref = error_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            error_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          error_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -18852,6 +16828,7 @@
         return this;
       }
 
+      // optional string verboseError = 14;
       private java.lang.Object verboseError_ = "";
       /**
        * <code>optional string verboseError = 14;</code>
@@ -18865,12 +16842,9 @@
       public java.lang.String getVerboseError() {
         java.lang.Object ref = verboseError_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            verboseError_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          verboseError_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -18928,6 +16902,7 @@
         return this;
       }
 
+      // optional string error_id = 15;
       private java.lang.Object errorId_ = "";
       /**
        * <code>optional string error_id = 15;</code>
@@ -18941,12 +16916,9 @@
       public java.lang.String getErrorId() {
         java.lang.Object ref = errorId_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            errorId_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          errorId_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -19004,6 +16976,7 @@
         return this;
       }
 
+      // optional string error_node = 16;
       private java.lang.Object errorNode_ = "";
       /**
        * <code>optional string error_node = 16;</code>
@@ -19017,12 +16990,9 @@
       public java.lang.String getErrorNode() {
         java.lang.Object ref = errorNode_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            errorNode_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          errorNode_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -19080,6 +17050,7 @@
         return this;
       }
 
+      // optional string options_json = 17;
       private java.lang.Object optionsJson_ = "";
       /**
        * <code>optional string options_json = 17;</code>
@@ -19093,12 +17064,9 @@
       public java.lang.String getOptionsJson() {
         java.lang.Object ref = optionsJson_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            optionsJson_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          optionsJson_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -19156,6 +17124,7 @@
         return this;
       }
 
+      // optional int64 planEnd = 18;
       private long planEnd_ ;
       /**
        * <code>optional int64 planEnd = 18;</code>
@@ -19188,6 +17157,7 @@
         return this;
       }
 
+      // optional int64 queueWaitEnd = 19;
       private long queueWaitEnd_ ;
       /**
        * <code>optional int64 queueWaitEnd = 19;</code>
@@ -19220,6 +17190,7 @@
         return this;
       }
 
+      // optional double total_cost = 20;
       private double totalCost_ ;
       /**
        * <code>optional double total_cost = 20;</code>
@@ -19252,6 +17223,7 @@
         return this;
       }
 
+      // optional string queue_name = 21 [default = "-"];
       private java.lang.Object queueName_ = "-";
       /**
        * <code>optional string queue_name = 21 [default = "-"];</code>
@@ -19265,12 +17237,9 @@
       public java.lang.String getQueueName() {
         java.lang.Object ref = queueName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            queueName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          queueName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -19328,6 +17297,7 @@
         return this;
       }
 
+      // optional string queryId = 22;
       private java.lang.Object queryId_ = "";
       /**
        * <code>optional string queryId = 22;</code>
@@ -19341,12 +17311,9 @@
       public java.lang.String getQueryId() {
         java.lang.Object ref = queryId_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            queryId_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          queryId_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -19404,6 +17371,7 @@
         return this;
       }
 
+      // optional int32 autoLimit = 23;
       private int autoLimit_ ;
       /**
        * <code>optional int32 autoLimit = 23;</code>
@@ -19435,63 +17403,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.QueryProfile)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.QueryProfile)
-    private static final org.apache.drill.exec.proto.UserBitShared.QueryProfile DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.QueryProfile();
+      defaultInstance = new QueryProfile(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.QueryProfile getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<QueryProfile>
-        PARSER = new com.google.protobuf.AbstractParser<QueryProfile>() {
-      @java.lang.Override
-      public QueryProfile parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new QueryProfile(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<QueryProfile> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<QueryProfile> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.QueryProfile getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.QueryProfile)
   }
 
-  public interface MajorFragmentProfileOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.MajorFragmentProfile)
-      com.google.protobuf.MessageOrBuilder {
+  public interface MajorFragmentProfileOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 major_fragment_id = 1;
     /**
      * <code>optional int32 major_fragment_id = 1;</code>
      */
@@ -19501,6 +17428,7 @@
      */
     int getMajorFragmentId();
 
+    // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
     /**
      * <code>repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;</code>
      */
@@ -19528,33 +17456,36 @@
   /**
    * Protobuf type {@code exec.shared.MajorFragmentProfile}
    */
-  public  static final class MajorFragmentProfile extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.MajorFragmentProfile)
-      MajorFragmentProfileOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class MajorFragmentProfile extends
+      com.google.protobuf.GeneratedMessage
+      implements MajorFragmentProfileOrBuilder {
     // Use MajorFragmentProfile.newBuilder() to construct.
-    private MajorFragmentProfile(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private MajorFragmentProfile(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private MajorFragmentProfile() {
-      majorFragmentId_ = 0;
-      minorFragmentProfile_ = java.util.Collections.emptyList();
+    private MajorFragmentProfile(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final MajorFragmentProfile defaultInstance;
+    public static MajorFragmentProfile getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public MajorFragmentProfile getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private MajorFragmentProfile(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -19566,6 +17497,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               majorFragmentId_ = input.readInt32();
@@ -19576,15 +17514,7 @@
                 minorFragmentProfile_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile>();
                 mutable_bitField0_ |= 0x00000002;
               }
-              minorFragmentProfile_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.PARSER, extensionRegistry));
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              minorFragmentProfile_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.PARSER, extensionRegistry));
               break;
             }
           }
@@ -19593,7 +17523,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
           minorFragmentProfile_ = java.util.Collections.unmodifiableList(minorFragmentProfile_);
@@ -19607,15 +17537,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MajorFragmentProfile_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MajorFragmentProfile_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile.class, org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<MajorFragmentProfile> PARSER =
+        new com.google.protobuf.AbstractParser<MajorFragmentProfile>() {
+      public MajorFragmentProfile parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new MajorFragmentProfile(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<MajorFragmentProfile> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 major_fragment_id = 1;
     public static final int MAJOR_FRAGMENT_ID_FIELD_NUMBER = 1;
     private int majorFragmentId_;
     /**
@@ -19631,6 +17576,7 @@
       return majorFragmentId_;
     }
 
+    // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
     public static final int MINOR_FRAGMENT_PROFILE_FIELD_NUMBER = 2;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile> minorFragmentProfile_;
     /**
@@ -19666,32 +17612,34 @@
       return minorFragmentProfile_.get(index);
     }
 
+    private void initFields() {
+      majorFragmentId_ = 0;
+      minorFragmentProfile_ = java.util.Collections.emptyList();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(1, majorFragmentId_);
       }
       for (int i = 0; i < minorFragmentProfile_.size(); i++) {
         output.writeMessage(2, minorFragmentProfile_.get(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -19703,64 +17651,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeMessageSize(2, minorFragmentProfile_.get(i));
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile other = (org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile) obj;
-
-      boolean result = true;
-      result = result && (hasMajorFragmentId() == other.hasMajorFragmentId());
-      if (hasMajorFragmentId()) {
-        result = result && (getMajorFragmentId()
-            == other.getMajorFragmentId());
-      }
-      result = result && getMinorFragmentProfileList()
-          .equals(other.getMinorFragmentProfileList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasMajorFragmentId()) {
-        hash = (37 * hash) + MAJOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getMajorFragmentId();
-      }
-      if (getMinorFragmentProfileCount() > 0) {
-        hash = (37 * hash) + MINOR_FRAGMENT_PROFILE_FIELD_NUMBER;
-        hash = (53 * hash) + getMinorFragmentProfileList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -19784,59 +17686,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -19844,16 +17733,14 @@
      * Protobuf type {@code exec.shared.MajorFragmentProfile}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.MajorFragmentProfile)
-        org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfileOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfileOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MajorFragmentProfile_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MajorFragmentProfile_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -19866,17 +17753,19 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getMinorFragmentProfileFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         majorFragmentId_ = 0;
@@ -19890,18 +17779,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MajorFragmentProfile_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile build() {
         org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile result = buildPartial();
         if (!result.isInitialized()) {
@@ -19910,7 +17800,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile result = new org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile(this);
         int from_bitField0_ = bitField0_;
@@ -19933,39 +17822,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile)other);
@@ -19999,24 +17855,21 @@
               minorFragmentProfile_ = other.minorFragmentProfile_;
               bitField0_ = (bitField0_ & ~0x00000002);
               minorFragmentProfileBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getMinorFragmentProfileFieldBuilder() : null;
             } else {
               minorFragmentProfileBuilder_.addAllMessages(other.minorFragmentProfile_);
             }
           }
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -20026,7 +17879,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -20036,6 +17889,7 @@
       }
       private int bitField0_;
 
+      // optional int32 major_fragment_id = 1;
       private int majorFragmentId_ ;
       /**
        * <code>optional int32 major_fragment_id = 1;</code>
@@ -20068,6 +17922,7 @@
         return this;
       }
 
+      // repeated .exec.shared.MinorFragmentProfile minor_fragment_profile = 2;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile> minorFragmentProfile_ =
         java.util.Collections.emptyList();
       private void ensureMinorFragmentProfileIsMutable() {
@@ -20077,7 +17932,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.Builder, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder> minorFragmentProfileBuilder_;
 
       /**
@@ -20209,8 +18064,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile> values) {
         if (minorFragmentProfileBuilder_ == null) {
           ensureMinorFragmentProfileIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, minorFragmentProfile_);
+          super.addAll(values, minorFragmentProfile_);
           onChanged();
         } else {
           minorFragmentProfileBuilder_.addAllMessages(values);
@@ -20293,11 +18147,11 @@
            getMinorFragmentProfileBuilderList() {
         return getMinorFragmentProfileFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.Builder, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder> 
           getMinorFragmentProfileFieldBuilder() {
         if (minorFragmentProfileBuilder_ == null) {
-          minorFragmentProfileBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          minorFragmentProfileBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.Builder, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder>(
                   minorFragmentProfile_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -20307,63 +18161,22 @@
         }
         return minorFragmentProfileBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.MajorFragmentProfile)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.MajorFragmentProfile)
-    private static final org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile();
+      defaultInstance = new MajorFragmentProfile(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<MajorFragmentProfile>
-        PARSER = new com.google.protobuf.AbstractParser<MajorFragmentProfile>() {
-      @java.lang.Override
-      public MajorFragmentProfile parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new MajorFragmentProfile(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<MajorFragmentProfile> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<MajorFragmentProfile> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.MajorFragmentProfile getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.MajorFragmentProfile)
   }
 
-  public interface MinorFragmentProfileOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.MinorFragmentProfile)
-      com.google.protobuf.MessageOrBuilder {
+  public interface MinorFragmentProfileOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.FragmentState state = 1;
     /**
      * <code>optional .exec.shared.FragmentState state = 1;</code>
      */
@@ -20373,6 +18186,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.FragmentState getState();
 
+    // optional .exec.shared.DrillPBError error = 2;
     /**
      * <code>optional .exec.shared.DrillPBError error = 2;</code>
      */
@@ -20386,6 +18200,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder();
 
+    // optional int32 minor_fragment_id = 3;
     /**
      * <code>optional int32 minor_fragment_id = 3;</code>
      */
@@ -20395,6 +18210,7 @@
      */
     int getMinorFragmentId();
 
+    // repeated .exec.shared.OperatorProfile operator_profile = 4;
     /**
      * <code>repeated .exec.shared.OperatorProfile operator_profile = 4;</code>
      */
@@ -20419,6 +18235,7 @@
     org.apache.drill.exec.proto.UserBitShared.OperatorProfileOrBuilder getOperatorProfileOrBuilder(
         int index);
 
+    // optional int64 start_time = 5;
     /**
      * <code>optional int64 start_time = 5;</code>
      */
@@ -20428,6 +18245,7 @@
      */
     long getStartTime();
 
+    // optional int64 end_time = 6;
     /**
      * <code>optional int64 end_time = 6;</code>
      */
@@ -20437,6 +18255,7 @@
      */
     long getEndTime();
 
+    // optional int64 memory_used = 7;
     /**
      * <code>optional int64 memory_used = 7;</code>
      */
@@ -20446,6 +18265,7 @@
      */
     long getMemoryUsed();
 
+    // optional int64 max_memory_used = 8;
     /**
      * <code>optional int64 max_memory_used = 8;</code>
      */
@@ -20455,6 +18275,7 @@
      */
     long getMaxMemoryUsed();
 
+    // optional .exec.DrillbitEndpoint endpoint = 9;
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 9;</code>
      */
@@ -20468,6 +18289,7 @@
      */
     org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getEndpointOrBuilder();
 
+    // optional int64 last_update = 10;
     /**
      * <code>optional int64 last_update = 10;</code>
      */
@@ -20477,6 +18299,7 @@
      */
     long getLastUpdate();
 
+    // optional int64 last_progress = 11;
     /**
      * <code>optional int64 last_progress = 11;</code>
      */
@@ -20489,40 +18312,36 @@
   /**
    * Protobuf type {@code exec.shared.MinorFragmentProfile}
    */
-  public  static final class MinorFragmentProfile extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.MinorFragmentProfile)
-      MinorFragmentProfileOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class MinorFragmentProfile extends
+      com.google.protobuf.GeneratedMessage
+      implements MinorFragmentProfileOrBuilder {
     // Use MinorFragmentProfile.newBuilder() to construct.
-    private MinorFragmentProfile(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private MinorFragmentProfile(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private MinorFragmentProfile() {
-      state_ = 0;
-      minorFragmentId_ = 0;
-      operatorProfile_ = java.util.Collections.emptyList();
-      startTime_ = 0L;
-      endTime_ = 0L;
-      memoryUsed_ = 0L;
-      maxMemoryUsed_ = 0L;
-      lastUpdate_ = 0L;
-      lastProgress_ = 0L;
+    private MinorFragmentProfile(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final MinorFragmentProfile defaultInstance;
+    public static MinorFragmentProfile getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public MinorFragmentProfile getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private MinorFragmentProfile(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -20534,15 +18353,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.FragmentState value = org.apache.drill.exec.proto.UserBitShared.FragmentState.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                state_ = rawValue;
+                state_ = value;
               }
               break;
             }
@@ -20569,8 +18394,7 @@
                 operatorProfile_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.OperatorProfile>();
                 mutable_bitField0_ |= 0x00000008;
               }
-              operatorProfile_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.OperatorProfile.PARSER, extensionRegistry));
+              operatorProfile_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.OperatorProfile.PARSER, extensionRegistry));
               break;
             }
             case 40: {
@@ -20616,20 +18440,13 @@
               lastProgress_ = input.readInt64();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
           operatorProfile_ = java.util.Collections.unmodifiableList(operatorProfile_);
@@ -20643,17 +18460,32 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MinorFragmentProfile_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MinorFragmentProfile_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.class, org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<MinorFragmentProfile> PARSER =
+        new com.google.protobuf.AbstractParser<MinorFragmentProfile>() {
+      public MinorFragmentProfile parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new MinorFragmentProfile(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<MinorFragmentProfile> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.shared.FragmentState state = 1;
     public static final int STATE_FIELD_NUMBER = 1;
-    private int state_;
+    private org.apache.drill.exec.proto.UserBitShared.FragmentState state_;
     /**
      * <code>optional .exec.shared.FragmentState state = 1;</code>
      */
@@ -20664,11 +18496,10 @@
      * <code>optional .exec.shared.FragmentState state = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.FragmentState getState() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.FragmentState result = org.apache.drill.exec.proto.UserBitShared.FragmentState.valueOf(state_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.FragmentState.SENDING : result;
+      return state_;
     }
 
+    // optional .exec.shared.DrillPBError error = 2;
     public static final int ERROR_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_;
     /**
@@ -20681,15 +18512,16 @@
      * <code>optional .exec.shared.DrillPBError error = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
     /**
      * <code>optional .exec.shared.DrillPBError error = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
 
+    // optional int32 minor_fragment_id = 3;
     public static final int MINOR_FRAGMENT_ID_FIELD_NUMBER = 3;
     private int minorFragmentId_;
     /**
@@ -20705,6 +18537,7 @@
       return minorFragmentId_;
     }
 
+    // repeated .exec.shared.OperatorProfile operator_profile = 4;
     public static final int OPERATOR_PROFILE_FIELD_NUMBER = 4;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.OperatorProfile> operatorProfile_;
     /**
@@ -20740,6 +18573,7 @@
       return operatorProfile_.get(index);
     }
 
+    // optional int64 start_time = 5;
     public static final int START_TIME_FIELD_NUMBER = 5;
     private long startTime_;
     /**
@@ -20755,6 +18589,7 @@
       return startTime_;
     }
 
+    // optional int64 end_time = 6;
     public static final int END_TIME_FIELD_NUMBER = 6;
     private long endTime_;
     /**
@@ -20770,6 +18605,7 @@
       return endTime_;
     }
 
+    // optional int64 memory_used = 7;
     public static final int MEMORY_USED_FIELD_NUMBER = 7;
     private long memoryUsed_;
     /**
@@ -20785,6 +18621,7 @@
       return memoryUsed_;
     }
 
+    // optional int64 max_memory_used = 8;
     public static final int MAX_MEMORY_USED_FIELD_NUMBER = 8;
     private long maxMemoryUsed_;
     /**
@@ -20800,6 +18637,7 @@
       return maxMemoryUsed_;
     }
 
+    // optional .exec.DrillbitEndpoint endpoint = 9;
     public static final int ENDPOINT_FIELD_NUMBER = 9;
     private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_;
     /**
@@ -20812,15 +18650,16 @@
      * <code>optional .exec.DrillbitEndpoint endpoint = 9;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
     /**
      * <code>optional .exec.DrillbitEndpoint endpoint = 9;</code>
      */
     public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder getEndpointOrBuilder() {
-      return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+      return endpoint_;
     }
 
+    // optional int64 last_update = 10;
     public static final int LAST_UPDATE_FIELD_NUMBER = 10;
     private long lastUpdate_;
     /**
@@ -20836,6 +18675,7 @@
       return lastUpdate_;
     }
 
+    // optional int64 last_progress = 11;
     public static final int LAST_PROGRESS_FIELD_NUMBER = 11;
     private long lastProgress_;
     /**
@@ -20851,25 +18691,36 @@
       return lastProgress_;
     }
 
+    private void initFields() {
+      state_ = org.apache.drill.exec.proto.UserBitShared.FragmentState.SENDING;
+      error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+      minorFragmentId_ = 0;
+      operatorProfile_ = java.util.Collections.emptyList();
+      startTime_ = 0L;
+      endTime_ = 0L;
+      memoryUsed_ = 0L;
+      maxMemoryUsed_ = 0L;
+      endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      lastUpdate_ = 0L;
+      lastProgress_ = 0L;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, state_);
+        output.writeEnum(1, state_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getError());
+        output.writeMessage(2, error_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeInt32(3, minorFragmentId_);
@@ -20890,7 +18741,7 @@
         output.writeInt64(8, maxMemoryUsed_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        output.writeMessage(9, getEndpoint());
+        output.writeMessage(9, endpoint_);
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
         output.writeInt64(10, lastUpdate_);
@@ -20898,22 +18749,22 @@
       if (((bitField0_ & 0x00000200) == 0x00000200)) {
         output.writeInt64(11, lastProgress_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, state_);
+          .computeEnumSize(1, state_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getError());
+          .computeMessageSize(2, error_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
@@ -20941,7 +18792,7 @@
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(9, getEndpoint());
+          .computeMessageSize(9, endpoint_);
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
         size += com.google.protobuf.CodedOutputStream
@@ -20951,150 +18802,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt64Size(11, lastProgress_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile other = (org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile) obj;
-
-      boolean result = true;
-      result = result && (hasState() == other.hasState());
-      if (hasState()) {
-        result = result && state_ == other.state_;
-      }
-      result = result && (hasError() == other.hasError());
-      if (hasError()) {
-        result = result && getError()
-            .equals(other.getError());
-      }
-      result = result && (hasMinorFragmentId() == other.hasMinorFragmentId());
-      if (hasMinorFragmentId()) {
-        result = result && (getMinorFragmentId()
-            == other.getMinorFragmentId());
-      }
-      result = result && getOperatorProfileList()
-          .equals(other.getOperatorProfileList());
-      result = result && (hasStartTime() == other.hasStartTime());
-      if (hasStartTime()) {
-        result = result && (getStartTime()
-            == other.getStartTime());
-      }
-      result = result && (hasEndTime() == other.hasEndTime());
-      if (hasEndTime()) {
-        result = result && (getEndTime()
-            == other.getEndTime());
-      }
-      result = result && (hasMemoryUsed() == other.hasMemoryUsed());
-      if (hasMemoryUsed()) {
-        result = result && (getMemoryUsed()
-            == other.getMemoryUsed());
-      }
-      result = result && (hasMaxMemoryUsed() == other.hasMaxMemoryUsed());
-      if (hasMaxMemoryUsed()) {
-        result = result && (getMaxMemoryUsed()
-            == other.getMaxMemoryUsed());
-      }
-      result = result && (hasEndpoint() == other.hasEndpoint());
-      if (hasEndpoint()) {
-        result = result && getEndpoint()
-            .equals(other.getEndpoint());
-      }
-      result = result && (hasLastUpdate() == other.hasLastUpdate());
-      if (hasLastUpdate()) {
-        result = result && (getLastUpdate()
-            == other.getLastUpdate());
-      }
-      result = result && (hasLastProgress() == other.hasLastProgress());
-      if (hasLastProgress()) {
-        result = result && (getLastProgress()
-            == other.getLastProgress());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasState()) {
-        hash = (37 * hash) + STATE_FIELD_NUMBER;
-        hash = (53 * hash) + state_;
-      }
-      if (hasError()) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getError().hashCode();
-      }
-      if (hasMinorFragmentId()) {
-        hash = (37 * hash) + MINOR_FRAGMENT_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getMinorFragmentId();
-      }
-      if (getOperatorProfileCount() > 0) {
-        hash = (37 * hash) + OPERATOR_PROFILE_FIELD_NUMBER;
-        hash = (53 * hash) + getOperatorProfileList().hashCode();
-      }
-      if (hasStartTime()) {
-        hash = (37 * hash) + START_TIME_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getStartTime());
-      }
-      if (hasEndTime()) {
-        hash = (37 * hash) + END_TIME_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getEndTime());
-      }
-      if (hasMemoryUsed()) {
-        hash = (37 * hash) + MEMORY_USED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getMemoryUsed());
-      }
-      if (hasMaxMemoryUsed()) {
-        hash = (37 * hash) + MAX_MEMORY_USED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getMaxMemoryUsed());
-      }
-      if (hasEndpoint()) {
-        hash = (37 * hash) + ENDPOINT_FIELD_NUMBER;
-        hash = (53 * hash) + getEndpoint().hashCode();
-      }
-      if (hasLastUpdate()) {
-        hash = (37 * hash) + LAST_UPDATE_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getLastUpdate());
-      }
-      if (hasLastProgress()) {
-        hash = (37 * hash) + LAST_PROGRESS_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getLastProgress());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -21118,59 +18837,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -21178,16 +18884,14 @@
      * Protobuf type {@code exec.shared.MinorFragmentProfile}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.MinorFragmentProfile)
-        org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfileOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MinorFragmentProfile_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MinorFragmentProfile_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -21200,25 +18904,27 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getErrorFieldBuilder();
           getOperatorProfileFieldBuilder();
           getEndpointFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        state_ = 0;
+        state_ = org.apache.drill.exec.proto.UserBitShared.FragmentState.SENDING;
         bitField0_ = (bitField0_ & ~0x00000001);
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
         } else {
           errorBuilder_.clear();
         }
@@ -21240,7 +18946,7 @@
         maxMemoryUsed_ = 0L;
         bitField0_ = (bitField0_ & ~0x00000080);
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
         } else {
           endpointBuilder_.clear();
         }
@@ -21252,18 +18958,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MinorFragmentProfile_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile build() {
         org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile result = buildPartial();
         if (!result.isInitialized()) {
@@ -21272,7 +18979,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile result = new org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile(this);
         int from_bitField0_ = bitField0_;
@@ -21339,39 +19045,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile)other);
@@ -21411,7 +19084,7 @@
               operatorProfile_ = other.operatorProfile_;
               bitField0_ = (bitField0_ & ~0x00000008);
               operatorProfileBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getOperatorProfileFieldBuilder() : null;
             } else {
               operatorProfileBuilder_.addAllMessages(other.operatorProfile_);
@@ -21439,17 +19112,14 @@
         if (other.hasLastProgress()) {
           setLastProgress(other.getLastProgress());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -21459,7 +19129,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -21469,7 +19139,8 @@
       }
       private int bitField0_;
 
-      private int state_ = 0;
+      // optional .exec.shared.FragmentState state = 1;
+      private org.apache.drill.exec.proto.UserBitShared.FragmentState state_ = org.apache.drill.exec.proto.UserBitShared.FragmentState.SENDING;
       /**
        * <code>optional .exec.shared.FragmentState state = 1;</code>
        */
@@ -21480,9 +19151,7 @@
        * <code>optional .exec.shared.FragmentState state = 1;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.FragmentState getState() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.FragmentState result = org.apache.drill.exec.proto.UserBitShared.FragmentState.valueOf(state_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.FragmentState.SENDING : result;
+        return state_;
       }
       /**
        * <code>optional .exec.shared.FragmentState state = 1;</code>
@@ -21492,7 +19161,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        state_ = value.getNumber();
+        state_ = value;
         onChanged();
         return this;
       }
@@ -21501,13 +19170,14 @@
        */
       public Builder clearState() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        state_ = 0;
+        state_ = org.apache.drill.exec.proto.UserBitShared.FragmentState.SENDING;
         onChanged();
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.DrillPBError error = 2;
+      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> errorBuilder_;
       /**
        * <code>optional .exec.shared.DrillPBError error = 2;</code>
@@ -21520,7 +19190,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
         if (errorBuilder_ == null) {
-          return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         } else {
           return errorBuilder_.getMessage();
         }
@@ -21561,7 +19231,6 @@
       public Builder mergeError(org.apache.drill.exec.proto.UserBitShared.DrillPBError value) {
         if (errorBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              error_ != null &&
               error_ != org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance()) {
             error_ =
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(error_).mergeFrom(value).buildPartial();
@@ -21580,7 +19249,7 @@
        */
       public Builder clearError() {
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
           onChanged();
         } else {
           errorBuilder_.clear();
@@ -21603,20 +19272,19 @@
         if (errorBuilder_ != null) {
           return errorBuilder_.getMessageOrBuilder();
         } else {
-          return error_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         }
       }
       /**
        * <code>optional .exec.shared.DrillPBError error = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> 
           getErrorFieldBuilder() {
         if (errorBuilder_ == null) {
-          errorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          errorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder>(
-                  getError(),
+                  error_,
                   getParentForChildren(),
                   isClean());
           error_ = null;
@@ -21624,6 +19292,7 @@
         return errorBuilder_;
       }
 
+      // optional int32 minor_fragment_id = 3;
       private int minorFragmentId_ ;
       /**
        * <code>optional int32 minor_fragment_id = 3;</code>
@@ -21656,6 +19325,7 @@
         return this;
       }
 
+      // repeated .exec.shared.OperatorProfile operator_profile = 4;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.OperatorProfile> operatorProfile_ =
         java.util.Collections.emptyList();
       private void ensureOperatorProfileIsMutable() {
@@ -21665,7 +19335,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.OperatorProfile, org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder, org.apache.drill.exec.proto.UserBitShared.OperatorProfileOrBuilder> operatorProfileBuilder_;
 
       /**
@@ -21797,8 +19467,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.OperatorProfile> values) {
         if (operatorProfileBuilder_ == null) {
           ensureOperatorProfileIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, operatorProfile_);
+          super.addAll(values, operatorProfile_);
           onChanged();
         } else {
           operatorProfileBuilder_.addAllMessages(values);
@@ -21881,11 +19550,11 @@
            getOperatorProfileBuilderList() {
         return getOperatorProfileFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.OperatorProfile, org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder, org.apache.drill.exec.proto.UserBitShared.OperatorProfileOrBuilder> 
           getOperatorProfileFieldBuilder() {
         if (operatorProfileBuilder_ == null) {
-          operatorProfileBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          operatorProfileBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.OperatorProfile, org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder, org.apache.drill.exec.proto.UserBitShared.OperatorProfileOrBuilder>(
                   operatorProfile_,
                   ((bitField0_ & 0x00000008) == 0x00000008),
@@ -21896,6 +19565,7 @@
         return operatorProfileBuilder_;
       }
 
+      // optional int64 start_time = 5;
       private long startTime_ ;
       /**
        * <code>optional int64 start_time = 5;</code>
@@ -21928,6 +19598,7 @@
         return this;
       }
 
+      // optional int64 end_time = 6;
       private long endTime_ ;
       /**
        * <code>optional int64 end_time = 6;</code>
@@ -21960,6 +19631,7 @@
         return this;
       }
 
+      // optional int64 memory_used = 7;
       private long memoryUsed_ ;
       /**
        * <code>optional int64 memory_used = 7;</code>
@@ -21992,6 +19664,7 @@
         return this;
       }
 
+      // optional int64 max_memory_used = 8;
       private long maxMemoryUsed_ ;
       /**
        * <code>optional int64 max_memory_used = 8;</code>
@@ -22024,8 +19697,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.DrillbitEndpoint endpoint = 9;
+      private org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> endpointBuilder_;
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 9;</code>
@@ -22038,7 +19712,7 @@
        */
       public org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint getEndpoint() {
         if (endpointBuilder_ == null) {
-          return endpoint_ == null ? org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         } else {
           return endpointBuilder_.getMessage();
         }
@@ -22079,7 +19753,6 @@
       public Builder mergeEndpoint(org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint value) {
         if (endpointBuilder_ == null) {
           if (((bitField0_ & 0x00000100) == 0x00000100) &&
-              endpoint_ != null &&
               endpoint_ != org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance()) {
             endpoint_ =
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.newBuilder(endpoint_).mergeFrom(value).buildPartial();
@@ -22098,7 +19771,7 @@
        */
       public Builder clearEndpoint() {
         if (endpointBuilder_ == null) {
-          endpoint_ = null;
+          endpoint_ = org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance();
           onChanged();
         } else {
           endpointBuilder_.clear();
@@ -22121,20 +19794,19 @@
         if (endpointBuilder_ != null) {
           return endpointBuilder_.getMessageOrBuilder();
         } else {
-          return endpoint_ == null ?
-              org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.getDefaultInstance() : endpoint_;
+          return endpoint_;
         }
       }
       /**
        * <code>optional .exec.DrillbitEndpoint endpoint = 9;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder> 
           getEndpointFieldBuilder() {
         if (endpointBuilder_ == null) {
-          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          endpointBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpoint.Builder, org.apache.drill.exec.proto.CoordinationProtos.DrillbitEndpointOrBuilder>(
-                  getEndpoint(),
+                  endpoint_,
                   getParentForChildren(),
                   isClean());
           endpoint_ = null;
@@ -22142,6 +19814,7 @@
         return endpointBuilder_;
       }
 
+      // optional int64 last_update = 10;
       private long lastUpdate_ ;
       /**
        * <code>optional int64 last_update = 10;</code>
@@ -22174,6 +19847,7 @@
         return this;
       }
 
+      // optional int64 last_progress = 11;
       private long lastProgress_ ;
       /**
        * <code>optional int64 last_progress = 11;</code>
@@ -22205,63 +19879,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.MinorFragmentProfile)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.MinorFragmentProfile)
-    private static final org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile();
+      defaultInstance = new MinorFragmentProfile(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<MinorFragmentProfile>
-        PARSER = new com.google.protobuf.AbstractParser<MinorFragmentProfile>() {
-      @java.lang.Override
-      public MinorFragmentProfile parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new MinorFragmentProfile(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<MinorFragmentProfile> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<MinorFragmentProfile> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.MinorFragmentProfile getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.MinorFragmentProfile)
   }
 
-  public interface OperatorProfileOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.OperatorProfile)
-      com.google.protobuf.MessageOrBuilder {
+  public interface OperatorProfileOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // repeated .exec.shared.StreamProfile input_profile = 1;
     /**
      * <code>repeated .exec.shared.StreamProfile input_profile = 1;</code>
      */
@@ -22286,6 +19919,7 @@
     org.apache.drill.exec.proto.UserBitShared.StreamProfileOrBuilder getInputProfileOrBuilder(
         int index);
 
+    // optional int32 operator_id = 3;
     /**
      * <code>optional int32 operator_id = 3;</code>
      */
@@ -22295,6 +19929,7 @@
      */
     int getOperatorId();
 
+    // optional int32 operator_type = 4;
     /**
      * <code>optional int32 operator_type = 4;</code>
      */
@@ -22304,6 +19939,7 @@
      */
     int getOperatorType();
 
+    // optional int64 setup_nanos = 5;
     /**
      * <code>optional int64 setup_nanos = 5;</code>
      */
@@ -22313,6 +19949,7 @@
      */
     long getSetupNanos();
 
+    // optional int64 process_nanos = 6;
     /**
      * <code>optional int64 process_nanos = 6;</code>
      */
@@ -22322,6 +19959,7 @@
      */
     long getProcessNanos();
 
+    // optional int64 peak_local_memory_allocated = 7;
     /**
      * <code>optional int64 peak_local_memory_allocated = 7;</code>
      */
@@ -22331,6 +19969,7 @@
      */
     long getPeakLocalMemoryAllocated();
 
+    // repeated .exec.shared.MetricValue metric = 8;
     /**
      * <code>repeated .exec.shared.MetricValue metric = 8;</code>
      */
@@ -22355,6 +19994,7 @@
     org.apache.drill.exec.proto.UserBitShared.MetricValueOrBuilder getMetricOrBuilder(
         int index);
 
+    // optional int64 wait_nanos = 9;
     /**
      * <code>optional int64 wait_nanos = 9;</code>
      */
@@ -22367,39 +20007,36 @@
   /**
    * Protobuf type {@code exec.shared.OperatorProfile}
    */
-  public  static final class OperatorProfile extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.OperatorProfile)
-      OperatorProfileOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class OperatorProfile extends
+      com.google.protobuf.GeneratedMessage
+      implements OperatorProfileOrBuilder {
     // Use OperatorProfile.newBuilder() to construct.
-    private OperatorProfile(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private OperatorProfile(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private OperatorProfile() {
-      inputProfile_ = java.util.Collections.emptyList();
-      operatorId_ = 0;
-      operatorType_ = 0;
-      setupNanos_ = 0L;
-      processNanos_ = 0L;
-      peakLocalMemoryAllocated_ = 0L;
-      metric_ = java.util.Collections.emptyList();
-      waitNanos_ = 0L;
+    private OperatorProfile(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final OperatorProfile defaultInstance;
+    public static OperatorProfile getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public OperatorProfile getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private OperatorProfile(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -22411,13 +20048,19 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                 inputProfile_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.StreamProfile>();
                 mutable_bitField0_ |= 0x00000001;
               }
-              inputProfile_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.StreamProfile.PARSER, extensionRegistry));
+              inputProfile_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.StreamProfile.PARSER, extensionRegistry));
               break;
             }
             case 24: {
@@ -22450,8 +20093,7 @@
                 metric_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.MetricValue>();
                 mutable_bitField0_ |= 0x00000040;
               }
-              metric_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.MetricValue.PARSER, extensionRegistry));
+              metric_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.MetricValue.PARSER, extensionRegistry));
               break;
             }
             case 72: {
@@ -22459,20 +20101,13 @@
               waitNanos_ = input.readInt64();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
           inputProfile_ = java.util.Collections.unmodifiableList(inputProfile_);
@@ -22489,15 +20124,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_OperatorProfile_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_OperatorProfile_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.OperatorProfile.class, org.apache.drill.exec.proto.UserBitShared.OperatorProfile.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<OperatorProfile> PARSER =
+        new com.google.protobuf.AbstractParser<OperatorProfile>() {
+      public OperatorProfile parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new OperatorProfile(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<OperatorProfile> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // repeated .exec.shared.StreamProfile input_profile = 1;
     public static final int INPUT_PROFILE_FIELD_NUMBER = 1;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.StreamProfile> inputProfile_;
     /**
@@ -22533,6 +20183,7 @@
       return inputProfile_.get(index);
     }
 
+    // optional int32 operator_id = 3;
     public static final int OPERATOR_ID_FIELD_NUMBER = 3;
     private int operatorId_;
     /**
@@ -22548,6 +20199,7 @@
       return operatorId_;
     }
 
+    // optional int32 operator_type = 4;
     public static final int OPERATOR_TYPE_FIELD_NUMBER = 4;
     private int operatorType_;
     /**
@@ -22563,6 +20215,7 @@
       return operatorType_;
     }
 
+    // optional int64 setup_nanos = 5;
     public static final int SETUP_NANOS_FIELD_NUMBER = 5;
     private long setupNanos_;
     /**
@@ -22578,6 +20231,7 @@
       return setupNanos_;
     }
 
+    // optional int64 process_nanos = 6;
     public static final int PROCESS_NANOS_FIELD_NUMBER = 6;
     private long processNanos_;
     /**
@@ -22593,6 +20247,7 @@
       return processNanos_;
     }
 
+    // optional int64 peak_local_memory_allocated = 7;
     public static final int PEAK_LOCAL_MEMORY_ALLOCATED_FIELD_NUMBER = 7;
     private long peakLocalMemoryAllocated_;
     /**
@@ -22608,6 +20263,7 @@
       return peakLocalMemoryAllocated_;
     }
 
+    // repeated .exec.shared.MetricValue metric = 8;
     public static final int METRIC_FIELD_NUMBER = 8;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.MetricValue> metric_;
     /**
@@ -22643,6 +20299,7 @@
       return metric_.get(index);
     }
 
+    // optional int64 wait_nanos = 9;
     public static final int WAIT_NANOS_FIELD_NUMBER = 9;
     private long waitNanos_;
     /**
@@ -22658,20 +20315,28 @@
       return waitNanos_;
     }
 
+    private void initFields() {
+      inputProfile_ = java.util.Collections.emptyList();
+      operatorId_ = 0;
+      operatorType_ = 0;
+      setupNanos_ = 0L;
+      processNanos_ = 0L;
+      peakLocalMemoryAllocated_ = 0L;
+      metric_ = java.util.Collections.emptyList();
+      waitNanos_ = 0L;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       for (int i = 0; i < inputProfile_.size(); i++) {
         output.writeMessage(1, inputProfile_.get(i));
       }
@@ -22696,12 +20361,12 @@
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
         output.writeInt64(9, waitNanos_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -22737,119 +20402,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt64Size(9, waitNanos_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.OperatorProfile)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.OperatorProfile other = (org.apache.drill.exec.proto.UserBitShared.OperatorProfile) obj;
-
-      boolean result = true;
-      result = result && getInputProfileList()
-          .equals(other.getInputProfileList());
-      result = result && (hasOperatorId() == other.hasOperatorId());
-      if (hasOperatorId()) {
-        result = result && (getOperatorId()
-            == other.getOperatorId());
-      }
-      result = result && (hasOperatorType() == other.hasOperatorType());
-      if (hasOperatorType()) {
-        result = result && (getOperatorType()
-            == other.getOperatorType());
-      }
-      result = result && (hasSetupNanos() == other.hasSetupNanos());
-      if (hasSetupNanos()) {
-        result = result && (getSetupNanos()
-            == other.getSetupNanos());
-      }
-      result = result && (hasProcessNanos() == other.hasProcessNanos());
-      if (hasProcessNanos()) {
-        result = result && (getProcessNanos()
-            == other.getProcessNanos());
-      }
-      result = result && (hasPeakLocalMemoryAllocated() == other.hasPeakLocalMemoryAllocated());
-      if (hasPeakLocalMemoryAllocated()) {
-        result = result && (getPeakLocalMemoryAllocated()
-            == other.getPeakLocalMemoryAllocated());
-      }
-      result = result && getMetricList()
-          .equals(other.getMetricList());
-      result = result && (hasWaitNanos() == other.hasWaitNanos());
-      if (hasWaitNanos()) {
-        result = result && (getWaitNanos()
-            == other.getWaitNanos());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (getInputProfileCount() > 0) {
-        hash = (37 * hash) + INPUT_PROFILE_FIELD_NUMBER;
-        hash = (53 * hash) + getInputProfileList().hashCode();
-      }
-      if (hasOperatorId()) {
-        hash = (37 * hash) + OPERATOR_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getOperatorId();
-      }
-      if (hasOperatorType()) {
-        hash = (37 * hash) + OPERATOR_TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + getOperatorType();
-      }
-      if (hasSetupNanos()) {
-        hash = (37 * hash) + SETUP_NANOS_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getSetupNanos());
-      }
-      if (hasProcessNanos()) {
-        hash = (37 * hash) + PROCESS_NANOS_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getProcessNanos());
-      }
-      if (hasPeakLocalMemoryAllocated()) {
-        hash = (37 * hash) + PEAK_LOCAL_MEMORY_ALLOCATED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getPeakLocalMemoryAllocated());
-      }
-      if (getMetricCount() > 0) {
-        hash = (37 * hash) + METRIC_FIELD_NUMBER;
-        hash = (53 * hash) + getMetricList().hashCode();
-      }
-      if (hasWaitNanos()) {
-        hash = (37 * hash) + WAIT_NANOS_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getWaitNanos());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -22873,59 +20437,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.OperatorProfile prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -22933,16 +20484,14 @@
      * Protobuf type {@code exec.shared.OperatorProfile}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.OperatorProfile)
-        org.apache.drill.exec.proto.UserBitShared.OperatorProfileOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.OperatorProfileOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_OperatorProfile_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_OperatorProfile_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -22955,18 +20504,20 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getInputProfileFieldBuilder();
           getMetricFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (inputProfileBuilder_ == null) {
@@ -22996,18 +20547,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_OperatorProfile_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.OperatorProfile getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.OperatorProfile.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.OperatorProfile build() {
         org.apache.drill.exec.proto.UserBitShared.OperatorProfile result = buildPartial();
         if (!result.isInitialized()) {
@@ -23016,7 +20568,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.OperatorProfile buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.OperatorProfile result = new org.apache.drill.exec.proto.UserBitShared.OperatorProfile(this);
         int from_bitField0_ = bitField0_;
@@ -23068,39 +20619,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.OperatorProfile) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.OperatorProfile)other);
@@ -23131,7 +20649,7 @@
               inputProfile_ = other.inputProfile_;
               bitField0_ = (bitField0_ & ~0x00000001);
               inputProfileBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getInputProfileFieldBuilder() : null;
             } else {
               inputProfileBuilder_.addAllMessages(other.inputProfile_);
@@ -23172,7 +20690,7 @@
               metric_ = other.metric_;
               bitField0_ = (bitField0_ & ~0x00000040);
               metricBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getMetricFieldBuilder() : null;
             } else {
               metricBuilder_.addAllMessages(other.metric_);
@@ -23182,17 +20700,14 @@
         if (other.hasWaitNanos()) {
           setWaitNanos(other.getWaitNanos());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -23202,7 +20717,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.OperatorProfile) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -23212,6 +20727,7 @@
       }
       private int bitField0_;
 
+      // repeated .exec.shared.StreamProfile input_profile = 1;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.StreamProfile> inputProfile_ =
         java.util.Collections.emptyList();
       private void ensureInputProfileIsMutable() {
@@ -23221,7 +20737,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.StreamProfile, org.apache.drill.exec.proto.UserBitShared.StreamProfile.Builder, org.apache.drill.exec.proto.UserBitShared.StreamProfileOrBuilder> inputProfileBuilder_;
 
       /**
@@ -23353,8 +20869,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.StreamProfile> values) {
         if (inputProfileBuilder_ == null) {
           ensureInputProfileIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, inputProfile_);
+          super.addAll(values, inputProfile_);
           onChanged();
         } else {
           inputProfileBuilder_.addAllMessages(values);
@@ -23437,11 +20952,11 @@
            getInputProfileBuilderList() {
         return getInputProfileFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.StreamProfile, org.apache.drill.exec.proto.UserBitShared.StreamProfile.Builder, org.apache.drill.exec.proto.UserBitShared.StreamProfileOrBuilder> 
           getInputProfileFieldBuilder() {
         if (inputProfileBuilder_ == null) {
-          inputProfileBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          inputProfileBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.StreamProfile, org.apache.drill.exec.proto.UserBitShared.StreamProfile.Builder, org.apache.drill.exec.proto.UserBitShared.StreamProfileOrBuilder>(
                   inputProfile_,
                   ((bitField0_ & 0x00000001) == 0x00000001),
@@ -23452,6 +20967,7 @@
         return inputProfileBuilder_;
       }
 
+      // optional int32 operator_id = 3;
       private int operatorId_ ;
       /**
        * <code>optional int32 operator_id = 3;</code>
@@ -23484,6 +21000,7 @@
         return this;
       }
 
+      // optional int32 operator_type = 4;
       private int operatorType_ ;
       /**
        * <code>optional int32 operator_type = 4;</code>
@@ -23516,6 +21033,7 @@
         return this;
       }
 
+      // optional int64 setup_nanos = 5;
       private long setupNanos_ ;
       /**
        * <code>optional int64 setup_nanos = 5;</code>
@@ -23548,6 +21066,7 @@
         return this;
       }
 
+      // optional int64 process_nanos = 6;
       private long processNanos_ ;
       /**
        * <code>optional int64 process_nanos = 6;</code>
@@ -23580,6 +21099,7 @@
         return this;
       }
 
+      // optional int64 peak_local_memory_allocated = 7;
       private long peakLocalMemoryAllocated_ ;
       /**
        * <code>optional int64 peak_local_memory_allocated = 7;</code>
@@ -23612,6 +21132,7 @@
         return this;
       }
 
+      // repeated .exec.shared.MetricValue metric = 8;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.MetricValue> metric_ =
         java.util.Collections.emptyList();
       private void ensureMetricIsMutable() {
@@ -23621,7 +21142,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.MetricValue, org.apache.drill.exec.proto.UserBitShared.MetricValue.Builder, org.apache.drill.exec.proto.UserBitShared.MetricValueOrBuilder> metricBuilder_;
 
       /**
@@ -23753,8 +21274,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.MetricValue> values) {
         if (metricBuilder_ == null) {
           ensureMetricIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, metric_);
+          super.addAll(values, metric_);
           onChanged();
         } else {
           metricBuilder_.addAllMessages(values);
@@ -23837,11 +21357,11 @@
            getMetricBuilderList() {
         return getMetricFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.MetricValue, org.apache.drill.exec.proto.UserBitShared.MetricValue.Builder, org.apache.drill.exec.proto.UserBitShared.MetricValueOrBuilder> 
           getMetricFieldBuilder() {
         if (metricBuilder_ == null) {
-          metricBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          metricBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.MetricValue, org.apache.drill.exec.proto.UserBitShared.MetricValue.Builder, org.apache.drill.exec.proto.UserBitShared.MetricValueOrBuilder>(
                   metric_,
                   ((bitField0_ & 0x00000040) == 0x00000040),
@@ -23852,6 +21372,7 @@
         return metricBuilder_;
       }
 
+      // optional int64 wait_nanos = 9;
       private long waitNanos_ ;
       /**
        * <code>optional int64 wait_nanos = 9;</code>
@@ -23883,63 +21404,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.OperatorProfile)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.OperatorProfile)
-    private static final org.apache.drill.exec.proto.UserBitShared.OperatorProfile DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.OperatorProfile();
+      defaultInstance = new OperatorProfile(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.OperatorProfile getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<OperatorProfile>
-        PARSER = new com.google.protobuf.AbstractParser<OperatorProfile>() {
-      @java.lang.Override
-      public OperatorProfile parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new OperatorProfile(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<OperatorProfile> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<OperatorProfile> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.OperatorProfile getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.OperatorProfile)
   }
 
-  public interface StreamProfileOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.StreamProfile)
-      com.google.protobuf.MessageOrBuilder {
+  public interface StreamProfileOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int64 records = 1;
     /**
      * <code>optional int64 records = 1;</code>
      */
@@ -23949,6 +21429,7 @@
      */
     long getRecords();
 
+    // optional int64 batches = 2;
     /**
      * <code>optional int64 batches = 2;</code>
      */
@@ -23958,6 +21439,7 @@
      */
     long getBatches();
 
+    // optional int64 schemas = 3;
     /**
      * <code>optional int64 schemas = 3;</code>
      */
@@ -23970,34 +21452,36 @@
   /**
    * Protobuf type {@code exec.shared.StreamProfile}
    */
-  public  static final class StreamProfile extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.StreamProfile)
-      StreamProfileOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class StreamProfile extends
+      com.google.protobuf.GeneratedMessage
+      implements StreamProfileOrBuilder {
     // Use StreamProfile.newBuilder() to construct.
-    private StreamProfile(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private StreamProfile(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private StreamProfile() {
-      records_ = 0L;
-      batches_ = 0L;
-      schemas_ = 0L;
+    private StreamProfile(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final StreamProfile defaultInstance;
+    public static StreamProfile getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public StreamProfile getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private StreamProfile(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -24009,6 +21493,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               records_ = input.readInt64();
@@ -24024,20 +21515,13 @@
               schemas_ = input.readInt64();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -24048,15 +21532,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StreamProfile_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StreamProfile_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.StreamProfile.class, org.apache.drill.exec.proto.UserBitShared.StreamProfile.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<StreamProfile> PARSER =
+        new com.google.protobuf.AbstractParser<StreamProfile>() {
+      public StreamProfile parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new StreamProfile(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<StreamProfile> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int64 records = 1;
     public static final int RECORDS_FIELD_NUMBER = 1;
     private long records_;
     /**
@@ -24072,6 +21571,7 @@
       return records_;
     }
 
+    // optional int64 batches = 2;
     public static final int BATCHES_FIELD_NUMBER = 2;
     private long batches_;
     /**
@@ -24087,6 +21587,7 @@
       return batches_;
     }
 
+    // optional int64 schemas = 3;
     public static final int SCHEMAS_FIELD_NUMBER = 3;
     private long schemas_;
     /**
@@ -24102,20 +21603,23 @@
       return schemas_;
     }
 
+    private void initFields() {
+      records_ = 0L;
+      batches_ = 0L;
+      schemas_ = 0L;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt64(1, records_);
       }
@@ -24125,12 +21629,12 @@
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeInt64(3, schemas_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -24146,79 +21650,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt64Size(3, schemas_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.StreamProfile)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.StreamProfile other = (org.apache.drill.exec.proto.UserBitShared.StreamProfile) obj;
-
-      boolean result = true;
-      result = result && (hasRecords() == other.hasRecords());
-      if (hasRecords()) {
-        result = result && (getRecords()
-            == other.getRecords());
-      }
-      result = result && (hasBatches() == other.hasBatches());
-      if (hasBatches()) {
-        result = result && (getBatches()
-            == other.getBatches());
-      }
-      result = result && (hasSchemas() == other.hasSchemas());
-      if (hasSchemas()) {
-        result = result && (getSchemas()
-            == other.getSchemas());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasRecords()) {
-        hash = (37 * hash) + RECORDS_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getRecords());
-      }
-      if (hasBatches()) {
-        hash = (37 * hash) + BATCHES_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getBatches());
-      }
-      if (hasSchemas()) {
-        hash = (37 * hash) + SCHEMAS_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getSchemas());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.StreamProfile parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.StreamProfile parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.StreamProfile parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -24242,59 +21685,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.StreamProfile parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StreamProfile parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StreamProfile parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StreamProfile parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StreamProfile parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.StreamProfile parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.StreamProfile prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -24302,16 +21732,14 @@
      * Protobuf type {@code exec.shared.StreamProfile}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.StreamProfile)
-        org.apache.drill.exec.proto.UserBitShared.StreamProfileOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.StreamProfileOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StreamProfile_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StreamProfile_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -24324,16 +21752,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         records_ = 0L;
@@ -24345,18 +21775,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_StreamProfile_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.StreamProfile getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.StreamProfile.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.StreamProfile build() {
         org.apache.drill.exec.proto.UserBitShared.StreamProfile result = buildPartial();
         if (!result.isInitialized()) {
@@ -24365,7 +21796,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.StreamProfile buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.StreamProfile result = new org.apache.drill.exec.proto.UserBitShared.StreamProfile(this);
         int from_bitField0_ = bitField0_;
@@ -24387,39 +21817,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.StreamProfile) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.StreamProfile)other);
@@ -24440,17 +21837,14 @@
         if (other.hasSchemas()) {
           setSchemas(other.getSchemas());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -24460,7 +21854,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.StreamProfile) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -24470,6 +21864,7 @@
       }
       private int bitField0_;
 
+      // optional int64 records = 1;
       private long records_ ;
       /**
        * <code>optional int64 records = 1;</code>
@@ -24502,6 +21897,7 @@
         return this;
       }
 
+      // optional int64 batches = 2;
       private long batches_ ;
       /**
        * <code>optional int64 batches = 2;</code>
@@ -24534,6 +21930,7 @@
         return this;
       }
 
+      // optional int64 schemas = 3;
       private long schemas_ ;
       /**
        * <code>optional int64 schemas = 3;</code>
@@ -24565,63 +21962,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.StreamProfile)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.StreamProfile)
-    private static final org.apache.drill.exec.proto.UserBitShared.StreamProfile DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.StreamProfile();
+      defaultInstance = new StreamProfile(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.StreamProfile getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<StreamProfile>
-        PARSER = new com.google.protobuf.AbstractParser<StreamProfile>() {
-      @java.lang.Override
-      public StreamProfile parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new StreamProfile(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<StreamProfile> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<StreamProfile> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.StreamProfile getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.StreamProfile)
   }
 
-  public interface MetricValueOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.MetricValue)
-      com.google.protobuf.MessageOrBuilder {
+  public interface MetricValueOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 metric_id = 1;
     /**
      * <code>optional int32 metric_id = 1;</code>
      */
@@ -24631,6 +21987,7 @@
      */
     int getMetricId();
 
+    // optional int64 long_value = 2;
     /**
      * <code>optional int64 long_value = 2;</code>
      */
@@ -24640,6 +21997,7 @@
      */
     long getLongValue();
 
+    // optional double double_value = 3;
     /**
      * <code>optional double double_value = 3;</code>
      */
@@ -24652,34 +22010,36 @@
   /**
    * Protobuf type {@code exec.shared.MetricValue}
    */
-  public  static final class MetricValue extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.MetricValue)
-      MetricValueOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class MetricValue extends
+      com.google.protobuf.GeneratedMessage
+      implements MetricValueOrBuilder {
     // Use MetricValue.newBuilder() to construct.
-    private MetricValue(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private MetricValue(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private MetricValue() {
-      metricId_ = 0;
-      longValue_ = 0L;
-      doubleValue_ = 0D;
+    private MetricValue(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final MetricValue defaultInstance;
+    public static MetricValue getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public MetricValue getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private MetricValue(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -24691,6 +22051,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               metricId_ = input.readInt32();
@@ -24706,20 +22073,13 @@
               doubleValue_ = input.readDouble();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -24730,15 +22090,30 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MetricValue_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MetricValue_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.MetricValue.class, org.apache.drill.exec.proto.UserBitShared.MetricValue.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<MetricValue> PARSER =
+        new com.google.protobuf.AbstractParser<MetricValue>() {
+      public MetricValue parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new MetricValue(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<MetricValue> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 metric_id = 1;
     public static final int METRIC_ID_FIELD_NUMBER = 1;
     private int metricId_;
     /**
@@ -24754,6 +22129,7 @@
       return metricId_;
     }
 
+    // optional int64 long_value = 2;
     public static final int LONG_VALUE_FIELD_NUMBER = 2;
     private long longValue_;
     /**
@@ -24769,6 +22145,7 @@
       return longValue_;
     }
 
+    // optional double double_value = 3;
     public static final int DOUBLE_VALUE_FIELD_NUMBER = 3;
     private double doubleValue_;
     /**
@@ -24784,20 +22161,23 @@
       return doubleValue_;
     }
 
+    private void initFields() {
+      metricId_ = 0;
+      longValue_ = 0L;
+      doubleValue_ = 0D;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(1, metricId_);
       }
@@ -24807,12 +22187,12 @@
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeDouble(3, doubleValue_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -24828,80 +22208,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeDoubleSize(3, doubleValue_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.MetricValue)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.MetricValue other = (org.apache.drill.exec.proto.UserBitShared.MetricValue) obj;
-
-      boolean result = true;
-      result = result && (hasMetricId() == other.hasMetricId());
-      if (hasMetricId()) {
-        result = result && (getMetricId()
-            == other.getMetricId());
-      }
-      result = result && (hasLongValue() == other.hasLongValue());
-      if (hasLongValue()) {
-        result = result && (getLongValue()
-            == other.getLongValue());
-      }
-      result = result && (hasDoubleValue() == other.hasDoubleValue());
-      if (hasDoubleValue()) {
-        result = result && (
-            java.lang.Double.doubleToLongBits(getDoubleValue())
-            == java.lang.Double.doubleToLongBits(
-                other.getDoubleValue()));
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasMetricId()) {
-        hash = (37 * hash) + METRIC_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getMetricId();
-      }
-      if (hasLongValue()) {
-        hash = (37 * hash) + LONG_VALUE_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            getLongValue());
-      }
-      if (hasDoubleValue()) {
-        hash = (37 * hash) + DOUBLE_VALUE_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
-            java.lang.Double.doubleToLongBits(getDoubleValue()));
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.MetricValue parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.MetricValue parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.MetricValue parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -24925,59 +22243,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.MetricValue parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MetricValue parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MetricValue parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MetricValue parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MetricValue parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.MetricValue parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.MetricValue prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -24985,16 +22290,14 @@
      * Protobuf type {@code exec.shared.MetricValue}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.MetricValue)
-        org.apache.drill.exec.proto.UserBitShared.MetricValueOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.MetricValueOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MetricValue_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MetricValue_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -25007,16 +22310,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         metricId_ = 0;
@@ -25028,18 +22333,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_MetricValue_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.MetricValue getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.MetricValue.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.MetricValue build() {
         org.apache.drill.exec.proto.UserBitShared.MetricValue result = buildPartial();
         if (!result.isInitialized()) {
@@ -25048,7 +22354,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.MetricValue buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.MetricValue result = new org.apache.drill.exec.proto.UserBitShared.MetricValue(this);
         int from_bitField0_ = bitField0_;
@@ -25070,39 +22375,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.MetricValue) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.MetricValue)other);
@@ -25123,17 +22395,14 @@
         if (other.hasDoubleValue()) {
           setDoubleValue(other.getDoubleValue());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -25143,7 +22412,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.MetricValue) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -25153,6 +22422,7 @@
       }
       private int bitField0_;
 
+      // optional int32 metric_id = 1;
       private int metricId_ ;
       /**
        * <code>optional int32 metric_id = 1;</code>
@@ -25185,6 +22455,7 @@
         return this;
       }
 
+      // optional int64 long_value = 2;
       private long longValue_ ;
       /**
        * <code>optional int64 long_value = 2;</code>
@@ -25217,6 +22488,7 @@
         return this;
       }
 
+      // optional double double_value = 3;
       private double doubleValue_ ;
       /**
        * <code>optional double double_value = 3;</code>
@@ -25248,63 +22520,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.MetricValue)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.MetricValue)
-    private static final org.apache.drill.exec.proto.UserBitShared.MetricValue DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.MetricValue();
+      defaultInstance = new MetricValue(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.MetricValue getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<MetricValue>
-        PARSER = new com.google.protobuf.AbstractParser<MetricValue>() {
-      @java.lang.Override
-      public MetricValue parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new MetricValue(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<MetricValue> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<MetricValue> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.MetricValue getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.MetricValue)
   }
 
-  public interface RegistryOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.Registry)
-      com.google.protobuf.MessageOrBuilder {
+  public interface RegistryOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // repeated .exec.shared.Jar jar = 1;
     /**
      * <code>repeated .exec.shared.Jar jar = 1;</code>
      */
@@ -25330,43 +22561,48 @@
         int index);
   }
   /**
+   * Protobuf type {@code exec.shared.Registry}
+   *
    * <pre>
    * Registry that contains list of jars, each jar contains its name and list of function signatures.
    *Structure example:
    *REGISTRY    -&gt; Jar1.jar   -&gt; upper(VARCHAR-REQUIRED)
    *-&gt; upper(VARCHAR-OPTIONAL)
+   *
    *-&gt; Jar2.jar   -&gt; lower(VARCHAR-REQUIRED)
    *-&gt; lower(VARCHAR-OPTIONAL)
    * </pre>
-   *
-   * Protobuf type {@code exec.shared.Registry}
    */
-  public  static final class Registry extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.Registry)
-      RegistryOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class Registry extends
+      com.google.protobuf.GeneratedMessage
+      implements RegistryOrBuilder {
     // Use Registry.newBuilder() to construct.
-    private Registry(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private Registry(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private Registry() {
-      jar_ = java.util.Collections.emptyList();
+    private Registry(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final Registry defaultInstance;
+    public static Registry getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public Registry getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private Registry(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -25378,20 +22614,19 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                 jar_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserBitShared.Jar>();
                 mutable_bitField0_ |= 0x00000001;
               }
-              jar_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserBitShared.Jar.PARSER, extensionRegistry));
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              jar_.add(input.readMessage(org.apache.drill.exec.proto.UserBitShared.Jar.PARSER, extensionRegistry));
               break;
             }
           }
@@ -25400,7 +22635,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
           jar_ = java.util.Collections.unmodifiableList(jar_);
@@ -25414,14 +22649,29 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Registry_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Registry_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.Registry.class, org.apache.drill.exec.proto.UserBitShared.Registry.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<Registry> PARSER =
+        new com.google.protobuf.AbstractParser<Registry>() {
+      public Registry parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new Registry(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<Registry> getParserForType() {
+      return PARSER;
+    }
+
+    // repeated .exec.shared.Jar jar = 1;
     public static final int JAR_FIELD_NUMBER = 1;
     private java.util.List<org.apache.drill.exec.proto.UserBitShared.Jar> jar_;
     /**
@@ -25457,29 +22707,30 @@
       return jar_.get(index);
     }
 
+    private void initFields() {
+      jar_ = java.util.Collections.emptyList();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       for (int i = 0; i < jar_.size(); i++) {
         output.writeMessage(1, jar_.get(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -25487,55 +22738,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeMessageSize(1, jar_.get(i));
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.Registry)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.Registry other = (org.apache.drill.exec.proto.UserBitShared.Registry) obj;
-
-      boolean result = true;
-      result = result && getJarList()
-          .equals(other.getJarList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (getJarCount() > 0) {
-        hash = (37 * hash) + JAR_FIELD_NUMBER;
-        hash = (53 * hash) + getJarList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.Registry parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.Registry parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.Registry parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -25559,85 +22773,71 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.Registry parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Registry parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Registry parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Registry parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Registry parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Registry parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.Registry prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.shared.Registry}
+     *
      * <pre>
      * Registry that contains list of jars, each jar contains its name and list of function signatures.
      *Structure example:
      *REGISTRY    -&gt; Jar1.jar   -&gt; upper(VARCHAR-REQUIRED)
      *-&gt; upper(VARCHAR-OPTIONAL)
+     *
      *-&gt; Jar2.jar   -&gt; lower(VARCHAR-REQUIRED)
      *-&gt; lower(VARCHAR-OPTIONAL)
      * </pre>
-     *
-     * Protobuf type {@code exec.shared.Registry}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.Registry)
-        org.apache.drill.exec.proto.UserBitShared.RegistryOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.RegistryOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Registry_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Registry_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -25650,17 +22850,19 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getJarFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (jarBuilder_ == null) {
@@ -25672,18 +22874,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Registry_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.Registry getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.Registry.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.Registry build() {
         org.apache.drill.exec.proto.UserBitShared.Registry result = buildPartial();
         if (!result.isInitialized()) {
@@ -25692,7 +22895,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.Registry buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.Registry result = new org.apache.drill.exec.proto.UserBitShared.Registry(this);
         int from_bitField0_ = bitField0_;
@@ -25709,39 +22911,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.Registry) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.Registry)other);
@@ -25772,24 +22941,21 @@
               jar_ = other.jar_;
               bitField0_ = (bitField0_ & ~0x00000001);
               jarBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getJarFieldBuilder() : null;
             } else {
               jarBuilder_.addAllMessages(other.jar_);
             }
           }
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -25799,7 +22965,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.Registry) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -25809,6 +22975,7 @@
       }
       private int bitField0_;
 
+      // repeated .exec.shared.Jar jar = 1;
       private java.util.List<org.apache.drill.exec.proto.UserBitShared.Jar> jar_ =
         java.util.Collections.emptyList();
       private void ensureJarIsMutable() {
@@ -25818,7 +22985,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.Jar, org.apache.drill.exec.proto.UserBitShared.Jar.Builder, org.apache.drill.exec.proto.UserBitShared.JarOrBuilder> jarBuilder_;
 
       /**
@@ -25950,8 +23117,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserBitShared.Jar> values) {
         if (jarBuilder_ == null) {
           ensureJarIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, jar_);
+          super.addAll(values, jar_);
           onChanged();
         } else {
           jarBuilder_.addAllMessages(values);
@@ -26034,11 +23200,11 @@
            getJarBuilderList() {
         return getJarFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.Jar, org.apache.drill.exec.proto.UserBitShared.Jar.Builder, org.apache.drill.exec.proto.UserBitShared.JarOrBuilder> 
           getJarFieldBuilder() {
         if (jarBuilder_ == null) {
-          jarBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          jarBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.Jar, org.apache.drill.exec.proto.UserBitShared.Jar.Builder, org.apache.drill.exec.proto.UserBitShared.JarOrBuilder>(
                   jar_,
                   ((bitField0_ & 0x00000001) == 0x00000001),
@@ -26048,63 +23214,22 @@
         }
         return jarBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.Registry)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.Registry)
-    private static final org.apache.drill.exec.proto.UserBitShared.Registry DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.Registry();
+      defaultInstance = new Registry(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.Registry getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<Registry>
-        PARSER = new com.google.protobuf.AbstractParser<Registry>() {
-      @java.lang.Override
-      public Registry parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new Registry(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<Registry> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<Registry> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.Registry getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.Registry)
   }
 
-  public interface JarOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.Jar)
-      com.google.protobuf.MessageOrBuilder {
+  public interface JarOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string name = 1;
     /**
      * <code>optional string name = 1;</code>
      */
@@ -26119,11 +23244,12 @@
     com.google.protobuf.ByteString
         getNameBytes();
 
+    // repeated string function_signature = 2;
     /**
      * <code>repeated string function_signature = 2;</code>
      */
     java.util.List<java.lang.String>
-        getFunctionSignatureList();
+    getFunctionSignatureList();
     /**
      * <code>repeated string function_signature = 2;</code>
      */
@@ -26139,40 +23265,43 @@
         getFunctionSignatureBytes(int index);
   }
   /**
+   * Protobuf type {@code exec.shared.Jar}
+   *
    * <pre>
    * Jar contains jar name and list of function signatures.
    *Function signature is concatenation of function name and its input parameters. 
    * </pre>
-   *
-   * Protobuf type {@code exec.shared.Jar}
    */
-  public  static final class Jar extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.Jar)
-      JarOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class Jar extends
+      com.google.protobuf.GeneratedMessage
+      implements JarOrBuilder {
     // Use Jar.newBuilder() to construct.
-    private Jar(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private Jar(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private Jar() {
-      name_ = "";
-      functionSignature_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+    private Jar(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final Jar defaultInstance;
+    public static Jar getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public Jar getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private Jar(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -26184,26 +23313,24 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              name_ = bs;
+              name_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                 functionSignature_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField0_ |= 0x00000002;
               }
-              functionSignature_.add(bs);
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              functionSignature_.add(input.readBytes());
               break;
             }
           }
@@ -26212,10 +23339,10 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
-          functionSignature_ = functionSignature_.getUnmodifiableView();
+          functionSignature_ = new com.google.protobuf.UnmodifiableLazyStringList(functionSignature_);
         }
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -26226,17 +23353,32 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Jar_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Jar_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.Jar.class, org.apache.drill.exec.proto.UserBitShared.Jar.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<Jar> PARSER =
+        new com.google.protobuf.AbstractParser<Jar>() {
+      public Jar parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new Jar(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<Jar> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string name = 1;
     public static final int NAME_FIELD_NUMBER = 1;
-    private volatile java.lang.Object name_;
+    private java.lang.Object name_;
     /**
      * <code>optional string name = 1;</code>
      */
@@ -26277,12 +23419,13 @@
       }
     }
 
+    // repeated string function_signature = 2;
     public static final int FUNCTION_SIGNATURE_FIELD_NUMBER = 2;
     private com.google.protobuf.LazyStringList functionSignature_;
     /**
      * <code>repeated string function_signature = 2;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getFunctionSignatureList() {
       return functionSignature_;
     }
@@ -26306,104 +23449,62 @@
       return functionSignature_.getByteString(index);
     }
 
+    private void initFields() {
+      name_ = "";
+      functionSignature_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
+        output.writeBytes(1, getNameBytes());
       }
       for (int i = 0; i < functionSignature_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, functionSignature_.getRaw(i));
+        output.writeBytes(2, functionSignature_.getByteString(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getNameBytes());
       }
       {
         int dataSize = 0;
         for (int i = 0; i < functionSignature_.size(); i++) {
-          dataSize += computeStringSizeNoTag(functionSignature_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(functionSignature_.getByteString(i));
         }
         size += dataSize;
         size += 1 * getFunctionSignatureList().size();
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.Jar)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.Jar other = (org.apache.drill.exec.proto.UserBitShared.Jar) obj;
-
-      boolean result = true;
-      result = result && (hasName() == other.hasName());
-      if (hasName()) {
-        result = result && getName()
-            .equals(other.getName());
-      }
-      result = result && getFunctionSignatureList()
-          .equals(other.getFunctionSignatureList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasName()) {
-        hash = (37 * hash) + NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getName().hashCode();
-      }
-      if (getFunctionSignatureCount() > 0) {
-        hash = (37 * hash) + FUNCTION_SIGNATURE_FIELD_NUMBER;
-        hash = (53 * hash) + getFunctionSignatureList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.Jar parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.Jar parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.Jar parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -26427,81 +23528,66 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.Jar parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Jar parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Jar parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Jar parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Jar parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.Jar parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.Jar prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.shared.Jar}
+     *
      * <pre>
      * Jar contains jar name and list of function signatures.
      *Function signature is concatenation of function name and its input parameters. 
      * </pre>
-     *
-     * Protobuf type {@code exec.shared.Jar}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.Jar)
-        org.apache.drill.exec.proto.UserBitShared.JarOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.JarOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Jar_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Jar_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -26514,16 +23600,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         name_ = "";
@@ -26533,18 +23621,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_Jar_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.Jar getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.Jar.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.Jar build() {
         org.apache.drill.exec.proto.UserBitShared.Jar result = buildPartial();
         if (!result.isInitialized()) {
@@ -26553,7 +23642,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.Jar buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.Jar result = new org.apache.drill.exec.proto.UserBitShared.Jar(this);
         int from_bitField0_ = bitField0_;
@@ -26563,7 +23651,8 @@
         }
         result.name_ = name_;
         if (((bitField0_ & 0x00000002) == 0x00000002)) {
-          functionSignature_ = functionSignature_.getUnmodifiableView();
+          functionSignature_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              functionSignature_);
           bitField0_ = (bitField0_ & ~0x00000002);
         }
         result.functionSignature_ = functionSignature_;
@@ -26572,39 +23661,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.Jar) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.Jar)other);
@@ -26631,17 +23687,14 @@
           }
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -26651,7 +23704,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.Jar) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -26661,6 +23714,7 @@
       }
       private int bitField0_;
 
+      // optional string name = 1;
       private java.lang.Object name_ = "";
       /**
        * <code>optional string name = 1;</code>
@@ -26674,12 +23728,9 @@
       public java.lang.String getName() {
         java.lang.Object ref = name_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            name_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          name_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -26737,6 +23788,7 @@
         return this;
       }
 
+      // repeated string function_signature = 2;
       private com.google.protobuf.LazyStringList functionSignature_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureFunctionSignatureIsMutable() {
         if (!((bitField0_ & 0x00000002) == 0x00000002)) {
@@ -26747,9 +23799,9 @@
       /**
        * <code>repeated string function_signature = 2;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getFunctionSignatureList() {
-        return functionSignature_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(functionSignature_);
       }
       /**
        * <code>repeated string function_signature = 2;</code>
@@ -26802,8 +23854,7 @@
       public Builder addAllFunctionSignature(
           java.lang.Iterable<java.lang.String> values) {
         ensureFunctionSignatureIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, functionSignature_);
+        super.addAll(values, functionSignature_);
         onChanged();
         return this;
       }
@@ -26829,63 +23880,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.Jar)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.Jar)
-    private static final org.apache.drill.exec.proto.UserBitShared.Jar DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.Jar();
+      defaultInstance = new Jar(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.Jar getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<Jar>
-        PARSER = new com.google.protobuf.AbstractParser<Jar>() {
-      @java.lang.Override
-      public Jar parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new Jar(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<Jar> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<Jar> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.Jar getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.Jar)
   }
 
-  public interface SaslMessageOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.shared.SaslMessage)
-      com.google.protobuf.MessageOrBuilder {
+  public interface SaslMessageOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string mechanism = 1;
     /**
      * <code>optional string mechanism = 1;</code>
      */
@@ -26900,6 +23910,7 @@
     com.google.protobuf.ByteString
         getMechanismBytes();
 
+    // optional bytes data = 2;
     /**
      * <code>optional bytes data = 2;</code>
      */
@@ -26909,6 +23920,7 @@
      */
     com.google.protobuf.ByteString getData();
 
+    // optional .exec.shared.SaslStatus status = 3;
     /**
      * <code>optional .exec.shared.SaslStatus status = 3;</code>
      */
@@ -26921,34 +23933,36 @@
   /**
    * Protobuf type {@code exec.shared.SaslMessage}
    */
-  public  static final class SaslMessage extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.shared.SaslMessage)
-      SaslMessageOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class SaslMessage extends
+      com.google.protobuf.GeneratedMessage
+      implements SaslMessageOrBuilder {
     // Use SaslMessage.newBuilder() to construct.
-    private SaslMessage(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private SaslMessage(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private SaslMessage() {
-      mechanism_ = "";
-      data_ = com.google.protobuf.ByteString.EMPTY;
-      status_ = 0;
+    private SaslMessage(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final SaslMessage defaultInstance;
+    public static SaslMessage getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public SaslMessage getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private SaslMessage(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -26960,10 +23974,16 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              mechanism_ = bs;
+              mechanism_ = input.readBytes();
               break;
             }
             case 18: {
@@ -26973,20 +23993,12 @@
             }
             case 24: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.SaslStatus value = org.apache.drill.exec.proto.UserBitShared.SaslStatus.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(3, rawValue);
               } else {
                 bitField0_ |= 0x00000004;
-                status_ = rawValue;
-              }
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
+                status_ = value;
               }
               break;
             }
@@ -26996,7 +24008,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -27007,17 +24019,32 @@
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SaslMessage_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SaslMessage_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserBitShared.SaslMessage.class, org.apache.drill.exec.proto.UserBitShared.SaslMessage.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<SaslMessage> PARSER =
+        new com.google.protobuf.AbstractParser<SaslMessage>() {
+      public SaslMessage parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new SaslMessage(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<SaslMessage> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string mechanism = 1;
     public static final int MECHANISM_FIELD_NUMBER = 1;
-    private volatile java.lang.Object mechanism_;
+    private java.lang.Object mechanism_;
     /**
      * <code>optional string mechanism = 1;</code>
      */
@@ -27058,6 +24085,7 @@
       }
     }
 
+    // optional bytes data = 2;
     public static final int DATA_FIELD_NUMBER = 2;
     private com.google.protobuf.ByteString data_;
     /**
@@ -27073,8 +24101,9 @@
       return data_;
     }
 
+    // optional .exec.shared.SaslStatus status = 3;
     public static final int STATUS_FIELD_NUMBER = 3;
-    private int status_;
+    private org.apache.drill.exec.proto.UserBitShared.SaslStatus status_;
     /**
      * <code>optional .exec.shared.SaslStatus status = 3;</code>
      */
@@ -27085,45 +24114,47 @@
      * <code>optional .exec.shared.SaslStatus status = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.SaslStatus getStatus() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.SaslStatus result = org.apache.drill.exec.proto.UserBitShared.SaslStatus.valueOf(status_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.SaslStatus.SASL_UNKNOWN : result;
+      return status_;
     }
 
+    private void initFields() {
+      mechanism_ = "";
+      data_ = com.google.protobuf.ByteString.EMPTY;
+      status_ = org.apache.drill.exec.proto.UserBitShared.SaslStatus.SASL_UNKNOWN;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, mechanism_);
+        output.writeBytes(1, getMechanismBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeBytes(2, data_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeEnum(3, status_);
+        output.writeEnum(3, status_.getNumber());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, mechanism_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getMechanismBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -27131,77 +24162,20 @@
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(3, status_);
+          .computeEnumSize(3, status_.getNumber());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserBitShared.SaslMessage)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserBitShared.SaslMessage other = (org.apache.drill.exec.proto.UserBitShared.SaslMessage) obj;
-
-      boolean result = true;
-      result = result && (hasMechanism() == other.hasMechanism());
-      if (hasMechanism()) {
-        result = result && getMechanism()
-            .equals(other.getMechanism());
-      }
-      result = result && (hasData() == other.hasData());
-      if (hasData()) {
-        result = result && getData()
-            .equals(other.getData());
-      }
-      result = result && (hasStatus() == other.hasStatus());
-      if (hasStatus()) {
-        result = result && status_ == other.status_;
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasMechanism()) {
-        hash = (37 * hash) + MECHANISM_FIELD_NUMBER;
-        hash = (53 * hash) + getMechanism().hashCode();
-      }
-      if (hasData()) {
-        hash = (37 * hash) + DATA_FIELD_NUMBER;
-        hash = (53 * hash) + getData().hashCode();
-      }
-      if (hasStatus()) {
-        hash = (37 * hash) + STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + status_;
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserBitShared.SaslMessage parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserBitShared.SaslMessage parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserBitShared.SaslMessage parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -27225,59 +24199,46 @@
     }
     public static org.apache.drill.exec.proto.UserBitShared.SaslMessage parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SaslMessage parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SaslMessage parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SaslMessage parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SaslMessage parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserBitShared.SaslMessage parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserBitShared.SaslMessage prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -27285,16 +24246,14 @@
      * Protobuf type {@code exec.shared.SaslMessage}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.shared.SaslMessage)
-        org.apache.drill.exec.proto.UserBitShared.SaslMessageOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserBitShared.SaslMessageOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SaslMessage_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SaslMessage_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -27307,39 +24266,42 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         mechanism_ = "";
         bitField0_ = (bitField0_ & ~0x00000001);
         data_ = com.google.protobuf.ByteString.EMPTY;
         bitField0_ = (bitField0_ & ~0x00000002);
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserBitShared.SaslStatus.SASL_UNKNOWN;
         bitField0_ = (bitField0_ & ~0x00000004);
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserBitShared.internal_static_exec_shared_SaslMessage_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.SaslMessage getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserBitShared.SaslMessage.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.SaslMessage build() {
         org.apache.drill.exec.proto.UserBitShared.SaslMessage result = buildPartial();
         if (!result.isInitialized()) {
@@ -27348,7 +24310,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserBitShared.SaslMessage buildPartial() {
         org.apache.drill.exec.proto.UserBitShared.SaslMessage result = new org.apache.drill.exec.proto.UserBitShared.SaslMessage(this);
         int from_bitField0_ = bitField0_;
@@ -27370,39 +24331,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserBitShared.SaslMessage) {
           return mergeFrom((org.apache.drill.exec.proto.UserBitShared.SaslMessage)other);
@@ -27425,17 +24353,14 @@
         if (other.hasStatus()) {
           setStatus(other.getStatus());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -27445,7 +24370,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserBitShared.SaslMessage) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -27455,6 +24380,7 @@
       }
       private int bitField0_;
 
+      // optional string mechanism = 1;
       private java.lang.Object mechanism_ = "";
       /**
        * <code>optional string mechanism = 1;</code>
@@ -27468,12 +24394,9 @@
       public java.lang.String getMechanism() {
         java.lang.Object ref = mechanism_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            mechanism_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          mechanism_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -27531,6 +24454,7 @@
         return this;
       }
 
+      // optional bytes data = 2;
       private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * <code>optional bytes data = 2;</code>
@@ -27566,7 +24490,8 @@
         return this;
       }
 
-      private int status_ = 0;
+      // optional .exec.shared.SaslStatus status = 3;
+      private org.apache.drill.exec.proto.UserBitShared.SaslStatus status_ = org.apache.drill.exec.proto.UserBitShared.SaslStatus.SASL_UNKNOWN;
       /**
        * <code>optional .exec.shared.SaslStatus status = 3;</code>
        */
@@ -27577,9 +24502,7 @@
        * <code>optional .exec.shared.SaslStatus status = 3;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.SaslStatus getStatus() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.SaslStatus result = org.apache.drill.exec.proto.UserBitShared.SaslStatus.valueOf(status_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.SaslStatus.SASL_UNKNOWN : result;
+        return status_;
       }
       /**
        * <code>optional .exec.shared.SaslStatus status = 3;</code>
@@ -27589,7 +24512,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000004;
-        status_ = value.getNumber();
+        status_ = value;
         onChanged();
         return this;
       }
@@ -27598,179 +24521,138 @@
        */
       public Builder clearStatus() {
         bitField0_ = (bitField0_ & ~0x00000004);
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserBitShared.SaslStatus.SASL_UNKNOWN;
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.shared.SaslMessage)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.shared.SaslMessage)
-    private static final org.apache.drill.exec.proto.UserBitShared.SaslMessage DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserBitShared.SaslMessage();
+      defaultInstance = new SaslMessage(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserBitShared.SaslMessage getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<SaslMessage>
-        PARSER = new com.google.protobuf.AbstractParser<SaslMessage>() {
-      @java.lang.Override
-      public SaslMessage parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new SaslMessage(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<SaslMessage> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<SaslMessage> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserBitShared.SaslMessage getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.shared.SaslMessage)
   }
 
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_UserCredentials_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_UserCredentials_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_QueryId_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_QueryId_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_DrillPBError_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_DrillPBError_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_ExceptionWrapper_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_ExceptionWrapper_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_StackTraceElementWrapper_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_StackTraceElementWrapper_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_ParsingError_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_ParsingError_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_RecordBatchDef_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_RecordBatchDef_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_NamePart_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_NamePart_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_SerializedField_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_SerializedField_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_NodeStatus_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_NodeStatus_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_QueryResult_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_QueryResult_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_QueryData_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_QueryData_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_QueryInfo_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_QueryInfo_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_QueryProfile_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_QueryProfile_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_MajorFragmentProfile_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_MajorFragmentProfile_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_MinorFragmentProfile_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_MinorFragmentProfile_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_OperatorProfile_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_OperatorProfile_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_StreamProfile_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_StreamProfile_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_MetricValue_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_MetricValue_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_Registry_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_Registry_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_Jar_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_Jar_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_shared_SaslMessage_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_shared_SaslMessage_fieldAccessorTable;
 
   public static com.google.protobuf.Descriptors.FileDescriptor
       getDescriptor() {
     return descriptor;
   }
-  private static  com.google.protobuf.Descriptors.FileDescriptor
+  private static com.google.protobuf.Descriptors.FileDescriptor
       descriptor;
   static {
     java.lang.String[] descriptorData = {
@@ -27783,7 +24665,7 @@
       "\0227\n\nerror_type\030\003 \001(\0162#.exec.shared.Drill" +
       "PBError.ErrorType\022\017\n\007message\030\004 \001(\t\0220\n\tex" +
       "ception\030\005 \001(\0132\035.exec.shared.ExceptionWra" +
-      "pper\0220\n\rparsing_error\030\006 \003(\0132\031.exec.share" +
+      "pper\0220\n\rparsing_error\030\006 \003(\0132\031.exec.share",
       "d.ParsingError\"\362\001\n\tErrorType\022\016\n\nCONNECTI" +
       "ON\020\000\022\r\n\tDATA_READ\020\001\022\016\n\nDATA_WRITE\020\002\022\014\n\010F" +
       "UNCTION\020\003\022\t\n\005PARSE\020\004\022\016\n\nPERMISSION\020\005\022\010\n\004" +
@@ -27793,7 +24675,7 @@
       "UNSPECIFIED_ERROR\020\r\"\246\001\n\020ExceptionWrapper" +
       "\022\027\n\017exception_class\030\001 \001(\t\022\017\n\007message\030\002 \001" +
       "(\t\022:\n\013stack_trace\030\003 \003(\0132%.exec.shared.St" +
-      "ackTraceElementWrapper\022,\n\005cause\030\004 \001(\0132\035." +
+      "ackTraceElementWrapper\022,\n\005cause\030\004 \001(\0132\035.",
       "exec.shared.ExceptionWrapper\"\205\001\n\030StackTr" +
       "aceElementWrapper\022\022\n\nclass_name\030\001 \001(\t\022\021\n" +
       "\tfile_name\030\002 \001(\t\022\023\n\013line_number\030\003 \001(\005\022\023\n" +
@@ -27803,7 +24685,7 @@
       "\005\022\017\n\007end_row\030\005 \001(\005\"\233\001\n\016RecordBatchDef\022\024\n" +
       "\014record_count\030\001 \001(\005\022+\n\005field\030\002 \003(\0132\034.exe" +
       "c.shared.SerializedField\022)\n!carries_two_" +
-      "byte_selection_vector\030\003 \001(\010\022\033\n\023affected_" +
+      "byte_selection_vector\030\003 \001(\010\022\033\n\023affected_",
       "rows_count\030\004 \001(\005\"\205\001\n\010NamePart\022(\n\004type\030\001 " +
       "\001(\0162\032.exec.shared.NamePart.Type\022\014\n\004name\030" +
       "\002 \001(\t\022$\n\005child\030\003 \001(\0132\025.exec.shared.NameP" +
@@ -27813,7 +24695,7 @@
       "ared.NamePart\022+\n\005child\030\003 \003(\0132\034.exec.shar" +
       "ed.SerializedField\022\023\n\013value_count\030\004 \001(\005\022" +
       "\027\n\017var_byte_length\030\005 \001(\005\022\025\n\rbuffer_lengt" +
-      "h\030\007 \001(\005\"7\n\nNodeStatus\022\017\n\007node_id\030\001 \001(\005\022\030" +
+      "h\030\007 \001(\005\"7\n\nNodeStatus\022\017\n\007node_id\030\001 \001(\005\022\030",
       "\n\020memory_footprint\030\002 \001(\003\"\263\002\n\013QueryResult" +
       "\0228\n\013query_state\030\001 \001(\0162#.exec.shared.Quer" +
       "yResult.QueryState\022&\n\010query_id\030\002 \001(\0132\024.e" +
@@ -27823,7 +24705,7 @@
       "\010CANCELED\020\003\022\n\n\006FAILED\020\004\022\032\n\026CANCELLATION_" +
       "REQUESTED\020\005\022\014\n\010ENQUEUED\020\006\022\r\n\tPREPARING\020\007" +
       "\022\014\n\010PLANNING\020\010\"\215\001\n\tQueryData\022&\n\010query_id" +
-      "\030\001 \001(\0132\024.exec.shared.QueryId\022\021\n\trow_coun" +
+      "\030\001 \001(\0132\024.exec.shared.QueryId\022\021\n\trow_coun",
       "t\030\002 \001(\005\022(\n\003def\030\003 \001(\0132\033.exec.shared.Recor" +
       "dBatchDef\022\033\n\023affected_rows_count\030\004 \001(\005\"\330" +
       "\001\n\tQueryInfo\022\r\n\005query\030\001 \001(\t\022\r\n\005start\030\002 \001" +
@@ -27833,7 +24715,7 @@
       "ons_json\030\006 \001(\t\022\022\n\ntotal_cost\030\007 \001(\001\022\025\n\nqu" +
       "eue_name\030\010 \001(\t:\001-\"\306\004\n\014QueryProfile\022 \n\002id" +
       "\030\001 \001(\0132\024.exec.shared.QueryId\022$\n\004type\030\002 \001" +
-      "(\0162\026.exec.shared.QueryType\022\r\n\005start\030\003 \001(" +
+      "(\0162\026.exec.shared.QueryType\022\r\n\005start\030\003 \001(",
       "\003\022\013\n\003end\030\004 \001(\003\022\r\n\005query\030\005 \001(\t\022\014\n\004plan\030\006 " +
       "\001(\t\022\'\n\007foreman\030\007 \001(\0132\026.exec.DrillbitEndp" +
       "oint\0222\n\005state\030\010 \001(\0162#.exec.shared.QueryR" +
@@ -27843,7 +24725,7 @@
       "entProfile\022\017\n\004user\030\014 \001(\t:\001-\022\r\n\005error\030\r \001" +
       "(\t\022\024\n\014verboseError\030\016 \001(\t\022\020\n\010error_id\030\017 \001" +
       "(\t\022\022\n\nerror_node\030\020 \001(\t\022\024\n\014options_json\030\021" +
-      " \001(\t\022\017\n\007planEnd\030\022 \001(\003\022\024\n\014queueWaitEnd\030\023 " +
+      " \001(\t\022\017\n\007planEnd\030\022 \001(\003\022\024\n\014queueWaitEnd\030\023 ",
       "\001(\003\022\022\n\ntotal_cost\030\024 \001(\001\022\025\n\nqueue_name\030\025 " +
       "\001(\t:\001-\022\017\n\007queryId\030\026 \001(\t\022\021\n\tautoLimit\030\027 \001" +
       "(\005\"t\n\024MajorFragmentProfile\022\031\n\021major_frag" +
@@ -27853,7 +24735,7 @@
       "2\032.exec.shared.FragmentState\022(\n\005error\030\002 " +
       "\001(\0132\031.exec.shared.DrillPBError\022\031\n\021minor_" +
       "fragment_id\030\003 \001(\005\0226\n\020operator_profile\030\004 " +
-      "\003(\0132\034.exec.shared.OperatorProfile\022\022\n\nsta" +
+      "\003(\0132\034.exec.shared.OperatorProfile\022\022\n\nsta",
       "rt_time\030\005 \001(\003\022\020\n\010end_time\030\006 \001(\003\022\023\n\013memor" +
       "y_used\030\007 \001(\003\022\027\n\017max_memory_used\030\010 \001(\003\022(\n" +
       "\010endpoint\030\t \001(\0132\026.exec.DrillbitEndpoint\022" +
@@ -27863,7 +24745,7 @@
       "erator_id\030\003 \001(\005\022\025\n\roperator_type\030\004 \001(\005\022\023" +
       "\n\013setup_nanos\030\005 \001(\003\022\025\n\rprocess_nanos\030\006 \001" +
       "(\003\022#\n\033peak_local_memory_allocated\030\007 \001(\003\022" +
-      "(\n\006metric\030\010 \003(\0132\030.exec.shared.MetricValu" +
+      "(\n\006metric\030\010 \003(\0132\030.exec.shared.MetricValu",
       "e\022\022\n\nwait_nanos\030\t \001(\003\"B\n\rStreamProfile\022\017" +
       "\n\007records\030\001 \001(\003\022\017\n\007batches\030\002 \001(\003\022\017\n\007sche" +
       "mas\030\003 \001(\003\"J\n\013MetricValue\022\021\n\tmetric_id\030\001 " +
@@ -27873,7 +24755,7 @@
       "n_signature\030\002 \003(\t\"W\n\013SaslMessage\022\021\n\tmech" +
       "anism\030\001 \001(\t\022\014\n\004data\030\002 \001(\014\022\'\n\006status\030\003 \001(" +
       "\0162\027.exec.shared.SaslStatus*5\n\nRpcChannel" +
-      "\022\017\n\013BIT_CONTROL\020\000\022\014\n\010BIT_DATA\020\001\022\010\n\004USER\020" +
+      "\022\017\n\013BIT_CONTROL\020\000\022\014\n\010BIT_DATA\020\001\022\010\n\004USER\020",
       "\002*V\n\tQueryType\022\007\n\003SQL\020\001\022\013\n\007LOGICAL\020\002\022\014\n\010" +
       "PHYSICAL\020\003\022\r\n\tEXECUTION\020\004\022\026\n\022PREPARED_ST" +
       "ATEMENT\020\005*\207\001\n\rFragmentState\022\013\n\007SENDING\020\000" +
@@ -27883,7 +24765,7 @@
       "atorType\022\021\n\rSINGLE_SENDER\020\000\022\024\n\020BROADCAST" +
       "_SENDER\020\001\022\n\n\006FILTER\020\002\022\022\n\016HASH_AGGREGATE\020" +
       "\003\022\r\n\tHASH_JOIN\020\004\022\016\n\nMERGE_JOIN\020\005\022\031\n\025HASH" +
-      "_PARTITION_SENDER\020\006\022\t\n\005LIMIT\020\007\022\024\n\020MERGIN" +
+      "_PARTITION_SENDER\020\006\022\t\n\005LIMIT\020\007\022\024\n\020MERGIN",
       "G_RECEIVER\020\010\022\034\n\030ORDERED_PARTITION_SENDER" +
       "\020\t\022\013\n\007PROJECT\020\n\022\026\n\022UNORDERED_RECEIVER\020\013\022" +
       "\032\n\026RANGE_PARTITION_SENDER\020\014\022\n\n\006SCREEN\020\r\022" +
@@ -27893,7 +24775,7 @@
       "ORT\020\024\022\032\n\026PARQUET_ROW_GROUP_SCAN\020\025\022\021\n\rHIV" +
       "E_SUB_SCAN\020\026\022\025\n\021SYSTEM_TABLE_SCAN\020\027\022\021\n\rM" +
       "OCK_SUB_SCAN\020\030\022\022\n\016PARQUET_WRITER\020\031\022\023\n\017DI" +
-      "RECT_SUB_SCAN\020\032\022\017\n\013TEXT_WRITER\020\033\022\021\n\rTEXT" +
+      "RECT_SUB_SCAN\020\032\022\017\n\013TEXT_WRITER\020\033\022\021\n\rTEXT",
       "_SUB_SCAN\020\034\022\021\n\rJSON_SUB_SCAN\020\035\022\030\n\024INFO_S" +
       "CHEMA_SUB_SCAN\020\036\022\023\n\017COMPLEX_TO_JSON\020\037\022\025\n" +
       "\021PRODUCER_CONSUMER\020 \022\022\n\016HBASE_SUB_SCAN\020!" +
@@ -27903,7 +24785,7 @@
       "EN\020(\022\020\n\014LATERAL_JOIN\020)\022\n\n\006UNNEST\020*\022,\n(HI" +
       "VE_DRILL_NATIVE_PARQUET_ROW_GROUP_SCAN\020+" +
       "\022\r\n\tJDBC_SCAN\020,\022\022\n\016REGEX_SUB_SCAN\020-\022\023\n\017M" +
-      "APRDB_SUB_SCAN\020.\022\022\n\016MONGO_SUB_SCAN\020/\022\017\n\013" +
+      "APRDB_SUB_SCAN\020.\022\022\n\016MONGO_SUB_SCAN\020/\022\017\n\013",
       "KUDU_WRITER\0200\022\026\n\022OPEN_TSDB_SUB_SCAN\0201\022\017\n" +
       "\013JSON_WRITER\0202\022\026\n\022HTPPD_LOG_SUB_SCAN\0203\022\022" +
       "\n\016IMAGE_SUB_SCAN\0204\022\025\n\021SEQUENCE_SUB_SCAN\020" +
@@ -27913,18 +24795,150 @@
       "EGATE\020;\022\020\n\014UNPIVOT_MAPS\020<\022\024\n\020STATISTICS_" +
       "MERGE\020=\022\021\n\rLTSV_SUB_SCAN\020>*g\n\nSaslStatus" +
       "\022\020\n\014SASL_UNKNOWN\020\000\022\016\n\nSASL_START\020\001\022\024\n\020SA" +
-      "SL_IN_PROGRESS\020\002\022\020\n\014SASL_SUCCESS\020\003\022\017\n\013SA" +
+      "SL_IN_PROGRESS\020\002\022\020\n\014SASL_SUCCESS\020\003\022\017\n\013SA",
       "SL_FAILED\020\004B.\n\033org.apache.drill.exec.pro" +
       "toB\rUserBitSharedH\001"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
-        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
-          public com.google.protobuf.ExtensionRegistry assignDescriptors(
-              com.google.protobuf.Descriptors.FileDescriptor root) {
-            descriptor = root;
-            return null;
-          }
-        };
+      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
+        public com.google.protobuf.ExtensionRegistry assignDescriptors(
+            com.google.protobuf.Descriptors.FileDescriptor root) {
+          descriptor = root;
+          internal_static_exec_shared_UserCredentials_descriptor =
+            getDescriptor().getMessageTypes().get(0);
+          internal_static_exec_shared_UserCredentials_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_UserCredentials_descriptor,
+              new java.lang.String[] { "UserName", });
+          internal_static_exec_shared_QueryId_descriptor =
+            getDescriptor().getMessageTypes().get(1);
+          internal_static_exec_shared_QueryId_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_QueryId_descriptor,
+              new java.lang.String[] { "Part1", "Part2", });
+          internal_static_exec_shared_DrillPBError_descriptor =
+            getDescriptor().getMessageTypes().get(2);
+          internal_static_exec_shared_DrillPBError_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_DrillPBError_descriptor,
+              new java.lang.String[] { "ErrorId", "Endpoint", "ErrorType", "Message", "Exception", "ParsingError", });
+          internal_static_exec_shared_ExceptionWrapper_descriptor =
+            getDescriptor().getMessageTypes().get(3);
+          internal_static_exec_shared_ExceptionWrapper_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_ExceptionWrapper_descriptor,
+              new java.lang.String[] { "ExceptionClass", "Message", "StackTrace", "Cause", });
+          internal_static_exec_shared_StackTraceElementWrapper_descriptor =
+            getDescriptor().getMessageTypes().get(4);
+          internal_static_exec_shared_StackTraceElementWrapper_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_StackTraceElementWrapper_descriptor,
+              new java.lang.String[] { "ClassName", "FileName", "LineNumber", "MethodName", "IsNativeMethod", });
+          internal_static_exec_shared_ParsingError_descriptor =
+            getDescriptor().getMessageTypes().get(5);
+          internal_static_exec_shared_ParsingError_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_ParsingError_descriptor,
+              new java.lang.String[] { "StartColumn", "StartRow", "EndColumn", "EndRow", });
+          internal_static_exec_shared_RecordBatchDef_descriptor =
+            getDescriptor().getMessageTypes().get(6);
+          internal_static_exec_shared_RecordBatchDef_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_RecordBatchDef_descriptor,
+              new java.lang.String[] { "RecordCount", "Field", "CarriesTwoByteSelectionVector", "AffectedRowsCount", });
+          internal_static_exec_shared_NamePart_descriptor =
+            getDescriptor().getMessageTypes().get(7);
+          internal_static_exec_shared_NamePart_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_NamePart_descriptor,
+              new java.lang.String[] { "Type", "Name", "Child", });
+          internal_static_exec_shared_SerializedField_descriptor =
+            getDescriptor().getMessageTypes().get(8);
+          internal_static_exec_shared_SerializedField_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_SerializedField_descriptor,
+              new java.lang.String[] { "MajorType", "NamePart", "Child", "ValueCount", "VarByteLength", "BufferLength", });
+          internal_static_exec_shared_NodeStatus_descriptor =
+            getDescriptor().getMessageTypes().get(9);
+          internal_static_exec_shared_NodeStatus_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_NodeStatus_descriptor,
+              new java.lang.String[] { "NodeId", "MemoryFootprint", });
+          internal_static_exec_shared_QueryResult_descriptor =
+            getDescriptor().getMessageTypes().get(10);
+          internal_static_exec_shared_QueryResult_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_QueryResult_descriptor,
+              new java.lang.String[] { "QueryState", "QueryId", "Error", });
+          internal_static_exec_shared_QueryData_descriptor =
+            getDescriptor().getMessageTypes().get(11);
+          internal_static_exec_shared_QueryData_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_QueryData_descriptor,
+              new java.lang.String[] { "QueryId", "RowCount", "Def", "AffectedRowsCount", });
+          internal_static_exec_shared_QueryInfo_descriptor =
+            getDescriptor().getMessageTypes().get(12);
+          internal_static_exec_shared_QueryInfo_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_QueryInfo_descriptor,
+              new java.lang.String[] { "Query", "Start", "State", "User", "Foreman", "OptionsJson", "TotalCost", "QueueName", });
+          internal_static_exec_shared_QueryProfile_descriptor =
+            getDescriptor().getMessageTypes().get(13);
+          internal_static_exec_shared_QueryProfile_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_QueryProfile_descriptor,
+              new java.lang.String[] { "Id", "Type", "Start", "End", "Query", "Plan", "Foreman", "State", "TotalFragments", "FinishedFragments", "FragmentProfile", "User", "Error", "VerboseError", "ErrorId", "ErrorNode", "OptionsJson", "PlanEnd", "QueueWaitEnd", "TotalCost", "QueueName", "QueryId", "AutoLimit", });
+          internal_static_exec_shared_MajorFragmentProfile_descriptor =
+            getDescriptor().getMessageTypes().get(14);
+          internal_static_exec_shared_MajorFragmentProfile_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_MajorFragmentProfile_descriptor,
+              new java.lang.String[] { "MajorFragmentId", "MinorFragmentProfile", });
+          internal_static_exec_shared_MinorFragmentProfile_descriptor =
+            getDescriptor().getMessageTypes().get(15);
+          internal_static_exec_shared_MinorFragmentProfile_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_MinorFragmentProfile_descriptor,
+              new java.lang.String[] { "State", "Error", "MinorFragmentId", "OperatorProfile", "StartTime", "EndTime", "MemoryUsed", "MaxMemoryUsed", "Endpoint", "LastUpdate", "LastProgress", });
+          internal_static_exec_shared_OperatorProfile_descriptor =
+            getDescriptor().getMessageTypes().get(16);
+          internal_static_exec_shared_OperatorProfile_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_OperatorProfile_descriptor,
+              new java.lang.String[] { "InputProfile", "OperatorId", "OperatorType", "SetupNanos", "ProcessNanos", "PeakLocalMemoryAllocated", "Metric", "WaitNanos", });
+          internal_static_exec_shared_StreamProfile_descriptor =
+            getDescriptor().getMessageTypes().get(17);
+          internal_static_exec_shared_StreamProfile_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_StreamProfile_descriptor,
+              new java.lang.String[] { "Records", "Batches", "Schemas", });
+          internal_static_exec_shared_MetricValue_descriptor =
+            getDescriptor().getMessageTypes().get(18);
+          internal_static_exec_shared_MetricValue_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_MetricValue_descriptor,
+              new java.lang.String[] { "MetricId", "LongValue", "DoubleValue", });
+          internal_static_exec_shared_Registry_descriptor =
+            getDescriptor().getMessageTypes().get(19);
+          internal_static_exec_shared_Registry_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_Registry_descriptor,
+              new java.lang.String[] { "Jar", });
+          internal_static_exec_shared_Jar_descriptor =
+            getDescriptor().getMessageTypes().get(20);
+          internal_static_exec_shared_Jar_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_Jar_descriptor,
+              new java.lang.String[] { "Name", "FunctionSignature", });
+          internal_static_exec_shared_SaslMessage_descriptor =
+            getDescriptor().getMessageTypes().get(21);
+          internal_static_exec_shared_SaslMessage_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_shared_SaslMessage_descriptor,
+              new java.lang.String[] { "Mechanism", "Data", "Status", });
+          return null;
+        }
+      };
     com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
         new com.google.protobuf.Descriptors.FileDescriptor[] {
@@ -27932,141 +24946,6 @@
           org.apache.drill.exec.proto.CoordinationProtos.getDescriptor(),
           org.apache.drill.exec.proto.SchemaDefProtos.getDescriptor(),
         }, assigner);
-    internal_static_exec_shared_UserCredentials_descriptor =
-      getDescriptor().getMessageTypes().get(0);
-    internal_static_exec_shared_UserCredentials_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_UserCredentials_descriptor,
-        new java.lang.String[] { "UserName", });
-    internal_static_exec_shared_QueryId_descriptor =
-      getDescriptor().getMessageTypes().get(1);
-    internal_static_exec_shared_QueryId_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_QueryId_descriptor,
-        new java.lang.String[] { "Part1", "Part2", });
-    internal_static_exec_shared_DrillPBError_descriptor =
-      getDescriptor().getMessageTypes().get(2);
-    internal_static_exec_shared_DrillPBError_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_DrillPBError_descriptor,
-        new java.lang.String[] { "ErrorId", "Endpoint", "ErrorType", "Message", "Exception", "ParsingError", });
-    internal_static_exec_shared_ExceptionWrapper_descriptor =
-      getDescriptor().getMessageTypes().get(3);
-    internal_static_exec_shared_ExceptionWrapper_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_ExceptionWrapper_descriptor,
-        new java.lang.String[] { "ExceptionClass", "Message", "StackTrace", "Cause", });
-    internal_static_exec_shared_StackTraceElementWrapper_descriptor =
-      getDescriptor().getMessageTypes().get(4);
-    internal_static_exec_shared_StackTraceElementWrapper_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_StackTraceElementWrapper_descriptor,
-        new java.lang.String[] { "ClassName", "FileName", "LineNumber", "MethodName", "IsNativeMethod", });
-    internal_static_exec_shared_ParsingError_descriptor =
-      getDescriptor().getMessageTypes().get(5);
-    internal_static_exec_shared_ParsingError_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_ParsingError_descriptor,
-        new java.lang.String[] { "StartColumn", "StartRow", "EndColumn", "EndRow", });
-    internal_static_exec_shared_RecordBatchDef_descriptor =
-      getDescriptor().getMessageTypes().get(6);
-    internal_static_exec_shared_RecordBatchDef_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_RecordBatchDef_descriptor,
-        new java.lang.String[] { "RecordCount", "Field", "CarriesTwoByteSelectionVector", "AffectedRowsCount", });
-    internal_static_exec_shared_NamePart_descriptor =
-      getDescriptor().getMessageTypes().get(7);
-    internal_static_exec_shared_NamePart_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_NamePart_descriptor,
-        new java.lang.String[] { "Type", "Name", "Child", });
-    internal_static_exec_shared_SerializedField_descriptor =
-      getDescriptor().getMessageTypes().get(8);
-    internal_static_exec_shared_SerializedField_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_SerializedField_descriptor,
-        new java.lang.String[] { "MajorType", "NamePart", "Child", "ValueCount", "VarByteLength", "BufferLength", });
-    internal_static_exec_shared_NodeStatus_descriptor =
-      getDescriptor().getMessageTypes().get(9);
-    internal_static_exec_shared_NodeStatus_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_NodeStatus_descriptor,
-        new java.lang.String[] { "NodeId", "MemoryFootprint", });
-    internal_static_exec_shared_QueryResult_descriptor =
-      getDescriptor().getMessageTypes().get(10);
-    internal_static_exec_shared_QueryResult_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_QueryResult_descriptor,
-        new java.lang.String[] { "QueryState", "QueryId", "Error", });
-    internal_static_exec_shared_QueryData_descriptor =
-      getDescriptor().getMessageTypes().get(11);
-    internal_static_exec_shared_QueryData_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_QueryData_descriptor,
-        new java.lang.String[] { "QueryId", "RowCount", "Def", "AffectedRowsCount", });
-    internal_static_exec_shared_QueryInfo_descriptor =
-      getDescriptor().getMessageTypes().get(12);
-    internal_static_exec_shared_QueryInfo_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_QueryInfo_descriptor,
-        new java.lang.String[] { "Query", "Start", "State", "User", "Foreman", "OptionsJson", "TotalCost", "QueueName", });
-    internal_static_exec_shared_QueryProfile_descriptor =
-      getDescriptor().getMessageTypes().get(13);
-    internal_static_exec_shared_QueryProfile_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_QueryProfile_descriptor,
-        new java.lang.String[] { "Id", "Type", "Start", "End", "Query", "Plan", "Foreman", "State", "TotalFragments", "FinishedFragments", "FragmentProfile", "User", "Error", "VerboseError", "ErrorId", "ErrorNode", "OptionsJson", "PlanEnd", "QueueWaitEnd", "TotalCost", "QueueName", "QueryId", "AutoLimit", });
-    internal_static_exec_shared_MajorFragmentProfile_descriptor =
-      getDescriptor().getMessageTypes().get(14);
-    internal_static_exec_shared_MajorFragmentProfile_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_MajorFragmentProfile_descriptor,
-        new java.lang.String[] { "MajorFragmentId", "MinorFragmentProfile", });
-    internal_static_exec_shared_MinorFragmentProfile_descriptor =
-      getDescriptor().getMessageTypes().get(15);
-    internal_static_exec_shared_MinorFragmentProfile_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_MinorFragmentProfile_descriptor,
-        new java.lang.String[] { "State", "Error", "MinorFragmentId", "OperatorProfile", "StartTime", "EndTime", "MemoryUsed", "MaxMemoryUsed", "Endpoint", "LastUpdate", "LastProgress", });
-    internal_static_exec_shared_OperatorProfile_descriptor =
-      getDescriptor().getMessageTypes().get(16);
-    internal_static_exec_shared_OperatorProfile_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_OperatorProfile_descriptor,
-        new java.lang.String[] { "InputProfile", "OperatorId", "OperatorType", "SetupNanos", "ProcessNanos", "PeakLocalMemoryAllocated", "Metric", "WaitNanos", });
-    internal_static_exec_shared_StreamProfile_descriptor =
-      getDescriptor().getMessageTypes().get(17);
-    internal_static_exec_shared_StreamProfile_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_StreamProfile_descriptor,
-        new java.lang.String[] { "Records", "Batches", "Schemas", });
-    internal_static_exec_shared_MetricValue_descriptor =
-      getDescriptor().getMessageTypes().get(18);
-    internal_static_exec_shared_MetricValue_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_MetricValue_descriptor,
-        new java.lang.String[] { "MetricId", "LongValue", "DoubleValue", });
-    internal_static_exec_shared_Registry_descriptor =
-      getDescriptor().getMessageTypes().get(19);
-    internal_static_exec_shared_Registry_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_Registry_descriptor,
-        new java.lang.String[] { "Jar", });
-    internal_static_exec_shared_Jar_descriptor =
-      getDescriptor().getMessageTypes().get(20);
-    internal_static_exec_shared_Jar_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_Jar_descriptor,
-        new java.lang.String[] { "Name", "FunctionSignature", });
-    internal_static_exec_shared_SaslMessage_descriptor =
-      getDescriptor().getMessageTypes().get(21);
-    internal_static_exec_shared_SaslMessage_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_shared_SaslMessage_descriptor,
-        new java.lang.String[] { "Mechanism", "Data", "Status", });
-    org.apache.drill.common.types.TypeProtos.getDescriptor();
-    org.apache.drill.exec.proto.CoordinationProtos.getDescriptor();
-    org.apache.drill.exec.proto.SchemaDefProtos.getDescriptor();
   }
 
   // @@protoc_insertion_point(outer_class_scope)
diff --git a/protocol/src/main/java/org/apache/drill/exec/proto/UserProtos.java b/protocol/src/main/java/org/apache/drill/exec/proto/UserProtos.java
index 220311e..df8bc99 100644
--- a/protocol/src/main/java/org/apache/drill/exec/proto/UserProtos.java
+++ b/protocol/src/main/java/org/apache/drill/exec/proto/UserProtos.java
@@ -23,203 +23,197 @@
 public final class UserProtos {
   private UserProtos() {}
   public static void registerAllExtensions(
-      com.google.protobuf.ExtensionRegistryLite registry) {
-  }
-
-  public static void registerAllExtensions(
       com.google.protobuf.ExtensionRegistry registry) {
-    registerAllExtensions(
-        (com.google.protobuf.ExtensionRegistryLite) registry);
   }
   /**
+   * Protobuf enum {@code exec.user.RpcType}
+   *
    * <pre>
    *&#47;/// User &lt;-&gt; Bit RPC ///////
    * </pre>
-   *
-   * Protobuf enum {@code exec.user.RpcType}
    */
   public enum RpcType
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
      * <code>HANDSHAKE = 0;</code>
      */
-    HANDSHAKE(0),
+    HANDSHAKE(0, 0),
     /**
      * <code>ACK = 1;</code>
      */
-    ACK(1),
+    ACK(1, 1),
     /**
      * <code>GOODBYE = 2;</code>
      */
-    GOODBYE(2),
+    GOODBYE(2, 2),
     /**
+     * <code>RUN_QUERY = 3;</code>
+     *
      * <pre>
      * user to bit
      * </pre>
-     *
-     * <code>RUN_QUERY = 3;</code>
      */
-    RUN_QUERY(3),
+    RUN_QUERY(3, 3),
     /**
+     * <code>CANCEL_QUERY = 4;</code>
+     *
      * <pre>
      * user is sending a query cancellation request to the drillbit
      * </pre>
-     *
-     * <code>CANCEL_QUERY = 4;</code>
      */
-    CANCEL_QUERY(4),
+    CANCEL_QUERY(4, 4),
     /**
      * <code>REQUEST_RESULTS = 5;</code>
      */
-    REQUEST_RESULTS(5),
+    REQUEST_RESULTS(5, 5),
     /**
+     * <code>RESUME_PAUSED_QUERY = 11;</code>
+     *
      * <pre>
      * user is sending a query resume request to the drillbit
      * </pre>
-     *
-     * <code>RESUME_PAUSED_QUERY = 11;</code>
      */
-    RESUME_PAUSED_QUERY(11),
+    RESUME_PAUSED_QUERY(6, 11),
     /**
+     * <code>GET_QUERY_PLAN_FRAGMENTS = 12;</code>
+     *
      * <pre>
      * to get plan fragments from query
      * </pre>
-     *
-     * <code>GET_QUERY_PLAN_FRAGMENTS = 12;</code>
      */
-    GET_QUERY_PLAN_FRAGMENTS(12),
+    GET_QUERY_PLAN_FRAGMENTS(7, 12),
     /**
+     * <code>GET_CATALOGS = 14;</code>
+     *
      * <pre>
      * user is requesting metadata of catalog(s).
      * </pre>
-     *
-     * <code>GET_CATALOGS = 14;</code>
      */
-    GET_CATALOGS(14),
+    GET_CATALOGS(8, 14),
     /**
+     * <code>GET_SCHEMAS = 15;</code>
+     *
      * <pre>
      * user is requesting metadata of schema(s)
      * </pre>
-     *
-     * <code>GET_SCHEMAS = 15;</code>
      */
-    GET_SCHEMAS(15),
+    GET_SCHEMAS(9, 15),
     /**
+     * <code>GET_TABLES = 16;</code>
+     *
      * <pre>
      * user is requesting metadata of table(s)
      * </pre>
-     *
-     * <code>GET_TABLES = 16;</code>
      */
-    GET_TABLES(16),
+    GET_TABLES(10, 16),
     /**
+     * <code>GET_COLUMNS = 17;</code>
+     *
      * <pre>
      * user is requesting metadata of column(s)
      * </pre>
-     *
-     * <code>GET_COLUMNS = 17;</code>
      */
-    GET_COLUMNS(17),
+    GET_COLUMNS(11, 17),
     /**
+     * <code>CREATE_PREPARED_STATEMENT = 22;</code>
+     *
      * <pre>
      * user is sending a request to create prepared statement
      * </pre>
-     *
-     * <code>CREATE_PREPARED_STATEMENT = 22;</code>
      */
-    CREATE_PREPARED_STATEMENT(22),
+    CREATE_PREPARED_STATEMENT(12, 22),
     /**
+     * <code>GET_SERVER_META = 8;</code>
+     *
      * <pre>
      * user is sending a request to receive server metadata
      * </pre>
-     *
-     * <code>GET_SERVER_META = 8;</code>
      */
-    GET_SERVER_META(8),
+    GET_SERVER_META(13, 8),
     /**
+     * <code>QUERY_DATA = 6;</code>
+     *
      * <pre>
      * bit to user
      * </pre>
-     *
-     * <code>QUERY_DATA = 6;</code>
      */
-    QUERY_DATA(6),
+    QUERY_DATA(14, 6),
     /**
      * <code>QUERY_HANDLE = 7;</code>
      */
-    QUERY_HANDLE(7),
+    QUERY_HANDLE(15, 7),
     /**
+     * <code>QUERY_PLAN_FRAGMENTS = 13;</code>
+     *
      * <pre>
      * return plan fragments
      * </pre>
-     *
-     * <code>QUERY_PLAN_FRAGMENTS = 13;</code>
      */
-    QUERY_PLAN_FRAGMENTS(13),
+    QUERY_PLAN_FRAGMENTS(16, 13),
     /**
+     * <code>CATALOGS = 18;</code>
+     *
      * <pre>
      * return catalogs metadata in response to GET_CATALOGS
      * </pre>
-     *
-     * <code>CATALOGS = 18;</code>
      */
-    CATALOGS(18),
+    CATALOGS(17, 18),
     /**
+     * <code>SCHEMAS = 19;</code>
+     *
      * <pre>
      * return schema metadata in response to GET_SCHEMAS
      * </pre>
-     *
-     * <code>SCHEMAS = 19;</code>
      */
-    SCHEMAS(19),
+    SCHEMAS(18, 19),
     /**
+     * <code>TABLES = 20;</code>
+     *
      * <pre>
      * return table metadata in response to GET_TABLES
      * </pre>
-     *
-     * <code>TABLES = 20;</code>
      */
-    TABLES(20),
+    TABLES(19, 20),
     /**
+     * <code>COLUMNS = 21;</code>
+     *
      * <pre>
      * return column metadata in response to GET_COLUMNS
      * </pre>
-     *
-     * <code>COLUMNS = 21;</code>
      */
-    COLUMNS(21),
+    COLUMNS(20, 21),
     /**
+     * <code>PREPARED_STATEMENT = 23;</code>
+     *
      * <pre>
      * return preparated statement in response to CREATE_PREPARED_STATEMENT
      * </pre>
-     *
-     * <code>PREPARED_STATEMENT = 23;</code>
      */
-    PREPARED_STATEMENT(23),
+    PREPARED_STATEMENT(21, 23),
     /**
+     * <code>SERVER_META = 9;</code>
+     *
      * <pre>
      * return server infos in respose to GET_SERVER_META
      * </pre>
-     *
-     * <code>SERVER_META = 9;</code>
      */
-    SERVER_META(9),
+    SERVER_META(22, 9),
     /**
+     * <code>QUERY_RESULT = 10;</code>
+     *
      * <pre>
      * drillbit is reporting a query status change, most likely a terminal message, to the user
      * </pre>
-     *
-     * <code>QUERY_RESULT = 10;</code>
      */
-    QUERY_RESULT(10),
+    QUERY_RESULT(23, 10),
     /**
+     * <code>SASL_MESSAGE = 24;</code>
+     *
      * <pre>
      * user to bit and bit to user
      * </pre>
-     *
-     * <code>SASL_MESSAGE = 24;</code>
      */
-    SASL_MESSAGE(24),
+    SASL_MESSAGE(24, 24),
     ;
 
     /**
@@ -235,19 +229,19 @@
      */
     public static final int GOODBYE_VALUE = 2;
     /**
+     * <code>RUN_QUERY = 3;</code>
+     *
      * <pre>
      * user to bit
      * </pre>
-     *
-     * <code>RUN_QUERY = 3;</code>
      */
     public static final int RUN_QUERY_VALUE = 3;
     /**
+     * <code>CANCEL_QUERY = 4;</code>
+     *
      * <pre>
      * user is sending a query cancellation request to the drillbit
      * </pre>
-     *
-     * <code>CANCEL_QUERY = 4;</code>
      */
     public static final int CANCEL_QUERY_VALUE = 4;
     /**
@@ -255,75 +249,75 @@
      */
     public static final int REQUEST_RESULTS_VALUE = 5;
     /**
+     * <code>RESUME_PAUSED_QUERY = 11;</code>
+     *
      * <pre>
      * user is sending a query resume request to the drillbit
      * </pre>
-     *
-     * <code>RESUME_PAUSED_QUERY = 11;</code>
      */
     public static final int RESUME_PAUSED_QUERY_VALUE = 11;
     /**
+     * <code>GET_QUERY_PLAN_FRAGMENTS = 12;</code>
+     *
      * <pre>
      * to get plan fragments from query
      * </pre>
-     *
-     * <code>GET_QUERY_PLAN_FRAGMENTS = 12;</code>
      */
     public static final int GET_QUERY_PLAN_FRAGMENTS_VALUE = 12;
     /**
+     * <code>GET_CATALOGS = 14;</code>
+     *
      * <pre>
      * user is requesting metadata of catalog(s).
      * </pre>
-     *
-     * <code>GET_CATALOGS = 14;</code>
      */
     public static final int GET_CATALOGS_VALUE = 14;
     /**
+     * <code>GET_SCHEMAS = 15;</code>
+     *
      * <pre>
      * user is requesting metadata of schema(s)
      * </pre>
-     *
-     * <code>GET_SCHEMAS = 15;</code>
      */
     public static final int GET_SCHEMAS_VALUE = 15;
     /**
+     * <code>GET_TABLES = 16;</code>
+     *
      * <pre>
      * user is requesting metadata of table(s)
      * </pre>
-     *
-     * <code>GET_TABLES = 16;</code>
      */
     public static final int GET_TABLES_VALUE = 16;
     /**
+     * <code>GET_COLUMNS = 17;</code>
+     *
      * <pre>
      * user is requesting metadata of column(s)
      * </pre>
-     *
-     * <code>GET_COLUMNS = 17;</code>
      */
     public static final int GET_COLUMNS_VALUE = 17;
     /**
+     * <code>CREATE_PREPARED_STATEMENT = 22;</code>
+     *
      * <pre>
      * user is sending a request to create prepared statement
      * </pre>
-     *
-     * <code>CREATE_PREPARED_STATEMENT = 22;</code>
      */
     public static final int CREATE_PREPARED_STATEMENT_VALUE = 22;
     /**
+     * <code>GET_SERVER_META = 8;</code>
+     *
      * <pre>
      * user is sending a request to receive server metadata
      * </pre>
-     *
-     * <code>GET_SERVER_META = 8;</code>
      */
     public static final int GET_SERVER_META_VALUE = 8;
     /**
+     * <code>QUERY_DATA = 6;</code>
+     *
      * <pre>
      * bit to user
      * </pre>
-     *
-     * <code>QUERY_DATA = 6;</code>
      */
     public static final int QUERY_DATA_VALUE = 6;
     /**
@@ -331,92 +325,82 @@
      */
     public static final int QUERY_HANDLE_VALUE = 7;
     /**
+     * <code>QUERY_PLAN_FRAGMENTS = 13;</code>
+     *
      * <pre>
      * return plan fragments
      * </pre>
-     *
-     * <code>QUERY_PLAN_FRAGMENTS = 13;</code>
      */
     public static final int QUERY_PLAN_FRAGMENTS_VALUE = 13;
     /**
+     * <code>CATALOGS = 18;</code>
+     *
      * <pre>
      * return catalogs metadata in response to GET_CATALOGS
      * </pre>
-     *
-     * <code>CATALOGS = 18;</code>
      */
     public static final int CATALOGS_VALUE = 18;
     /**
+     * <code>SCHEMAS = 19;</code>
+     *
      * <pre>
      * return schema metadata in response to GET_SCHEMAS
      * </pre>
-     *
-     * <code>SCHEMAS = 19;</code>
      */
     public static final int SCHEMAS_VALUE = 19;
     /**
+     * <code>TABLES = 20;</code>
+     *
      * <pre>
      * return table metadata in response to GET_TABLES
      * </pre>
-     *
-     * <code>TABLES = 20;</code>
      */
     public static final int TABLES_VALUE = 20;
     /**
+     * <code>COLUMNS = 21;</code>
+     *
      * <pre>
      * return column metadata in response to GET_COLUMNS
      * </pre>
-     *
-     * <code>COLUMNS = 21;</code>
      */
     public static final int COLUMNS_VALUE = 21;
     /**
+     * <code>PREPARED_STATEMENT = 23;</code>
+     *
      * <pre>
      * return preparated statement in response to CREATE_PREPARED_STATEMENT
      * </pre>
-     *
-     * <code>PREPARED_STATEMENT = 23;</code>
      */
     public static final int PREPARED_STATEMENT_VALUE = 23;
     /**
+     * <code>SERVER_META = 9;</code>
+     *
      * <pre>
      * return server infos in respose to GET_SERVER_META
      * </pre>
-     *
-     * <code>SERVER_META = 9;</code>
      */
     public static final int SERVER_META_VALUE = 9;
     /**
+     * <code>QUERY_RESULT = 10;</code>
+     *
      * <pre>
      * drillbit is reporting a query status change, most likely a terminal message, to the user
      * </pre>
-     *
-     * <code>QUERY_RESULT = 10;</code>
      */
     public static final int QUERY_RESULT_VALUE = 10;
     /**
+     * <code>SASL_MESSAGE = 24;</code>
+     *
      * <pre>
      * user to bit and bit to user
      * </pre>
-     *
-     * <code>SASL_MESSAGE = 24;</code>
      */
     public static final int SASL_MESSAGE_VALUE = 24;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static RpcType valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static RpcType forNumber(int value) {
       switch (value) {
         case 0: return HANDSHAKE;
         case 1: return ACK;
@@ -451,17 +435,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        RpcType> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<RpcType>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<RpcType>() {
             public RpcType findValueByNumber(int number) {
-              return RpcType.forNumber(number);
+              return RpcType.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -483,9 +467,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private RpcType(int value) {
+    private RpcType(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -500,15 +486,15 @@
     /**
      * <code>UNKNOWN_SASL_SUPPORT = 0;</code>
      */
-    UNKNOWN_SASL_SUPPORT(0),
+    UNKNOWN_SASL_SUPPORT(0, 0),
     /**
      * <code>SASL_AUTH = 1;</code>
      */
-    SASL_AUTH(1),
+    SASL_AUTH(1, 1),
     /**
      * <code>SASL_PRIVACY = 2;</code>
      */
-    SASL_PRIVACY(2),
+    SASL_PRIVACY(2, 2),
     ;
 
     /**
@@ -525,19 +511,9 @@
     public static final int SASL_PRIVACY_VALUE = 2;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static SaslSupport valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static SaslSupport forNumber(int value) {
       switch (value) {
         case 0: return UNKNOWN_SASL_SUPPORT;
         case 1: return SASL_AUTH;
@@ -550,17 +526,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        SaslSupport> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<SaslSupport>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<SaslSupport>() {
             public SaslSupport findValueByNumber(int number) {
-              return SaslSupport.forNumber(number);
+              return SaslSupport.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -582,9 +558,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private SaslSupport(int value) {
+    private SaslSupport(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -597,38 +575,28 @@
   public enum QueryResultsMode
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>STREAM_FULL = 1;</code>
+     *
      * <pre>
      * Server will inform the client regularly on the status of the query. Once the query is completed, service will inform the client as each query chunk is made available.
      * </pre>
-     *
-     * <code>STREAM_FULL = 1;</code>
      */
-    STREAM_FULL(1),
+    STREAM_FULL(0, 1),
     ;
 
     /**
+     * <code>STREAM_FULL = 1;</code>
+     *
      * <pre>
      * Server will inform the client regularly on the status of the query. Once the query is completed, service will inform the client as each query chunk is made available.
      * </pre>
-     *
-     * <code>STREAM_FULL = 1;</code>
      */
     public static final int STREAM_FULL_VALUE = 1;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static QueryResultsMode valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static QueryResultsMode forNumber(int value) {
       switch (value) {
         case 1: return STREAM_FULL;
         default: return null;
@@ -639,17 +607,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        QueryResultsMode> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<QueryResultsMode>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<QueryResultsMode>() {
             public QueryResultsMode findValueByNumber(int number) {
-              return QueryResultsMode.forNumber(number);
+              return QueryResultsMode.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -671,9 +639,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private QueryResultsMode(int value) {
+    private QueryResultsMode(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -686,102 +656,92 @@
   public enum HandshakeStatus
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>SUCCESS = 1;</code>
+     *
      * <pre>
      * Handshake is successful (including authentication if any)
      * </pre>
-     *
-     * <code>SUCCESS = 1;</code>
      */
-    SUCCESS(1),
+    SUCCESS(0, 1),
     /**
+     * <code>RPC_VERSION_MISMATCH = 2;</code>
+     *
      * <pre>
      * Client and Server RPC versions are different
      * </pre>
-     *
-     * <code>RPC_VERSION_MISMATCH = 2;</code>
      */
-    RPC_VERSION_MISMATCH(2),
+    RPC_VERSION_MISMATCH(1, 2),
     /**
+     * <code>AUTH_FAILED = 3;</code>
+     *
      * <pre>
      * User authentication failed
      * </pre>
-     *
-     * <code>AUTH_FAILED = 3;</code>
      */
-    AUTH_FAILED(3),
+    AUTH_FAILED(2, 3),
     /**
+     * <code>UNKNOWN_FAILURE = 4;</code>
+     *
      * <pre>
      * Unknown failure, refer to the error message for more details
      * </pre>
-     *
-     * <code>UNKNOWN_FAILURE = 4;</code>
      */
-    UNKNOWN_FAILURE(4),
+    UNKNOWN_FAILURE(3, 4),
     /**
+     * <code>AUTH_REQUIRED = 5;</code>
+     *
      * <pre>
      * User authentication required
      * </pre>
-     *
-     * <code>AUTH_REQUIRED = 5;</code>
      */
-    AUTH_REQUIRED(5),
+    AUTH_REQUIRED(4, 5),
     ;
 
     /**
+     * <code>SUCCESS = 1;</code>
+     *
      * <pre>
      * Handshake is successful (including authentication if any)
      * </pre>
-     *
-     * <code>SUCCESS = 1;</code>
      */
     public static final int SUCCESS_VALUE = 1;
     /**
+     * <code>RPC_VERSION_MISMATCH = 2;</code>
+     *
      * <pre>
      * Client and Server RPC versions are different
      * </pre>
-     *
-     * <code>RPC_VERSION_MISMATCH = 2;</code>
      */
     public static final int RPC_VERSION_MISMATCH_VALUE = 2;
     /**
+     * <code>AUTH_FAILED = 3;</code>
+     *
      * <pre>
      * User authentication failed
      * </pre>
-     *
-     * <code>AUTH_FAILED = 3;</code>
      */
     public static final int AUTH_FAILED_VALUE = 3;
     /**
+     * <code>UNKNOWN_FAILURE = 4;</code>
+     *
      * <pre>
      * Unknown failure, refer to the error message for more details
      * </pre>
-     *
-     * <code>UNKNOWN_FAILURE = 4;</code>
      */
     public static final int UNKNOWN_FAILURE_VALUE = 4;
     /**
+     * <code>AUTH_REQUIRED = 5;</code>
+     *
      * <pre>
      * User authentication required
      * </pre>
-     *
-     * <code>AUTH_REQUIRED = 5;</code>
      */
     public static final int AUTH_REQUIRED_VALUE = 5;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static HandshakeStatus valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static HandshakeStatus forNumber(int value) {
       switch (value) {
         case 1: return SUCCESS;
         case 2: return RPC_VERSION_MISMATCH;
@@ -796,17 +756,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        HandshakeStatus> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<HandshakeStatus>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<HandshakeStatus>() {
             public HandshakeStatus findValueByNumber(int number) {
-              return HandshakeStatus.forNumber(number);
+              return HandshakeStatus.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -828,9 +788,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private HandshakeStatus(int value) {
+    private HandshakeStatus(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -838,35 +800,36 @@
   }
 
   /**
+   * Protobuf enum {@code exec.user.RequestStatus}
+   *
    * <pre>
+   *
    * Enum indicating the request status.
    * </pre>
-   *
-   * Protobuf enum {@code exec.user.RequestStatus}
    */
   public enum RequestStatus
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
      * <code>UNKNOWN_STATUS = 0;</code>
      */
-    UNKNOWN_STATUS(0),
+    UNKNOWN_STATUS(0, 0),
     /**
      * <code>OK = 1;</code>
      */
-    OK(1),
+    OK(1, 1),
     /**
      * <code>FAILED = 2;</code>
      */
-    FAILED(2),
+    FAILED(2, 2),
     /**
+     * <code>TIMEOUT = 3;</code>
+     *
      * <pre>
      **
      * Request timed out. Futher attempts can change any API specific parameters and retry or just retry the request.
      * </pre>
-     *
-     * <code>TIMEOUT = 3;</code>
      */
-    TIMEOUT(3),
+    TIMEOUT(3, 3),
     ;
 
     /**
@@ -882,29 +845,19 @@
      */
     public static final int FAILED_VALUE = 2;
     /**
+     * <code>TIMEOUT = 3;</code>
+     *
      * <pre>
      **
      * Request timed out. Futher attempts can change any API specific parameters and retry or just retry the request.
      * </pre>
-     *
-     * <code>TIMEOUT = 3;</code>
      */
     public static final int TIMEOUT_VALUE = 3;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static RequestStatus valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static RequestStatus forNumber(int value) {
       switch (value) {
         case 0: return UNKNOWN_STATUS;
         case 1: return OK;
@@ -918,17 +871,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        RequestStatus> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<RequestStatus>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<RequestStatus>() {
             public RequestStatus findValueByNumber(int number) {
-              return RequestStatus.forNumber(number);
+              return RequestStatus.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -950,9 +903,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private RequestStatus(int value) {
+    private RequestStatus(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -960,50 +915,51 @@
   }
 
   /**
+   * Protobuf enum {@code exec.user.ColumnSearchability}
+   *
    * <pre>
+   *
    * How a column can be used in WHERE clause
    * </pre>
-   *
-   * Protobuf enum {@code exec.user.ColumnSearchability}
    */
   public enum ColumnSearchability
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
      * <code>UNKNOWN_SEARCHABILITY = 0;</code>
      */
-    UNKNOWN_SEARCHABILITY(0),
+    UNKNOWN_SEARCHABILITY(0, 0),
     /**
+     * <code>NONE = 1;</code>
+     *
      * <pre>
      * can't be used in WHERE clause
      * </pre>
-     *
-     * <code>NONE = 1;</code>
      */
-    NONE(1),
+    NONE(1, 1),
     /**
+     * <code>CHAR = 2;</code>
+     *
      * <pre>
      * can be used in WHERE clause but only with LIKE predicate
      * </pre>
-     *
-     * <code>CHAR = 2;</code>
      */
-    CHAR(2),
+    CHAR(2, 2),
     /**
+     * <code>NUMBER = 3;</code>
+     *
      * <pre>
      * can be used in a WHERE clause with all the comparison operators except LIKE
      * </pre>
-     *
-     * <code>NUMBER = 3;</code>
      */
-    NUMBER(3),
+    NUMBER(3, 3),
     /**
+     * <code>ALL = 4;</code>
+     *
      * <pre>
      * can be used in a WHERE clause with all the comparison operators
      * </pre>
-     *
-     * <code>ALL = 4;</code>
      */
-    ALL(4),
+    ALL(4, 4),
     ;
 
     /**
@@ -1011,52 +967,42 @@
      */
     public static final int UNKNOWN_SEARCHABILITY_VALUE = 0;
     /**
+     * <code>NONE = 1;</code>
+     *
      * <pre>
      * can't be used in WHERE clause
      * </pre>
-     *
-     * <code>NONE = 1;</code>
      */
     public static final int NONE_VALUE = 1;
     /**
+     * <code>CHAR = 2;</code>
+     *
      * <pre>
      * can be used in WHERE clause but only with LIKE predicate
      * </pre>
-     *
-     * <code>CHAR = 2;</code>
      */
     public static final int CHAR_VALUE = 2;
     /**
+     * <code>NUMBER = 3;</code>
+     *
      * <pre>
      * can be used in a WHERE clause with all the comparison operators except LIKE
      * </pre>
-     *
-     * <code>NUMBER = 3;</code>
      */
     public static final int NUMBER_VALUE = 3;
     /**
+     * <code>ALL = 4;</code>
+     *
      * <pre>
      * can be used in a WHERE clause with all the comparison operators
      * </pre>
-     *
-     * <code>ALL = 4;</code>
      */
     public static final int ALL_VALUE = 4;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static ColumnSearchability valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static ColumnSearchability forNumber(int value) {
       switch (value) {
         case 0: return UNKNOWN_SEARCHABILITY;
         case 1: return NONE;
@@ -1071,17 +1017,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        ColumnSearchability> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<ColumnSearchability>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<ColumnSearchability>() {
             public ColumnSearchability findValueByNumber(int number) {
-              return ColumnSearchability.forNumber(number);
+              return ColumnSearchability.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -1103,9 +1049,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private ColumnSearchability(int value) {
+    private ColumnSearchability(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -1113,26 +1061,27 @@
   }
 
   /**
+   * Protobuf enum {@code exec.user.ColumnUpdatability}
+   *
    * <pre>
+   *
    * Whether a column can be updatable.
    * </pre>
-   *
-   * Protobuf enum {@code exec.user.ColumnUpdatability}
    */
   public enum ColumnUpdatability
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
      * <code>UNKNOWN_UPDATABILITY = 0;</code>
      */
-    UNKNOWN_UPDATABILITY(0),
+    UNKNOWN_UPDATABILITY(0, 0),
     /**
      * <code>READ_ONLY = 1;</code>
      */
-    READ_ONLY(1),
+    READ_ONLY(1, 1),
     /**
      * <code>WRITABLE = 2;</code>
      */
-    WRITABLE(2),
+    WRITABLE(2, 2),
     ;
 
     /**
@@ -1149,19 +1098,9 @@
     public static final int WRITABLE_VALUE = 2;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static ColumnUpdatability valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static ColumnUpdatability forNumber(int value) {
       switch (value) {
         case 0: return UNKNOWN_UPDATABILITY;
         case 1: return READ_ONLY;
@@ -1174,17 +1113,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        ColumnUpdatability> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<ColumnUpdatability>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<ColumnUpdatability>() {
             public ColumnUpdatability findValueByNumber(int number) {
-              return ColumnUpdatability.forNumber(number);
+              return ColumnUpdatability.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -1206,9 +1145,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private ColumnUpdatability(int value) {
+    private ColumnUpdatability(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -1221,54 +1162,44 @@
   public enum CollateSupport
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>CS_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>CS_UNKNOWN = 0;</code>
      */
-    CS_UNKNOWN(0),
+    CS_UNKNOWN(0, 0),
     /**
+     * <code>CS_GROUP_BY = 1;</code>
+     *
      * <pre>
      * COLLATE clause can be added after each grouping column
      * </pre>
-     *
-     * <code>CS_GROUP_BY = 1;</code>
      */
-    CS_GROUP_BY(1),
+    CS_GROUP_BY(1, 1),
     ;
 
     /**
+     * <code>CS_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>CS_UNKNOWN = 0;</code>
      */
     public static final int CS_UNKNOWN_VALUE = 0;
     /**
+     * <code>CS_GROUP_BY = 1;</code>
+     *
      * <pre>
      * COLLATE clause can be added after each grouping column
      * </pre>
-     *
-     * <code>CS_GROUP_BY = 1;</code>
      */
     public static final int CS_GROUP_BY_VALUE = 1;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static CollateSupport valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static CollateSupport forNumber(int value) {
       switch (value) {
         case 0: return CS_UNKNOWN;
         case 1: return CS_GROUP_BY;
@@ -1280,17 +1211,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        CollateSupport> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<CollateSupport>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<CollateSupport>() {
             public CollateSupport findValueByNumber(int number) {
-              return CollateSupport.forNumber(number);
+              return CollateSupport.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -1312,9 +1243,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private CollateSupport(int value) {
+    private CollateSupport(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -1327,70 +1260,60 @@
   public enum CorrelationNamesSupport
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>CN_NONE = 1;</code>
+     *
      * <pre>
      * Correlation names are not supported
      * </pre>
-     *
-     * <code>CN_NONE = 1;</code>
      */
-    CN_NONE(1),
+    CN_NONE(0, 1),
     /**
+     * <code>CN_DIFFERENT_NAMES = 2;</code>
+     *
      * <pre>
      * Correlation names are supported, but names have to
      * </pre>
-     *
-     * <code>CN_DIFFERENT_NAMES = 2;</code>
      */
-    CN_DIFFERENT_NAMES(2),
+    CN_DIFFERENT_NAMES(1, 2),
     /**
+     * <code>CN_ANY = 3;</code>
+     *
      * <pre>
      * be different from the tables they represent
      * </pre>
-     *
-     * <code>CN_ANY = 3;</code>
      */
-    CN_ANY(3),
+    CN_ANY(2, 3),
     ;
 
     /**
+     * <code>CN_NONE = 1;</code>
+     *
      * <pre>
      * Correlation names are not supported
      * </pre>
-     *
-     * <code>CN_NONE = 1;</code>
      */
     public static final int CN_NONE_VALUE = 1;
     /**
+     * <code>CN_DIFFERENT_NAMES = 2;</code>
+     *
      * <pre>
      * Correlation names are supported, but names have to
      * </pre>
-     *
-     * <code>CN_DIFFERENT_NAMES = 2;</code>
      */
     public static final int CN_DIFFERENT_NAMES_VALUE = 2;
     /**
+     * <code>CN_ANY = 3;</code>
+     *
      * <pre>
      * be different from the tables they represent
      * </pre>
-     *
-     * <code>CN_ANY = 3;</code>
      */
     public static final int CN_ANY_VALUE = 3;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static CorrelationNamesSupport valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static CorrelationNamesSupport forNumber(int value) {
       switch (value) {
         case 1: return CN_NONE;
         case 2: return CN_DIFFERENT_NAMES;
@@ -1403,17 +1326,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        CorrelationNamesSupport> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<CorrelationNamesSupport>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<CorrelationNamesSupport>() {
             public CorrelationNamesSupport findValueByNumber(int number) {
-              return CorrelationNamesSupport.forNumber(number);
+              return CorrelationNamesSupport.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -1435,9 +1358,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private CorrelationNamesSupport(int value) {
+    private CorrelationNamesSupport(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -1450,294 +1375,284 @@
   public enum DateTimeLiteralsSupport
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>DL_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>DL_UNKNOWN = 0;</code>
      */
-    DL_UNKNOWN(0),
+    DL_UNKNOWN(0, 0),
     /**
+     * <code>DL_DATE = 1;</code>
+     *
      * <pre>
      * DATE literal is supported
      * </pre>
-     *
-     * <code>DL_DATE = 1;</code>
      */
-    DL_DATE(1),
+    DL_DATE(1, 1),
     /**
+     * <code>DL_TIME = 2;</code>
+     *
      * <pre>
      * TIME literal is supported
      * </pre>
-     *
-     * <code>DL_TIME = 2;</code>
      */
-    DL_TIME(2),
+    DL_TIME(2, 2),
     /**
+     * <code>DL_TIMESTAMP = 3;</code>
+     *
      * <pre>
      * TIMESTAMP literal is supported
      * </pre>
-     *
-     * <code>DL_TIMESTAMP = 3;</code>
      */
-    DL_TIMESTAMP(3),
+    DL_TIMESTAMP(3, 3),
     /**
+     * <code>DL_INTERVAL_YEAR = 4;</code>
+     *
      * <pre>
      * INTERVAL YEAR literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_YEAR = 4;</code>
      */
-    DL_INTERVAL_YEAR(4),
+    DL_INTERVAL_YEAR(4, 4),
     /**
+     * <code>DL_INTERVAL_MONTH = 5;</code>
+     *
      * <pre>
      * INTERVAL MONTH literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_MONTH = 5;</code>
      */
-    DL_INTERVAL_MONTH(5),
+    DL_INTERVAL_MONTH(5, 5),
     /**
+     * <code>DL_INTERVAL_DAY = 6;</code>
+     *
      * <pre>
      * INTERVAL DAY literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_DAY = 6;</code>
      */
-    DL_INTERVAL_DAY(6),
+    DL_INTERVAL_DAY(6, 6),
     /**
+     * <code>DL_INTERVAL_HOUR = 7;</code>
+     *
      * <pre>
      * INTERVAL HOUR literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_HOUR = 7;</code>
      */
-    DL_INTERVAL_HOUR(7),
+    DL_INTERVAL_HOUR(7, 7),
     /**
+     * <code>DL_INTERVAL_MINUTE = 8;</code>
+     *
      * <pre>
      * INTERVAL MINUTE literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_MINUTE = 8;</code>
      */
-    DL_INTERVAL_MINUTE(8),
+    DL_INTERVAL_MINUTE(8, 8),
     /**
+     * <code>DL_INTERVAL_SECOND = 9;</code>
+     *
      * <pre>
      * INTERVAL SECOND literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_SECOND = 9;</code>
      */
-    DL_INTERVAL_SECOND(9),
+    DL_INTERVAL_SECOND(9, 9),
     /**
+     * <code>DL_INTERVAL_YEAR_TO_MONTH = 10;</code>
+     *
      * <pre>
      * INTERVAL YEAR TO MONTH literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_YEAR_TO_MONTH = 10;</code>
      */
-    DL_INTERVAL_YEAR_TO_MONTH(10),
+    DL_INTERVAL_YEAR_TO_MONTH(10, 10),
     /**
+     * <code>DL_INTERVAL_DAY_TO_HOUR = 11;</code>
+     *
      * <pre>
      * INTERVAL DAY TO HOUR literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_DAY_TO_HOUR = 11;</code>
      */
-    DL_INTERVAL_DAY_TO_HOUR(11),
+    DL_INTERVAL_DAY_TO_HOUR(11, 11),
     /**
+     * <code>DL_INTERVAL_DAY_TO_MINUTE = 12;</code>
+     *
      * <pre>
      * INTERVAL DAY TO MINUTE literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_DAY_TO_MINUTE = 12;</code>
      */
-    DL_INTERVAL_DAY_TO_MINUTE(12),
+    DL_INTERVAL_DAY_TO_MINUTE(12, 12),
     /**
+     * <code>DL_INTERVAL_DAY_TO_SECOND = 13;</code>
+     *
      * <pre>
      * INTERVAL DAY TO SECOND literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_DAY_TO_SECOND = 13;</code>
      */
-    DL_INTERVAL_DAY_TO_SECOND(13),
+    DL_INTERVAL_DAY_TO_SECOND(13, 13),
     /**
+     * <code>DL_INTERVAL_HOUR_TO_MINUTE = 14;</code>
+     *
      * <pre>
      * INTERVAL HOUR TO MINUTE literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_HOUR_TO_MINUTE = 14;</code>
      */
-    DL_INTERVAL_HOUR_TO_MINUTE(14),
+    DL_INTERVAL_HOUR_TO_MINUTE(14, 14),
     /**
+     * <code>DL_INTERVAL_HOUR_TO_SECOND = 15;</code>
+     *
      * <pre>
      * INTERVAL HOUR TO SECOND literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_HOUR_TO_SECOND = 15;</code>
      */
-    DL_INTERVAL_HOUR_TO_SECOND(15),
+    DL_INTERVAL_HOUR_TO_SECOND(15, 15),
     /**
+     * <code>DL_INTERVAL_MINUTE_TO_SECOND = 16;</code>
+     *
      * <pre>
      * INTERVAL MINUTE TO SECOND literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_MINUTE_TO_SECOND = 16;</code>
      */
-    DL_INTERVAL_MINUTE_TO_SECOND(16),
+    DL_INTERVAL_MINUTE_TO_SECOND(16, 16),
     ;
 
     /**
+     * <code>DL_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>DL_UNKNOWN = 0;</code>
      */
     public static final int DL_UNKNOWN_VALUE = 0;
     /**
+     * <code>DL_DATE = 1;</code>
+     *
      * <pre>
      * DATE literal is supported
      * </pre>
-     *
-     * <code>DL_DATE = 1;</code>
      */
     public static final int DL_DATE_VALUE = 1;
     /**
+     * <code>DL_TIME = 2;</code>
+     *
      * <pre>
      * TIME literal is supported
      * </pre>
-     *
-     * <code>DL_TIME = 2;</code>
      */
     public static final int DL_TIME_VALUE = 2;
     /**
+     * <code>DL_TIMESTAMP = 3;</code>
+     *
      * <pre>
      * TIMESTAMP literal is supported
      * </pre>
-     *
-     * <code>DL_TIMESTAMP = 3;</code>
      */
     public static final int DL_TIMESTAMP_VALUE = 3;
     /**
+     * <code>DL_INTERVAL_YEAR = 4;</code>
+     *
      * <pre>
      * INTERVAL YEAR literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_YEAR = 4;</code>
      */
     public static final int DL_INTERVAL_YEAR_VALUE = 4;
     /**
+     * <code>DL_INTERVAL_MONTH = 5;</code>
+     *
      * <pre>
      * INTERVAL MONTH literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_MONTH = 5;</code>
      */
     public static final int DL_INTERVAL_MONTH_VALUE = 5;
     /**
+     * <code>DL_INTERVAL_DAY = 6;</code>
+     *
      * <pre>
      * INTERVAL DAY literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_DAY = 6;</code>
      */
     public static final int DL_INTERVAL_DAY_VALUE = 6;
     /**
+     * <code>DL_INTERVAL_HOUR = 7;</code>
+     *
      * <pre>
      * INTERVAL HOUR literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_HOUR = 7;</code>
      */
     public static final int DL_INTERVAL_HOUR_VALUE = 7;
     /**
+     * <code>DL_INTERVAL_MINUTE = 8;</code>
+     *
      * <pre>
      * INTERVAL MINUTE literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_MINUTE = 8;</code>
      */
     public static final int DL_INTERVAL_MINUTE_VALUE = 8;
     /**
+     * <code>DL_INTERVAL_SECOND = 9;</code>
+     *
      * <pre>
      * INTERVAL SECOND literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_SECOND = 9;</code>
      */
     public static final int DL_INTERVAL_SECOND_VALUE = 9;
     /**
+     * <code>DL_INTERVAL_YEAR_TO_MONTH = 10;</code>
+     *
      * <pre>
      * INTERVAL YEAR TO MONTH literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_YEAR_TO_MONTH = 10;</code>
      */
     public static final int DL_INTERVAL_YEAR_TO_MONTH_VALUE = 10;
     /**
+     * <code>DL_INTERVAL_DAY_TO_HOUR = 11;</code>
+     *
      * <pre>
      * INTERVAL DAY TO HOUR literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_DAY_TO_HOUR = 11;</code>
      */
     public static final int DL_INTERVAL_DAY_TO_HOUR_VALUE = 11;
     /**
+     * <code>DL_INTERVAL_DAY_TO_MINUTE = 12;</code>
+     *
      * <pre>
      * INTERVAL DAY TO MINUTE literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_DAY_TO_MINUTE = 12;</code>
      */
     public static final int DL_INTERVAL_DAY_TO_MINUTE_VALUE = 12;
     /**
+     * <code>DL_INTERVAL_DAY_TO_SECOND = 13;</code>
+     *
      * <pre>
      * INTERVAL DAY TO SECOND literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_DAY_TO_SECOND = 13;</code>
      */
     public static final int DL_INTERVAL_DAY_TO_SECOND_VALUE = 13;
     /**
+     * <code>DL_INTERVAL_HOUR_TO_MINUTE = 14;</code>
+     *
      * <pre>
      * INTERVAL HOUR TO MINUTE literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_HOUR_TO_MINUTE = 14;</code>
      */
     public static final int DL_INTERVAL_HOUR_TO_MINUTE_VALUE = 14;
     /**
+     * <code>DL_INTERVAL_HOUR_TO_SECOND = 15;</code>
+     *
      * <pre>
      * INTERVAL HOUR TO SECOND literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_HOUR_TO_SECOND = 15;</code>
      */
     public static final int DL_INTERVAL_HOUR_TO_SECOND_VALUE = 15;
     /**
+     * <code>DL_INTERVAL_MINUTE_TO_SECOND = 16;</code>
+     *
      * <pre>
      * INTERVAL MINUTE TO SECOND literal is supported
      * </pre>
-     *
-     * <code>DL_INTERVAL_MINUTE_TO_SECOND = 16;</code>
      */
     public static final int DL_INTERVAL_MINUTE_TO_SECOND_VALUE = 16;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static DateTimeLiteralsSupport valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static DateTimeLiteralsSupport forNumber(int value) {
       switch (value) {
         case 0: return DL_UNKNOWN;
         case 1: return DL_DATE;
@@ -1764,17 +1679,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        DateTimeLiteralsSupport> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<DateTimeLiteralsSupport>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<DateTimeLiteralsSupport>() {
             public DateTimeLiteralsSupport findValueByNumber(int number) {
-              return DateTimeLiteralsSupport.forNumber(number);
+              return DateTimeLiteralsSupport.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -1796,9 +1711,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private DateTimeLiteralsSupport(int value) {
+    private DateTimeLiteralsSupport(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -1811,88 +1728,78 @@
   public enum GroupBySupport
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>GB_NONE = 1;</code>
+     *
      * <pre>
      * Group by is not supported
      * </pre>
-     *
-     * <code>GB_NONE = 1;</code>
      */
-    GB_NONE(1),
+    GB_NONE(0, 1),
     /**
+     * <code>GB_SELECT_ONLY = 2;</code>
+     *
      * <pre>
      * Group by supported with non aggregated columns in select
      * </pre>
-     *
-     * <code>GB_SELECT_ONLY = 2;</code>
      */
-    GB_SELECT_ONLY(2),
+    GB_SELECT_ONLY(1, 2),
     /**
+     * <code>GB_BEYOND_SELECT = 3;</code>
+     *
      * <pre>
      * Group by supported with columns absent from the select list
      *if all the non-aggregated colums from the select list are also added 
      * </pre>
-     *
-     * <code>GB_BEYOND_SELECT = 3;</code>
      */
-    GB_BEYOND_SELECT(3),
+    GB_BEYOND_SELECT(2, 3),
     /**
+     * <code>GB_UNRELATED = 4;</code>
+     *
      * <pre>
      * Group by supported with columns absent from the select list
      * </pre>
-     *
-     * <code>GB_UNRELATED = 4;</code>
      */
-    GB_UNRELATED(4),
+    GB_UNRELATED(3, 4),
     ;
 
     /**
+     * <code>GB_NONE = 1;</code>
+     *
      * <pre>
      * Group by is not supported
      * </pre>
-     *
-     * <code>GB_NONE = 1;</code>
      */
     public static final int GB_NONE_VALUE = 1;
     /**
+     * <code>GB_SELECT_ONLY = 2;</code>
+     *
      * <pre>
      * Group by supported with non aggregated columns in select
      * </pre>
-     *
-     * <code>GB_SELECT_ONLY = 2;</code>
      */
     public static final int GB_SELECT_ONLY_VALUE = 2;
     /**
+     * <code>GB_BEYOND_SELECT = 3;</code>
+     *
      * <pre>
      * Group by supported with columns absent from the select list
      *if all the non-aggregated colums from the select list are also added 
      * </pre>
-     *
-     * <code>GB_BEYOND_SELECT = 3;</code>
      */
     public static final int GB_BEYOND_SELECT_VALUE = 3;
     /**
+     * <code>GB_UNRELATED = 4;</code>
+     *
      * <pre>
      * Group by supported with columns absent from the select list
      * </pre>
-     *
-     * <code>GB_UNRELATED = 4;</code>
      */
     public static final int GB_UNRELATED_VALUE = 4;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static GroupBySupport valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static GroupBySupport forNumber(int value) {
       switch (value) {
         case 1: return GB_NONE;
         case 2: return GB_SELECT_ONLY;
@@ -1906,17 +1813,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        GroupBySupport> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<GroupBySupport>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<GroupBySupport>() {
             public GroupBySupport findValueByNumber(int number) {
-              return GroupBySupport.forNumber(number);
+              return GroupBySupport.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -1938,9 +1845,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private GroupBySupport(int value) {
+    private GroupBySupport(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -1953,110 +1862,100 @@
   public enum IdentifierCasing
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>IC_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>IC_UNKNOWN = 0;</code>
      */
-    IC_UNKNOWN(0),
+    IC_UNKNOWN(0, 0),
     /**
+     * <code>IC_STORES_LOWER = 1;</code>
+     *
      * <pre>
      * Mixed case identifier is treated as case insensitive
      *and stored in lower case 
      * </pre>
-     *
-     * <code>IC_STORES_LOWER = 1;</code>
      */
-    IC_STORES_LOWER(1),
+    IC_STORES_LOWER(1, 1),
     /**
+     * <code>IC_STORES_MIXED = 2;</code>
+     *
      * <pre>
      * Mixed case identifier is treated as case insensitive
      *and stored in mixed case 
      * </pre>
-     *
-     * <code>IC_STORES_MIXED = 2;</code>
      */
-    IC_STORES_MIXED(2),
+    IC_STORES_MIXED(2, 2),
     /**
+     * <code>IC_STORES_UPPER = 3;</code>
+     *
      * <pre>
      * Mixed case identifier is treated as case insensitive
      *and stored in upper case 
      * </pre>
-     *
-     * <code>IC_STORES_UPPER = 3;</code>
      */
-    IC_STORES_UPPER(3),
+    IC_STORES_UPPER(3, 3),
     /**
+     * <code>IC_SUPPORTS_MIXED = 4;</code>
+     *
      * <pre>
      * Mixed case identifier is treated as case sensitive
      *and stored in mixed case 
      * </pre>
-     *
-     * <code>IC_SUPPORTS_MIXED = 4;</code>
      */
-    IC_SUPPORTS_MIXED(4),
+    IC_SUPPORTS_MIXED(4, 4),
     ;
 
     /**
+     * <code>IC_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>IC_UNKNOWN = 0;</code>
      */
     public static final int IC_UNKNOWN_VALUE = 0;
     /**
+     * <code>IC_STORES_LOWER = 1;</code>
+     *
      * <pre>
      * Mixed case identifier is treated as case insensitive
      *and stored in lower case 
      * </pre>
-     *
-     * <code>IC_STORES_LOWER = 1;</code>
      */
     public static final int IC_STORES_LOWER_VALUE = 1;
     /**
+     * <code>IC_STORES_MIXED = 2;</code>
+     *
      * <pre>
      * Mixed case identifier is treated as case insensitive
      *and stored in mixed case 
      * </pre>
-     *
-     * <code>IC_STORES_MIXED = 2;</code>
      */
     public static final int IC_STORES_MIXED_VALUE = 2;
     /**
+     * <code>IC_STORES_UPPER = 3;</code>
+     *
      * <pre>
      * Mixed case identifier is treated as case insensitive
      *and stored in upper case 
      * </pre>
-     *
-     * <code>IC_STORES_UPPER = 3;</code>
      */
     public static final int IC_STORES_UPPER_VALUE = 3;
     /**
+     * <code>IC_SUPPORTS_MIXED = 4;</code>
+     *
      * <pre>
      * Mixed case identifier is treated as case sensitive
      *and stored in mixed case 
      * </pre>
-     *
-     * <code>IC_SUPPORTS_MIXED = 4;</code>
      */
     public static final int IC_SUPPORTS_MIXED_VALUE = 4;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static IdentifierCasing valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static IdentifierCasing forNumber(int value) {
       switch (value) {
         case 0: return IC_UNKNOWN;
         case 1: return IC_STORES_LOWER;
@@ -2071,17 +1970,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        IdentifierCasing> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<IdentifierCasing>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<IdentifierCasing>() {
             public IdentifierCasing findValueByNumber(int number) {
-              return IdentifierCasing.forNumber(number);
+              return IdentifierCasing.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -2103,9 +2002,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private IdentifierCasing(int value) {
+    private IdentifierCasing(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -2118,102 +2019,92 @@
   public enum NullCollation
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>NC_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>NC_UNKNOWN = 0;</code>
      */
-    NC_UNKNOWN(0),
+    NC_UNKNOWN(0, 0),
     /**
+     * <code>NC_AT_START = 1;</code>
+     *
      * <pre>
      * NULL values are sorted at the start regardless of the order
      * </pre>
-     *
-     * <code>NC_AT_START = 1;</code>
      */
-    NC_AT_START(1),
+    NC_AT_START(1, 1),
     /**
+     * <code>NC_AT_END = 2;</code>
+     *
      * <pre>
      * NULL values are sorted at the end regardless of the order
      * </pre>
-     *
-     * <code>NC_AT_END = 2;</code>
      */
-    NC_AT_END(2),
+    NC_AT_END(2, 2),
     /**
+     * <code>NC_HIGH = 3;</code>
+     *
      * <pre>
      * NULL is the highest value
      * </pre>
-     *
-     * <code>NC_HIGH = 3;</code>
      */
-    NC_HIGH(3),
+    NC_HIGH(3, 3),
     /**
+     * <code>NC_LOW = 4;</code>
+     *
      * <pre>
      * NULL is the lowest value
      * </pre>
-     *
-     * <code>NC_LOW = 4;</code>
      */
-    NC_LOW(4),
+    NC_LOW(4, 4),
     ;
 
     /**
+     * <code>NC_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>NC_UNKNOWN = 0;</code>
      */
     public static final int NC_UNKNOWN_VALUE = 0;
     /**
+     * <code>NC_AT_START = 1;</code>
+     *
      * <pre>
      * NULL values are sorted at the start regardless of the order
      * </pre>
-     *
-     * <code>NC_AT_START = 1;</code>
      */
     public static final int NC_AT_START_VALUE = 1;
     /**
+     * <code>NC_AT_END = 2;</code>
+     *
      * <pre>
      * NULL values are sorted at the end regardless of the order
      * </pre>
-     *
-     * <code>NC_AT_END = 2;</code>
      */
     public static final int NC_AT_END_VALUE = 2;
     /**
+     * <code>NC_HIGH = 3;</code>
+     *
      * <pre>
      * NULL is the highest value
      * </pre>
-     *
-     * <code>NC_HIGH = 3;</code>
      */
     public static final int NC_HIGH_VALUE = 3;
     /**
+     * <code>NC_LOW = 4;</code>
+     *
      * <pre>
      * NULL is the lowest value
      * </pre>
-     *
-     * <code>NC_LOW = 4;</code>
      */
     public static final int NC_LOW_VALUE = 4;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static NullCollation valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static NullCollation forNumber(int value) {
       switch (value) {
         case 0: return NC_UNKNOWN;
         case 1: return NC_AT_START;
@@ -2228,17 +2119,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        NullCollation> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<NullCollation>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<NullCollation>() {
             public NullCollation findValueByNumber(int number) {
-              return NullCollation.forNumber(number);
+              return NullCollation.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -2260,9 +2151,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private NullCollation(int value) {
+    private NullCollation(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -2275,70 +2168,60 @@
   public enum OrderBySupport
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>OB_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>OB_UNKNOWN = 0;</code>
      */
-    OB_UNKNOWN(0),
+    OB_UNKNOWN(0, 0),
     /**
+     * <code>OB_UNRELATED = 1;</code>
+     *
      * <pre>
      * ORDER BY supported with columns not in SELECT list
      * </pre>
-     *
-     * <code>OB_UNRELATED = 1;</code>
      */
-    OB_UNRELATED(1),
+    OB_UNRELATED(1, 1),
     /**
+     * <code>OB_EXPRESSION = 2;</code>
+     *
      * <pre>
      * ORDER BY with expressions is supported
      * </pre>
-     *
-     * <code>OB_EXPRESSION = 2;</code>
      */
-    OB_EXPRESSION(2),
+    OB_EXPRESSION(2, 2),
     ;
 
     /**
+     * <code>OB_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>OB_UNKNOWN = 0;</code>
      */
     public static final int OB_UNKNOWN_VALUE = 0;
     /**
+     * <code>OB_UNRELATED = 1;</code>
+     *
      * <pre>
      * ORDER BY supported with columns not in SELECT list
      * </pre>
-     *
-     * <code>OB_UNRELATED = 1;</code>
      */
     public static final int OB_UNRELATED_VALUE = 1;
     /**
+     * <code>OB_EXPRESSION = 2;</code>
+     *
      * <pre>
      * ORDER BY with expressions is supported
      * </pre>
-     *
-     * <code>OB_EXPRESSION = 2;</code>
      */
     public static final int OB_EXPRESSION_VALUE = 2;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static OrderBySupport valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static OrderBySupport forNumber(int value) {
       switch (value) {
         case 0: return OB_UNKNOWN;
         case 1: return OB_UNRELATED;
@@ -2351,17 +2234,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        OrderBySupport> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<OrderBySupport>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<OrderBySupport>() {
             public OrderBySupport findValueByNumber(int number) {
-              return OrderBySupport.forNumber(number);
+              return OrderBySupport.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -2383,9 +2266,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private OrderBySupport(int value) {
+    private OrderBySupport(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -2398,152 +2283,142 @@
   public enum OuterJoinSupport
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>OJ_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>OJ_UNKNOWN = 0;</code>
      */
-    OJ_UNKNOWN(0),
+    OJ_UNKNOWN(0, 0),
     /**
+     * <code>OJ_LEFT = 1;</code>
+     *
      * <pre>
      * Left outer join is supported
      * </pre>
-     *
-     * <code>OJ_LEFT = 1;</code>
      */
-    OJ_LEFT(1),
+    OJ_LEFT(1, 1),
     /**
+     * <code>OJ_RIGHT = 2;</code>
+     *
      * <pre>
      * Right outer join is supported
      * </pre>
-     *
-     * <code>OJ_RIGHT = 2;</code>
      */
-    OJ_RIGHT(2),
+    OJ_RIGHT(2, 2),
     /**
+     * <code>OJ_FULL = 3;</code>
+     *
      * <pre>
      * Full outer join is supported
      * </pre>
-     *
-     * <code>OJ_FULL = 3;</code>
      */
-    OJ_FULL(3),
+    OJ_FULL(3, 3),
     /**
+     * <code>OJ_NESTED = 4;</code>
+     *
      * <pre>
      * Nested outer join is supported
      * </pre>
-     *
-     * <code>OJ_NESTED = 4;</code>
      */
-    OJ_NESTED(4),
+    OJ_NESTED(4, 4),
     /**
+     * <code>OJ_NOT_ORDERED = 5;</code>
+     *
      * <pre>
      * Column names in the ON clause don't have to share the same order
      *as their respective table names in the OUTER JOIN clase 
      * </pre>
-     *
-     * <code>OJ_NOT_ORDERED = 5;</code>
      */
-    OJ_NOT_ORDERED(5),
+    OJ_NOT_ORDERED(5, 5),
     /**
+     * <code>OJ_INNER = 6;</code>
+     *
      * <pre>
      * Inner table can also be used in an inner join
      * </pre>
-     *
-     * <code>OJ_INNER = 6;</code>
      */
-    OJ_INNER(6),
+    OJ_INNER(6, 6),
     /**
+     * <code>OJ_ALL_COMPARISON_OPS = 7;</code>
+     *
      * <pre>
      * Any comparison operator is supported in the ON clause
      * </pre>
-     *
-     * <code>OJ_ALL_COMPARISON_OPS = 7;</code>
      */
-    OJ_ALL_COMPARISON_OPS(7),
+    OJ_ALL_COMPARISON_OPS(7, 7),
     ;
 
     /**
+     * <code>OJ_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>OJ_UNKNOWN = 0;</code>
      */
     public static final int OJ_UNKNOWN_VALUE = 0;
     /**
+     * <code>OJ_LEFT = 1;</code>
+     *
      * <pre>
      * Left outer join is supported
      * </pre>
-     *
-     * <code>OJ_LEFT = 1;</code>
      */
     public static final int OJ_LEFT_VALUE = 1;
     /**
+     * <code>OJ_RIGHT = 2;</code>
+     *
      * <pre>
      * Right outer join is supported
      * </pre>
-     *
-     * <code>OJ_RIGHT = 2;</code>
      */
     public static final int OJ_RIGHT_VALUE = 2;
     /**
+     * <code>OJ_FULL = 3;</code>
+     *
      * <pre>
      * Full outer join is supported
      * </pre>
-     *
-     * <code>OJ_FULL = 3;</code>
      */
     public static final int OJ_FULL_VALUE = 3;
     /**
+     * <code>OJ_NESTED = 4;</code>
+     *
      * <pre>
      * Nested outer join is supported
      * </pre>
-     *
-     * <code>OJ_NESTED = 4;</code>
      */
     public static final int OJ_NESTED_VALUE = 4;
     /**
+     * <code>OJ_NOT_ORDERED = 5;</code>
+     *
      * <pre>
      * Column names in the ON clause don't have to share the same order
      *as their respective table names in the OUTER JOIN clase 
      * </pre>
-     *
-     * <code>OJ_NOT_ORDERED = 5;</code>
      */
     public static final int OJ_NOT_ORDERED_VALUE = 5;
     /**
+     * <code>OJ_INNER = 6;</code>
+     *
      * <pre>
      * Inner table can also be used in an inner join
      * </pre>
-     *
-     * <code>OJ_INNER = 6;</code>
      */
     public static final int OJ_INNER_VALUE = 6;
     /**
+     * <code>OJ_ALL_COMPARISON_OPS = 7;</code>
+     *
      * <pre>
      * Any comparison operator is supported in the ON clause
      * </pre>
-     *
-     * <code>OJ_ALL_COMPARISON_OPS = 7;</code>
      */
     public static final int OJ_ALL_COMPARISON_OPS_VALUE = 7;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static OuterJoinSupport valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static OuterJoinSupport forNumber(int value) {
       switch (value) {
         case 0: return OJ_UNKNOWN;
         case 1: return OJ_LEFT;
@@ -2561,17 +2436,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        OuterJoinSupport> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<OuterJoinSupport>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<OuterJoinSupport>() {
             public OuterJoinSupport findValueByNumber(int number) {
-              return OuterJoinSupport.forNumber(number);
+              return OuterJoinSupport.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -2593,9 +2468,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private OuterJoinSupport(int value) {
+    private OuterJoinSupport(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -2608,118 +2485,108 @@
   public enum SubQuerySupport
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>SQ_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>SQ_UNKNOWN = 0;</code>
      */
-    SQ_UNKNOWN(0),
+    SQ_UNKNOWN(0, 0),
     /**
+     * <code>SQ_CORRELATED = 1;</code>
+     *
      * <pre>
      * Correlated subquery is supported
      * </pre>
-     *
-     * <code>SQ_CORRELATED = 1;</code>
      */
-    SQ_CORRELATED(1),
+    SQ_CORRELATED(1, 1),
     /**
+     * <code>SQ_IN_COMPARISON = 2;</code>
+     *
      * <pre>
      * Subquery in comparison expression is supported
      * </pre>
-     *
-     * <code>SQ_IN_COMPARISON = 2;</code>
      */
-    SQ_IN_COMPARISON(2),
+    SQ_IN_COMPARISON(2, 2),
     /**
+     * <code>SQ_IN_EXISTS = 3;</code>
+     *
      * <pre>
      * Subquery in EXISTS expression is supported
      * </pre>
-     *
-     * <code>SQ_IN_EXISTS = 3;</code>
      */
-    SQ_IN_EXISTS(3),
+    SQ_IN_EXISTS(3, 3),
     /**
+     * <code>SQ_IN_INSERT = 4;</code>
+     *
      * <pre>
      * Subquery in INSERT expression is supported
      * </pre>
-     *
-     * <code>SQ_IN_INSERT = 4;</code>
      */
-    SQ_IN_INSERT(4),
+    SQ_IN_INSERT(4, 4),
     /**
+     * <code>SQ_IN_QUANTIFIED = 5;</code>
+     *
      * <pre>
      * Subquery in quantified expression is supported
      * </pre>
-     *
-     * <code>SQ_IN_QUANTIFIED = 5;</code>
      */
-    SQ_IN_QUANTIFIED(5),
+    SQ_IN_QUANTIFIED(5, 5),
     ;
 
     /**
+     * <code>SQ_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>SQ_UNKNOWN = 0;</code>
      */
     public static final int SQ_UNKNOWN_VALUE = 0;
     /**
+     * <code>SQ_CORRELATED = 1;</code>
+     *
      * <pre>
      * Correlated subquery is supported
      * </pre>
-     *
-     * <code>SQ_CORRELATED = 1;</code>
      */
     public static final int SQ_CORRELATED_VALUE = 1;
     /**
+     * <code>SQ_IN_COMPARISON = 2;</code>
+     *
      * <pre>
      * Subquery in comparison expression is supported
      * </pre>
-     *
-     * <code>SQ_IN_COMPARISON = 2;</code>
      */
     public static final int SQ_IN_COMPARISON_VALUE = 2;
     /**
+     * <code>SQ_IN_EXISTS = 3;</code>
+     *
      * <pre>
      * Subquery in EXISTS expression is supported
      * </pre>
-     *
-     * <code>SQ_IN_EXISTS = 3;</code>
      */
     public static final int SQ_IN_EXISTS_VALUE = 3;
     /**
+     * <code>SQ_IN_INSERT = 4;</code>
+     *
      * <pre>
      * Subquery in INSERT expression is supported
      * </pre>
-     *
-     * <code>SQ_IN_INSERT = 4;</code>
      */
     public static final int SQ_IN_INSERT_VALUE = 4;
     /**
+     * <code>SQ_IN_QUANTIFIED = 5;</code>
+     *
      * <pre>
      * Subquery in quantified expression is supported
      * </pre>
-     *
-     * <code>SQ_IN_QUANTIFIED = 5;</code>
      */
     public static final int SQ_IN_QUANTIFIED_VALUE = 5;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static SubQuerySupport valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static SubQuerySupport forNumber(int value) {
       switch (value) {
         case 0: return SQ_UNKNOWN;
         case 1: return SQ_CORRELATED;
@@ -2735,17 +2602,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        SubQuerySupport> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<SubQuerySupport>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<SubQuerySupport>() {
             public SubQuerySupport findValueByNumber(int number) {
-              return SubQuerySupport.forNumber(number);
+              return SubQuerySupport.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -2767,9 +2634,11 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private SubQuerySupport(int value) {
+    private SubQuerySupport(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
@@ -2782,70 +2651,60 @@
   public enum UnionSupport
       implements com.google.protobuf.ProtocolMessageEnum {
     /**
+     * <code>U_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>U_UNKNOWN = 0;</code>
      */
-    U_UNKNOWN(0),
+    U_UNKNOWN(0, 0),
     /**
+     * <code>U_UNION = 1;</code>
+     *
      * <pre>
      * UNION is supported
      * </pre>
-     *
-     * <code>U_UNION = 1;</code>
      */
-    U_UNION(1),
+    U_UNION(1, 1),
     /**
+     * <code>U_UNION_ALL = 2;</code>
+     *
      * <pre>
      * UNION_ALL is supported
      * </pre>
-     *
-     * <code>U_UNION_ALL = 2;</code>
      */
-    U_UNION_ALL(2),
+    U_UNION_ALL(2, 2),
     ;
 
     /**
+     * <code>U_UNKNOWN = 0;</code>
+     *
      * <pre>
      * Unknown support (for forward compatibility)
      * </pre>
-     *
-     * <code>U_UNKNOWN = 0;</code>
      */
     public static final int U_UNKNOWN_VALUE = 0;
     /**
+     * <code>U_UNION = 1;</code>
+     *
      * <pre>
      * UNION is supported
      * </pre>
-     *
-     * <code>U_UNION = 1;</code>
      */
     public static final int U_UNION_VALUE = 1;
     /**
+     * <code>U_UNION_ALL = 2;</code>
+     *
      * <pre>
      * UNION_ALL is supported
      * </pre>
-     *
-     * <code>U_UNION_ALL = 2;</code>
      */
     public static final int U_UNION_ALL_VALUE = 2;
 
 
-    public final int getNumber() {
-      return value;
-    }
+    public final int getNumber() { return value; }
 
-    /**
-     * @deprecated Use {@link #forNumber(int)} instead.
-     */
-    @java.lang.Deprecated
     public static UnionSupport valueOf(int value) {
-      return forNumber(value);
-    }
-
-    public static UnionSupport forNumber(int value) {
       switch (value) {
         case 0: return U_UNKNOWN;
         case 1: return U_UNION;
@@ -2858,17 +2717,17 @@
         internalGetValueMap() {
       return internalValueMap;
     }
-    private static final com.google.protobuf.Internal.EnumLiteMap<
-        UnionSupport> internalValueMap =
+    private static com.google.protobuf.Internal.EnumLiteMap<UnionSupport>
+        internalValueMap =
           new com.google.protobuf.Internal.EnumLiteMap<UnionSupport>() {
             public UnionSupport findValueByNumber(int number) {
-              return UnionSupport.forNumber(number);
+              return UnionSupport.valueOf(number);
             }
           };
 
     public final com.google.protobuf.Descriptors.EnumValueDescriptor
         getValueDescriptor() {
-      return getDescriptor().getValues().get(ordinal());
+      return getDescriptor().getValues().get(index);
     }
     public final com.google.protobuf.Descriptors.EnumDescriptor
         getDescriptorForType() {
@@ -2890,19 +2749,21 @@
       return VALUES[desc.getIndex()];
     }
 
+    private final int index;
     private final int value;
 
-    private UnionSupport(int value) {
+    private UnionSupport(int index, int value) {
+      this.index = index;
       this.value = value;
     }
 
     // @@protoc_insertion_point(enum_scope:exec.user.UnionSupport)
   }
 
-  public interface PropertyOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.Property)
-      com.google.protobuf.MessageOrBuilder {
+  public interface PropertyOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // required string key = 1;
     /**
      * <code>required string key = 1;</code>
      */
@@ -2917,6 +2778,7 @@
     com.google.protobuf.ByteString
         getKeyBytes();
 
+    // required string value = 2;
     /**
      * <code>required string value = 2;</code>
      */
@@ -2934,33 +2796,36 @@
   /**
    * Protobuf type {@code exec.user.Property}
    */
-  public  static final class Property extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.Property)
-      PropertyOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class Property extends
+      com.google.protobuf.GeneratedMessage
+      implements PropertyOrBuilder {
     // Use Property.newBuilder() to construct.
-    private Property(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private Property(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private Property() {
-      key_ = "";
-      value_ = "";
+    private Property(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final Property defaultInstance;
+    public static Property getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public Property getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private Property(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -2972,23 +2837,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              key_ = bs;
+              key_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              value_ = bs;
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              value_ = input.readBytes();
               break;
             }
           }
@@ -2997,7 +2860,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -3008,17 +2871,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_Property_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_Property_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.Property.class, org.apache.drill.exec.proto.UserProtos.Property.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<Property> PARSER =
+        new com.google.protobuf.AbstractParser<Property>() {
+      public Property parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new Property(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<Property> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // required string key = 1;
     public static final int KEY_FIELD_NUMBER = 1;
-    private volatile java.lang.Object key_;
+    private java.lang.Object key_;
     /**
      * <code>required string key = 1;</code>
      */
@@ -3059,8 +2937,9 @@
       }
     }
 
+    // required string value = 2;
     public static final int VALUE_FIELD_NUMBER = 2;
-    private volatile java.lang.Object value_;
+    private java.lang.Object value_;
     /**
      * <code>required string value = 2;</code>
      */
@@ -3101,12 +2980,14 @@
       }
     }
 
+    private void initFields() {
+      key_ = "";
+      value_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       if (!hasKey()) {
         memoizedIsInitialized = 0;
@@ -3120,91 +3001,44 @@
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, key_);
+        output.writeBytes(1, getKeyBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, value_);
+        output.writeBytes(2, getValueBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, key_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getKeyBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, value_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getValueBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.Property)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.Property other = (org.apache.drill.exec.proto.UserProtos.Property) obj;
-
-      boolean result = true;
-      result = result && (hasKey() == other.hasKey());
-      if (hasKey()) {
-        result = result && getKey()
-            .equals(other.getKey());
-      }
-      result = result && (hasValue() == other.hasValue());
-      if (hasValue()) {
-        result = result && getValue()
-            .equals(other.getValue());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasKey()) {
-        hash = (37 * hash) + KEY_FIELD_NUMBER;
-        hash = (53 * hash) + getKey().hashCode();
-      }
-      if (hasValue()) {
-        hash = (37 * hash) + VALUE_FIELD_NUMBER;
-        hash = (53 * hash) + getValue().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.Property parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.Property parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.Property parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -3228,59 +3062,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.Property parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.Property parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.Property parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.Property parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.Property parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.Property parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.Property prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -3288,16 +3109,14 @@
      * Protobuf type {@code exec.user.Property}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.Property)
-        org.apache.drill.exec.proto.UserProtos.PropertyOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.PropertyOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_Property_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_Property_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -3310,16 +3129,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         key_ = "";
@@ -3329,18 +3150,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_Property_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.Property getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.Property.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.Property build() {
         org.apache.drill.exec.proto.UserProtos.Property result = buildPartial();
         if (!result.isInitialized()) {
@@ -3349,7 +3171,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.Property buildPartial() {
         org.apache.drill.exec.proto.UserProtos.Property result = new org.apache.drill.exec.proto.UserProtos.Property(this);
         int from_bitField0_ = bitField0_;
@@ -3367,39 +3188,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.Property) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.Property)other);
@@ -3421,23 +3209,22 @@
           value_ = other.value_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         if (!hasKey()) {
+          
           return false;
         }
         if (!hasValue()) {
+          
           return false;
         }
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -3447,7 +3234,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.Property) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -3457,6 +3244,7 @@
       }
       private int bitField0_;
 
+      // required string key = 1;
       private java.lang.Object key_ = "";
       /**
        * <code>required string key = 1;</code>
@@ -3470,12 +3258,9 @@
       public java.lang.String getKey() {
         java.lang.Object ref = key_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            key_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          key_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -3533,6 +3318,7 @@
         return this;
       }
 
+      // required string value = 2;
       private java.lang.Object value_ = "";
       /**
        * <code>required string value = 2;</code>
@@ -3546,12 +3332,9 @@
       public java.lang.String getValue() {
         java.lang.Object ref = value_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            value_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          value_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -3608,63 +3391,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.Property)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.Property)
-    private static final org.apache.drill.exec.proto.UserProtos.Property DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.Property();
+      defaultInstance = new Property(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.Property getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<Property>
-        PARSER = new com.google.protobuf.AbstractParser<Property>() {
-      @java.lang.Override
-      public Property parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new Property(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<Property> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<Property> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.Property getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.Property)
   }
 
-  public interface UserPropertiesOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.UserProperties)
-      com.google.protobuf.MessageOrBuilder {
+  public interface UserPropertiesOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // repeated .exec.user.Property properties = 1;
     /**
      * <code>repeated .exec.user.Property properties = 1;</code>
      */
@@ -3692,32 +3434,36 @@
   /**
    * Protobuf type {@code exec.user.UserProperties}
    */
-  public  static final class UserProperties extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.UserProperties)
-      UserPropertiesOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class UserProperties extends
+      com.google.protobuf.GeneratedMessage
+      implements UserPropertiesOrBuilder {
     // Use UserProperties.newBuilder() to construct.
-    private UserProperties(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private UserProperties(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private UserProperties() {
-      properties_ = java.util.Collections.emptyList();
+    private UserProperties(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final UserProperties defaultInstance;
+    public static UserProperties getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public UserProperties getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private UserProperties(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -3729,20 +3475,19 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                 properties_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.Property>();
                 mutable_bitField0_ |= 0x00000001;
               }
-              properties_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserProtos.Property.PARSER, extensionRegistry));
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              properties_.add(input.readMessage(org.apache.drill.exec.proto.UserProtos.Property.PARSER, extensionRegistry));
               break;
             }
           }
@@ -3751,7 +3496,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
           properties_ = java.util.Collections.unmodifiableList(properties_);
@@ -3765,14 +3510,29 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserProperties_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserProperties_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.UserProperties.class, org.apache.drill.exec.proto.UserProtos.UserProperties.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<UserProperties> PARSER =
+        new com.google.protobuf.AbstractParser<UserProperties>() {
+      public UserProperties parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new UserProperties(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<UserProperties> getParserForType() {
+      return PARSER;
+    }
+
+    // repeated .exec.user.Property properties = 1;
     public static final int PROPERTIES_FIELD_NUMBER = 1;
     private java.util.List<org.apache.drill.exec.proto.UserProtos.Property> properties_;
     /**
@@ -3808,12 +3568,13 @@
       return properties_.get(index);
     }
 
+    private void initFields() {
+      properties_ = java.util.Collections.emptyList();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       for (int i = 0; i < getPropertiesCount(); i++) {
         if (!getProperties(i).isInitialized()) {
@@ -3825,18 +3586,18 @@
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       for (int i = 0; i < properties_.size(); i++) {
         output.writeMessage(1, properties_.get(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -3844,55 +3605,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeMessageSize(1, properties_.get(i));
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.UserProperties)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.UserProperties other = (org.apache.drill.exec.proto.UserProtos.UserProperties) obj;
-
-      boolean result = true;
-      result = result && getPropertiesList()
-          .equals(other.getPropertiesList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (getPropertiesCount() > 0) {
-        hash = (37 * hash) + PROPERTIES_FIELD_NUMBER;
-        hash = (53 * hash) + getPropertiesList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.UserProperties parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.UserProperties parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.UserProperties parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -3916,59 +3640,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.UserProperties parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserProperties parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserProperties parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserProperties parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserProperties parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserProperties parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.UserProperties prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -3976,16 +3687,14 @@
      * Protobuf type {@code exec.user.UserProperties}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.UserProperties)
-        org.apache.drill.exec.proto.UserProtos.UserPropertiesOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.UserPropertiesOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserProperties_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserProperties_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -3998,17 +3707,19 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getPropertiesFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (propertiesBuilder_ == null) {
@@ -4020,18 +3731,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserProperties_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.UserProperties getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.UserProperties build() {
         org.apache.drill.exec.proto.UserProtos.UserProperties result = buildPartial();
         if (!result.isInitialized()) {
@@ -4040,7 +3752,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.UserProperties buildPartial() {
         org.apache.drill.exec.proto.UserProtos.UserProperties result = new org.apache.drill.exec.proto.UserProtos.UserProperties(this);
         int from_bitField0_ = bitField0_;
@@ -4057,39 +3768,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.UserProperties) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.UserProperties)other);
@@ -4120,29 +3798,27 @@
               properties_ = other.properties_;
               bitField0_ = (bitField0_ & ~0x00000001);
               propertiesBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getPropertiesFieldBuilder() : null;
             } else {
               propertiesBuilder_.addAllMessages(other.properties_);
             }
           }
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         for (int i = 0; i < getPropertiesCount(); i++) {
           if (!getProperties(i).isInitialized()) {
+            
             return false;
           }
         }
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -4152,7 +3828,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.UserProperties) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -4162,6 +3838,7 @@
       }
       private int bitField0_;
 
+      // repeated .exec.user.Property properties = 1;
       private java.util.List<org.apache.drill.exec.proto.UserProtos.Property> properties_ =
         java.util.Collections.emptyList();
       private void ensurePropertiesIsMutable() {
@@ -4171,7 +3848,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.Property, org.apache.drill.exec.proto.UserProtos.Property.Builder, org.apache.drill.exec.proto.UserProtos.PropertyOrBuilder> propertiesBuilder_;
 
       /**
@@ -4303,8 +3980,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.Property> values) {
         if (propertiesBuilder_ == null) {
           ensurePropertiesIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, properties_);
+          super.addAll(values, properties_);
           onChanged();
         } else {
           propertiesBuilder_.addAllMessages(values);
@@ -4387,11 +4063,11 @@
            getPropertiesBuilderList() {
         return getPropertiesFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.Property, org.apache.drill.exec.proto.UserProtos.Property.Builder, org.apache.drill.exec.proto.UserProtos.PropertyOrBuilder> 
           getPropertiesFieldBuilder() {
         if (propertiesBuilder_ == null) {
-          propertiesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          propertiesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.Property, org.apache.drill.exec.proto.UserProtos.Property.Builder, org.apache.drill.exec.proto.UserProtos.PropertyOrBuilder>(
                   properties_,
                   ((bitField0_ & 0x00000001) == 0x00000001),
@@ -4401,231 +4077,197 @@
         }
         return propertiesBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.UserProperties)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.UserProperties)
-    private static final org.apache.drill.exec.proto.UserProtos.UserProperties DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.UserProperties();
+      defaultInstance = new UserProperties(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.UserProperties getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<UserProperties>
-        PARSER = new com.google.protobuf.AbstractParser<UserProperties>() {
-      @java.lang.Override
-      public UserProperties parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new UserProperties(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<UserProperties> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<UserProperties> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.UserProperties getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.UserProperties)
   }
 
-  public interface RpcEndpointInfosOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.RpcEndpointInfos)
-      com.google.protobuf.MessageOrBuilder {
+  public interface RpcEndpointInfosOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string name = 1;
     /**
+     * <code>optional string name = 1;</code>
+     *
      * <pre>
      * example: Apache Drill Server, Apache Drill C++ client
      * </pre>
-     *
-     * <code>optional string name = 1;</code>
      */
     boolean hasName();
     /**
+     * <code>optional string name = 1;</code>
+     *
      * <pre>
      * example: Apache Drill Server, Apache Drill C++ client
      * </pre>
-     *
-     * <code>optional string name = 1;</code>
      */
     java.lang.String getName();
     /**
+     * <code>optional string name = 1;</code>
+     *
      * <pre>
      * example: Apache Drill Server, Apache Drill C++ client
      * </pre>
-     *
-     * <code>optional string name = 1;</code>
      */
     com.google.protobuf.ByteString
         getNameBytes();
 
+    // optional string version = 2;
     /**
+     * <code>optional string version = 2;</code>
+     *
      * <pre>
      * example: 1.9.0
      * </pre>
-     *
-     * <code>optional string version = 2;</code>
      */
     boolean hasVersion();
     /**
+     * <code>optional string version = 2;</code>
+     *
      * <pre>
      * example: 1.9.0
      * </pre>
-     *
-     * <code>optional string version = 2;</code>
      */
     java.lang.String getVersion();
     /**
+     * <code>optional string version = 2;</code>
+     *
      * <pre>
      * example: 1.9.0
      * </pre>
-     *
-     * <code>optional string version = 2;</code>
      */
     com.google.protobuf.ByteString
         getVersionBytes();
 
+    // optional uint32 majorVersion = 3;
     /**
+     * <code>optional uint32 majorVersion = 3;</code>
+     *
      * <pre>
      * example: 1
      * </pre>
-     *
-     * <code>optional uint32 majorVersion = 3;</code>
      */
     boolean hasMajorVersion();
     /**
+     * <code>optional uint32 majorVersion = 3;</code>
+     *
      * <pre>
      * example: 1
      * </pre>
-     *
-     * <code>optional uint32 majorVersion = 3;</code>
      */
     int getMajorVersion();
 
+    // optional uint32 minorVersion = 4;
     /**
+     * <code>optional uint32 minorVersion = 4;</code>
+     *
      * <pre>
      * example: 9
      * </pre>
-     *
-     * <code>optional uint32 minorVersion = 4;</code>
      */
     boolean hasMinorVersion();
     /**
+     * <code>optional uint32 minorVersion = 4;</code>
+     *
      * <pre>
      * example: 9
      * </pre>
-     *
-     * <code>optional uint32 minorVersion = 4;</code>
      */
     int getMinorVersion();
 
+    // optional uint32 patchVersion = 5;
     /**
+     * <code>optional uint32 patchVersion = 5;</code>
+     *
      * <pre>
      * example: 0
      * </pre>
-     *
-     * <code>optional uint32 patchVersion = 5;</code>
      */
     boolean hasPatchVersion();
     /**
+     * <code>optional uint32 patchVersion = 5;</code>
+     *
      * <pre>
      * example: 0
      * </pre>
-     *
-     * <code>optional uint32 patchVersion = 5;</code>
      */
     int getPatchVersion();
 
+    // optional string application = 6;
     /**
+     * <code>optional string application = 6;</code>
+     *
      * <pre>
      * example: Tableau 9.3
      * </pre>
-     *
-     * <code>optional string application = 6;</code>
      */
     boolean hasApplication();
     /**
+     * <code>optional string application = 6;</code>
+     *
      * <pre>
      * example: Tableau 9.3
      * </pre>
-     *
-     * <code>optional string application = 6;</code>
      */
     java.lang.String getApplication();
     /**
+     * <code>optional string application = 6;</code>
+     *
      * <pre>
      * example: Tableau 9.3
      * </pre>
-     *
-     * <code>optional string application = 6;</code>
      */
     com.google.protobuf.ByteString
         getApplicationBytes();
 
+    // optional uint32 buildNumber = 7;
     /**
+     * <code>optional uint32 buildNumber = 7;</code>
+     *
      * <pre>
      * example: 32
      * </pre>
-     *
-     * <code>optional uint32 buildNumber = 7;</code>
      */
     boolean hasBuildNumber();
     /**
+     * <code>optional uint32 buildNumber = 7;</code>
+     *
      * <pre>
      * example: 32
      * </pre>
-     *
-     * <code>optional uint32 buildNumber = 7;</code>
      */
     int getBuildNumber();
 
+    // optional string versionQualifier = 8;
     /**
+     * <code>optional string versionQualifier = 8;</code>
+     *
      * <pre>
      * example: SNAPSHOT
      * </pre>
-     *
-     * <code>optional string versionQualifier = 8;</code>
      */
     boolean hasVersionQualifier();
     /**
+     * <code>optional string versionQualifier = 8;</code>
+     *
      * <pre>
      * example: SNAPSHOT
      * </pre>
-     *
-     * <code>optional string versionQualifier = 8;</code>
      */
     java.lang.String getVersionQualifier();
     /**
+     * <code>optional string versionQualifier = 8;</code>
+     *
      * <pre>
      * example: SNAPSHOT
      * </pre>
-     *
-     * <code>optional string versionQualifier = 8;</code>
      */
     com.google.protobuf.ByteString
         getVersionQualifierBytes();
@@ -4633,39 +4275,36 @@
   /**
    * Protobuf type {@code exec.user.RpcEndpointInfos}
    */
-  public  static final class RpcEndpointInfos extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.RpcEndpointInfos)
-      RpcEndpointInfosOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class RpcEndpointInfos extends
+      com.google.protobuf.GeneratedMessage
+      implements RpcEndpointInfosOrBuilder {
     // Use RpcEndpointInfos.newBuilder() to construct.
-    private RpcEndpointInfos(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private RpcEndpointInfos(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private RpcEndpointInfos() {
-      name_ = "";
-      version_ = "";
-      majorVersion_ = 0;
-      minorVersion_ = 0;
-      patchVersion_ = 0;
-      application_ = "";
-      buildNumber_ = 0;
-      versionQualifier_ = "";
+    private RpcEndpointInfos(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final RpcEndpointInfos defaultInstance;
+    public static RpcEndpointInfos getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public RpcEndpointInfos getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private RpcEndpointInfos(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -4677,16 +4316,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              name_ = bs;
+              name_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              version_ = bs;
+              version_ = input.readBytes();
               break;
             }
             case 24: {
@@ -4705,9 +4349,8 @@
               break;
             }
             case 50: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000020;
-              application_ = bs;
+              application_ = input.readBytes();
               break;
             }
             case 56: {
@@ -4716,16 +4359,8 @@
               break;
             }
             case 66: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000080;
-              versionQualifier_ = bs;
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              versionQualifier_ = input.readBytes();
               break;
             }
           }
@@ -4734,7 +4369,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -4745,33 +4380,48 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RpcEndpointInfos_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RpcEndpointInfos_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.class, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<RpcEndpointInfos> PARSER =
+        new com.google.protobuf.AbstractParser<RpcEndpointInfos>() {
+      public RpcEndpointInfos parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new RpcEndpointInfos(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<RpcEndpointInfos> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string name = 1;
     public static final int NAME_FIELD_NUMBER = 1;
-    private volatile java.lang.Object name_;
+    private java.lang.Object name_;
     /**
+     * <code>optional string name = 1;</code>
+     *
      * <pre>
      * example: Apache Drill Server, Apache Drill C++ client
      * </pre>
-     *
-     * <code>optional string name = 1;</code>
      */
     public boolean hasName() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional string name = 1;</code>
+     *
      * <pre>
      * example: Apache Drill Server, Apache Drill C++ client
      * </pre>
-     *
-     * <code>optional string name = 1;</code>
      */
     public java.lang.String getName() {
       java.lang.Object ref = name_;
@@ -4788,11 +4438,11 @@
       }
     }
     /**
+     * <code>optional string name = 1;</code>
+     *
      * <pre>
      * example: Apache Drill Server, Apache Drill C++ client
      * </pre>
-     *
-     * <code>optional string name = 1;</code>
      */
     public com.google.protobuf.ByteString
         getNameBytes() {
@@ -4808,24 +4458,25 @@
       }
     }
 
+    // optional string version = 2;
     public static final int VERSION_FIELD_NUMBER = 2;
-    private volatile java.lang.Object version_;
+    private java.lang.Object version_;
     /**
+     * <code>optional string version = 2;</code>
+     *
      * <pre>
      * example: 1.9.0
      * </pre>
-     *
-     * <code>optional string version = 2;</code>
      */
     public boolean hasVersion() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
+     * <code>optional string version = 2;</code>
+     *
      * <pre>
      * example: 1.9.0
      * </pre>
-     *
-     * <code>optional string version = 2;</code>
      */
     public java.lang.String getVersion() {
       java.lang.Object ref = version_;
@@ -4842,11 +4493,11 @@
       }
     }
     /**
+     * <code>optional string version = 2;</code>
+     *
      * <pre>
      * example: 1.9.0
      * </pre>
-     *
-     * <code>optional string version = 2;</code>
      */
     public com.google.protobuf.ByteString
         getVersionBytes() {
@@ -4862,93 +4513,97 @@
       }
     }
 
+    // optional uint32 majorVersion = 3;
     public static final int MAJORVERSION_FIELD_NUMBER = 3;
     private int majorVersion_;
     /**
+     * <code>optional uint32 majorVersion = 3;</code>
+     *
      * <pre>
      * example: 1
      * </pre>
-     *
-     * <code>optional uint32 majorVersion = 3;</code>
      */
     public boolean hasMajorVersion() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
+     * <code>optional uint32 majorVersion = 3;</code>
+     *
      * <pre>
      * example: 1
      * </pre>
-     *
-     * <code>optional uint32 majorVersion = 3;</code>
      */
     public int getMajorVersion() {
       return majorVersion_;
     }
 
+    // optional uint32 minorVersion = 4;
     public static final int MINORVERSION_FIELD_NUMBER = 4;
     private int minorVersion_;
     /**
+     * <code>optional uint32 minorVersion = 4;</code>
+     *
      * <pre>
      * example: 9
      * </pre>
-     *
-     * <code>optional uint32 minorVersion = 4;</code>
      */
     public boolean hasMinorVersion() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional uint32 minorVersion = 4;</code>
+     *
      * <pre>
      * example: 9
      * </pre>
-     *
-     * <code>optional uint32 minorVersion = 4;</code>
      */
     public int getMinorVersion() {
       return minorVersion_;
     }
 
+    // optional uint32 patchVersion = 5;
     public static final int PATCHVERSION_FIELD_NUMBER = 5;
     private int patchVersion_;
     /**
+     * <code>optional uint32 patchVersion = 5;</code>
+     *
      * <pre>
      * example: 0
      * </pre>
-     *
-     * <code>optional uint32 patchVersion = 5;</code>
      */
     public boolean hasPatchVersion() {
       return ((bitField0_ & 0x00000010) == 0x00000010);
     }
     /**
+     * <code>optional uint32 patchVersion = 5;</code>
+     *
      * <pre>
      * example: 0
      * </pre>
-     *
-     * <code>optional uint32 patchVersion = 5;</code>
      */
     public int getPatchVersion() {
       return patchVersion_;
     }
 
+    // optional string application = 6;
     public static final int APPLICATION_FIELD_NUMBER = 6;
-    private volatile java.lang.Object application_;
+    private java.lang.Object application_;
     /**
+     * <code>optional string application = 6;</code>
+     *
      * <pre>
      * example: Tableau 9.3
      * </pre>
-     *
-     * <code>optional string application = 6;</code>
      */
     public boolean hasApplication() {
       return ((bitField0_ & 0x00000020) == 0x00000020);
     }
     /**
+     * <code>optional string application = 6;</code>
+     *
      * <pre>
      * example: Tableau 9.3
      * </pre>
-     *
-     * <code>optional string application = 6;</code>
      */
     public java.lang.String getApplication() {
       java.lang.Object ref = application_;
@@ -4965,11 +4620,11 @@
       }
     }
     /**
+     * <code>optional string application = 6;</code>
+     *
      * <pre>
      * example: Tableau 9.3
      * </pre>
-     *
-     * <code>optional string application = 6;</code>
      */
     public com.google.protobuf.ByteString
         getApplicationBytes() {
@@ -4985,47 +4640,49 @@
       }
     }
 
+    // optional uint32 buildNumber = 7;
     public static final int BUILDNUMBER_FIELD_NUMBER = 7;
     private int buildNumber_;
     /**
+     * <code>optional uint32 buildNumber = 7;</code>
+     *
      * <pre>
      * example: 32
      * </pre>
-     *
-     * <code>optional uint32 buildNumber = 7;</code>
      */
     public boolean hasBuildNumber() {
       return ((bitField0_ & 0x00000040) == 0x00000040);
     }
     /**
+     * <code>optional uint32 buildNumber = 7;</code>
+     *
      * <pre>
      * example: 32
      * </pre>
-     *
-     * <code>optional uint32 buildNumber = 7;</code>
      */
     public int getBuildNumber() {
       return buildNumber_;
     }
 
+    // optional string versionQualifier = 8;
     public static final int VERSIONQUALIFIER_FIELD_NUMBER = 8;
-    private volatile java.lang.Object versionQualifier_;
+    private java.lang.Object versionQualifier_;
     /**
+     * <code>optional string versionQualifier = 8;</code>
+     *
      * <pre>
      * example: SNAPSHOT
      * </pre>
-     *
-     * <code>optional string versionQualifier = 8;</code>
      */
     public boolean hasVersionQualifier() {
       return ((bitField0_ & 0x00000080) == 0x00000080);
     }
     /**
+     * <code>optional string versionQualifier = 8;</code>
+     *
      * <pre>
      * example: SNAPSHOT
      * </pre>
-     *
-     * <code>optional string versionQualifier = 8;</code>
      */
     public java.lang.String getVersionQualifier() {
       java.lang.Object ref = versionQualifier_;
@@ -5042,11 +4699,11 @@
       }
     }
     /**
+     * <code>optional string versionQualifier = 8;</code>
+     *
      * <pre>
      * example: SNAPSHOT
      * </pre>
-     *
-     * <code>optional string versionQualifier = 8;</code>
      */
     public com.google.protobuf.ByteString
         getVersionQualifierBytes() {
@@ -5062,25 +4719,33 @@
       }
     }
 
+    private void initFields() {
+      name_ = "";
+      version_ = "";
+      majorVersion_ = 0;
+      minorVersion_ = 0;
+      patchVersion_ = 0;
+      application_ = "";
+      buildNumber_ = 0;
+      versionQualifier_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_);
+        output.writeBytes(1, getNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, version_);
+        output.writeBytes(2, getVersionBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeUInt32(3, majorVersion_);
@@ -5092,28 +4757,30 @@
         output.writeUInt32(5, patchVersion_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, application_);
+        output.writeBytes(6, getApplicationBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         output.writeUInt32(7, buildNumber_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 8, versionQualifier_);
+        output.writeBytes(8, getVersionQualifierBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, version_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getVersionBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
@@ -5128,130 +4795,29 @@
           .computeUInt32Size(5, patchVersion_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, application_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(6, getApplicationBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         size += com.google.protobuf.CodedOutputStream
           .computeUInt32Size(7, buildNumber_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, versionQualifier_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(8, getVersionQualifierBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos other = (org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos) obj;
-
-      boolean result = true;
-      result = result && (hasName() == other.hasName());
-      if (hasName()) {
-        result = result && getName()
-            .equals(other.getName());
-      }
-      result = result && (hasVersion() == other.hasVersion());
-      if (hasVersion()) {
-        result = result && getVersion()
-            .equals(other.getVersion());
-      }
-      result = result && (hasMajorVersion() == other.hasMajorVersion());
-      if (hasMajorVersion()) {
-        result = result && (getMajorVersion()
-            == other.getMajorVersion());
-      }
-      result = result && (hasMinorVersion() == other.hasMinorVersion());
-      if (hasMinorVersion()) {
-        result = result && (getMinorVersion()
-            == other.getMinorVersion());
-      }
-      result = result && (hasPatchVersion() == other.hasPatchVersion());
-      if (hasPatchVersion()) {
-        result = result && (getPatchVersion()
-            == other.getPatchVersion());
-      }
-      result = result && (hasApplication() == other.hasApplication());
-      if (hasApplication()) {
-        result = result && getApplication()
-            .equals(other.getApplication());
-      }
-      result = result && (hasBuildNumber() == other.hasBuildNumber());
-      if (hasBuildNumber()) {
-        result = result && (getBuildNumber()
-            == other.getBuildNumber());
-      }
-      result = result && (hasVersionQualifier() == other.hasVersionQualifier());
-      if (hasVersionQualifier()) {
-        result = result && getVersionQualifier()
-            .equals(other.getVersionQualifier());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasName()) {
-        hash = (37 * hash) + NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getName().hashCode();
-      }
-      if (hasVersion()) {
-        hash = (37 * hash) + VERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getVersion().hashCode();
-      }
-      if (hasMajorVersion()) {
-        hash = (37 * hash) + MAJORVERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getMajorVersion();
-      }
-      if (hasMinorVersion()) {
-        hash = (37 * hash) + MINORVERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getMinorVersion();
-      }
-      if (hasPatchVersion()) {
-        hash = (37 * hash) + PATCHVERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getPatchVersion();
-      }
-      if (hasApplication()) {
-        hash = (37 * hash) + APPLICATION_FIELD_NUMBER;
-        hash = (53 * hash) + getApplication().hashCode();
-      }
-      if (hasBuildNumber()) {
-        hash = (37 * hash) + BUILDNUMBER_FIELD_NUMBER;
-        hash = (53 * hash) + getBuildNumber();
-      }
-      if (hasVersionQualifier()) {
-        hash = (37 * hash) + VERSIONQUALIFIER_FIELD_NUMBER;
-        hash = (53 * hash) + getVersionQualifier().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -5275,59 +4841,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -5335,16 +4888,14 @@
      * Protobuf type {@code exec.user.RpcEndpointInfos}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.RpcEndpointInfos)
-        org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RpcEndpointInfos_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RpcEndpointInfos_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -5357,16 +4908,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         name_ = "";
@@ -5388,18 +4941,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RpcEndpointInfos_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos build() {
         org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos result = buildPartial();
         if (!result.isInitialized()) {
@@ -5408,7 +4962,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos buildPartial() {
         org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos result = new org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos(this);
         int from_bitField0_ = bitField0_;
@@ -5450,39 +5003,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos)other);
@@ -5526,17 +5046,14 @@
           versionQualifier_ = other.versionQualifier_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -5546,7 +5063,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -5556,44 +5073,42 @@
       }
       private int bitField0_;
 
+      // optional string name = 1;
       private java.lang.Object name_ = "";
       /**
+       * <code>optional string name = 1;</code>
+       *
        * <pre>
        * example: Apache Drill Server, Apache Drill C++ client
        * </pre>
-       *
-       * <code>optional string name = 1;</code>
        */
       public boolean hasName() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
+       * <code>optional string name = 1;</code>
+       *
        * <pre>
        * example: Apache Drill Server, Apache Drill C++ client
        * </pre>
-       *
-       * <code>optional string name = 1;</code>
        */
       public java.lang.String getName() {
         java.lang.Object ref = name_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            name_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          name_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string name = 1;</code>
+       *
        * <pre>
        * example: Apache Drill Server, Apache Drill C++ client
        * </pre>
-       *
-       * <code>optional string name = 1;</code>
        */
       public com.google.protobuf.ByteString
           getNameBytes() {
@@ -5609,11 +5124,11 @@
         }
       }
       /**
+       * <code>optional string name = 1;</code>
+       *
        * <pre>
        * example: Apache Drill Server, Apache Drill C++ client
        * </pre>
-       *
-       * <code>optional string name = 1;</code>
        */
       public Builder setName(
           java.lang.String value) {
@@ -5626,11 +5141,11 @@
         return this;
       }
       /**
+       * <code>optional string name = 1;</code>
+       *
        * <pre>
        * example: Apache Drill Server, Apache Drill C++ client
        * </pre>
-       *
-       * <code>optional string name = 1;</code>
        */
       public Builder clearName() {
         bitField0_ = (bitField0_ & ~0x00000001);
@@ -5639,11 +5154,11 @@
         return this;
       }
       /**
+       * <code>optional string name = 1;</code>
+       *
        * <pre>
        * example: Apache Drill Server, Apache Drill C++ client
        * </pre>
-       *
-       * <code>optional string name = 1;</code>
        */
       public Builder setNameBytes(
           com.google.protobuf.ByteString value) {
@@ -5656,44 +5171,42 @@
         return this;
       }
 
+      // optional string version = 2;
       private java.lang.Object version_ = "";
       /**
+       * <code>optional string version = 2;</code>
+       *
        * <pre>
        * example: 1.9.0
        * </pre>
-       *
-       * <code>optional string version = 2;</code>
        */
       public boolean hasVersion() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
+       * <code>optional string version = 2;</code>
+       *
        * <pre>
        * example: 1.9.0
        * </pre>
-       *
-       * <code>optional string version = 2;</code>
        */
       public java.lang.String getVersion() {
         java.lang.Object ref = version_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            version_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          version_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string version = 2;</code>
+       *
        * <pre>
        * example: 1.9.0
        * </pre>
-       *
-       * <code>optional string version = 2;</code>
        */
       public com.google.protobuf.ByteString
           getVersionBytes() {
@@ -5709,11 +5222,11 @@
         }
       }
       /**
+       * <code>optional string version = 2;</code>
+       *
        * <pre>
        * example: 1.9.0
        * </pre>
-       *
-       * <code>optional string version = 2;</code>
        */
       public Builder setVersion(
           java.lang.String value) {
@@ -5726,11 +5239,11 @@
         return this;
       }
       /**
+       * <code>optional string version = 2;</code>
+       *
        * <pre>
        * example: 1.9.0
        * </pre>
-       *
-       * <code>optional string version = 2;</code>
        */
       public Builder clearVersion() {
         bitField0_ = (bitField0_ & ~0x00000002);
@@ -5739,11 +5252,11 @@
         return this;
       }
       /**
+       * <code>optional string version = 2;</code>
+       *
        * <pre>
        * example: 1.9.0
        * </pre>
-       *
-       * <code>optional string version = 2;</code>
        */
       public Builder setVersionBytes(
           com.google.protobuf.ByteString value) {
@@ -5756,33 +5269,34 @@
         return this;
       }
 
+      // optional uint32 majorVersion = 3;
       private int majorVersion_ ;
       /**
+       * <code>optional uint32 majorVersion = 3;</code>
+       *
        * <pre>
        * example: 1
        * </pre>
-       *
-       * <code>optional uint32 majorVersion = 3;</code>
        */
       public boolean hasMajorVersion() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
+       * <code>optional uint32 majorVersion = 3;</code>
+       *
        * <pre>
        * example: 1
        * </pre>
-       *
-       * <code>optional uint32 majorVersion = 3;</code>
        */
       public int getMajorVersion() {
         return majorVersion_;
       }
       /**
+       * <code>optional uint32 majorVersion = 3;</code>
+       *
        * <pre>
        * example: 1
        * </pre>
-       *
-       * <code>optional uint32 majorVersion = 3;</code>
        */
       public Builder setMajorVersion(int value) {
         bitField0_ |= 0x00000004;
@@ -5791,11 +5305,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 majorVersion = 3;</code>
+       *
        * <pre>
        * example: 1
        * </pre>
-       *
-       * <code>optional uint32 majorVersion = 3;</code>
        */
       public Builder clearMajorVersion() {
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -5804,33 +5318,34 @@
         return this;
       }
 
+      // optional uint32 minorVersion = 4;
       private int minorVersion_ ;
       /**
+       * <code>optional uint32 minorVersion = 4;</code>
+       *
        * <pre>
        * example: 9
        * </pre>
-       *
-       * <code>optional uint32 minorVersion = 4;</code>
        */
       public boolean hasMinorVersion() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
+       * <code>optional uint32 minorVersion = 4;</code>
+       *
        * <pre>
        * example: 9
        * </pre>
-       *
-       * <code>optional uint32 minorVersion = 4;</code>
        */
       public int getMinorVersion() {
         return minorVersion_;
       }
       /**
+       * <code>optional uint32 minorVersion = 4;</code>
+       *
        * <pre>
        * example: 9
        * </pre>
-       *
-       * <code>optional uint32 minorVersion = 4;</code>
        */
       public Builder setMinorVersion(int value) {
         bitField0_ |= 0x00000008;
@@ -5839,11 +5354,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 minorVersion = 4;</code>
+       *
        * <pre>
        * example: 9
        * </pre>
-       *
-       * <code>optional uint32 minorVersion = 4;</code>
        */
       public Builder clearMinorVersion() {
         bitField0_ = (bitField0_ & ~0x00000008);
@@ -5852,33 +5367,34 @@
         return this;
       }
 
+      // optional uint32 patchVersion = 5;
       private int patchVersion_ ;
       /**
+       * <code>optional uint32 patchVersion = 5;</code>
+       *
        * <pre>
        * example: 0
        * </pre>
-       *
-       * <code>optional uint32 patchVersion = 5;</code>
        */
       public boolean hasPatchVersion() {
         return ((bitField0_ & 0x00000010) == 0x00000010);
       }
       /**
+       * <code>optional uint32 patchVersion = 5;</code>
+       *
        * <pre>
        * example: 0
        * </pre>
-       *
-       * <code>optional uint32 patchVersion = 5;</code>
        */
       public int getPatchVersion() {
         return patchVersion_;
       }
       /**
+       * <code>optional uint32 patchVersion = 5;</code>
+       *
        * <pre>
        * example: 0
        * </pre>
-       *
-       * <code>optional uint32 patchVersion = 5;</code>
        */
       public Builder setPatchVersion(int value) {
         bitField0_ |= 0x00000010;
@@ -5887,11 +5403,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 patchVersion = 5;</code>
+       *
        * <pre>
        * example: 0
        * </pre>
-       *
-       * <code>optional uint32 patchVersion = 5;</code>
        */
       public Builder clearPatchVersion() {
         bitField0_ = (bitField0_ & ~0x00000010);
@@ -5900,44 +5416,42 @@
         return this;
       }
 
+      // optional string application = 6;
       private java.lang.Object application_ = "";
       /**
+       * <code>optional string application = 6;</code>
+       *
        * <pre>
        * example: Tableau 9.3
        * </pre>
-       *
-       * <code>optional string application = 6;</code>
        */
       public boolean hasApplication() {
         return ((bitField0_ & 0x00000020) == 0x00000020);
       }
       /**
+       * <code>optional string application = 6;</code>
+       *
        * <pre>
        * example: Tableau 9.3
        * </pre>
-       *
-       * <code>optional string application = 6;</code>
        */
       public java.lang.String getApplication() {
         java.lang.Object ref = application_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            application_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          application_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string application = 6;</code>
+       *
        * <pre>
        * example: Tableau 9.3
        * </pre>
-       *
-       * <code>optional string application = 6;</code>
        */
       public com.google.protobuf.ByteString
           getApplicationBytes() {
@@ -5953,11 +5467,11 @@
         }
       }
       /**
+       * <code>optional string application = 6;</code>
+       *
        * <pre>
        * example: Tableau 9.3
        * </pre>
-       *
-       * <code>optional string application = 6;</code>
        */
       public Builder setApplication(
           java.lang.String value) {
@@ -5970,11 +5484,11 @@
         return this;
       }
       /**
+       * <code>optional string application = 6;</code>
+       *
        * <pre>
        * example: Tableau 9.3
        * </pre>
-       *
-       * <code>optional string application = 6;</code>
        */
       public Builder clearApplication() {
         bitField0_ = (bitField0_ & ~0x00000020);
@@ -5983,11 +5497,11 @@
         return this;
       }
       /**
+       * <code>optional string application = 6;</code>
+       *
        * <pre>
        * example: Tableau 9.3
        * </pre>
-       *
-       * <code>optional string application = 6;</code>
        */
       public Builder setApplicationBytes(
           com.google.protobuf.ByteString value) {
@@ -6000,33 +5514,34 @@
         return this;
       }
 
+      // optional uint32 buildNumber = 7;
       private int buildNumber_ ;
       /**
+       * <code>optional uint32 buildNumber = 7;</code>
+       *
        * <pre>
        * example: 32
        * </pre>
-       *
-       * <code>optional uint32 buildNumber = 7;</code>
        */
       public boolean hasBuildNumber() {
         return ((bitField0_ & 0x00000040) == 0x00000040);
       }
       /**
+       * <code>optional uint32 buildNumber = 7;</code>
+       *
        * <pre>
        * example: 32
        * </pre>
-       *
-       * <code>optional uint32 buildNumber = 7;</code>
        */
       public int getBuildNumber() {
         return buildNumber_;
       }
       /**
+       * <code>optional uint32 buildNumber = 7;</code>
+       *
        * <pre>
        * example: 32
        * </pre>
-       *
-       * <code>optional uint32 buildNumber = 7;</code>
        */
       public Builder setBuildNumber(int value) {
         bitField0_ |= 0x00000040;
@@ -6035,11 +5550,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 buildNumber = 7;</code>
+       *
        * <pre>
        * example: 32
        * </pre>
-       *
-       * <code>optional uint32 buildNumber = 7;</code>
        */
       public Builder clearBuildNumber() {
         bitField0_ = (bitField0_ & ~0x00000040);
@@ -6048,44 +5563,42 @@
         return this;
       }
 
+      // optional string versionQualifier = 8;
       private java.lang.Object versionQualifier_ = "";
       /**
+       * <code>optional string versionQualifier = 8;</code>
+       *
        * <pre>
        * example: SNAPSHOT
        * </pre>
-       *
-       * <code>optional string versionQualifier = 8;</code>
        */
       public boolean hasVersionQualifier() {
         return ((bitField0_ & 0x00000080) == 0x00000080);
       }
       /**
+       * <code>optional string versionQualifier = 8;</code>
+       *
        * <pre>
        * example: SNAPSHOT
        * </pre>
-       *
-       * <code>optional string versionQualifier = 8;</code>
        */
       public java.lang.String getVersionQualifier() {
         java.lang.Object ref = versionQualifier_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            versionQualifier_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          versionQualifier_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string versionQualifier = 8;</code>
+       *
        * <pre>
        * example: SNAPSHOT
        * </pre>
-       *
-       * <code>optional string versionQualifier = 8;</code>
        */
       public com.google.protobuf.ByteString
           getVersionQualifierBytes() {
@@ -6101,11 +5614,11 @@
         }
       }
       /**
+       * <code>optional string versionQualifier = 8;</code>
+       *
        * <pre>
        * example: SNAPSHOT
        * </pre>
-       *
-       * <code>optional string versionQualifier = 8;</code>
        */
       public Builder setVersionQualifier(
           java.lang.String value) {
@@ -6118,11 +5631,11 @@
         return this;
       }
       /**
+       * <code>optional string versionQualifier = 8;</code>
+       *
        * <pre>
        * example: SNAPSHOT
        * </pre>
-       *
-       * <code>optional string versionQualifier = 8;</code>
        */
       public Builder clearVersionQualifier() {
         bitField0_ = (bitField0_ & ~0x00000080);
@@ -6131,11 +5644,11 @@
         return this;
       }
       /**
+       * <code>optional string versionQualifier = 8;</code>
+       *
        * <pre>
        * example: SNAPSHOT
        * </pre>
-       *
-       * <code>optional string versionQualifier = 8;</code>
        */
       public Builder setVersionQualifierBytes(
           com.google.protobuf.ByteString value) {
@@ -6147,63 +5660,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.RpcEndpointInfos)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.RpcEndpointInfos)
-    private static final org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos();
+      defaultInstance = new RpcEndpointInfos(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<RpcEndpointInfos>
-        PARSER = new com.google.protobuf.AbstractParser<RpcEndpointInfos>() {
-      @java.lang.Override
-      public RpcEndpointInfos parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new RpcEndpointInfos(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<RpcEndpointInfos> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<RpcEndpointInfos> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.RpcEndpointInfos)
   }
 
-  public interface UserToBitHandshakeOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.UserToBitHandshake)
-      com.google.protobuf.MessageOrBuilder {
+  public interface UserToBitHandshakeOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.RpcChannel channel = 1 [default = USER];
     /**
      * <code>optional .exec.shared.RpcChannel channel = 1 [default = USER];</code>
      */
@@ -6213,6 +5685,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.RpcChannel getChannel();
 
+    // optional bool support_listening = 2;
     /**
      * <code>optional bool support_listening = 2;</code>
      */
@@ -6222,6 +5695,7 @@
      */
     boolean getSupportListening();
 
+    // optional int32 rpc_version = 3;
     /**
      * <code>optional int32 rpc_version = 3;</code>
      */
@@ -6231,6 +5705,7 @@
      */
     int getRpcVersion();
 
+    // optional .exec.shared.UserCredentials credentials = 4;
     /**
      * <code>optional .exec.shared.UserCredentials credentials = 4;</code>
      */
@@ -6244,6 +5719,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder getCredentialsOrBuilder();
 
+    // optional .exec.user.UserProperties properties = 5;
     /**
      * <code>optional .exec.user.UserProperties properties = 5;</code>
      */
@@ -6257,6 +5733,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.UserPropertiesOrBuilder getPropertiesOrBuilder();
 
+    // optional bool support_complex_types = 6 [default = false];
     /**
      * <code>optional bool support_complex_types = 6 [default = false];</code>
      */
@@ -6266,6 +5743,7 @@
      */
     boolean getSupportComplexTypes();
 
+    // optional bool support_timeout = 7 [default = false];
     /**
      * <code>optional bool support_timeout = 7 [default = false];</code>
      */
@@ -6275,6 +5753,7 @@
      */
     boolean getSupportTimeout();
 
+    // optional .exec.user.RpcEndpointInfos client_infos = 8;
     /**
      * <code>optional .exec.user.RpcEndpointInfos client_infos = 8;</code>
      */
@@ -6288,6 +5767,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder getClientInfosOrBuilder();
 
+    // optional .exec.user.SaslSupport sasl_support = 9;
     /**
      * <code>optional .exec.user.SaslSupport sasl_support = 9;</code>
      */
@@ -6300,37 +5780,36 @@
   /**
    * Protobuf type {@code exec.user.UserToBitHandshake}
    */
-  public  static final class UserToBitHandshake extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.UserToBitHandshake)
-      UserToBitHandshakeOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class UserToBitHandshake extends
+      com.google.protobuf.GeneratedMessage
+      implements UserToBitHandshakeOrBuilder {
     // Use UserToBitHandshake.newBuilder() to construct.
-    private UserToBitHandshake(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private UserToBitHandshake(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private UserToBitHandshake() {
-      channel_ = 2;
-      supportListening_ = false;
-      rpcVersion_ = 0;
-      supportComplexTypes_ = false;
-      supportTimeout_ = false;
-      saslSupport_ = 0;
+    private UserToBitHandshake(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final UserToBitHandshake defaultInstance;
+    public static UserToBitHandshake getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public UserToBitHandshake getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private UserToBitHandshake(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -6342,15 +5821,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.RpcChannel value = org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                channel_ = rawValue;
+                channel_ = value;
               }
               break;
             }
@@ -6415,20 +5900,12 @@
             }
             case 72: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.SaslSupport value = org.apache.drill.exec.proto.UserProtos.SaslSupport.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(9, rawValue);
               } else {
                 bitField0_ |= 0x00000100;
-                saslSupport_ = rawValue;
-              }
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
+                saslSupport_ = value;
               }
               break;
             }
@@ -6438,7 +5915,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -6449,17 +5926,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserToBitHandshake_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserToBitHandshake_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.class, org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<UserToBitHandshake> PARSER =
+        new com.google.protobuf.AbstractParser<UserToBitHandshake>() {
+      public UserToBitHandshake parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new UserToBitHandshake(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<UserToBitHandshake> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.shared.RpcChannel channel = 1 [default = USER];
     public static final int CHANNEL_FIELD_NUMBER = 1;
-    private int channel_;
+    private org.apache.drill.exec.proto.UserBitShared.RpcChannel channel_;
     /**
      * <code>optional .exec.shared.RpcChannel channel = 1 [default = USER];</code>
      */
@@ -6470,11 +5962,10 @@
      * <code>optional .exec.shared.RpcChannel channel = 1 [default = USER];</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.RpcChannel getChannel() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.RpcChannel result = org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(channel_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.RpcChannel.USER : result;
+      return channel_;
     }
 
+    // optional bool support_listening = 2;
     public static final int SUPPORT_LISTENING_FIELD_NUMBER = 2;
     private boolean supportListening_;
     /**
@@ -6490,6 +5981,7 @@
       return supportListening_;
     }
 
+    // optional int32 rpc_version = 3;
     public static final int RPC_VERSION_FIELD_NUMBER = 3;
     private int rpcVersion_;
     /**
@@ -6505,6 +5997,7 @@
       return rpcVersion_;
     }
 
+    // optional .exec.shared.UserCredentials credentials = 4;
     public static final int CREDENTIALS_FIELD_NUMBER = 4;
     private org.apache.drill.exec.proto.UserBitShared.UserCredentials credentials_;
     /**
@@ -6517,15 +6010,16 @@
      * <code>optional .exec.shared.UserCredentials credentials = 4;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.UserCredentials getCredentials() {
-      return credentials_ == null ? org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance() : credentials_;
+      return credentials_;
     }
     /**
      * <code>optional .exec.shared.UserCredentials credentials = 4;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder getCredentialsOrBuilder() {
-      return credentials_ == null ? org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance() : credentials_;
+      return credentials_;
     }
 
+    // optional .exec.user.UserProperties properties = 5;
     public static final int PROPERTIES_FIELD_NUMBER = 5;
     private org.apache.drill.exec.proto.UserProtos.UserProperties properties_;
     /**
@@ -6538,15 +6032,16 @@
      * <code>optional .exec.user.UserProperties properties = 5;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.UserProperties getProperties() {
-      return properties_ == null ? org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance() : properties_;
+      return properties_;
     }
     /**
      * <code>optional .exec.user.UserProperties properties = 5;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.UserPropertiesOrBuilder getPropertiesOrBuilder() {
-      return properties_ == null ? org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance() : properties_;
+      return properties_;
     }
 
+    // optional bool support_complex_types = 6 [default = false];
     public static final int SUPPORT_COMPLEX_TYPES_FIELD_NUMBER = 6;
     private boolean supportComplexTypes_;
     /**
@@ -6562,6 +6057,7 @@
       return supportComplexTypes_;
     }
 
+    // optional bool support_timeout = 7 [default = false];
     public static final int SUPPORT_TIMEOUT_FIELD_NUMBER = 7;
     private boolean supportTimeout_;
     /**
@@ -6577,6 +6073,7 @@
       return supportTimeout_;
     }
 
+    // optional .exec.user.RpcEndpointInfos client_infos = 8;
     public static final int CLIENT_INFOS_FIELD_NUMBER = 8;
     private org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos clientInfos_;
     /**
@@ -6589,17 +6086,18 @@
      * <code>optional .exec.user.RpcEndpointInfos client_infos = 8;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos getClientInfos() {
-      return clientInfos_ == null ? org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance() : clientInfos_;
+      return clientInfos_;
     }
     /**
      * <code>optional .exec.user.RpcEndpointInfos client_infos = 8;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder getClientInfosOrBuilder() {
-      return clientInfos_ == null ? org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance() : clientInfos_;
+      return clientInfos_;
     }
 
+    // optional .exec.user.SaslSupport sasl_support = 9;
     public static final int SASL_SUPPORT_FIELD_NUMBER = 9;
-    private int saslSupport_;
+    private org.apache.drill.exec.proto.UserProtos.SaslSupport saslSupport_;
     /**
      * <code>optional .exec.user.SaslSupport sasl_support = 9;</code>
      */
@@ -6610,17 +6108,24 @@
      * <code>optional .exec.user.SaslSupport sasl_support = 9;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.SaslSupport getSaslSupport() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.SaslSupport result = org.apache.drill.exec.proto.UserProtos.SaslSupport.valueOf(saslSupport_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.SaslSupport.UNKNOWN_SASL_SUPPORT : result;
+      return saslSupport_;
     }
 
+    private void initFields() {
+      channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.USER;
+      supportListening_ = false;
+      rpcVersion_ = 0;
+      credentials_ = org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance();
+      properties_ = org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance();
+      supportComplexTypes_ = false;
+      supportTimeout_ = false;
+      clientInfos_ = org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance();
+      saslSupport_ = org.apache.drill.exec.proto.UserProtos.SaslSupport.UNKNOWN_SASL_SUPPORT;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       if (hasProperties()) {
         if (!getProperties().isInitialized()) {
@@ -6632,11 +6137,11 @@
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, channel_);
+        output.writeEnum(1, channel_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeBool(2, supportListening_);
@@ -6645,10 +6150,10 @@
         output.writeInt32(3, rpcVersion_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        output.writeMessage(4, getCredentials());
+        output.writeMessage(4, credentials_);
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        output.writeMessage(5, getProperties());
+        output.writeMessage(5, properties_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
         output.writeBool(6, supportComplexTypes_);
@@ -6657,23 +6162,23 @@
         output.writeBool(7, supportTimeout_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        output.writeMessage(8, getClientInfos());
+        output.writeMessage(8, clientInfos_);
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
-        output.writeEnum(9, saslSupport_);
+        output.writeEnum(9, saslSupport_.getNumber());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, channel_);
+          .computeEnumSize(1, channel_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
@@ -6685,11 +6190,11 @@
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(4, getCredentials());
+          .computeMessageSize(4, credentials_);
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(5, getProperties());
+          .computeMessageSize(5, properties_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
         size += com.google.protobuf.CodedOutputStream
@@ -6701,137 +6206,24 @@
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(8, getClientInfos());
+          .computeMessageSize(8, clientInfos_);
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(9, saslSupport_);
+          .computeEnumSize(9, saslSupport_.getNumber());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.UserToBitHandshake)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.UserToBitHandshake other = (org.apache.drill.exec.proto.UserProtos.UserToBitHandshake) obj;
-
-      boolean result = true;
-      result = result && (hasChannel() == other.hasChannel());
-      if (hasChannel()) {
-        result = result && channel_ == other.channel_;
-      }
-      result = result && (hasSupportListening() == other.hasSupportListening());
-      if (hasSupportListening()) {
-        result = result && (getSupportListening()
-            == other.getSupportListening());
-      }
-      result = result && (hasRpcVersion() == other.hasRpcVersion());
-      if (hasRpcVersion()) {
-        result = result && (getRpcVersion()
-            == other.getRpcVersion());
-      }
-      result = result && (hasCredentials() == other.hasCredentials());
-      if (hasCredentials()) {
-        result = result && getCredentials()
-            .equals(other.getCredentials());
-      }
-      result = result && (hasProperties() == other.hasProperties());
-      if (hasProperties()) {
-        result = result && getProperties()
-            .equals(other.getProperties());
-      }
-      result = result && (hasSupportComplexTypes() == other.hasSupportComplexTypes());
-      if (hasSupportComplexTypes()) {
-        result = result && (getSupportComplexTypes()
-            == other.getSupportComplexTypes());
-      }
-      result = result && (hasSupportTimeout() == other.hasSupportTimeout());
-      if (hasSupportTimeout()) {
-        result = result && (getSupportTimeout()
-            == other.getSupportTimeout());
-      }
-      result = result && (hasClientInfos() == other.hasClientInfos());
-      if (hasClientInfos()) {
-        result = result && getClientInfos()
-            .equals(other.getClientInfos());
-      }
-      result = result && (hasSaslSupport() == other.hasSaslSupport());
-      if (hasSaslSupport()) {
-        result = result && saslSupport_ == other.saslSupport_;
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasChannel()) {
-        hash = (37 * hash) + CHANNEL_FIELD_NUMBER;
-        hash = (53 * hash) + channel_;
-      }
-      if (hasSupportListening()) {
-        hash = (37 * hash) + SUPPORT_LISTENING_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getSupportListening());
-      }
-      if (hasRpcVersion()) {
-        hash = (37 * hash) + RPC_VERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getRpcVersion();
-      }
-      if (hasCredentials()) {
-        hash = (37 * hash) + CREDENTIALS_FIELD_NUMBER;
-        hash = (53 * hash) + getCredentials().hashCode();
-      }
-      if (hasProperties()) {
-        hash = (37 * hash) + PROPERTIES_FIELD_NUMBER;
-        hash = (53 * hash) + getProperties().hashCode();
-      }
-      if (hasSupportComplexTypes()) {
-        hash = (37 * hash) + SUPPORT_COMPLEX_TYPES_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getSupportComplexTypes());
-      }
-      if (hasSupportTimeout()) {
-        hash = (37 * hash) + SUPPORT_TIMEOUT_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getSupportTimeout());
-      }
-      if (hasClientInfos()) {
-        hash = (37 * hash) + CLIENT_INFOS_FIELD_NUMBER;
-        hash = (53 * hash) + getClientInfos().hashCode();
-      }
-      if (hasSaslSupport()) {
-        hash = (37 * hash) + SASL_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + saslSupport_;
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -6855,59 +6247,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.UserToBitHandshake prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -6915,16 +6294,14 @@
      * Protobuf type {@code exec.user.UserToBitHandshake}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.UserToBitHandshake)
-        org.apache.drill.exec.proto.UserProtos.UserToBitHandshakeOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.UserToBitHandshakeOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserToBitHandshake_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserToBitHandshake_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -6937,35 +6314,37 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getCredentialsFieldBuilder();
           getPropertiesFieldBuilder();
           getClientInfosFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        channel_ = 2;
+        channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.USER;
         bitField0_ = (bitField0_ & ~0x00000001);
         supportListening_ = false;
         bitField0_ = (bitField0_ & ~0x00000002);
         rpcVersion_ = 0;
         bitField0_ = (bitField0_ & ~0x00000004);
         if (credentialsBuilder_ == null) {
-          credentials_ = null;
+          credentials_ = org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance();
         } else {
           credentialsBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000008);
         if (propertiesBuilder_ == null) {
-          properties_ = null;
+          properties_ = org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance();
         } else {
           propertiesBuilder_.clear();
         }
@@ -6975,28 +6354,29 @@
         supportTimeout_ = false;
         bitField0_ = (bitField0_ & ~0x00000040);
         if (clientInfosBuilder_ == null) {
-          clientInfos_ = null;
+          clientInfos_ = org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance();
         } else {
           clientInfosBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000080);
-        saslSupport_ = 0;
+        saslSupport_ = org.apache.drill.exec.proto.UserProtos.SaslSupport.UNKNOWN_SASL_SUPPORT;
         bitField0_ = (bitField0_ & ~0x00000100);
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_UserToBitHandshake_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.UserToBitHandshake getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.UserToBitHandshake.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.UserToBitHandshake build() {
         org.apache.drill.exec.proto.UserProtos.UserToBitHandshake result = buildPartial();
         if (!result.isInitialized()) {
@@ -7005,7 +6385,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.UserToBitHandshake buildPartial() {
         org.apache.drill.exec.proto.UserProtos.UserToBitHandshake result = new org.apache.drill.exec.proto.UserProtos.UserToBitHandshake(this);
         int from_bitField0_ = bitField0_;
@@ -7063,39 +6442,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.UserToBitHandshake) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.UserToBitHandshake)other);
@@ -7134,22 +6480,20 @@
         if (other.hasSaslSupport()) {
           setSaslSupport(other.getSaslSupport());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         if (hasProperties()) {
           if (!getProperties().isInitialized()) {
+            
             return false;
           }
         }
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -7159,7 +6503,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.UserToBitHandshake) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -7169,7 +6513,8 @@
       }
       private int bitField0_;
 
-      private int channel_ = 2;
+      // optional .exec.shared.RpcChannel channel = 1 [default = USER];
+      private org.apache.drill.exec.proto.UserBitShared.RpcChannel channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.USER;
       /**
        * <code>optional .exec.shared.RpcChannel channel = 1 [default = USER];</code>
        */
@@ -7180,9 +6525,7 @@
        * <code>optional .exec.shared.RpcChannel channel = 1 [default = USER];</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.RpcChannel getChannel() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.RpcChannel result = org.apache.drill.exec.proto.UserBitShared.RpcChannel.valueOf(channel_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.RpcChannel.USER : result;
+        return channel_;
       }
       /**
        * <code>optional .exec.shared.RpcChannel channel = 1 [default = USER];</code>
@@ -7192,7 +6535,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        channel_ = value.getNumber();
+        channel_ = value;
         onChanged();
         return this;
       }
@@ -7201,11 +6544,12 @@
        */
       public Builder clearChannel() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        channel_ = 2;
+        channel_ = org.apache.drill.exec.proto.UserBitShared.RpcChannel.USER;
         onChanged();
         return this;
       }
 
+      // optional bool support_listening = 2;
       private boolean supportListening_ ;
       /**
        * <code>optional bool support_listening = 2;</code>
@@ -7238,6 +6582,7 @@
         return this;
       }
 
+      // optional int32 rpc_version = 3;
       private int rpcVersion_ ;
       /**
        * <code>optional int32 rpc_version = 3;</code>
@@ -7270,8 +6615,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.UserCredentials credentials_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.UserCredentials credentials = 4;
+      private org.apache.drill.exec.proto.UserBitShared.UserCredentials credentials_ = org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.UserCredentials, org.apache.drill.exec.proto.UserBitShared.UserCredentials.Builder, org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder> credentialsBuilder_;
       /**
        * <code>optional .exec.shared.UserCredentials credentials = 4;</code>
@@ -7284,7 +6630,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.UserCredentials getCredentials() {
         if (credentialsBuilder_ == null) {
-          return credentials_ == null ? org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance() : credentials_;
+          return credentials_;
         } else {
           return credentialsBuilder_.getMessage();
         }
@@ -7325,7 +6671,6 @@
       public Builder mergeCredentials(org.apache.drill.exec.proto.UserBitShared.UserCredentials value) {
         if (credentialsBuilder_ == null) {
           if (((bitField0_ & 0x00000008) == 0x00000008) &&
-              credentials_ != null &&
               credentials_ != org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance()) {
             credentials_ =
               org.apache.drill.exec.proto.UserBitShared.UserCredentials.newBuilder(credentials_).mergeFrom(value).buildPartial();
@@ -7344,7 +6689,7 @@
        */
       public Builder clearCredentials() {
         if (credentialsBuilder_ == null) {
-          credentials_ = null;
+          credentials_ = org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance();
           onChanged();
         } else {
           credentialsBuilder_.clear();
@@ -7367,20 +6712,19 @@
         if (credentialsBuilder_ != null) {
           return credentialsBuilder_.getMessageOrBuilder();
         } else {
-          return credentials_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.UserCredentials.getDefaultInstance() : credentials_;
+          return credentials_;
         }
       }
       /**
        * <code>optional .exec.shared.UserCredentials credentials = 4;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.UserCredentials, org.apache.drill.exec.proto.UserBitShared.UserCredentials.Builder, org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder> 
           getCredentialsFieldBuilder() {
         if (credentialsBuilder_ == null) {
-          credentialsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          credentialsBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.UserCredentials, org.apache.drill.exec.proto.UserBitShared.UserCredentials.Builder, org.apache.drill.exec.proto.UserBitShared.UserCredentialsOrBuilder>(
-                  getCredentials(),
+                  credentials_,
                   getParentForChildren(),
                   isClean());
           credentials_ = null;
@@ -7388,8 +6732,9 @@
         return credentialsBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.UserProperties properties_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.UserProperties properties = 5;
+      private org.apache.drill.exec.proto.UserProtos.UserProperties properties_ = org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.UserProperties, org.apache.drill.exec.proto.UserProtos.UserProperties.Builder, org.apache.drill.exec.proto.UserProtos.UserPropertiesOrBuilder> propertiesBuilder_;
       /**
        * <code>optional .exec.user.UserProperties properties = 5;</code>
@@ -7402,7 +6747,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.UserProperties getProperties() {
         if (propertiesBuilder_ == null) {
-          return properties_ == null ? org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance() : properties_;
+          return properties_;
         } else {
           return propertiesBuilder_.getMessage();
         }
@@ -7443,7 +6788,6 @@
       public Builder mergeProperties(org.apache.drill.exec.proto.UserProtos.UserProperties value) {
         if (propertiesBuilder_ == null) {
           if (((bitField0_ & 0x00000010) == 0x00000010) &&
-              properties_ != null &&
               properties_ != org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance()) {
             properties_ =
               org.apache.drill.exec.proto.UserProtos.UserProperties.newBuilder(properties_).mergeFrom(value).buildPartial();
@@ -7462,7 +6806,7 @@
        */
       public Builder clearProperties() {
         if (propertiesBuilder_ == null) {
-          properties_ = null;
+          properties_ = org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance();
           onChanged();
         } else {
           propertiesBuilder_.clear();
@@ -7485,20 +6829,19 @@
         if (propertiesBuilder_ != null) {
           return propertiesBuilder_.getMessageOrBuilder();
         } else {
-          return properties_ == null ?
-              org.apache.drill.exec.proto.UserProtos.UserProperties.getDefaultInstance() : properties_;
+          return properties_;
         }
       }
       /**
        * <code>optional .exec.user.UserProperties properties = 5;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.UserProperties, org.apache.drill.exec.proto.UserProtos.UserProperties.Builder, org.apache.drill.exec.proto.UserProtos.UserPropertiesOrBuilder> 
           getPropertiesFieldBuilder() {
         if (propertiesBuilder_ == null) {
-          propertiesBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          propertiesBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.UserProperties, org.apache.drill.exec.proto.UserProtos.UserProperties.Builder, org.apache.drill.exec.proto.UserProtos.UserPropertiesOrBuilder>(
-                  getProperties(),
+                  properties_,
                   getParentForChildren(),
                   isClean());
           properties_ = null;
@@ -7506,6 +6849,7 @@
         return propertiesBuilder_;
       }
 
+      // optional bool support_complex_types = 6 [default = false];
       private boolean supportComplexTypes_ ;
       /**
        * <code>optional bool support_complex_types = 6 [default = false];</code>
@@ -7538,6 +6882,7 @@
         return this;
       }
 
+      // optional bool support_timeout = 7 [default = false];
       private boolean supportTimeout_ ;
       /**
        * <code>optional bool support_timeout = 7 [default = false];</code>
@@ -7570,8 +6915,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos clientInfos_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.RpcEndpointInfos client_infos = 8;
+      private org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos clientInfos_ = org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder> clientInfosBuilder_;
       /**
        * <code>optional .exec.user.RpcEndpointInfos client_infos = 8;</code>
@@ -7584,7 +6930,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos getClientInfos() {
         if (clientInfosBuilder_ == null) {
-          return clientInfos_ == null ? org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance() : clientInfos_;
+          return clientInfos_;
         } else {
           return clientInfosBuilder_.getMessage();
         }
@@ -7625,7 +6971,6 @@
       public Builder mergeClientInfos(org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos value) {
         if (clientInfosBuilder_ == null) {
           if (((bitField0_ & 0x00000080) == 0x00000080) &&
-              clientInfos_ != null &&
               clientInfos_ != org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance()) {
             clientInfos_ =
               org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.newBuilder(clientInfos_).mergeFrom(value).buildPartial();
@@ -7644,7 +6989,7 @@
        */
       public Builder clearClientInfos() {
         if (clientInfosBuilder_ == null) {
-          clientInfos_ = null;
+          clientInfos_ = org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance();
           onChanged();
         } else {
           clientInfosBuilder_.clear();
@@ -7667,20 +7012,19 @@
         if (clientInfosBuilder_ != null) {
           return clientInfosBuilder_.getMessageOrBuilder();
         } else {
-          return clientInfos_ == null ?
-              org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance() : clientInfos_;
+          return clientInfos_;
         }
       }
       /**
        * <code>optional .exec.user.RpcEndpointInfos client_infos = 8;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder> 
           getClientInfosFieldBuilder() {
         if (clientInfosBuilder_ == null) {
-          clientInfosBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          clientInfosBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder>(
-                  getClientInfos(),
+                  clientInfos_,
                   getParentForChildren(),
                   isClean());
           clientInfos_ = null;
@@ -7688,7 +7032,8 @@
         return clientInfosBuilder_;
       }
 
-      private int saslSupport_ = 0;
+      // optional .exec.user.SaslSupport sasl_support = 9;
+      private org.apache.drill.exec.proto.UserProtos.SaslSupport saslSupport_ = org.apache.drill.exec.proto.UserProtos.SaslSupport.UNKNOWN_SASL_SUPPORT;
       /**
        * <code>optional .exec.user.SaslSupport sasl_support = 9;</code>
        */
@@ -7699,9 +7044,7 @@
        * <code>optional .exec.user.SaslSupport sasl_support = 9;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.SaslSupport getSaslSupport() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.SaslSupport result = org.apache.drill.exec.proto.UserProtos.SaslSupport.valueOf(saslSupport_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.SaslSupport.UNKNOWN_SASL_SUPPORT : result;
+        return saslSupport_;
       }
       /**
        * <code>optional .exec.user.SaslSupport sasl_support = 9;</code>
@@ -7711,7 +7054,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000100;
-        saslSupport_ = value.getNumber();
+        saslSupport_ = value;
         onChanged();
         return this;
       }
@@ -7720,67 +7063,26 @@
        */
       public Builder clearSaslSupport() {
         bitField0_ = (bitField0_ & ~0x00000100);
-        saslSupport_ = 0;
+        saslSupport_ = org.apache.drill.exec.proto.UserProtos.SaslSupport.UNKNOWN_SASL_SUPPORT;
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.UserToBitHandshake)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.UserToBitHandshake)
-    private static final org.apache.drill.exec.proto.UserProtos.UserToBitHandshake DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.UserToBitHandshake();
+      defaultInstance = new UserToBitHandshake(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.UserToBitHandshake getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<UserToBitHandshake>
-        PARSER = new com.google.protobuf.AbstractParser<UserToBitHandshake>() {
-      @java.lang.Override
-      public UserToBitHandshake parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new UserToBitHandshake(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<UserToBitHandshake> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<UserToBitHandshake> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.UserToBitHandshake getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.UserToBitHandshake)
   }
 
-  public interface RequestResultsOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.RequestResults)
-      com.google.protobuf.MessageOrBuilder {
+  public interface RequestResultsOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.shared.QueryId query_id = 1;
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
@@ -7794,6 +7096,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder();
 
+    // optional int32 maximum_responses = 2;
     /**
      * <code>optional int32 maximum_responses = 2;</code>
      */
@@ -7806,32 +7109,36 @@
   /**
    * Protobuf type {@code exec.user.RequestResults}
    */
-  public  static final class RequestResults extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.RequestResults)
-      RequestResultsOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class RequestResults extends
+      com.google.protobuf.GeneratedMessage
+      implements RequestResultsOrBuilder {
     // Use RequestResults.newBuilder() to construct.
-    private RequestResults(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private RequestResults(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private RequestResults() {
-      maximumResponses_ = 0;
+    private RequestResults(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final RequestResults defaultInstance;
+    public static RequestResults getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public RequestResults getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private RequestResults(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -7843,6 +7150,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserBitShared.QueryId.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -7861,20 +7175,13 @@
               maximumResponses_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -7885,15 +7192,30 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RequestResults_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RequestResults_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.RequestResults.class, org.apache.drill.exec.proto.UserProtos.RequestResults.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<RequestResults> PARSER =
+        new com.google.protobuf.AbstractParser<RequestResults>() {
+      public RequestResults parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new RequestResults(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<RequestResults> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.shared.QueryId query_id = 1;
     public static final int QUERY_ID_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_;
     /**
@@ -7906,15 +7228,16 @@
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
     /**
      * <code>optional .exec.shared.QueryId query_id = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
 
+    // optional int32 maximum_responses = 2;
     public static final int MAXIMUM_RESPONSES_FIELD_NUMBER = 2;
     private int maximumResponses_;
     /**
@@ -7930,104 +7253,57 @@
       return maximumResponses_;
     }
 
+    private void initFields() {
+      queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      maximumResponses_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getQueryId());
+        output.writeMessage(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         output.writeInt32(2, maximumResponses_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getQueryId());
+          .computeMessageSize(1, queryId_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(2, maximumResponses_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.RequestResults)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.RequestResults other = (org.apache.drill.exec.proto.UserProtos.RequestResults) obj;
-
-      boolean result = true;
-      result = result && (hasQueryId() == other.hasQueryId());
-      if (hasQueryId()) {
-        result = result && getQueryId()
-            .equals(other.getQueryId());
-      }
-      result = result && (hasMaximumResponses() == other.hasMaximumResponses());
-      if (hasMaximumResponses()) {
-        result = result && (getMaximumResponses()
-            == other.getMaximumResponses());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasQueryId()) {
-        hash = (37 * hash) + QUERY_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getQueryId().hashCode();
-      }
-      if (hasMaximumResponses()) {
-        hash = (37 * hash) + MAXIMUM_RESPONSES_FIELD_NUMBER;
-        hash = (53 * hash) + getMaximumResponses();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.RequestResults parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.RequestResults parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.RequestResults parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -8051,59 +7327,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.RequestResults parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.RequestResults parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.RequestResults parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.RequestResults parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.RequestResults parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.RequestResults parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.RequestResults prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -8111,16 +7374,14 @@
      * Protobuf type {@code exec.user.RequestResults}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.RequestResults)
-        org.apache.drill.exec.proto.UserProtos.RequestResultsOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.RequestResultsOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RequestResults_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RequestResults_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -8133,21 +7394,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getQueryIdFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
         } else {
           queryIdBuilder_.clear();
         }
@@ -8157,18 +7420,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RequestResults_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.RequestResults getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.RequestResults.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.RequestResults build() {
         org.apache.drill.exec.proto.UserProtos.RequestResults result = buildPartial();
         if (!result.isInitialized()) {
@@ -8177,7 +7441,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.RequestResults buildPartial() {
         org.apache.drill.exec.proto.UserProtos.RequestResults result = new org.apache.drill.exec.proto.UserProtos.RequestResults(this);
         int from_bitField0_ = bitField0_;
@@ -8199,39 +7462,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.RequestResults) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.RequestResults)other);
@@ -8249,17 +7479,14 @@
         if (other.hasMaximumResponses()) {
           setMaximumResponses(other.getMaximumResponses());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -8269,7 +7496,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.RequestResults) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -8279,8 +7506,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.QueryId query_id = 1;
+      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> queryIdBuilder_;
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
@@ -8293,7 +7521,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
         if (queryIdBuilder_ == null) {
-          return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         } else {
           return queryIdBuilder_.getMessage();
         }
@@ -8334,7 +7562,6 @@
       public Builder mergeQueryId(org.apache.drill.exec.proto.UserBitShared.QueryId value) {
         if (queryIdBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              queryId_ != null &&
               queryId_ != org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance()) {
             queryId_ =
               org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(queryId_).mergeFrom(value).buildPartial();
@@ -8353,7 +7580,7 @@
        */
       public Builder clearQueryId() {
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
           onChanged();
         } else {
           queryIdBuilder_.clear();
@@ -8376,20 +7603,19 @@
         if (queryIdBuilder_ != null) {
           return queryIdBuilder_.getMessageOrBuilder();
         } else {
-          return queryId_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         }
       }
       /**
        * <code>optional .exec.shared.QueryId query_id = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> 
           getQueryIdFieldBuilder() {
         if (queryIdBuilder_ == null) {
-          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder>(
-                  getQueryId(),
+                  queryId_,
                   getParentForChildren(),
                   isClean());
           queryId_ = null;
@@ -8397,6 +7623,7 @@
         return queryIdBuilder_;
       }
 
+      // optional int32 maximum_responses = 2;
       private int maximumResponses_ ;
       /**
        * <code>optional int32 maximum_responses = 2;</code>
@@ -8428,63 +7655,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.RequestResults)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.RequestResults)
-    private static final org.apache.drill.exec.proto.UserProtos.RequestResults DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.RequestResults();
+      defaultInstance = new RequestResults(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.RequestResults getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<RequestResults>
-        PARSER = new com.google.protobuf.AbstractParser<RequestResults>() {
-      @java.lang.Override
-      public RequestResults parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new RequestResults(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<RequestResults> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<RequestResults> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.RequestResults getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.RequestResults)
   }
 
-  public interface GetQueryPlanFragmentsOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetQueryPlanFragments)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetQueryPlanFragmentsOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // required string query = 1;
     /**
      * <code>required string query = 1;</code>
      */
@@ -8499,6 +7685,7 @@
     com.google.protobuf.ByteString
         getQueryBytes();
 
+    // optional .exec.shared.QueryType type = 2;
     /**
      * <code>optional .exec.shared.QueryType type = 2;</code>
      */
@@ -8508,6 +7695,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryType getType();
 
+    // optional bool split_plan = 3 [default = false];
     /**
      * <code>optional bool split_plan = 3 [default = false];</code>
      */
@@ -8520,34 +7708,36 @@
   /**
    * Protobuf type {@code exec.user.GetQueryPlanFragments}
    */
-  public  static final class GetQueryPlanFragments extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetQueryPlanFragments)
-      GetQueryPlanFragmentsOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetQueryPlanFragments extends
+      com.google.protobuf.GeneratedMessage
+      implements GetQueryPlanFragmentsOrBuilder {
     // Use GetQueryPlanFragments.newBuilder() to construct.
-    private GetQueryPlanFragments(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetQueryPlanFragments(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetQueryPlanFragments() {
-      query_ = "";
-      type_ = 1;
-      splitPlan_ = false;
+    private GetQueryPlanFragments(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetQueryPlanFragments defaultInstance;
+    public static GetQueryPlanFragments getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetQueryPlanFragments getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetQueryPlanFragments(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -8559,21 +7749,26 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              query_ = bs;
+              query_ = input.readBytes();
               break;
             }
             case 16: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.QueryType value = org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(2, rawValue);
               } else {
                 bitField0_ |= 0x00000002;
-                type_ = rawValue;
+                type_ = value;
               }
               break;
             }
@@ -8582,20 +7777,13 @@
               splitPlan_ = input.readBool();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -8606,17 +7794,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetQueryPlanFragments_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetQueryPlanFragments_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.class, org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetQueryPlanFragments> PARSER =
+        new com.google.protobuf.AbstractParser<GetQueryPlanFragments>() {
+      public GetQueryPlanFragments parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetQueryPlanFragments(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetQueryPlanFragments> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // required string query = 1;
     public static final int QUERY_FIELD_NUMBER = 1;
-    private volatile java.lang.Object query_;
+    private java.lang.Object query_;
     /**
      * <code>required string query = 1;</code>
      */
@@ -8657,8 +7860,9 @@
       }
     }
 
+    // optional .exec.shared.QueryType type = 2;
     public static final int TYPE_FIELD_NUMBER = 2;
-    private int type_;
+    private org.apache.drill.exec.proto.UserBitShared.QueryType type_;
     /**
      * <code>optional .exec.shared.QueryType type = 2;</code>
      */
@@ -8669,11 +7873,10 @@
      * <code>optional .exec.shared.QueryType type = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryType getType() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.QueryType result = org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(type_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryType.SQL : result;
+      return type_;
     }
 
+    // optional bool split_plan = 3 [default = false];
     public static final int SPLIT_PLAN_FIELD_NUMBER = 3;
     private boolean splitPlan_;
     /**
@@ -8689,12 +7892,15 @@
       return splitPlan_;
     }
 
+    private void initFields() {
+      query_ = "";
+      type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
+      splitPlan_ = false;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       if (!hasQuery()) {
         memoizedIsInitialized = 0;
@@ -8704,108 +7910,51 @@
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, query_);
+        output.writeBytes(1, getQueryBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeEnum(2, type_);
+        output.writeEnum(2, type_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         output.writeBool(3, splitPlan_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, query_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getQueryBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(2, type_);
+          .computeEnumSize(2, type_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(3, splitPlan_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments other = (org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments) obj;
-
-      boolean result = true;
-      result = result && (hasQuery() == other.hasQuery());
-      if (hasQuery()) {
-        result = result && getQuery()
-            .equals(other.getQuery());
-      }
-      result = result && (hasType() == other.hasType());
-      if (hasType()) {
-        result = result && type_ == other.type_;
-      }
-      result = result && (hasSplitPlan() == other.hasSplitPlan());
-      if (hasSplitPlan()) {
-        result = result && (getSplitPlan()
-            == other.getSplitPlan());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasQuery()) {
-        hash = (37 * hash) + QUERY_FIELD_NUMBER;
-        hash = (53 * hash) + getQuery().hashCode();
-      }
-      if (hasType()) {
-        hash = (37 * hash) + TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + type_;
-      }
-      if (hasSplitPlan()) {
-        hash = (37 * hash) + SPLIT_PLAN_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getSplitPlan());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -8829,59 +7978,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -8889,16 +8025,14 @@
      * Protobuf type {@code exec.user.GetQueryPlanFragments}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetQueryPlanFragments)
-        org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragmentsOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragmentsOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetQueryPlanFragments_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetQueryPlanFragments_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -8911,39 +8045,42 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         query_ = "";
         bitField0_ = (bitField0_ & ~0x00000001);
-        type_ = 1;
+        type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
         bitField0_ = (bitField0_ & ~0x00000002);
         splitPlan_ = false;
         bitField0_ = (bitField0_ & ~0x00000004);
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetQueryPlanFragments_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments build() {
         org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments result = buildPartial();
         if (!result.isInitialized()) {
@@ -8952,7 +8089,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments result = new org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments(this);
         int from_bitField0_ = bitField0_;
@@ -8974,39 +8110,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments)other);
@@ -9029,20 +8132,18 @@
         if (other.hasSplitPlan()) {
           setSplitPlan(other.getSplitPlan());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         if (!hasQuery()) {
+          
           return false;
         }
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -9052,7 +8153,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -9062,6 +8163,7 @@
       }
       private int bitField0_;
 
+      // required string query = 1;
       private java.lang.Object query_ = "";
       /**
        * <code>required string query = 1;</code>
@@ -9075,12 +8177,9 @@
       public java.lang.String getQuery() {
         java.lang.Object ref = query_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            query_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          query_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -9138,7 +8237,8 @@
         return this;
       }
 
-      private int type_ = 1;
+      // optional .exec.shared.QueryType type = 2;
+      private org.apache.drill.exec.proto.UserBitShared.QueryType type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
       /**
        * <code>optional .exec.shared.QueryType type = 2;</code>
        */
@@ -9149,9 +8249,7 @@
        * <code>optional .exec.shared.QueryType type = 2;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryType getType() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.QueryType result = org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(type_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryType.SQL : result;
+        return type_;
       }
       /**
        * <code>optional .exec.shared.QueryType type = 2;</code>
@@ -9161,7 +8259,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000002;
-        type_ = value.getNumber();
+        type_ = value;
         onChanged();
         return this;
       }
@@ -9170,11 +8268,12 @@
        */
       public Builder clearType() {
         bitField0_ = (bitField0_ & ~0x00000002);
-        type_ = 1;
+        type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
         onChanged();
         return this;
       }
 
+      // optional bool split_plan = 3 [default = false];
       private boolean splitPlan_ ;
       /**
        * <code>optional bool split_plan = 3 [default = false];</code>
@@ -9206,63 +8305,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetQueryPlanFragments)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetQueryPlanFragments)
-    private static final org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments();
+      defaultInstance = new GetQueryPlanFragments(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetQueryPlanFragments>
-        PARSER = new com.google.protobuf.AbstractParser<GetQueryPlanFragments>() {
-      @java.lang.Override
-      public GetQueryPlanFragments parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetQueryPlanFragments(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetQueryPlanFragments> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetQueryPlanFragments> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetQueryPlanFragments getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetQueryPlanFragments)
   }
 
-  public interface QueryPlanFragmentsOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.QueryPlanFragments)
-      com.google.protobuf.MessageOrBuilder {
+  public interface QueryPlanFragmentsOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // required .exec.shared.QueryResult.QueryState status = 1;
     /**
      * <code>required .exec.shared.QueryResult.QueryState status = 1;</code>
      */
@@ -9272,6 +8330,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getStatus();
 
+    // optional .exec.shared.QueryId query_id = 2;
     /**
      * <code>optional .exec.shared.QueryId query_id = 2;</code>
      */
@@ -9285,6 +8344,7 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder();
 
+    // repeated .exec.bit.control.PlanFragment fragments = 3;
     /**
      * <code>repeated .exec.bit.control.PlanFragment fragments = 3;</code>
      */
@@ -9309,6 +8369,7 @@
     org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder getFragmentsOrBuilder(
         int index);
 
+    // optional .exec.shared.DrillPBError error = 4;
     /**
      * <code>optional .exec.shared.DrillPBError error = 4;</code>
      */
@@ -9325,33 +8386,36 @@
   /**
    * Protobuf type {@code exec.user.QueryPlanFragments}
    */
-  public  static final class QueryPlanFragments extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.QueryPlanFragments)
-      QueryPlanFragmentsOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class QueryPlanFragments extends
+      com.google.protobuf.GeneratedMessage
+      implements QueryPlanFragmentsOrBuilder {
     // Use QueryPlanFragments.newBuilder() to construct.
-    private QueryPlanFragments(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private QueryPlanFragments(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private QueryPlanFragments() {
-      status_ = 0;
-      fragments_ = java.util.Collections.emptyList();
+    private QueryPlanFragments(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final QueryPlanFragments defaultInstance;
+    public static QueryPlanFragments getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public QueryPlanFragments getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private QueryPlanFragments(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -9363,15 +8427,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState value = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                status_ = rawValue;
+                status_ = value;
               }
               break;
             }
@@ -9393,8 +8463,7 @@
                 fragments_ = new java.util.ArrayList<org.apache.drill.exec.proto.BitControl.PlanFragment>();
                 mutable_bitField0_ |= 0x00000004;
               }
-              fragments_.add(
-                  input.readMessage(org.apache.drill.exec.proto.BitControl.PlanFragment.PARSER, extensionRegistry));
+              fragments_.add(input.readMessage(org.apache.drill.exec.proto.BitControl.PlanFragment.PARSER, extensionRegistry));
               break;
             }
             case 34: {
@@ -9410,20 +8479,13 @@
               bitField0_ |= 0x00000004;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
           fragments_ = java.util.Collections.unmodifiableList(fragments_);
@@ -9437,17 +8499,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_QueryPlanFragments_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_QueryPlanFragments_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.class, org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<QueryPlanFragments> PARSER =
+        new com.google.protobuf.AbstractParser<QueryPlanFragments>() {
+      public QueryPlanFragments parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new QueryPlanFragments(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<QueryPlanFragments> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // required .exec.shared.QueryResult.QueryState status = 1;
     public static final int STATUS_FIELD_NUMBER = 1;
-    private int status_;
+    private org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState status_;
     /**
      * <code>required .exec.shared.QueryResult.QueryState status = 1;</code>
      */
@@ -9458,11 +8535,10 @@
      * <code>required .exec.shared.QueryResult.QueryState status = 1;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getStatus() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState result = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(status_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING : result;
+      return status_;
     }
 
+    // optional .exec.shared.QueryId query_id = 2;
     public static final int QUERY_ID_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_;
     /**
@@ -9475,15 +8551,16 @@
      * <code>optional .exec.shared.QueryId query_id = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
     /**
      * <code>optional .exec.shared.QueryId query_id = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder getQueryIdOrBuilder() {
-      return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+      return queryId_;
     }
 
+    // repeated .exec.bit.control.PlanFragment fragments = 3;
     public static final int FRAGMENTS_FIELD_NUMBER = 3;
     private java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment> fragments_;
     /**
@@ -9519,6 +8596,7 @@
       return fragments_.get(index);
     }
 
+    // optional .exec.shared.DrillPBError error = 4;
     public static final int ERROR_FIELD_NUMBER = 4;
     private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_;
     /**
@@ -9531,21 +8609,25 @@
      * <code>optional .exec.shared.DrillPBError error = 4;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
     /**
      * <code>optional .exec.shared.DrillPBError error = 4;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
 
+    private void initFields() {
+      status_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
+      queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      fragments_ = java.util.Collections.emptyList();
+      error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       if (!hasStatus()) {
         memoizedIsInitialized = 0;
@@ -9555,37 +8637,37 @@
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, status_);
+        output.writeEnum(1, status_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getQueryId());
+        output.writeMessage(2, queryId_);
       }
       for (int i = 0; i < fragments_.size(); i++) {
         output.writeMessage(3, fragments_.get(i));
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(4, getError());
+        output.writeMessage(4, error_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, status_);
+          .computeEnumSize(1, status_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getQueryId());
+          .computeMessageSize(2, queryId_);
       }
       for (int i = 0; i < fragments_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
@@ -9593,83 +8675,20 @@
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(4, getError());
+          .computeMessageSize(4, error_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.QueryPlanFragments)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.QueryPlanFragments other = (org.apache.drill.exec.proto.UserProtos.QueryPlanFragments) obj;
-
-      boolean result = true;
-      result = result && (hasStatus() == other.hasStatus());
-      if (hasStatus()) {
-        result = result && status_ == other.status_;
-      }
-      result = result && (hasQueryId() == other.hasQueryId());
-      if (hasQueryId()) {
-        result = result && getQueryId()
-            .equals(other.getQueryId());
-      }
-      result = result && getFragmentsList()
-          .equals(other.getFragmentsList());
-      result = result && (hasError() == other.hasError());
-      if (hasError()) {
-        result = result && getError()
-            .equals(other.getError());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasStatus()) {
-        hash = (37 * hash) + STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + status_;
-      }
-      if (hasQueryId()) {
-        hash = (37 * hash) + QUERY_ID_FIELD_NUMBER;
-        hash = (53 * hash) + getQueryId().hashCode();
-      }
-      if (getFragmentsCount() > 0) {
-        hash = (37 * hash) + FRAGMENTS_FIELD_NUMBER;
-        hash = (53 * hash) + getFragmentsList().hashCode();
-      }
-      if (hasError()) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getError().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -9693,59 +8712,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.QueryPlanFragments prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -9753,16 +8759,14 @@
      * Protobuf type {@code exec.user.QueryPlanFragments}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.QueryPlanFragments)
-        org.apache.drill.exec.proto.UserProtos.QueryPlanFragmentsOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.QueryPlanFragmentsOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_QueryPlanFragments_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_QueryPlanFragments_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -9775,25 +8779,27 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getQueryIdFieldBuilder();
           getFragmentsFieldBuilder();
           getErrorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
         bitField0_ = (bitField0_ & ~0x00000001);
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
         } else {
           queryIdBuilder_.clear();
         }
@@ -9805,7 +8811,7 @@
           fragmentsBuilder_.clear();
         }
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
         } else {
           errorBuilder_.clear();
         }
@@ -9813,18 +8819,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_QueryPlanFragments_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.QueryPlanFragments getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.QueryPlanFragments.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.QueryPlanFragments build() {
         org.apache.drill.exec.proto.UserProtos.QueryPlanFragments result = buildPartial();
         if (!result.isInitialized()) {
@@ -9833,7 +8840,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.QueryPlanFragments buildPartial() {
         org.apache.drill.exec.proto.UserProtos.QueryPlanFragments result = new org.apache.drill.exec.proto.UserProtos.QueryPlanFragments(this);
         int from_bitField0_ = bitField0_;
@@ -9872,39 +8878,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.QueryPlanFragments) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.QueryPlanFragments)other);
@@ -9941,7 +8914,7 @@
               fragments_ = other.fragments_;
               bitField0_ = (bitField0_ & ~0x00000004);
               fragmentsBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getFragmentsFieldBuilder() : null;
             } else {
               fragmentsBuilder_.addAllMessages(other.fragments_);
@@ -9951,20 +8924,18 @@
         if (other.hasError()) {
           mergeError(other.getError());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         if (!hasStatus()) {
+          
           return false;
         }
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -9974,7 +8945,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.QueryPlanFragments) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -9984,7 +8955,8 @@
       }
       private int bitField0_;
 
-      private int status_ = 0;
+      // required .exec.shared.QueryResult.QueryState status = 1;
+      private org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState status_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
       /**
        * <code>required .exec.shared.QueryResult.QueryState status = 1;</code>
        */
@@ -9995,9 +8967,7 @@
        * <code>required .exec.shared.QueryResult.QueryState status = 1;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState getStatus() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState result = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.valueOf(status_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING : result;
+        return status_;
       }
       /**
        * <code>required .exec.shared.QueryResult.QueryState status = 1;</code>
@@ -10007,7 +8977,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        status_ = value.getNumber();
+        status_ = value;
         onChanged();
         return this;
       }
@@ -10016,13 +8986,14 @@
        */
       public Builder clearStatus() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserBitShared.QueryResult.QueryState.STARTING;
         onChanged();
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.QueryId query_id = 2;
+      private org.apache.drill.exec.proto.UserBitShared.QueryId queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> queryIdBuilder_;
       /**
        * <code>optional .exec.shared.QueryId query_id = 2;</code>
@@ -10035,7 +9006,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryId getQueryId() {
         if (queryIdBuilder_ == null) {
-          return queryId_ == null ? org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         } else {
           return queryIdBuilder_.getMessage();
         }
@@ -10076,7 +9047,6 @@
       public Builder mergeQueryId(org.apache.drill.exec.proto.UserBitShared.QueryId value) {
         if (queryIdBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              queryId_ != null &&
               queryId_ != org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance()) {
             queryId_ =
               org.apache.drill.exec.proto.UserBitShared.QueryId.newBuilder(queryId_).mergeFrom(value).buildPartial();
@@ -10095,7 +9065,7 @@
        */
       public Builder clearQueryId() {
         if (queryIdBuilder_ == null) {
-          queryId_ = null;
+          queryId_ = org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance();
           onChanged();
         } else {
           queryIdBuilder_.clear();
@@ -10118,20 +9088,19 @@
         if (queryIdBuilder_ != null) {
           return queryIdBuilder_.getMessageOrBuilder();
         } else {
-          return queryId_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.QueryId.getDefaultInstance() : queryId_;
+          return queryId_;
         }
       }
       /**
        * <code>optional .exec.shared.QueryId query_id = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder> 
           getQueryIdFieldBuilder() {
         if (queryIdBuilder_ == null) {
-          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          queryIdBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.QueryId, org.apache.drill.exec.proto.UserBitShared.QueryId.Builder, org.apache.drill.exec.proto.UserBitShared.QueryIdOrBuilder>(
-                  getQueryId(),
+                  queryId_,
                   getParentForChildren(),
                   isClean());
           queryId_ = null;
@@ -10139,6 +9108,7 @@
         return queryIdBuilder_;
       }
 
+      // repeated .exec.bit.control.PlanFragment fragments = 3;
       private java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment> fragments_ =
         java.util.Collections.emptyList();
       private void ensureFragmentsIsMutable() {
@@ -10148,7 +9118,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.PlanFragment, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder, org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder> fragmentsBuilder_;
 
       /**
@@ -10280,8 +9250,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.BitControl.PlanFragment> values) {
         if (fragmentsBuilder_ == null) {
           ensureFragmentsIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, fragments_);
+          super.addAll(values, fragments_);
           onChanged();
         } else {
           fragmentsBuilder_.addAllMessages(values);
@@ -10364,11 +9333,11 @@
            getFragmentsBuilderList() {
         return getFragmentsFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.PlanFragment, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder, org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder> 
           getFragmentsFieldBuilder() {
         if (fragmentsBuilder_ == null) {
-          fragmentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          fragmentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.BitControl.PlanFragment, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder, org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder>(
                   fragments_,
                   ((bitField0_ & 0x00000004) == 0x00000004),
@@ -10379,8 +9348,9 @@
         return fragmentsBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.DrillPBError error = 4;
+      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> errorBuilder_;
       /**
        * <code>optional .exec.shared.DrillPBError error = 4;</code>
@@ -10393,7 +9363,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
         if (errorBuilder_ == null) {
-          return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         } else {
           return errorBuilder_.getMessage();
         }
@@ -10434,7 +9404,6 @@
       public Builder mergeError(org.apache.drill.exec.proto.UserBitShared.DrillPBError value) {
         if (errorBuilder_ == null) {
           if (((bitField0_ & 0x00000008) == 0x00000008) &&
-              error_ != null &&
               error_ != org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance()) {
             error_ =
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(error_).mergeFrom(value).buildPartial();
@@ -10453,7 +9422,7 @@
        */
       public Builder clearError() {
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
           onChanged();
         } else {
           errorBuilder_.clear();
@@ -10476,83 +9445,41 @@
         if (errorBuilder_ != null) {
           return errorBuilder_.getMessageOrBuilder();
         } else {
-          return error_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         }
       }
       /**
        * <code>optional .exec.shared.DrillPBError error = 4;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> 
           getErrorFieldBuilder() {
         if (errorBuilder_ == null) {
-          errorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          errorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder>(
-                  getError(),
+                  error_,
                   getParentForChildren(),
                   isClean());
           error_ = null;
         }
         return errorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.QueryPlanFragments)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.QueryPlanFragments)
-    private static final org.apache.drill.exec.proto.UserProtos.QueryPlanFragments DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.QueryPlanFragments();
+      defaultInstance = new QueryPlanFragments(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.QueryPlanFragments getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<QueryPlanFragments>
-        PARSER = new com.google.protobuf.AbstractParser<QueryPlanFragments>() {
-      @java.lang.Override
-      public QueryPlanFragments parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new QueryPlanFragments(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<QueryPlanFragments> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<QueryPlanFragments> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.QueryPlanFragments getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.QueryPlanFragments)
   }
 
-  public interface BitToUserHandshakeOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.BitToUserHandshake)
-      com.google.protobuf.MessageOrBuilder {
+  public interface BitToUserHandshakeOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional int32 rpc_version = 2;
     /**
      * <code>optional int32 rpc_version = 2;</code>
      */
@@ -10562,6 +9489,7 @@
      */
     int getRpcVersion();
 
+    // optional .exec.user.HandshakeStatus status = 3;
     /**
      * <code>optional .exec.user.HandshakeStatus status = 3;</code>
      */
@@ -10571,6 +9499,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.HandshakeStatus getStatus();
 
+    // optional string errorId = 4;
     /**
      * <code>optional string errorId = 4;</code>
      */
@@ -10585,6 +9514,7 @@
     com.google.protobuf.ByteString
         getErrorIdBytes();
 
+    // optional string errorMessage = 5;
     /**
      * <code>optional string errorMessage = 5;</code>
      */
@@ -10599,6 +9529,7 @@
     com.google.protobuf.ByteString
         getErrorMessageBytes();
 
+    // optional .exec.user.RpcEndpointInfos server_infos = 6;
     /**
      * <code>optional .exec.user.RpcEndpointInfos server_infos = 6;</code>
      */
@@ -10612,11 +9543,12 @@
      */
     org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder getServerInfosOrBuilder();
 
+    // repeated string authenticationMechanisms = 7;
     /**
      * <code>repeated string authenticationMechanisms = 7;</code>
      */
     java.util.List<java.lang.String>
-        getAuthenticationMechanismsList();
+    getAuthenticationMechanismsList();
     /**
      * <code>repeated string authenticationMechanisms = 7;</code>
      */
@@ -10631,6 +9563,7 @@
     com.google.protobuf.ByteString
         getAuthenticationMechanismsBytes(int index);
 
+    // repeated .exec.user.RpcType supported_methods = 8;
     /**
      * <code>repeated .exec.user.RpcType supported_methods = 8;</code>
      */
@@ -10644,6 +9577,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.RpcType getSupportedMethods(int index);
 
+    // optional bool encrypted = 9;
     /**
      * <code>optional bool encrypted = 9;</code>
      */
@@ -10653,6 +9587,7 @@
      */
     boolean getEncrypted();
 
+    // optional int32 maxWrappedSize = 10;
     /**
      * <code>optional int32 maxWrappedSize = 10;</code>
      */
@@ -10665,39 +9600,36 @@
   /**
    * Protobuf type {@code exec.user.BitToUserHandshake}
    */
-  public  static final class BitToUserHandshake extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.BitToUserHandshake)
-      BitToUserHandshakeOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class BitToUserHandshake extends
+      com.google.protobuf.GeneratedMessage
+      implements BitToUserHandshakeOrBuilder {
     // Use BitToUserHandshake.newBuilder() to construct.
-    private BitToUserHandshake(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private BitToUserHandshake(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private BitToUserHandshake() {
-      rpcVersion_ = 0;
-      status_ = 1;
-      errorId_ = "";
-      errorMessage_ = "";
-      authenticationMechanisms_ = com.google.protobuf.LazyStringArrayList.EMPTY;
-      supportedMethods_ = java.util.Collections.emptyList();
-      encrypted_ = false;
-      maxWrappedSize_ = 0;
+    private BitToUserHandshake(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final BitToUserHandshake defaultInstance;
+    public static BitToUserHandshake getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public BitToUserHandshake getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private BitToUserHandshake(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -10709,6 +9641,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 16: {
               bitField0_ |= 0x00000001;
               rpcVersion_ = input.readInt32();
@@ -10716,26 +9655,23 @@
             }
             case 24: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.HandshakeStatus value = org.apache.drill.exec.proto.UserProtos.HandshakeStatus.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(3, rawValue);
               } else {
                 bitField0_ |= 0x00000002;
-                status_ = rawValue;
+                status_ = value;
               }
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000004;
-              errorId_ = bs;
+              errorId_ = input.readBytes();
               break;
             }
             case 42: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              errorMessage_ = bs;
+              errorMessage_ = input.readBytes();
               break;
             }
             case 50: {
@@ -10752,26 +9688,24 @@
               break;
             }
             case 58: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
                 authenticationMechanisms_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField0_ |= 0x00000020;
               }
-              authenticationMechanisms_.add(bs);
+              authenticationMechanisms_.add(input.readBytes());
               break;
             }
             case 64: {
               int rawValue = input.readEnum();
-              @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.RpcType value = org.apache.drill.exec.proto.UserProtos.RpcType.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(8, rawValue);
               } else {
                 if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                  supportedMethods_ = new java.util.ArrayList<java.lang.Integer>();
+                  supportedMethods_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.RpcType>();
                   mutable_bitField0_ |= 0x00000040;
                 }
-                supportedMethods_.add(rawValue);
+                supportedMethods_.add(value);
               }
               break;
             }
@@ -10780,16 +9714,15 @@
               int oldLimit = input.pushLimit(length);
               while(input.getBytesUntilLimit() > 0) {
                 int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
                 org.apache.drill.exec.proto.UserProtos.RpcType value = org.apache.drill.exec.proto.UserProtos.RpcType.valueOf(rawValue);
                 if (value == null) {
                   unknownFields.mergeVarintField(8, rawValue);
                 } else {
                   if (!((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
-                    supportedMethods_ = new java.util.ArrayList<java.lang.Integer>();
+                    supportedMethods_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.RpcType>();
                     mutable_bitField0_ |= 0x00000040;
                   }
-                  supportedMethods_.add(rawValue);
+                  supportedMethods_.add(value);
                 }
               }
               input.popLimit(oldLimit);
@@ -10805,23 +9738,16 @@
               maxWrappedSize_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-          authenticationMechanisms_ = authenticationMechanisms_.getUnmodifiableView();
+          authenticationMechanisms_ = new com.google.protobuf.UnmodifiableLazyStringList(authenticationMechanisms_);
         }
         if (((mutable_bitField0_ & 0x00000040) == 0x00000040)) {
           supportedMethods_ = java.util.Collections.unmodifiableList(supportedMethods_);
@@ -10835,15 +9761,30 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_BitToUserHandshake_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_BitToUserHandshake_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.class, org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<BitToUserHandshake> PARSER =
+        new com.google.protobuf.AbstractParser<BitToUserHandshake>() {
+      public BitToUserHandshake parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new BitToUserHandshake(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<BitToUserHandshake> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional int32 rpc_version = 2;
     public static final int RPC_VERSION_FIELD_NUMBER = 2;
     private int rpcVersion_;
     /**
@@ -10859,8 +9800,9 @@
       return rpcVersion_;
     }
 
+    // optional .exec.user.HandshakeStatus status = 3;
     public static final int STATUS_FIELD_NUMBER = 3;
-    private int status_;
+    private org.apache.drill.exec.proto.UserProtos.HandshakeStatus status_;
     /**
      * <code>optional .exec.user.HandshakeStatus status = 3;</code>
      */
@@ -10871,13 +9813,12 @@
      * <code>optional .exec.user.HandshakeStatus status = 3;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.HandshakeStatus getStatus() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.HandshakeStatus result = org.apache.drill.exec.proto.UserProtos.HandshakeStatus.valueOf(status_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.HandshakeStatus.SUCCESS : result;
+      return status_;
     }
 
+    // optional string errorId = 4;
     public static final int ERRORID_FIELD_NUMBER = 4;
-    private volatile java.lang.Object errorId_;
+    private java.lang.Object errorId_;
     /**
      * <code>optional string errorId = 4;</code>
      */
@@ -10918,8 +9859,9 @@
       }
     }
 
+    // optional string errorMessage = 5;
     public static final int ERRORMESSAGE_FIELD_NUMBER = 5;
-    private volatile java.lang.Object errorMessage_;
+    private java.lang.Object errorMessage_;
     /**
      * <code>optional string errorMessage = 5;</code>
      */
@@ -10960,6 +9902,7 @@
       }
     }
 
+    // optional .exec.user.RpcEndpointInfos server_infos = 6;
     public static final int SERVER_INFOS_FIELD_NUMBER = 6;
     private org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos serverInfos_;
     /**
@@ -10972,21 +9915,22 @@
      * <code>optional .exec.user.RpcEndpointInfos server_infos = 6;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos getServerInfos() {
-      return serverInfos_ == null ? org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance() : serverInfos_;
+      return serverInfos_;
     }
     /**
      * <code>optional .exec.user.RpcEndpointInfos server_infos = 6;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder getServerInfosOrBuilder() {
-      return serverInfos_ == null ? org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance() : serverInfos_;
+      return serverInfos_;
     }
 
+    // repeated string authenticationMechanisms = 7;
     public static final int AUTHENTICATIONMECHANISMS_FIELD_NUMBER = 7;
     private com.google.protobuf.LazyStringList authenticationMechanisms_;
     /**
      * <code>repeated string authenticationMechanisms = 7;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getAuthenticationMechanismsList() {
       return authenticationMechanisms_;
     }
@@ -11010,24 +9954,14 @@
       return authenticationMechanisms_.getByteString(index);
     }
 
+    // repeated .exec.user.RpcType supported_methods = 8;
     public static final int SUPPORTED_METHODS_FIELD_NUMBER = 8;
-    private java.util.List<java.lang.Integer> supportedMethods_;
-    private static final com.google.protobuf.Internal.ListAdapter.Converter<
-        java.lang.Integer, org.apache.drill.exec.proto.UserProtos.RpcType> supportedMethods_converter_ =
-            new com.google.protobuf.Internal.ListAdapter.Converter<
-                java.lang.Integer, org.apache.drill.exec.proto.UserProtos.RpcType>() {
-              public org.apache.drill.exec.proto.UserProtos.RpcType convert(java.lang.Integer from) {
-                @SuppressWarnings("deprecation")
-                org.apache.drill.exec.proto.UserProtos.RpcType result = org.apache.drill.exec.proto.UserProtos.RpcType.valueOf(from);
-                return result == null ? org.apache.drill.exec.proto.UserProtos.RpcType.HANDSHAKE : result;
-              }
-            };
+    private java.util.List<org.apache.drill.exec.proto.UserProtos.RpcType> supportedMethods_;
     /**
      * <code>repeated .exec.user.RpcType supported_methods = 8;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserProtos.RpcType> getSupportedMethodsList() {
-      return new com.google.protobuf.Internal.ListAdapter<
-          java.lang.Integer, org.apache.drill.exec.proto.UserProtos.RpcType>(supportedMethods_, supportedMethods_converter_);
+      return supportedMethods_;
     }
     /**
      * <code>repeated .exec.user.RpcType supported_methods = 8;</code>
@@ -11039,9 +9973,10 @@
      * <code>repeated .exec.user.RpcType supported_methods = 8;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RpcType getSupportedMethods(int index) {
-      return supportedMethods_converter_.convert(supportedMethods_.get(index));
+      return supportedMethods_.get(index);
     }
 
+    // optional bool encrypted = 9;
     public static final int ENCRYPTED_FIELD_NUMBER = 9;
     private boolean encrypted_;
     /**
@@ -11057,6 +9992,7 @@
       return encrypted_;
     }
 
+    // optional int32 maxWrappedSize = 10;
     public static final int MAXWRAPPEDSIZE_FIELD_NUMBER = 10;
     private int maxWrappedSize_;
     /**
@@ -11072,40 +10008,49 @@
       return maxWrappedSize_;
     }
 
+    private void initFields() {
+      rpcVersion_ = 0;
+      status_ = org.apache.drill.exec.proto.UserProtos.HandshakeStatus.SUCCESS;
+      errorId_ = "";
+      errorMessage_ = "";
+      serverInfos_ = org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance();
+      authenticationMechanisms_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+      supportedMethods_ = java.util.Collections.emptyList();
+      encrypted_ = false;
+      maxWrappedSize_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeInt32(2, rpcVersion_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeEnum(3, status_);
+        output.writeEnum(3, status_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, errorId_);
+        output.writeBytes(4, getErrorIdBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, errorMessage_);
+        output.writeBytes(5, getErrorMessageBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        output.writeMessage(6, getServerInfos());
+        output.writeMessage(6, serverInfos_);
       }
       for (int i = 0; i < authenticationMechanisms_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, authenticationMechanisms_.getRaw(i));
+        output.writeBytes(7, authenticationMechanisms_.getByteString(i));
       }
       for (int i = 0; i < supportedMethods_.size(); i++) {
-        output.writeEnum(8, supportedMethods_.get(i));
+        output.writeEnum(8, supportedMethods_.get(i).getNumber());
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
         output.writeBool(9, encrypted_);
@@ -11113,12 +10058,12 @@
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         output.writeInt32(10, maxWrappedSize_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -11128,22 +10073,25 @@
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(3, status_);
+          .computeEnumSize(3, status_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, errorId_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getErrorIdBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, errorMessage_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(5, getErrorMessageBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(6, getServerInfos());
+          .computeMessageSize(6, serverInfos_);
       }
       {
         int dataSize = 0;
         for (int i = 0; i < authenticationMechanisms_.size(); i++) {
-          dataSize += computeStringSizeNoTag(authenticationMechanisms_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(authenticationMechanisms_.getByteString(i));
         }
         size += dataSize;
         size += 1 * getAuthenticationMechanismsList().size();
@@ -11152,7 +10100,7 @@
         int dataSize = 0;
         for (int i = 0; i < supportedMethods_.size(); i++) {
           dataSize += com.google.protobuf.CodedOutputStream
-            .computeEnumSizeNoTag(supportedMethods_.get(i));
+            .computeEnumSizeNoTag(supportedMethods_.get(i).getNumber());
         }
         size += dataSize;
         size += 1 * supportedMethods_.size();
@@ -11165,123 +10113,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(10, maxWrappedSize_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.BitToUserHandshake)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.BitToUserHandshake other = (org.apache.drill.exec.proto.UserProtos.BitToUserHandshake) obj;
-
-      boolean result = true;
-      result = result && (hasRpcVersion() == other.hasRpcVersion());
-      if (hasRpcVersion()) {
-        result = result && (getRpcVersion()
-            == other.getRpcVersion());
-      }
-      result = result && (hasStatus() == other.hasStatus());
-      if (hasStatus()) {
-        result = result && status_ == other.status_;
-      }
-      result = result && (hasErrorId() == other.hasErrorId());
-      if (hasErrorId()) {
-        result = result && getErrorId()
-            .equals(other.getErrorId());
-      }
-      result = result && (hasErrorMessage() == other.hasErrorMessage());
-      if (hasErrorMessage()) {
-        result = result && getErrorMessage()
-            .equals(other.getErrorMessage());
-      }
-      result = result && (hasServerInfos() == other.hasServerInfos());
-      if (hasServerInfos()) {
-        result = result && getServerInfos()
-            .equals(other.getServerInfos());
-      }
-      result = result && getAuthenticationMechanismsList()
-          .equals(other.getAuthenticationMechanismsList());
-      result = result && supportedMethods_.equals(other.supportedMethods_);
-      result = result && (hasEncrypted() == other.hasEncrypted());
-      if (hasEncrypted()) {
-        result = result && (getEncrypted()
-            == other.getEncrypted());
-      }
-      result = result && (hasMaxWrappedSize() == other.hasMaxWrappedSize());
-      if (hasMaxWrappedSize()) {
-        result = result && (getMaxWrappedSize()
-            == other.getMaxWrappedSize());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasRpcVersion()) {
-        hash = (37 * hash) + RPC_VERSION_FIELD_NUMBER;
-        hash = (53 * hash) + getRpcVersion();
-      }
-      if (hasStatus()) {
-        hash = (37 * hash) + STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + status_;
-      }
-      if (hasErrorId()) {
-        hash = (37 * hash) + ERRORID_FIELD_NUMBER;
-        hash = (53 * hash) + getErrorId().hashCode();
-      }
-      if (hasErrorMessage()) {
-        hash = (37 * hash) + ERRORMESSAGE_FIELD_NUMBER;
-        hash = (53 * hash) + getErrorMessage().hashCode();
-      }
-      if (hasServerInfos()) {
-        hash = (37 * hash) + SERVER_INFOS_FIELD_NUMBER;
-        hash = (53 * hash) + getServerInfos().hashCode();
-      }
-      if (getAuthenticationMechanismsCount() > 0) {
-        hash = (37 * hash) + AUTHENTICATIONMECHANISMS_FIELD_NUMBER;
-        hash = (53 * hash) + getAuthenticationMechanismsList().hashCode();
-      }
-      if (getSupportedMethodsCount() > 0) {
-        hash = (37 * hash) + SUPPORTED_METHODS_FIELD_NUMBER;
-        hash = (53 * hash) + supportedMethods_.hashCode();
-      }
-      if (hasEncrypted()) {
-        hash = (37 * hash) + ENCRYPTED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getEncrypted());
-      }
-      if (hasMaxWrappedSize()) {
-        hash = (37 * hash) + MAXWRAPPEDSIZE_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxWrappedSize();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -11305,59 +10148,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.BitToUserHandshake prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -11365,16 +10195,14 @@
      * Protobuf type {@code exec.user.BitToUserHandshake}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.BitToUserHandshake)
-        org.apache.drill.exec.proto.UserProtos.BitToUserHandshakeOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.BitToUserHandshakeOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_BitToUserHandshake_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_BitToUserHandshake_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -11387,29 +10215,31 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getServerInfosFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         rpcVersion_ = 0;
         bitField0_ = (bitField0_ & ~0x00000001);
-        status_ = 1;
+        status_ = org.apache.drill.exec.proto.UserProtos.HandshakeStatus.SUCCESS;
         bitField0_ = (bitField0_ & ~0x00000002);
         errorId_ = "";
         bitField0_ = (bitField0_ & ~0x00000004);
         errorMessage_ = "";
         bitField0_ = (bitField0_ & ~0x00000008);
         if (serverInfosBuilder_ == null) {
-          serverInfos_ = null;
+          serverInfos_ = org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance();
         } else {
           serverInfosBuilder_.clear();
         }
@@ -11425,18 +10255,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_BitToUserHandshake_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.BitToUserHandshake getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.BitToUserHandshake.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.BitToUserHandshake build() {
         org.apache.drill.exec.proto.UserProtos.BitToUserHandshake result = buildPartial();
         if (!result.isInitialized()) {
@@ -11445,7 +10276,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.BitToUserHandshake buildPartial() {
         org.apache.drill.exec.proto.UserProtos.BitToUserHandshake result = new org.apache.drill.exec.proto.UserProtos.BitToUserHandshake(this);
         int from_bitField0_ = bitField0_;
@@ -11475,7 +10305,8 @@
           result.serverInfos_ = serverInfosBuilder_.build();
         }
         if (((bitField0_ & 0x00000020) == 0x00000020)) {
-          authenticationMechanisms_ = authenticationMechanisms_.getUnmodifiableView();
+          authenticationMechanisms_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              authenticationMechanisms_);
           bitField0_ = (bitField0_ & ~0x00000020);
         }
         result.authenticationMechanisms_ = authenticationMechanisms_;
@@ -11497,39 +10328,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.BitToUserHandshake) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.BitToUserHandshake)other);
@@ -11586,17 +10384,14 @@
         if (other.hasMaxWrappedSize()) {
           setMaxWrappedSize(other.getMaxWrappedSize());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -11606,7 +10401,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.BitToUserHandshake) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -11616,6 +10411,7 @@
       }
       private int bitField0_;
 
+      // optional int32 rpc_version = 2;
       private int rpcVersion_ ;
       /**
        * <code>optional int32 rpc_version = 2;</code>
@@ -11648,7 +10444,8 @@
         return this;
       }
 
-      private int status_ = 1;
+      // optional .exec.user.HandshakeStatus status = 3;
+      private org.apache.drill.exec.proto.UserProtos.HandshakeStatus status_ = org.apache.drill.exec.proto.UserProtos.HandshakeStatus.SUCCESS;
       /**
        * <code>optional .exec.user.HandshakeStatus status = 3;</code>
        */
@@ -11659,9 +10456,7 @@
        * <code>optional .exec.user.HandshakeStatus status = 3;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.HandshakeStatus getStatus() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.HandshakeStatus result = org.apache.drill.exec.proto.UserProtos.HandshakeStatus.valueOf(status_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.HandshakeStatus.SUCCESS : result;
+        return status_;
       }
       /**
        * <code>optional .exec.user.HandshakeStatus status = 3;</code>
@@ -11671,7 +10466,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000002;
-        status_ = value.getNumber();
+        status_ = value;
         onChanged();
         return this;
       }
@@ -11680,11 +10475,12 @@
        */
       public Builder clearStatus() {
         bitField0_ = (bitField0_ & ~0x00000002);
-        status_ = 1;
+        status_ = org.apache.drill.exec.proto.UserProtos.HandshakeStatus.SUCCESS;
         onChanged();
         return this;
       }
 
+      // optional string errorId = 4;
       private java.lang.Object errorId_ = "";
       /**
        * <code>optional string errorId = 4;</code>
@@ -11698,12 +10494,9 @@
       public java.lang.String getErrorId() {
         java.lang.Object ref = errorId_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            errorId_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          errorId_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -11761,6 +10554,7 @@
         return this;
       }
 
+      // optional string errorMessage = 5;
       private java.lang.Object errorMessage_ = "";
       /**
        * <code>optional string errorMessage = 5;</code>
@@ -11774,12 +10568,9 @@
       public java.lang.String getErrorMessage() {
         java.lang.Object ref = errorMessage_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            errorMessage_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          errorMessage_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -11837,8 +10628,9 @@
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos serverInfos_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.RpcEndpointInfos server_infos = 6;
+      private org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos serverInfos_ = org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder> serverInfosBuilder_;
       /**
        * <code>optional .exec.user.RpcEndpointInfos server_infos = 6;</code>
@@ -11851,7 +10643,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos getServerInfos() {
         if (serverInfosBuilder_ == null) {
-          return serverInfos_ == null ? org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance() : serverInfos_;
+          return serverInfos_;
         } else {
           return serverInfosBuilder_.getMessage();
         }
@@ -11892,7 +10684,6 @@
       public Builder mergeServerInfos(org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos value) {
         if (serverInfosBuilder_ == null) {
           if (((bitField0_ & 0x00000010) == 0x00000010) &&
-              serverInfos_ != null &&
               serverInfos_ != org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance()) {
             serverInfos_ =
               org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.newBuilder(serverInfos_).mergeFrom(value).buildPartial();
@@ -11911,7 +10702,7 @@
        */
       public Builder clearServerInfos() {
         if (serverInfosBuilder_ == null) {
-          serverInfos_ = null;
+          serverInfos_ = org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance();
           onChanged();
         } else {
           serverInfosBuilder_.clear();
@@ -11934,20 +10725,19 @@
         if (serverInfosBuilder_ != null) {
           return serverInfosBuilder_.getMessageOrBuilder();
         } else {
-          return serverInfos_ == null ?
-              org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.getDefaultInstance() : serverInfos_;
+          return serverInfos_;
         }
       }
       /**
        * <code>optional .exec.user.RpcEndpointInfos server_infos = 6;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder> 
           getServerInfosFieldBuilder() {
         if (serverInfosBuilder_ == null) {
-          serverInfosBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          serverInfosBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfos.Builder, org.apache.drill.exec.proto.UserProtos.RpcEndpointInfosOrBuilder>(
-                  getServerInfos(),
+                  serverInfos_,
                   getParentForChildren(),
                   isClean());
           serverInfos_ = null;
@@ -11955,6 +10745,7 @@
         return serverInfosBuilder_;
       }
 
+      // repeated string authenticationMechanisms = 7;
       private com.google.protobuf.LazyStringList authenticationMechanisms_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureAuthenticationMechanismsIsMutable() {
         if (!((bitField0_ & 0x00000020) == 0x00000020)) {
@@ -11965,9 +10756,9 @@
       /**
        * <code>repeated string authenticationMechanisms = 7;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getAuthenticationMechanismsList() {
-        return authenticationMechanisms_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(authenticationMechanisms_);
       }
       /**
        * <code>repeated string authenticationMechanisms = 7;</code>
@@ -12020,8 +10811,7 @@
       public Builder addAllAuthenticationMechanisms(
           java.lang.Iterable<java.lang.String> values) {
         ensureAuthenticationMechanismsIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, authenticationMechanisms_);
+        super.addAll(values, authenticationMechanisms_);
         onChanged();
         return this;
       }
@@ -12048,11 +10838,12 @@
         return this;
       }
 
-      private java.util.List<java.lang.Integer> supportedMethods_ =
+      // repeated .exec.user.RpcType supported_methods = 8;
+      private java.util.List<org.apache.drill.exec.proto.UserProtos.RpcType> supportedMethods_ =
         java.util.Collections.emptyList();
       private void ensureSupportedMethodsIsMutable() {
         if (!((bitField0_ & 0x00000040) == 0x00000040)) {
-          supportedMethods_ = new java.util.ArrayList<java.lang.Integer>(supportedMethods_);
+          supportedMethods_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.RpcType>(supportedMethods_);
           bitField0_ |= 0x00000040;
         }
       }
@@ -12060,8 +10851,7 @@
        * <code>repeated .exec.user.RpcType supported_methods = 8;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserProtos.RpcType> getSupportedMethodsList() {
-        return new com.google.protobuf.Internal.ListAdapter<
-            java.lang.Integer, org.apache.drill.exec.proto.UserProtos.RpcType>(supportedMethods_, supportedMethods_converter_);
+        return java.util.Collections.unmodifiableList(supportedMethods_);
       }
       /**
        * <code>repeated .exec.user.RpcType supported_methods = 8;</code>
@@ -12073,7 +10863,7 @@
        * <code>repeated .exec.user.RpcType supported_methods = 8;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.RpcType getSupportedMethods(int index) {
-        return supportedMethods_converter_.convert(supportedMethods_.get(index));
+        return supportedMethods_.get(index);
       }
       /**
        * <code>repeated .exec.user.RpcType supported_methods = 8;</code>
@@ -12084,7 +10874,7 @@
           throw new NullPointerException();
         }
         ensureSupportedMethodsIsMutable();
-        supportedMethods_.set(index, value.getNumber());
+        supportedMethods_.set(index, value);
         onChanged();
         return this;
       }
@@ -12096,7 +10886,7 @@
           throw new NullPointerException();
         }
         ensureSupportedMethodsIsMutable();
-        supportedMethods_.add(value.getNumber());
+        supportedMethods_.add(value);
         onChanged();
         return this;
       }
@@ -12106,9 +10896,7 @@
       public Builder addAllSupportedMethods(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.RpcType> values) {
         ensureSupportedMethodsIsMutable();
-        for (org.apache.drill.exec.proto.UserProtos.RpcType value : values) {
-          supportedMethods_.add(value.getNumber());
-        }
+        super.addAll(values, supportedMethods_);
         onChanged();
         return this;
       }
@@ -12122,6 +10910,7 @@
         return this;
       }
 
+      // optional bool encrypted = 9;
       private boolean encrypted_ ;
       /**
        * <code>optional bool encrypted = 9;</code>
@@ -12154,6 +10943,7 @@
         return this;
       }
 
+      // optional int32 maxWrappedSize = 10;
       private int maxWrappedSize_ ;
       /**
        * <code>optional int32 maxWrappedSize = 10;</code>
@@ -12185,149 +10975,113 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.BitToUserHandshake)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.BitToUserHandshake)
-    private static final org.apache.drill.exec.proto.UserProtos.BitToUserHandshake DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.BitToUserHandshake();
+      defaultInstance = new BitToUserHandshake(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.BitToUserHandshake getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<BitToUserHandshake>
-        PARSER = new com.google.protobuf.AbstractParser<BitToUserHandshake>() {
-      @java.lang.Override
-      public BitToUserHandshake parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new BitToUserHandshake(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<BitToUserHandshake> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<BitToUserHandshake> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.BitToUserHandshake getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.BitToUserHandshake)
   }
 
-  public interface LikeFilterOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.LikeFilter)
-      com.google.protobuf.MessageOrBuilder {
+  public interface LikeFilterOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string pattern = 1;
     /**
+     * <code>optional string pattern = 1;</code>
+     *
      * <pre>
      * pattern to match
      * </pre>
-     *
-     * <code>optional string pattern = 1;</code>
      */
     boolean hasPattern();
     /**
+     * <code>optional string pattern = 1;</code>
+     *
      * <pre>
      * pattern to match
      * </pre>
-     *
-     * <code>optional string pattern = 1;</code>
      */
     java.lang.String getPattern();
     /**
+     * <code>optional string pattern = 1;</code>
+     *
      * <pre>
      * pattern to match
      * </pre>
-     *
-     * <code>optional string pattern = 1;</code>
      */
     com.google.protobuf.ByteString
         getPatternBytes();
 
+    // optional string escape = 2;
     /**
+     * <code>optional string escape = 2;</code>
+     *
      * <pre>
      * escape character (if any) present in the pattern
      * </pre>
-     *
-     * <code>optional string escape = 2;</code>
      */
     boolean hasEscape();
     /**
+     * <code>optional string escape = 2;</code>
+     *
      * <pre>
      * escape character (if any) present in the pattern
      * </pre>
-     *
-     * <code>optional string escape = 2;</code>
      */
     java.lang.String getEscape();
     /**
+     * <code>optional string escape = 2;</code>
+     *
      * <pre>
      * escape character (if any) present in the pattern
      * </pre>
-     *
-     * <code>optional string escape = 2;</code>
      */
     com.google.protobuf.ByteString
         getEscapeBytes();
   }
   /**
+   * Protobuf type {@code exec.user.LikeFilter}
+   *
    * <pre>
+   *
    * Simple filter which encapsulates the SQL LIKE ... ESCAPE function
    * </pre>
-   *
-   * Protobuf type {@code exec.user.LikeFilter}
    */
-  public  static final class LikeFilter extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.LikeFilter)
-      LikeFilterOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class LikeFilter extends
+      com.google.protobuf.GeneratedMessage
+      implements LikeFilterOrBuilder {
     // Use LikeFilter.newBuilder() to construct.
-    private LikeFilter(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private LikeFilter(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private LikeFilter() {
-      pattern_ = "";
-      escape_ = "";
+    private LikeFilter(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final LikeFilter defaultInstance;
+    public static LikeFilter getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public LikeFilter getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private LikeFilter(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -12339,23 +11093,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              pattern_ = bs;
+              pattern_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              escape_ = bs;
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              escape_ = input.readBytes();
               break;
             }
           }
@@ -12364,7 +11116,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -12375,33 +11127,48 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_LikeFilter_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_LikeFilter_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.LikeFilter.class, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<LikeFilter> PARSER =
+        new com.google.protobuf.AbstractParser<LikeFilter>() {
+      public LikeFilter parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new LikeFilter(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<LikeFilter> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string pattern = 1;
     public static final int PATTERN_FIELD_NUMBER = 1;
-    private volatile java.lang.Object pattern_;
+    private java.lang.Object pattern_;
     /**
+     * <code>optional string pattern = 1;</code>
+     *
      * <pre>
      * pattern to match
      * </pre>
-     *
-     * <code>optional string pattern = 1;</code>
      */
     public boolean hasPattern() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional string pattern = 1;</code>
+     *
      * <pre>
      * pattern to match
      * </pre>
-     *
-     * <code>optional string pattern = 1;</code>
      */
     public java.lang.String getPattern() {
       java.lang.Object ref = pattern_;
@@ -12418,11 +11185,11 @@
       }
     }
     /**
+     * <code>optional string pattern = 1;</code>
+     *
      * <pre>
      * pattern to match
      * </pre>
-     *
-     * <code>optional string pattern = 1;</code>
      */
     public com.google.protobuf.ByteString
         getPatternBytes() {
@@ -12438,24 +11205,25 @@
       }
     }
 
+    // optional string escape = 2;
     public static final int ESCAPE_FIELD_NUMBER = 2;
-    private volatile java.lang.Object escape_;
+    private java.lang.Object escape_;
     /**
+     * <code>optional string escape = 2;</code>
+     *
      * <pre>
      * escape character (if any) present in the pattern
      * </pre>
-     *
-     * <code>optional string escape = 2;</code>
      */
     public boolean hasEscape() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
+     * <code>optional string escape = 2;</code>
+     *
      * <pre>
      * escape character (if any) present in the pattern
      * </pre>
-     *
-     * <code>optional string escape = 2;</code>
      */
     public java.lang.String getEscape() {
       java.lang.Object ref = escape_;
@@ -12472,11 +11240,11 @@
       }
     }
     /**
+     * <code>optional string escape = 2;</code>
+     *
      * <pre>
      * escape character (if any) present in the pattern
      * </pre>
-     *
-     * <code>optional string escape = 2;</code>
      */
     public com.google.protobuf.ByteString
         getEscapeBytes() {
@@ -12492,102 +11260,57 @@
       }
     }
 
+    private void initFields() {
+      pattern_ = "";
+      escape_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, pattern_);
+        output.writeBytes(1, getPatternBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, escape_);
+        output.writeBytes(2, getEscapeBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, pattern_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getPatternBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, escape_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getEscapeBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.LikeFilter)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.LikeFilter other = (org.apache.drill.exec.proto.UserProtos.LikeFilter) obj;
-
-      boolean result = true;
-      result = result && (hasPattern() == other.hasPattern());
-      if (hasPattern()) {
-        result = result && getPattern()
-            .equals(other.getPattern());
-      }
-      result = result && (hasEscape() == other.hasEscape());
-      if (hasEscape()) {
-        result = result && getEscape()
-            .equals(other.getEscape());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasPattern()) {
-        hash = (37 * hash) + PATTERN_FIELD_NUMBER;
-        hash = (53 * hash) + getPattern().hashCode();
-      }
-      if (hasEscape()) {
-        hash = (37 * hash) + ESCAPE_FIELD_NUMBER;
-        hash = (53 * hash) + getEscape().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.LikeFilter parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.LikeFilter parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.LikeFilter parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -12611,80 +11334,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.LikeFilter parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.LikeFilter parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.LikeFilter parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.LikeFilter parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.LikeFilter parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.LikeFilter parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.LikeFilter prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.LikeFilter}
+     *
      * <pre>
+     *
      * Simple filter which encapsulates the SQL LIKE ... ESCAPE function
      * </pre>
-     *
-     * Protobuf type {@code exec.user.LikeFilter}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.LikeFilter)
-        org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_LikeFilter_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_LikeFilter_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -12697,16 +11406,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         pattern_ = "";
@@ -12716,18 +11427,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_LikeFilter_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.LikeFilter build() {
         org.apache.drill.exec.proto.UserProtos.LikeFilter result = buildPartial();
         if (!result.isInitialized()) {
@@ -12736,7 +11448,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.LikeFilter buildPartial() {
         org.apache.drill.exec.proto.UserProtos.LikeFilter result = new org.apache.drill.exec.proto.UserProtos.LikeFilter(this);
         int from_bitField0_ = bitField0_;
@@ -12754,39 +11465,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.LikeFilter) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.LikeFilter)other);
@@ -12808,17 +11486,14 @@
           escape_ = other.escape_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -12828,7 +11503,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.LikeFilter) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -12838,44 +11513,42 @@
       }
       private int bitField0_;
 
+      // optional string pattern = 1;
       private java.lang.Object pattern_ = "";
       /**
+       * <code>optional string pattern = 1;</code>
+       *
        * <pre>
        * pattern to match
        * </pre>
-       *
-       * <code>optional string pattern = 1;</code>
        */
       public boolean hasPattern() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
+       * <code>optional string pattern = 1;</code>
+       *
        * <pre>
        * pattern to match
        * </pre>
-       *
-       * <code>optional string pattern = 1;</code>
        */
       public java.lang.String getPattern() {
         java.lang.Object ref = pattern_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            pattern_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          pattern_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string pattern = 1;</code>
+       *
        * <pre>
        * pattern to match
        * </pre>
-       *
-       * <code>optional string pattern = 1;</code>
        */
       public com.google.protobuf.ByteString
           getPatternBytes() {
@@ -12891,11 +11564,11 @@
         }
       }
       /**
+       * <code>optional string pattern = 1;</code>
+       *
        * <pre>
        * pattern to match
        * </pre>
-       *
-       * <code>optional string pattern = 1;</code>
        */
       public Builder setPattern(
           java.lang.String value) {
@@ -12908,11 +11581,11 @@
         return this;
       }
       /**
+       * <code>optional string pattern = 1;</code>
+       *
        * <pre>
        * pattern to match
        * </pre>
-       *
-       * <code>optional string pattern = 1;</code>
        */
       public Builder clearPattern() {
         bitField0_ = (bitField0_ & ~0x00000001);
@@ -12921,11 +11594,11 @@
         return this;
       }
       /**
+       * <code>optional string pattern = 1;</code>
+       *
        * <pre>
        * pattern to match
        * </pre>
-       *
-       * <code>optional string pattern = 1;</code>
        */
       public Builder setPatternBytes(
           com.google.protobuf.ByteString value) {
@@ -12938,44 +11611,42 @@
         return this;
       }
 
+      // optional string escape = 2;
       private java.lang.Object escape_ = "";
       /**
+       * <code>optional string escape = 2;</code>
+       *
        * <pre>
        * escape character (if any) present in the pattern
        * </pre>
-       *
-       * <code>optional string escape = 2;</code>
        */
       public boolean hasEscape() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
+       * <code>optional string escape = 2;</code>
+       *
        * <pre>
        * escape character (if any) present in the pattern
        * </pre>
-       *
-       * <code>optional string escape = 2;</code>
        */
       public java.lang.String getEscape() {
         java.lang.Object ref = escape_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            escape_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          escape_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string escape = 2;</code>
+       *
        * <pre>
        * escape character (if any) present in the pattern
        * </pre>
-       *
-       * <code>optional string escape = 2;</code>
        */
       public com.google.protobuf.ByteString
           getEscapeBytes() {
@@ -12991,11 +11662,11 @@
         }
       }
       /**
+       * <code>optional string escape = 2;</code>
+       *
        * <pre>
        * escape character (if any) present in the pattern
        * </pre>
-       *
-       * <code>optional string escape = 2;</code>
        */
       public Builder setEscape(
           java.lang.String value) {
@@ -13008,11 +11679,11 @@
         return this;
       }
       /**
+       * <code>optional string escape = 2;</code>
+       *
        * <pre>
        * escape character (if any) present in the pattern
        * </pre>
-       *
-       * <code>optional string escape = 2;</code>
        */
       public Builder clearEscape() {
         bitField0_ = (bitField0_ & ~0x00000002);
@@ -13021,11 +11692,11 @@
         return this;
       }
       /**
+       * <code>optional string escape = 2;</code>
+       *
        * <pre>
        * escape character (if any) present in the pattern
        * </pre>
-       *
-       * <code>optional string escape = 2;</code>
        */
       public Builder setEscapeBytes(
           com.google.protobuf.ByteString value) {
@@ -13037,63 +11708,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.LikeFilter)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.LikeFilter)
-    private static final org.apache.drill.exec.proto.UserProtos.LikeFilter DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.LikeFilter();
+      defaultInstance = new LikeFilter(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.LikeFilter getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<LikeFilter>
-        PARSER = new com.google.protobuf.AbstractParser<LikeFilter>() {
-      @java.lang.Override
-      public LikeFilter parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new LikeFilter(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<LikeFilter> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<LikeFilter> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.LikeFilter getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.LikeFilter)
   }
 
-  public interface GetCatalogsReqOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetCatalogsReq)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetCatalogsReqOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.LikeFilter catalog_name_filter = 1;
     /**
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
@@ -13108,37 +11738,43 @@
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getCatalogNameFilterOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.GetCatalogsReq}
+   *
    * <pre>
+   *
    * Request message for getting the metadata for catalogs satisfying the given optional filter.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetCatalogsReq}
    */
-  public  static final class GetCatalogsReq extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetCatalogsReq)
-      GetCatalogsReqOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetCatalogsReq extends
+      com.google.protobuf.GeneratedMessage
+      implements GetCatalogsReqOrBuilder {
     // Use GetCatalogsReq.newBuilder() to construct.
-    private GetCatalogsReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetCatalogsReq(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetCatalogsReq() {
+    private GetCatalogsReq(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetCatalogsReq defaultInstance;
+    public static GetCatalogsReq getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetCatalogsReq getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetCatalogsReq(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -13150,6 +11786,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -13163,20 +11806,13 @@
               bitField0_ |= 0x00000001;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -13187,15 +11823,30 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsReq_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsReq_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.class, org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetCatalogsReq> PARSER =
+        new com.google.protobuf.AbstractParser<GetCatalogsReq>() {
+      public GetCatalogsReq parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetCatalogsReq(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetCatalogsReq> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.LikeFilter catalog_name_filter = 1;
     public static final int CATALOG_NAME_FILTER_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_;
     /**
@@ -13208,97 +11859,58 @@
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getCatalogNameFilter() {
-      return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+      return catalogNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getCatalogNameFilterOrBuilder() {
-      return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+      return catalogNameFilter_;
     }
 
+    private void initFields() {
+      catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getCatalogNameFilter());
+        output.writeMessage(1, catalogNameFilter_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getCatalogNameFilter());
+          .computeMessageSize(1, catalogNameFilter_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetCatalogsReq)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetCatalogsReq other = (org.apache.drill.exec.proto.UserProtos.GetCatalogsReq) obj;
-
-      boolean result = true;
-      result = result && (hasCatalogNameFilter() == other.hasCatalogNameFilter());
-      if (hasCatalogNameFilter()) {
-        result = result && getCatalogNameFilter()
-            .equals(other.getCatalogNameFilter());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasCatalogNameFilter()) {
-        hash = (37 * hash) + CATALOG_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogNameFilter().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -13322,80 +11934,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetCatalogsReq prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetCatalogsReq}
+     *
      * <pre>
+     *
      * Request message for getting the metadata for catalogs satisfying the given optional filter.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetCatalogsReq}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetCatalogsReq)
-        org.apache.drill.exec.proto.UserProtos.GetCatalogsReqOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetCatalogsReqOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsReq_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsReq_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -13408,21 +12006,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getCatalogNameFilterFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilter_ = null;
+          catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           catalogNameFilterBuilder_.clear();
         }
@@ -13430,18 +12030,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsReq_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetCatalogsReq getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetCatalogsReq.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetCatalogsReq build() {
         org.apache.drill.exec.proto.UserProtos.GetCatalogsReq result = buildPartial();
         if (!result.isInitialized()) {
@@ -13450,7 +12051,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetCatalogsReq buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetCatalogsReq result = new org.apache.drill.exec.proto.UserProtos.GetCatalogsReq(this);
         int from_bitField0_ = bitField0_;
@@ -13468,39 +12068,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetCatalogsReq) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetCatalogsReq)other);
@@ -13515,17 +12082,14 @@
         if (other.hasCatalogNameFilter()) {
           mergeCatalogNameFilter(other.getCatalogNameFilter());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -13535,7 +12099,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetCatalogsReq) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -13545,8 +12109,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter catalog_name_filter = 1;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> catalogNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
@@ -13559,7 +12124,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getCatalogNameFilter() {
         if (catalogNameFilterBuilder_ == null) {
-          return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+          return catalogNameFilter_;
         } else {
           return catalogNameFilterBuilder_.getMessage();
         }
@@ -13600,7 +12165,6 @@
       public Builder mergeCatalogNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (catalogNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              catalogNameFilter_ != null &&
               catalogNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             catalogNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(catalogNameFilter_).mergeFrom(value).buildPartial();
@@ -13619,7 +12183,7 @@
        */
       public Builder clearCatalogNameFilter() {
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilter_ = null;
+          catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           catalogNameFilterBuilder_.clear();
@@ -13642,83 +12206,41 @@
         if (catalogNameFilterBuilder_ != null) {
           return catalogNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return catalogNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+          return catalogNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getCatalogNameFilterFieldBuilder() {
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          catalogNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getCatalogNameFilter(),
+                  catalogNameFilter_,
                   getParentForChildren(),
                   isClean());
           catalogNameFilter_ = null;
         }
         return catalogNameFilterBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetCatalogsReq)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetCatalogsReq)
-    private static final org.apache.drill.exec.proto.UserProtos.GetCatalogsReq DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetCatalogsReq();
+      defaultInstance = new GetCatalogsReq(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetCatalogsReq getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetCatalogsReq>
-        PARSER = new com.google.protobuf.AbstractParser<GetCatalogsReq>() {
-      @java.lang.Override
-      public GetCatalogsReq parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetCatalogsReq(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetCatalogsReq> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetCatalogsReq> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetCatalogsReq getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetCatalogsReq)
   }
 
-  public interface CatalogMetadataOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.CatalogMetadata)
-      com.google.protobuf.MessageOrBuilder {
+  public interface CatalogMetadataOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string catalog_name = 1;
     /**
      * <code>optional string catalog_name = 1;</code>
      */
@@ -13733,6 +12255,7 @@
     com.google.protobuf.ByteString
         getCatalogNameBytes();
 
+    // optional string description = 2;
     /**
      * <code>optional string description = 2;</code>
      */
@@ -13747,6 +12270,7 @@
     com.google.protobuf.ByteString
         getDescriptionBytes();
 
+    // optional string connect = 3;
     /**
      * <code>optional string connect = 3;</code>
      */
@@ -13762,40 +12286,43 @@
         getConnectBytes();
   }
   /**
+   * Protobuf type {@code exec.user.CatalogMetadata}
+   *
    * <pre>
+   *
    * Message encapsulating metadata for a Catalog.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.CatalogMetadata}
    */
-  public  static final class CatalogMetadata extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.CatalogMetadata)
-      CatalogMetadataOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class CatalogMetadata extends
+      com.google.protobuf.GeneratedMessage
+      implements CatalogMetadataOrBuilder {
     // Use CatalogMetadata.newBuilder() to construct.
-    private CatalogMetadata(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private CatalogMetadata(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private CatalogMetadata() {
-      catalogName_ = "";
-      description_ = "";
-      connect_ = "";
+    private CatalogMetadata(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final CatalogMetadata defaultInstance;
+    public static CatalogMetadata getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public CatalogMetadata getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private CatalogMetadata(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -13807,29 +12334,26 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              catalogName_ = bs;
+              catalogName_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              description_ = bs;
+              description_ = input.readBytes();
               break;
             }
             case 26: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000004;
-              connect_ = bs;
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              connect_ = input.readBytes();
               break;
             }
           }
@@ -13838,7 +12362,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -13849,17 +12373,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CatalogMetadata_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CatalogMetadata_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.CatalogMetadata.class, org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<CatalogMetadata> PARSER =
+        new com.google.protobuf.AbstractParser<CatalogMetadata>() {
+      public CatalogMetadata parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new CatalogMetadata(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<CatalogMetadata> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string catalog_name = 1;
     public static final int CATALOG_NAME_FIELD_NUMBER = 1;
-    private volatile java.lang.Object catalogName_;
+    private java.lang.Object catalogName_;
     /**
      * <code>optional string catalog_name = 1;</code>
      */
@@ -13900,8 +12439,9 @@
       }
     }
 
+    // optional string description = 2;
     public static final int DESCRIPTION_FIELD_NUMBER = 2;
-    private volatile java.lang.Object description_;
+    private java.lang.Object description_;
     /**
      * <code>optional string description = 2;</code>
      */
@@ -13942,8 +12482,9 @@
       }
     }
 
+    // optional string connect = 3;
     public static final int CONNECT_FIELD_NUMBER = 3;
-    private volatile java.lang.Object connect_;
+    private java.lang.Object connect_;
     /**
      * <code>optional string connect = 3;</code>
      */
@@ -13984,117 +12525,65 @@
       }
     }
 
+    private void initFields() {
+      catalogName_ = "";
+      description_ = "";
+      connect_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, catalogName_);
+        output.writeBytes(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, description_);
+        output.writeBytes(2, getDescriptionBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, connect_);
+        output.writeBytes(3, getConnectBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, catalogName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, description_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getDescriptionBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, connect_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(3, getConnectBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.CatalogMetadata)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.CatalogMetadata other = (org.apache.drill.exec.proto.UserProtos.CatalogMetadata) obj;
-
-      boolean result = true;
-      result = result && (hasCatalogName() == other.hasCatalogName());
-      if (hasCatalogName()) {
-        result = result && getCatalogName()
-            .equals(other.getCatalogName());
-      }
-      result = result && (hasDescription() == other.hasDescription());
-      if (hasDescription()) {
-        result = result && getDescription()
-            .equals(other.getDescription());
-      }
-      result = result && (hasConnect() == other.hasConnect());
-      if (hasConnect()) {
-        result = result && getConnect()
-            .equals(other.getConnect());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasCatalogName()) {
-        hash = (37 * hash) + CATALOG_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogName().hashCode();
-      }
-      if (hasDescription()) {
-        hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER;
-        hash = (53 * hash) + getDescription().hashCode();
-      }
-      if (hasConnect()) {
-        hash = (37 * hash) + CONNECT_FIELD_NUMBER;
-        hash = (53 * hash) + getConnect().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -14118,80 +12607,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.CatalogMetadata prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.CatalogMetadata}
+     *
      * <pre>
+     *
      * Message encapsulating metadata for a Catalog.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.CatalogMetadata}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.CatalogMetadata)
-        org.apache.drill.exec.proto.UserProtos.CatalogMetadataOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.CatalogMetadataOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CatalogMetadata_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CatalogMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -14204,16 +12679,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         catalogName_ = "";
@@ -14225,18 +12702,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CatalogMetadata_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.CatalogMetadata getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.CatalogMetadata.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.CatalogMetadata build() {
         org.apache.drill.exec.proto.UserProtos.CatalogMetadata result = buildPartial();
         if (!result.isInitialized()) {
@@ -14245,7 +12723,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.CatalogMetadata buildPartial() {
         org.apache.drill.exec.proto.UserProtos.CatalogMetadata result = new org.apache.drill.exec.proto.UserProtos.CatalogMetadata(this);
         int from_bitField0_ = bitField0_;
@@ -14267,39 +12744,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.CatalogMetadata) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.CatalogMetadata)other);
@@ -14326,17 +12770,14 @@
           connect_ = other.connect_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -14346,7 +12787,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.CatalogMetadata) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -14356,6 +12797,7 @@
       }
       private int bitField0_;
 
+      // optional string catalog_name = 1;
       private java.lang.Object catalogName_ = "";
       /**
        * <code>optional string catalog_name = 1;</code>
@@ -14369,12 +12811,9 @@
       public java.lang.String getCatalogName() {
         java.lang.Object ref = catalogName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            catalogName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          catalogName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -14432,6 +12871,7 @@
         return this;
       }
 
+      // optional string description = 2;
       private java.lang.Object description_ = "";
       /**
        * <code>optional string description = 2;</code>
@@ -14445,12 +12885,9 @@
       public java.lang.String getDescription() {
         java.lang.Object ref = description_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            description_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          description_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -14508,6 +12945,7 @@
         return this;
       }
 
+      // optional string connect = 3;
       private java.lang.Object connect_ = "";
       /**
        * <code>optional string connect = 3;</code>
@@ -14521,12 +12959,9 @@
       public java.lang.String getConnect() {
         java.lang.Object ref = connect_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            connect_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          connect_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -14583,63 +13018,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.CatalogMetadata)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.CatalogMetadata)
-    private static final org.apache.drill.exec.proto.UserProtos.CatalogMetadata DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.CatalogMetadata();
+      defaultInstance = new CatalogMetadata(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.CatalogMetadata getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<CatalogMetadata>
-        PARSER = new com.google.protobuf.AbstractParser<CatalogMetadata>() {
-      @java.lang.Override
-      public CatalogMetadata parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new CatalogMetadata(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<CatalogMetadata> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<CatalogMetadata> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.CatalogMetadata getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.CatalogMetadata)
   }
 
-  public interface GetCatalogsRespOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetCatalogsResp)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetCatalogsRespOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.RequestStatus status = 1;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -14649,6 +13043,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus();
 
+    // repeated .exec.user.CatalogMetadata catalogs = 2;
     /**
      * <code>repeated .exec.user.CatalogMetadata catalogs = 2;</code>
      */
@@ -14673,6 +13068,7 @@
     org.apache.drill.exec.proto.UserProtos.CatalogMetadataOrBuilder getCatalogsOrBuilder(
         int index);
 
+    // optional .exec.shared.DrillPBError error = 3;
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
@@ -14687,39 +13083,43 @@
     org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.GetCatalogsResp}
+   *
    * <pre>
+   *
    * Response message for GetCatalogReq.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetCatalogsResp}
    */
-  public  static final class GetCatalogsResp extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetCatalogsResp)
-      GetCatalogsRespOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetCatalogsResp extends
+      com.google.protobuf.GeneratedMessage
+      implements GetCatalogsRespOrBuilder {
     // Use GetCatalogsResp.newBuilder() to construct.
-    private GetCatalogsResp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetCatalogsResp(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetCatalogsResp() {
-      status_ = 0;
-      catalogs_ = java.util.Collections.emptyList();
+    private GetCatalogsResp(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetCatalogsResp defaultInstance;
+    public static GetCatalogsResp getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetCatalogsResp getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetCatalogsResp(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -14731,15 +13131,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.RequestStatus value = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                status_ = rawValue;
+                status_ = value;
               }
               break;
             }
@@ -14748,8 +13154,7 @@
                 catalogs_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.CatalogMetadata>();
                 mutable_bitField0_ |= 0x00000002;
               }
-              catalogs_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserProtos.CatalogMetadata.PARSER, extensionRegistry));
+              catalogs_.add(input.readMessage(org.apache.drill.exec.proto.UserProtos.CatalogMetadata.PARSER, extensionRegistry));
               break;
             }
             case 26: {
@@ -14765,20 +13170,13 @@
               bitField0_ |= 0x00000002;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
           catalogs_ = java.util.Collections.unmodifiableList(catalogs_);
@@ -14792,17 +13190,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsResp_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsResp_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.class, org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetCatalogsResp> PARSER =
+        new com.google.protobuf.AbstractParser<GetCatalogsResp>() {
+      public GetCatalogsResp parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetCatalogsResp(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetCatalogsResp> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.RequestStatus status = 1;
     public static final int STATUS_FIELD_NUMBER = 1;
-    private int status_;
+    private org.apache.drill.exec.proto.UserProtos.RequestStatus status_;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -14813,11 +13226,10 @@
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+      return status_;
     }
 
+    // repeated .exec.user.CatalogMetadata catalogs = 2;
     public static final int CATALOGS_FIELD_NUMBER = 2;
     private java.util.List<org.apache.drill.exec.proto.UserProtos.CatalogMetadata> catalogs_;
     /**
@@ -14853,6 +13265,7 @@
       return catalogs_.get(index);
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
     public static final int ERROR_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_;
     /**
@@ -14865,50 +13278,53 @@
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
 
+    private void initFields() {
+      status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
+      catalogs_ = java.util.Collections.emptyList();
+      error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, status_);
+        output.writeEnum(1, status_.getNumber());
       }
       for (int i = 0; i < catalogs_.size(); i++) {
         output.writeMessage(2, catalogs_.get(i));
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(3, getError());
+        output.writeMessage(3, error_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, status_);
+          .computeEnumSize(1, status_.getNumber());
       }
       for (int i = 0; i < catalogs_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
@@ -14916,74 +13332,20 @@
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getError());
+          .computeMessageSize(3, error_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetCatalogsResp)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetCatalogsResp other = (org.apache.drill.exec.proto.UserProtos.GetCatalogsResp) obj;
-
-      boolean result = true;
-      result = result && (hasStatus() == other.hasStatus());
-      if (hasStatus()) {
-        result = result && status_ == other.status_;
-      }
-      result = result && getCatalogsList()
-          .equals(other.getCatalogsList());
-      result = result && (hasError() == other.hasError());
-      if (hasError()) {
-        result = result && getError()
-            .equals(other.getError());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasStatus()) {
-        hash = (37 * hash) + STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + status_;
-      }
-      if (getCatalogsCount() > 0) {
-        hash = (37 * hash) + CATALOGS_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogsList().hashCode();
-      }
-      if (hasError()) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getError().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -15007,80 +13369,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetCatalogsResp prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetCatalogsResp}
+     *
      * <pre>
+     *
      * Response message for GetCatalogReq.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetCatalogsResp}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetCatalogsResp)
-        org.apache.drill.exec.proto.UserProtos.GetCatalogsRespOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetCatalogsRespOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsResp_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsResp_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -15093,21 +13441,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getCatalogsFieldBuilder();
           getErrorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         bitField0_ = (bitField0_ & ~0x00000001);
         if (catalogsBuilder_ == null) {
           catalogs_ = java.util.Collections.emptyList();
@@ -15116,7 +13466,7 @@
           catalogsBuilder_.clear();
         }
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
         } else {
           errorBuilder_.clear();
         }
@@ -15124,18 +13474,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetCatalogsResp_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetCatalogsResp getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetCatalogsResp.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetCatalogsResp build() {
         org.apache.drill.exec.proto.UserProtos.GetCatalogsResp result = buildPartial();
         if (!result.isInitialized()) {
@@ -15144,7 +13495,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetCatalogsResp buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetCatalogsResp result = new org.apache.drill.exec.proto.UserProtos.GetCatalogsResp(this);
         int from_bitField0_ = bitField0_;
@@ -15175,39 +13525,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetCatalogsResp) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetCatalogsResp)other);
@@ -15241,7 +13558,7 @@
               catalogs_ = other.catalogs_;
               bitField0_ = (bitField0_ & ~0x00000002);
               catalogsBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getCatalogsFieldBuilder() : null;
             } else {
               catalogsBuilder_.addAllMessages(other.catalogs_);
@@ -15251,17 +13568,14 @@
         if (other.hasError()) {
           mergeError(other.getError());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -15271,7 +13585,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetCatalogsResp) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -15281,7 +13595,8 @@
       }
       private int bitField0_;
 
-      private int status_ = 0;
+      // optional .exec.user.RequestStatus status = 1;
+      private org.apache.drill.exec.proto.UserProtos.RequestStatus status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
@@ -15292,9 +13607,7 @@
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+        return status_;
       }
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
@@ -15304,7 +13617,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        status_ = value.getNumber();
+        status_ = value;
         onChanged();
         return this;
       }
@@ -15313,11 +13626,12 @@
        */
       public Builder clearStatus() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         onChanged();
         return this;
       }
 
+      // repeated .exec.user.CatalogMetadata catalogs = 2;
       private java.util.List<org.apache.drill.exec.proto.UserProtos.CatalogMetadata> catalogs_ =
         java.util.Collections.emptyList();
       private void ensureCatalogsIsMutable() {
@@ -15327,7 +13641,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.CatalogMetadata, org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder, org.apache.drill.exec.proto.UserProtos.CatalogMetadataOrBuilder> catalogsBuilder_;
 
       /**
@@ -15459,8 +13773,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.CatalogMetadata> values) {
         if (catalogsBuilder_ == null) {
           ensureCatalogsIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, catalogs_);
+          super.addAll(values, catalogs_);
           onChanged();
         } else {
           catalogsBuilder_.addAllMessages(values);
@@ -15543,11 +13856,11 @@
            getCatalogsBuilderList() {
         return getCatalogsFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.CatalogMetadata, org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder, org.apache.drill.exec.proto.UserProtos.CatalogMetadataOrBuilder> 
           getCatalogsFieldBuilder() {
         if (catalogsBuilder_ == null) {
-          catalogsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          catalogsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.CatalogMetadata, org.apache.drill.exec.proto.UserProtos.CatalogMetadata.Builder, org.apache.drill.exec.proto.UserProtos.CatalogMetadataOrBuilder>(
                   catalogs_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -15558,8 +13871,9 @@
         return catalogsBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.DrillPBError error = 3;
+      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> errorBuilder_;
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
@@ -15572,7 +13886,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
         if (errorBuilder_ == null) {
-          return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         } else {
           return errorBuilder_.getMessage();
         }
@@ -15613,7 +13927,6 @@
       public Builder mergeError(org.apache.drill.exec.proto.UserBitShared.DrillPBError value) {
         if (errorBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              error_ != null &&
               error_ != org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance()) {
             error_ =
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(error_).mergeFrom(value).buildPartial();
@@ -15632,7 +13945,7 @@
        */
       public Builder clearError() {
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
           onChanged();
         } else {
           errorBuilder_.clear();
@@ -15655,83 +13968,41 @@
         if (errorBuilder_ != null) {
           return errorBuilder_.getMessageOrBuilder();
         } else {
-          return error_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         }
       }
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> 
           getErrorFieldBuilder() {
         if (errorBuilder_ == null) {
-          errorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          errorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder>(
-                  getError(),
+                  error_,
                   getParentForChildren(),
                   isClean());
           error_ = null;
         }
         return errorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetCatalogsResp)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetCatalogsResp)
-    private static final org.apache.drill.exec.proto.UserProtos.GetCatalogsResp DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetCatalogsResp();
+      defaultInstance = new GetCatalogsResp(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetCatalogsResp getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetCatalogsResp>
-        PARSER = new com.google.protobuf.AbstractParser<GetCatalogsResp>() {
-      @java.lang.Override
-      public GetCatalogsResp parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetCatalogsResp(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetCatalogsResp> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetCatalogsResp> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetCatalogsResp getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetCatalogsResp)
   }
 
-  public interface GetSchemasReqOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetSchemasReq)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetSchemasReqOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.LikeFilter catalog_name_filter = 1;
     /**
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
@@ -15745,6 +14016,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getCatalogNameFilterOrBuilder();
 
+    // optional .exec.user.LikeFilter schema_name_filter = 2;
     /**
      * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
      */
@@ -15759,37 +14031,43 @@
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getSchemaNameFilterOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.GetSchemasReq}
+   *
    * <pre>
+   *
    * Request message for getting the metadata for schemas satisfying the given optional filters.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetSchemasReq}
    */
-  public  static final class GetSchemasReq extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetSchemasReq)
-      GetSchemasReqOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetSchemasReq extends
+      com.google.protobuf.GeneratedMessage
+      implements GetSchemasReqOrBuilder {
     // Use GetSchemasReq.newBuilder() to construct.
-    private GetSchemasReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetSchemasReq(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetSchemasReq() {
+    private GetSchemasReq(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetSchemasReq defaultInstance;
+    public static GetSchemasReq getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetSchemasReq getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetSchemasReq(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -15801,6 +14079,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -15827,20 +14112,13 @@
               bitField0_ |= 0x00000002;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -15851,15 +14129,30 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasReq_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasReq_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetSchemasReq.class, org.apache.drill.exec.proto.UserProtos.GetSchemasReq.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetSchemasReq> PARSER =
+        new com.google.protobuf.AbstractParser<GetSchemasReq>() {
+      public GetSchemasReq parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetSchemasReq(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetSchemasReq> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.LikeFilter catalog_name_filter = 1;
     public static final int CATALOG_NAME_FILTER_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_;
     /**
@@ -15872,15 +14165,16 @@
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getCatalogNameFilter() {
-      return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+      return catalogNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getCatalogNameFilterOrBuilder() {
-      return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+      return catalogNameFilter_;
     }
 
+    // optional .exec.user.LikeFilter schema_name_filter = 2;
     public static final int SCHEMA_NAME_FILTER_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter schemaNameFilter_;
     /**
@@ -15893,113 +14187,66 @@
      * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getSchemaNameFilter() {
-      return schemaNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+      return schemaNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getSchemaNameFilterOrBuilder() {
-      return schemaNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+      return schemaNameFilter_;
     }
 
+    private void initFields() {
+      catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getCatalogNameFilter());
+        output.writeMessage(1, catalogNameFilter_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getSchemaNameFilter());
+        output.writeMessage(2, schemaNameFilter_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getCatalogNameFilter());
+          .computeMessageSize(1, catalogNameFilter_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getSchemaNameFilter());
+          .computeMessageSize(2, schemaNameFilter_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetSchemasReq)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetSchemasReq other = (org.apache.drill.exec.proto.UserProtos.GetSchemasReq) obj;
-
-      boolean result = true;
-      result = result && (hasCatalogNameFilter() == other.hasCatalogNameFilter());
-      if (hasCatalogNameFilter()) {
-        result = result && getCatalogNameFilter()
-            .equals(other.getCatalogNameFilter());
-      }
-      result = result && (hasSchemaNameFilter() == other.hasSchemaNameFilter());
-      if (hasSchemaNameFilter()) {
-        result = result && getSchemaNameFilter()
-            .equals(other.getSchemaNameFilter());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasCatalogNameFilter()) {
-        hash = (37 * hash) + CATALOG_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogNameFilter().hashCode();
-      }
-      if (hasSchemaNameFilter()) {
-        hash = (37 * hash) + SCHEMA_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getSchemaNameFilter().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -16023,80 +14270,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetSchemasReq prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetSchemasReq}
+     *
      * <pre>
+     *
      * Request message for getting the metadata for schemas satisfying the given optional filters.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetSchemasReq}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetSchemasReq)
-        org.apache.drill.exec.proto.UserProtos.GetSchemasReqOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetSchemasReqOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasReq_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasReq_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -16109,28 +14342,30 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getCatalogNameFilterFieldBuilder();
           getSchemaNameFilterFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilter_ = null;
+          catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           catalogNameFilterBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000001);
         if (schemaNameFilterBuilder_ == null) {
-          schemaNameFilter_ = null;
+          schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           schemaNameFilterBuilder_.clear();
         }
@@ -16138,18 +14373,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasReq_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetSchemasReq getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetSchemasReq.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetSchemasReq build() {
         org.apache.drill.exec.proto.UserProtos.GetSchemasReq result = buildPartial();
         if (!result.isInitialized()) {
@@ -16158,7 +14394,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetSchemasReq buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetSchemasReq result = new org.apache.drill.exec.proto.UserProtos.GetSchemasReq(this);
         int from_bitField0_ = bitField0_;
@@ -16184,39 +14419,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetSchemasReq) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetSchemasReq)other);
@@ -16234,17 +14436,14 @@
         if (other.hasSchemaNameFilter()) {
           mergeSchemaNameFilter(other.getSchemaNameFilter());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -16254,7 +14453,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetSchemasReq) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -16264,8 +14463,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter catalog_name_filter = 1;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> catalogNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
@@ -16278,7 +14478,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getCatalogNameFilter() {
         if (catalogNameFilterBuilder_ == null) {
-          return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+          return catalogNameFilter_;
         } else {
           return catalogNameFilterBuilder_.getMessage();
         }
@@ -16319,7 +14519,6 @@
       public Builder mergeCatalogNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (catalogNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              catalogNameFilter_ != null &&
               catalogNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             catalogNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(catalogNameFilter_).mergeFrom(value).buildPartial();
@@ -16338,7 +14537,7 @@
        */
       public Builder clearCatalogNameFilter() {
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilter_ = null;
+          catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           catalogNameFilterBuilder_.clear();
@@ -16361,20 +14560,19 @@
         if (catalogNameFilterBuilder_ != null) {
           return catalogNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return catalogNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+          return catalogNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getCatalogNameFilterFieldBuilder() {
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          catalogNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getCatalogNameFilter(),
+                  catalogNameFilter_,
                   getParentForChildren(),
                   isClean());
           catalogNameFilter_ = null;
@@ -16382,8 +14580,9 @@
         return catalogNameFilterBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter schemaNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter schema_name_filter = 2;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> schemaNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
@@ -16396,7 +14595,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getSchemaNameFilter() {
         if (schemaNameFilterBuilder_ == null) {
-          return schemaNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+          return schemaNameFilter_;
         } else {
           return schemaNameFilterBuilder_.getMessage();
         }
@@ -16437,7 +14636,6 @@
       public Builder mergeSchemaNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (schemaNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              schemaNameFilter_ != null &&
               schemaNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             schemaNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(schemaNameFilter_).mergeFrom(value).buildPartial();
@@ -16456,7 +14654,7 @@
        */
       public Builder clearSchemaNameFilter() {
         if (schemaNameFilterBuilder_ == null) {
-          schemaNameFilter_ = null;
+          schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           schemaNameFilterBuilder_.clear();
@@ -16479,83 +14677,41 @@
         if (schemaNameFilterBuilder_ != null) {
           return schemaNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return schemaNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+          return schemaNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getSchemaNameFilterFieldBuilder() {
         if (schemaNameFilterBuilder_ == null) {
-          schemaNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          schemaNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getSchemaNameFilter(),
+                  schemaNameFilter_,
                   getParentForChildren(),
                   isClean());
           schemaNameFilter_ = null;
         }
         return schemaNameFilterBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetSchemasReq)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetSchemasReq)
-    private static final org.apache.drill.exec.proto.UserProtos.GetSchemasReq DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetSchemasReq();
+      defaultInstance = new GetSchemasReq(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetSchemasReq getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetSchemasReq>
-        PARSER = new com.google.protobuf.AbstractParser<GetSchemasReq>() {
-      @java.lang.Override
-      public GetSchemasReq parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetSchemasReq(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetSchemasReq> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetSchemasReq> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetSchemasReq getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetSchemasReq)
   }
 
-  public interface SchemaMetadataOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.SchemaMetadata)
-      com.google.protobuf.MessageOrBuilder {
+  public interface SchemaMetadataOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string catalog_name = 1;
     /**
      * <code>optional string catalog_name = 1;</code>
      */
@@ -16570,6 +14726,7 @@
     com.google.protobuf.ByteString
         getCatalogNameBytes();
 
+    // optional string schema_name = 2;
     /**
      * <code>optional string schema_name = 2;</code>
      */
@@ -16584,6 +14741,7 @@
     com.google.protobuf.ByteString
         getSchemaNameBytes();
 
+    // optional string owner = 3;
     /**
      * <code>optional string owner = 3;</code>
      */
@@ -16598,32 +14756,34 @@
     com.google.protobuf.ByteString
         getOwnerBytes();
 
+    // optional string type = 4;
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "file", "mongodb", "hive" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     boolean hasType();
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "file", "mongodb", "hive" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     java.lang.String getType();
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "file", "mongodb", "hive" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     com.google.protobuf.ByteString
         getTypeBytes();
 
+    // optional string mutable = 5;
     /**
      * <code>optional string mutable = 5;</code>
      */
@@ -16639,42 +14799,43 @@
         getMutableBytes();
   }
   /**
+   * Protobuf type {@code exec.user.SchemaMetadata}
+   *
    * <pre>
+   *
    * Message encapsulating metadata for a Schema.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.SchemaMetadata}
    */
-  public  static final class SchemaMetadata extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.SchemaMetadata)
-      SchemaMetadataOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class SchemaMetadata extends
+      com.google.protobuf.GeneratedMessage
+      implements SchemaMetadataOrBuilder {
     // Use SchemaMetadata.newBuilder() to construct.
-    private SchemaMetadata(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private SchemaMetadata(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private SchemaMetadata() {
-      catalogName_ = "";
-      schemaName_ = "";
-      owner_ = "";
-      type_ = "";
-      mutable_ = "";
+    private SchemaMetadata(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final SchemaMetadata defaultInstance;
+    public static SchemaMetadata getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public SchemaMetadata getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private SchemaMetadata(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -16686,41 +14847,36 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              catalogName_ = bs;
+              catalogName_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              schemaName_ = bs;
+              schemaName_ = input.readBytes();
               break;
             }
             case 26: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000004;
-              owner_ = bs;
+              owner_ = input.readBytes();
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              type_ = bs;
+              type_ = input.readBytes();
               break;
             }
             case 42: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000010;
-              mutable_ = bs;
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              mutable_ = input.readBytes();
               break;
             }
           }
@@ -16729,7 +14885,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -16740,17 +14896,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_SchemaMetadata_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_SchemaMetadata_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.SchemaMetadata.class, org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<SchemaMetadata> PARSER =
+        new com.google.protobuf.AbstractParser<SchemaMetadata>() {
+      public SchemaMetadata parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new SchemaMetadata(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<SchemaMetadata> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string catalog_name = 1;
     public static final int CATALOG_NAME_FIELD_NUMBER = 1;
-    private volatile java.lang.Object catalogName_;
+    private java.lang.Object catalogName_;
     /**
      * <code>optional string catalog_name = 1;</code>
      */
@@ -16791,8 +14962,9 @@
       }
     }
 
+    // optional string schema_name = 2;
     public static final int SCHEMA_NAME_FIELD_NUMBER = 2;
-    private volatile java.lang.Object schemaName_;
+    private java.lang.Object schemaName_;
     /**
      * <code>optional string schema_name = 2;</code>
      */
@@ -16833,8 +15005,9 @@
       }
     }
 
+    // optional string owner = 3;
     public static final int OWNER_FIELD_NUMBER = 3;
-    private volatile java.lang.Object owner_;
+    private java.lang.Object owner_;
     /**
      * <code>optional string owner = 3;</code>
      */
@@ -16875,24 +15048,25 @@
       }
     }
 
+    // optional string type = 4;
     public static final int TYPE_FIELD_NUMBER = 4;
-    private volatile java.lang.Object type_;
+    private java.lang.Object type_;
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "file", "mongodb", "hive" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     public boolean hasType() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "file", "mongodb", "hive" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     public java.lang.String getType() {
       java.lang.Object ref = type_;
@@ -16909,11 +15083,11 @@
       }
     }
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "file", "mongodb", "hive" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     public com.google.protobuf.ByteString
         getTypeBytes() {
@@ -16929,8 +15103,9 @@
       }
     }
 
+    // optional string mutable = 5;
     public static final int MUTABLE_FIELD_NUMBER = 5;
-    private volatile java.lang.Object mutable_;
+    private java.lang.Object mutable_;
     /**
      * <code>optional string mutable = 5;</code>
      */
@@ -16971,147 +15146,81 @@
       }
     }
 
+    private void initFields() {
+      catalogName_ = "";
+      schemaName_ = "";
+      owner_ = "";
+      type_ = "";
+      mutable_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, catalogName_);
+        output.writeBytes(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, schemaName_);
+        output.writeBytes(2, getSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, owner_);
+        output.writeBytes(3, getOwnerBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, type_);
+        output.writeBytes(4, getTypeBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, mutable_);
+        output.writeBytes(5, getMutableBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, catalogName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, schemaName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, owner_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(3, getOwnerBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, type_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getTypeBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, mutable_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(5, getMutableBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.SchemaMetadata)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.SchemaMetadata other = (org.apache.drill.exec.proto.UserProtos.SchemaMetadata) obj;
-
-      boolean result = true;
-      result = result && (hasCatalogName() == other.hasCatalogName());
-      if (hasCatalogName()) {
-        result = result && getCatalogName()
-            .equals(other.getCatalogName());
-      }
-      result = result && (hasSchemaName() == other.hasSchemaName());
-      if (hasSchemaName()) {
-        result = result && getSchemaName()
-            .equals(other.getSchemaName());
-      }
-      result = result && (hasOwner() == other.hasOwner());
-      if (hasOwner()) {
-        result = result && getOwner()
-            .equals(other.getOwner());
-      }
-      result = result && (hasType() == other.hasType());
-      if (hasType()) {
-        result = result && getType()
-            .equals(other.getType());
-      }
-      result = result && (hasMutable() == other.hasMutable());
-      if (hasMutable()) {
-        result = result && getMutable()
-            .equals(other.getMutable());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasCatalogName()) {
-        hash = (37 * hash) + CATALOG_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogName().hashCode();
-      }
-      if (hasSchemaName()) {
-        hash = (37 * hash) + SCHEMA_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getSchemaName().hashCode();
-      }
-      if (hasOwner()) {
-        hash = (37 * hash) + OWNER_FIELD_NUMBER;
-        hash = (53 * hash) + getOwner().hashCode();
-      }
-      if (hasType()) {
-        hash = (37 * hash) + TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + getType().hashCode();
-      }
-      if (hasMutable()) {
-        hash = (37 * hash) + MUTABLE_FIELD_NUMBER;
-        hash = (53 * hash) + getMutable().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -17135,80 +15244,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.SchemaMetadata prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.SchemaMetadata}
+     *
      * <pre>
+     *
      * Message encapsulating metadata for a Schema.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.SchemaMetadata}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.SchemaMetadata)
-        org.apache.drill.exec.proto.UserProtos.SchemaMetadataOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.SchemaMetadataOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_SchemaMetadata_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_SchemaMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -17221,16 +15316,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         catalogName_ = "";
@@ -17246,18 +15343,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_SchemaMetadata_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.SchemaMetadata getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.SchemaMetadata.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.SchemaMetadata build() {
         org.apache.drill.exec.proto.UserProtos.SchemaMetadata result = buildPartial();
         if (!result.isInitialized()) {
@@ -17266,7 +15364,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.SchemaMetadata buildPartial() {
         org.apache.drill.exec.proto.UserProtos.SchemaMetadata result = new org.apache.drill.exec.proto.UserProtos.SchemaMetadata(this);
         int from_bitField0_ = bitField0_;
@@ -17296,39 +15393,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.SchemaMetadata) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.SchemaMetadata)other);
@@ -17365,17 +15429,14 @@
           mutable_ = other.mutable_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -17385,7 +15446,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.SchemaMetadata) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -17395,6 +15456,7 @@
       }
       private int bitField0_;
 
+      // optional string catalog_name = 1;
       private java.lang.Object catalogName_ = "";
       /**
        * <code>optional string catalog_name = 1;</code>
@@ -17408,12 +15470,9 @@
       public java.lang.String getCatalogName() {
         java.lang.Object ref = catalogName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            catalogName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          catalogName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -17471,6 +15530,7 @@
         return this;
       }
 
+      // optional string schema_name = 2;
       private java.lang.Object schemaName_ = "";
       /**
        * <code>optional string schema_name = 2;</code>
@@ -17484,12 +15544,9 @@
       public java.lang.String getSchemaName() {
         java.lang.Object ref = schemaName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            schemaName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          schemaName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -17547,6 +15604,7 @@
         return this;
       }
 
+      // optional string owner = 3;
       private java.lang.Object owner_ = "";
       /**
        * <code>optional string owner = 3;</code>
@@ -17560,12 +15618,9 @@
       public java.lang.String getOwner() {
         java.lang.Object ref = owner_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            owner_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          owner_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -17623,44 +15678,42 @@
         return this;
       }
 
+      // optional string type = 4;
       private java.lang.Object type_ = "";
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "file", "mongodb", "hive" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public boolean hasType() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "file", "mongodb", "hive" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public java.lang.String getType() {
         java.lang.Object ref = type_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            type_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          type_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "file", "mongodb", "hive" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public com.google.protobuf.ByteString
           getTypeBytes() {
@@ -17676,11 +15729,11 @@
         }
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "file", "mongodb", "hive" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public Builder setType(
           java.lang.String value) {
@@ -17693,11 +15746,11 @@
         return this;
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "file", "mongodb", "hive" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public Builder clearType() {
         bitField0_ = (bitField0_ & ~0x00000008);
@@ -17706,11 +15759,11 @@
         return this;
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "file", "mongodb", "hive" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public Builder setTypeBytes(
           com.google.protobuf.ByteString value) {
@@ -17723,6 +15776,7 @@
         return this;
       }
 
+      // optional string mutable = 5;
       private java.lang.Object mutable_ = "";
       /**
        * <code>optional string mutable = 5;</code>
@@ -17736,12 +15790,9 @@
       public java.lang.String getMutable() {
         java.lang.Object ref = mutable_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            mutable_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          mutable_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -17798,63 +15849,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.SchemaMetadata)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.SchemaMetadata)
-    private static final org.apache.drill.exec.proto.UserProtos.SchemaMetadata DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.SchemaMetadata();
+      defaultInstance = new SchemaMetadata(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.SchemaMetadata getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<SchemaMetadata>
-        PARSER = new com.google.protobuf.AbstractParser<SchemaMetadata>() {
-      @java.lang.Override
-      public SchemaMetadata parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new SchemaMetadata(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<SchemaMetadata> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<SchemaMetadata> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.SchemaMetadata getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.SchemaMetadata)
   }
 
-  public interface GetSchemasRespOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetSchemasResp)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetSchemasRespOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.RequestStatus status = 1;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -17864,6 +15874,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus();
 
+    // repeated .exec.user.SchemaMetadata schemas = 2;
     /**
      * <code>repeated .exec.user.SchemaMetadata schemas = 2;</code>
      */
@@ -17888,6 +15899,7 @@
     org.apache.drill.exec.proto.UserProtos.SchemaMetadataOrBuilder getSchemasOrBuilder(
         int index);
 
+    // optional .exec.shared.DrillPBError error = 3;
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
@@ -17902,39 +15914,43 @@
     org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.GetSchemasResp}
+   *
    * <pre>
+   *
    * Response message for GetSchemasReq.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetSchemasResp}
    */
-  public  static final class GetSchemasResp extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetSchemasResp)
-      GetSchemasRespOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetSchemasResp extends
+      com.google.protobuf.GeneratedMessage
+      implements GetSchemasRespOrBuilder {
     // Use GetSchemasResp.newBuilder() to construct.
-    private GetSchemasResp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetSchemasResp(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetSchemasResp() {
-      status_ = 0;
-      schemas_ = java.util.Collections.emptyList();
+    private GetSchemasResp(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetSchemasResp defaultInstance;
+    public static GetSchemasResp getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetSchemasResp getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetSchemasResp(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -17946,15 +15962,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.RequestStatus value = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                status_ = rawValue;
+                status_ = value;
               }
               break;
             }
@@ -17963,8 +15985,7 @@
                 schemas_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.SchemaMetadata>();
                 mutable_bitField0_ |= 0x00000002;
               }
-              schemas_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserProtos.SchemaMetadata.PARSER, extensionRegistry));
+              schemas_.add(input.readMessage(org.apache.drill.exec.proto.UserProtos.SchemaMetadata.PARSER, extensionRegistry));
               break;
             }
             case 26: {
@@ -17980,20 +16001,13 @@
               bitField0_ |= 0x00000002;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
           schemas_ = java.util.Collections.unmodifiableList(schemas_);
@@ -18007,17 +16021,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasResp_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasResp_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetSchemasResp.class, org.apache.drill.exec.proto.UserProtos.GetSchemasResp.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetSchemasResp> PARSER =
+        new com.google.protobuf.AbstractParser<GetSchemasResp>() {
+      public GetSchemasResp parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetSchemasResp(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetSchemasResp> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.RequestStatus status = 1;
     public static final int STATUS_FIELD_NUMBER = 1;
-    private int status_;
+    private org.apache.drill.exec.proto.UserProtos.RequestStatus status_;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -18028,11 +16057,10 @@
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+      return status_;
     }
 
+    // repeated .exec.user.SchemaMetadata schemas = 2;
     public static final int SCHEMAS_FIELD_NUMBER = 2;
     private java.util.List<org.apache.drill.exec.proto.UserProtos.SchemaMetadata> schemas_;
     /**
@@ -18068,6 +16096,7 @@
       return schemas_.get(index);
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
     public static final int ERROR_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_;
     /**
@@ -18080,50 +16109,53 @@
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
 
+    private void initFields() {
+      status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
+      schemas_ = java.util.Collections.emptyList();
+      error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, status_);
+        output.writeEnum(1, status_.getNumber());
       }
       for (int i = 0; i < schemas_.size(); i++) {
         output.writeMessage(2, schemas_.get(i));
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(3, getError());
+        output.writeMessage(3, error_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, status_);
+          .computeEnumSize(1, status_.getNumber());
       }
       for (int i = 0; i < schemas_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
@@ -18131,74 +16163,20 @@
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getError());
+          .computeMessageSize(3, error_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetSchemasResp)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetSchemasResp other = (org.apache.drill.exec.proto.UserProtos.GetSchemasResp) obj;
-
-      boolean result = true;
-      result = result && (hasStatus() == other.hasStatus());
-      if (hasStatus()) {
-        result = result && status_ == other.status_;
-      }
-      result = result && getSchemasList()
-          .equals(other.getSchemasList());
-      result = result && (hasError() == other.hasError());
-      if (hasError()) {
-        result = result && getError()
-            .equals(other.getError());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasStatus()) {
-        hash = (37 * hash) + STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + status_;
-      }
-      if (getSchemasCount() > 0) {
-        hash = (37 * hash) + SCHEMAS_FIELD_NUMBER;
-        hash = (53 * hash) + getSchemasList().hashCode();
-      }
-      if (hasError()) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getError().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -18222,80 +16200,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetSchemasResp prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetSchemasResp}
+     *
      * <pre>
+     *
      * Response message for GetSchemasReq.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetSchemasResp}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetSchemasResp)
-        org.apache.drill.exec.proto.UserProtos.GetSchemasRespOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetSchemasRespOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasResp_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasResp_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -18308,21 +16272,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getSchemasFieldBuilder();
           getErrorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         bitField0_ = (bitField0_ & ~0x00000001);
         if (schemasBuilder_ == null) {
           schemas_ = java.util.Collections.emptyList();
@@ -18331,7 +16297,7 @@
           schemasBuilder_.clear();
         }
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
         } else {
           errorBuilder_.clear();
         }
@@ -18339,18 +16305,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetSchemasResp_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetSchemasResp getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetSchemasResp.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetSchemasResp build() {
         org.apache.drill.exec.proto.UserProtos.GetSchemasResp result = buildPartial();
         if (!result.isInitialized()) {
@@ -18359,7 +16326,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetSchemasResp buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetSchemasResp result = new org.apache.drill.exec.proto.UserProtos.GetSchemasResp(this);
         int from_bitField0_ = bitField0_;
@@ -18390,39 +16356,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetSchemasResp) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetSchemasResp)other);
@@ -18456,7 +16389,7 @@
               schemas_ = other.schemas_;
               bitField0_ = (bitField0_ & ~0x00000002);
               schemasBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getSchemasFieldBuilder() : null;
             } else {
               schemasBuilder_.addAllMessages(other.schemas_);
@@ -18466,17 +16399,14 @@
         if (other.hasError()) {
           mergeError(other.getError());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -18486,7 +16416,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetSchemasResp) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -18496,7 +16426,8 @@
       }
       private int bitField0_;
 
-      private int status_ = 0;
+      // optional .exec.user.RequestStatus status = 1;
+      private org.apache.drill.exec.proto.UserProtos.RequestStatus status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
@@ -18507,9 +16438,7 @@
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+        return status_;
       }
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
@@ -18519,7 +16448,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        status_ = value.getNumber();
+        status_ = value;
         onChanged();
         return this;
       }
@@ -18528,11 +16457,12 @@
        */
       public Builder clearStatus() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         onChanged();
         return this;
       }
 
+      // repeated .exec.user.SchemaMetadata schemas = 2;
       private java.util.List<org.apache.drill.exec.proto.UserProtos.SchemaMetadata> schemas_ =
         java.util.Collections.emptyList();
       private void ensureSchemasIsMutable() {
@@ -18542,7 +16472,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.SchemaMetadata, org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder, org.apache.drill.exec.proto.UserProtos.SchemaMetadataOrBuilder> schemasBuilder_;
 
       /**
@@ -18674,8 +16604,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.SchemaMetadata> values) {
         if (schemasBuilder_ == null) {
           ensureSchemasIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, schemas_);
+          super.addAll(values, schemas_);
           onChanged();
         } else {
           schemasBuilder_.addAllMessages(values);
@@ -18758,11 +16687,11 @@
            getSchemasBuilderList() {
         return getSchemasFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.SchemaMetadata, org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder, org.apache.drill.exec.proto.UserProtos.SchemaMetadataOrBuilder> 
           getSchemasFieldBuilder() {
         if (schemasBuilder_ == null) {
-          schemasBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          schemasBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.SchemaMetadata, org.apache.drill.exec.proto.UserProtos.SchemaMetadata.Builder, org.apache.drill.exec.proto.UserProtos.SchemaMetadataOrBuilder>(
                   schemas_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -18773,8 +16702,9 @@
         return schemasBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.DrillPBError error = 3;
+      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> errorBuilder_;
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
@@ -18787,7 +16717,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
         if (errorBuilder_ == null) {
-          return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         } else {
           return errorBuilder_.getMessage();
         }
@@ -18828,7 +16758,6 @@
       public Builder mergeError(org.apache.drill.exec.proto.UserBitShared.DrillPBError value) {
         if (errorBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              error_ != null &&
               error_ != org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance()) {
             error_ =
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(error_).mergeFrom(value).buildPartial();
@@ -18847,7 +16776,7 @@
        */
       public Builder clearError() {
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
           onChanged();
         } else {
           errorBuilder_.clear();
@@ -18870,83 +16799,41 @@
         if (errorBuilder_ != null) {
           return errorBuilder_.getMessageOrBuilder();
         } else {
-          return error_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         }
       }
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> 
           getErrorFieldBuilder() {
         if (errorBuilder_ == null) {
-          errorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          errorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder>(
-                  getError(),
+                  error_,
                   getParentForChildren(),
                   isClean());
           error_ = null;
         }
         return errorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetSchemasResp)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetSchemasResp)
-    private static final org.apache.drill.exec.proto.UserProtos.GetSchemasResp DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetSchemasResp();
+      defaultInstance = new GetSchemasResp(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetSchemasResp getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetSchemasResp>
-        PARSER = new com.google.protobuf.AbstractParser<GetSchemasResp>() {
-      @java.lang.Override
-      public GetSchemasResp parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetSchemasResp(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetSchemasResp> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetSchemasResp> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetSchemasResp getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetSchemasResp)
   }
 
-  public interface GetTablesReqOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetTablesReq)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetTablesReqOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.LikeFilter catalog_name_filter = 1;
     /**
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
@@ -18960,6 +16847,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getCatalogNameFilterOrBuilder();
 
+    // optional .exec.user.LikeFilter schema_name_filter = 2;
     /**
      * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
      */
@@ -18973,6 +16861,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getSchemaNameFilterOrBuilder();
 
+    // optional .exec.user.LikeFilter table_name_filter = 3;
     /**
      * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
      */
@@ -18986,11 +16875,12 @@
      */
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getTableNameFilterOrBuilder();
 
+    // repeated string table_type_filter = 4;
     /**
      * <code>repeated string table_type_filter = 4;</code>
      */
     java.util.List<java.lang.String>
-        getTableTypeFilterList();
+    getTableTypeFilterList();
     /**
      * <code>repeated string table_type_filter = 4;</code>
      */
@@ -19006,38 +16896,43 @@
         getTableTypeFilterBytes(int index);
   }
   /**
+   * Protobuf type {@code exec.user.GetTablesReq}
+   *
    * <pre>
+   *
    * Request message for getting the metadata for tables satisfying the given optional filters.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetTablesReq}
    */
-  public  static final class GetTablesReq extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetTablesReq)
-      GetTablesReqOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetTablesReq extends
+      com.google.protobuf.GeneratedMessage
+      implements GetTablesReqOrBuilder {
     // Use GetTablesReq.newBuilder() to construct.
-    private GetTablesReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetTablesReq(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetTablesReq() {
-      tableTypeFilter_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+    private GetTablesReq(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetTablesReq defaultInstance;
+    public static GetTablesReq getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetTablesReq getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetTablesReq(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -19049,6 +16944,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -19089,19 +16991,11 @@
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
                 tableTypeFilter_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField0_ |= 0x00000008;
               }
-              tableTypeFilter_.add(bs);
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              tableTypeFilter_.add(input.readBytes());
               break;
             }
           }
@@ -19110,10 +17004,10 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
-          tableTypeFilter_ = tableTypeFilter_.getUnmodifiableView();
+          tableTypeFilter_ = new com.google.protobuf.UnmodifiableLazyStringList(tableTypeFilter_);
         }
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -19124,15 +17018,30 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesReq_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesReq_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetTablesReq.class, org.apache.drill.exec.proto.UserProtos.GetTablesReq.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetTablesReq> PARSER =
+        new com.google.protobuf.AbstractParser<GetTablesReq>() {
+      public GetTablesReq parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetTablesReq(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetTablesReq> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.LikeFilter catalog_name_filter = 1;
     public static final int CATALOG_NAME_FILTER_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_;
     /**
@@ -19145,15 +17054,16 @@
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getCatalogNameFilter() {
-      return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+      return catalogNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getCatalogNameFilterOrBuilder() {
-      return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+      return catalogNameFilter_;
     }
 
+    // optional .exec.user.LikeFilter schema_name_filter = 2;
     public static final int SCHEMA_NAME_FILTER_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter schemaNameFilter_;
     /**
@@ -19166,15 +17076,16 @@
      * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getSchemaNameFilter() {
-      return schemaNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+      return schemaNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getSchemaNameFilterOrBuilder() {
-      return schemaNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+      return schemaNameFilter_;
     }
 
+    // optional .exec.user.LikeFilter table_name_filter = 3;
     public static final int TABLE_NAME_FILTER_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter tableNameFilter_;
     /**
@@ -19187,21 +17098,22 @@
      * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getTableNameFilter() {
-      return tableNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : tableNameFilter_;
+      return tableNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getTableNameFilterOrBuilder() {
-      return tableNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : tableNameFilter_;
+      return tableNameFilter_;
     }
 
+    // repeated string table_type_filter = 4;
     public static final int TABLE_TYPE_FILTER_FIELD_NUMBER = 4;
     private com.google.protobuf.LazyStringList tableTypeFilter_;
     /**
      * <code>repeated string table_type_filter = 4;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getTableTypeFilterList() {
       return tableTypeFilter_;
     }
@@ -19225,137 +17137,78 @@
       return tableTypeFilter_.getByteString(index);
     }
 
+    private void initFields() {
+      catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      tableNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      tableTypeFilter_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getCatalogNameFilter());
+        output.writeMessage(1, catalogNameFilter_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getSchemaNameFilter());
+        output.writeMessage(2, schemaNameFilter_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, getTableNameFilter());
+        output.writeMessage(3, tableNameFilter_);
       }
       for (int i = 0; i < tableTypeFilter_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, tableTypeFilter_.getRaw(i));
+        output.writeBytes(4, tableTypeFilter_.getByteString(i));
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getCatalogNameFilter());
+          .computeMessageSize(1, catalogNameFilter_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getSchemaNameFilter());
+          .computeMessageSize(2, schemaNameFilter_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getTableNameFilter());
+          .computeMessageSize(3, tableNameFilter_);
       }
       {
         int dataSize = 0;
         for (int i = 0; i < tableTypeFilter_.size(); i++) {
-          dataSize += computeStringSizeNoTag(tableTypeFilter_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(tableTypeFilter_.getByteString(i));
         }
         size += dataSize;
         size += 1 * getTableTypeFilterList().size();
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetTablesReq)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetTablesReq other = (org.apache.drill.exec.proto.UserProtos.GetTablesReq) obj;
-
-      boolean result = true;
-      result = result && (hasCatalogNameFilter() == other.hasCatalogNameFilter());
-      if (hasCatalogNameFilter()) {
-        result = result && getCatalogNameFilter()
-            .equals(other.getCatalogNameFilter());
-      }
-      result = result && (hasSchemaNameFilter() == other.hasSchemaNameFilter());
-      if (hasSchemaNameFilter()) {
-        result = result && getSchemaNameFilter()
-            .equals(other.getSchemaNameFilter());
-      }
-      result = result && (hasTableNameFilter() == other.hasTableNameFilter());
-      if (hasTableNameFilter()) {
-        result = result && getTableNameFilter()
-            .equals(other.getTableNameFilter());
-      }
-      result = result && getTableTypeFilterList()
-          .equals(other.getTableTypeFilterList());
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasCatalogNameFilter()) {
-        hash = (37 * hash) + CATALOG_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogNameFilter().hashCode();
-      }
-      if (hasSchemaNameFilter()) {
-        hash = (37 * hash) + SCHEMA_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getSchemaNameFilter().hashCode();
-      }
-      if (hasTableNameFilter()) {
-        hash = (37 * hash) + TABLE_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getTableNameFilter().hashCode();
-      }
-      if (getTableTypeFilterCount() > 0) {
-        hash = (37 * hash) + TABLE_TYPE_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getTableTypeFilterList().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetTablesReq parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetTablesReq parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesReq parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -19379,80 +17232,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesReq parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesReq parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesReq parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesReq parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesReq parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesReq parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetTablesReq prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetTablesReq}
+     *
      * <pre>
+     *
      * Request message for getting the metadata for tables satisfying the given optional filters.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetTablesReq}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetTablesReq)
-        org.apache.drill.exec.proto.UserProtos.GetTablesReqOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetTablesReqOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesReq_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesReq_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -19465,35 +17304,37 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getCatalogNameFilterFieldBuilder();
           getSchemaNameFilterFieldBuilder();
           getTableNameFilterFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilter_ = null;
+          catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           catalogNameFilterBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000001);
         if (schemaNameFilterBuilder_ == null) {
-          schemaNameFilter_ = null;
+          schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           schemaNameFilterBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000002);
         if (tableNameFilterBuilder_ == null) {
-          tableNameFilter_ = null;
+          tableNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           tableNameFilterBuilder_.clear();
         }
@@ -19503,18 +17344,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesReq_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetTablesReq getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetTablesReq.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetTablesReq build() {
         org.apache.drill.exec.proto.UserProtos.GetTablesReq result = buildPartial();
         if (!result.isInitialized()) {
@@ -19523,7 +17365,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetTablesReq buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetTablesReq result = new org.apache.drill.exec.proto.UserProtos.GetTablesReq(this);
         int from_bitField0_ = bitField0_;
@@ -19553,7 +17394,8 @@
           result.tableNameFilter_ = tableNameFilterBuilder_.build();
         }
         if (((bitField0_ & 0x00000008) == 0x00000008)) {
-          tableTypeFilter_ = tableTypeFilter_.getUnmodifiableView();
+          tableTypeFilter_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              tableTypeFilter_);
           bitField0_ = (bitField0_ & ~0x00000008);
         }
         result.tableTypeFilter_ = tableTypeFilter_;
@@ -19562,39 +17404,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetTablesReq) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetTablesReq)other);
@@ -19625,17 +17434,14 @@
           }
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -19645,7 +17451,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetTablesReq) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -19655,8 +17461,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter catalog_name_filter = 1;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> catalogNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
@@ -19669,7 +17476,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getCatalogNameFilter() {
         if (catalogNameFilterBuilder_ == null) {
-          return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+          return catalogNameFilter_;
         } else {
           return catalogNameFilterBuilder_.getMessage();
         }
@@ -19710,7 +17517,6 @@
       public Builder mergeCatalogNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (catalogNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              catalogNameFilter_ != null &&
               catalogNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             catalogNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(catalogNameFilter_).mergeFrom(value).buildPartial();
@@ -19729,7 +17535,7 @@
        */
       public Builder clearCatalogNameFilter() {
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilter_ = null;
+          catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           catalogNameFilterBuilder_.clear();
@@ -19752,20 +17558,19 @@
         if (catalogNameFilterBuilder_ != null) {
           return catalogNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return catalogNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+          return catalogNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getCatalogNameFilterFieldBuilder() {
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          catalogNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getCatalogNameFilter(),
+                  catalogNameFilter_,
                   getParentForChildren(),
                   isClean());
           catalogNameFilter_ = null;
@@ -19773,8 +17578,9 @@
         return catalogNameFilterBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter schemaNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter schema_name_filter = 2;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> schemaNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
@@ -19787,7 +17593,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getSchemaNameFilter() {
         if (schemaNameFilterBuilder_ == null) {
-          return schemaNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+          return schemaNameFilter_;
         } else {
           return schemaNameFilterBuilder_.getMessage();
         }
@@ -19828,7 +17634,6 @@
       public Builder mergeSchemaNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (schemaNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              schemaNameFilter_ != null &&
               schemaNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             schemaNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(schemaNameFilter_).mergeFrom(value).buildPartial();
@@ -19847,7 +17652,7 @@
        */
       public Builder clearSchemaNameFilter() {
         if (schemaNameFilterBuilder_ == null) {
-          schemaNameFilter_ = null;
+          schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           schemaNameFilterBuilder_.clear();
@@ -19870,20 +17675,19 @@
         if (schemaNameFilterBuilder_ != null) {
           return schemaNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return schemaNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+          return schemaNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getSchemaNameFilterFieldBuilder() {
         if (schemaNameFilterBuilder_ == null) {
-          schemaNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          schemaNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getSchemaNameFilter(),
+                  schemaNameFilter_,
                   getParentForChildren(),
                   isClean());
           schemaNameFilter_ = null;
@@ -19891,8 +17695,9 @@
         return schemaNameFilterBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter tableNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter table_name_filter = 3;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter tableNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> tableNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
@@ -19905,7 +17710,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getTableNameFilter() {
         if (tableNameFilterBuilder_ == null) {
-          return tableNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : tableNameFilter_;
+          return tableNameFilter_;
         } else {
           return tableNameFilterBuilder_.getMessage();
         }
@@ -19946,7 +17751,6 @@
       public Builder mergeTableNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (tableNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              tableNameFilter_ != null &&
               tableNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             tableNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(tableNameFilter_).mergeFrom(value).buildPartial();
@@ -19965,7 +17769,7 @@
        */
       public Builder clearTableNameFilter() {
         if (tableNameFilterBuilder_ == null) {
-          tableNameFilter_ = null;
+          tableNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           tableNameFilterBuilder_.clear();
@@ -19988,20 +17792,19 @@
         if (tableNameFilterBuilder_ != null) {
           return tableNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return tableNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : tableNameFilter_;
+          return tableNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getTableNameFilterFieldBuilder() {
         if (tableNameFilterBuilder_ == null) {
-          tableNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          tableNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getTableNameFilter(),
+                  tableNameFilter_,
                   getParentForChildren(),
                   isClean());
           tableNameFilter_ = null;
@@ -20009,6 +17812,7 @@
         return tableNameFilterBuilder_;
       }
 
+      // repeated string table_type_filter = 4;
       private com.google.protobuf.LazyStringList tableTypeFilter_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureTableTypeFilterIsMutable() {
         if (!((bitField0_ & 0x00000008) == 0x00000008)) {
@@ -20019,9 +17823,9 @@
       /**
        * <code>repeated string table_type_filter = 4;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getTableTypeFilterList() {
-        return tableTypeFilter_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(tableTypeFilter_);
       }
       /**
        * <code>repeated string table_type_filter = 4;</code>
@@ -20074,8 +17878,7 @@
       public Builder addAllTableTypeFilter(
           java.lang.Iterable<java.lang.String> values) {
         ensureTableTypeFilterIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, tableTypeFilter_);
+        super.addAll(values, tableTypeFilter_);
         onChanged();
         return this;
       }
@@ -20101,63 +17904,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetTablesReq)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetTablesReq)
-    private static final org.apache.drill.exec.proto.UserProtos.GetTablesReq DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetTablesReq();
+      defaultInstance = new GetTablesReq(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetTablesReq getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetTablesReq>
-        PARSER = new com.google.protobuf.AbstractParser<GetTablesReq>() {
-      @java.lang.Override
-      public GetTablesReq parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetTablesReq(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetTablesReq> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetTablesReq> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetTablesReq getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetTablesReq)
   }
 
-  public interface TableMetadataOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.TableMetadata)
-      com.google.protobuf.MessageOrBuilder {
+  public interface TableMetadataOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string catalog_name = 1;
     /**
      * <code>optional string catalog_name = 1;</code>
      */
@@ -20172,6 +17934,7 @@
     com.google.protobuf.ByteString
         getCatalogNameBytes();
 
+    // optional string schema_name = 2;
     /**
      * <code>optional string schema_name = 2;</code>
      */
@@ -20186,6 +17949,7 @@
     com.google.protobuf.ByteString
         getSchemaNameBytes();
 
+    // optional string table_name = 3;
     /**
      * <code>optional string table_name = 3;</code>
      */
@@ -20200,68 +17964,71 @@
     com.google.protobuf.ByteString
         getTableNameBytes();
 
+    // optional string type = 4;
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "TABLE", "VIEW" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     boolean hasType();
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "TABLE", "VIEW" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     java.lang.String getType();
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "TABLE", "VIEW" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     com.google.protobuf.ByteString
         getTypeBytes();
   }
   /**
+   * Protobuf type {@code exec.user.TableMetadata}
+   *
    * <pre>
+   *
    * Message encapsulating metadata for a Table.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.TableMetadata}
    */
-  public  static final class TableMetadata extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.TableMetadata)
-      TableMetadataOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class TableMetadata extends
+      com.google.protobuf.GeneratedMessage
+      implements TableMetadataOrBuilder {
     // Use TableMetadata.newBuilder() to construct.
-    private TableMetadata(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private TableMetadata(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private TableMetadata() {
-      catalogName_ = "";
-      schemaName_ = "";
-      tableName_ = "";
-      type_ = "";
+    private TableMetadata(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final TableMetadata defaultInstance;
+    public static TableMetadata getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public TableMetadata getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private TableMetadata(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -20273,35 +18040,31 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              catalogName_ = bs;
+              catalogName_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              schemaName_ = bs;
+              schemaName_ = input.readBytes();
               break;
             }
             case 26: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000004;
-              tableName_ = bs;
+              tableName_ = input.readBytes();
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              type_ = bs;
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              type_ = input.readBytes();
               break;
             }
           }
@@ -20310,7 +18073,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -20321,17 +18084,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_TableMetadata_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_TableMetadata_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.TableMetadata.class, org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<TableMetadata> PARSER =
+        new com.google.protobuf.AbstractParser<TableMetadata>() {
+      public TableMetadata parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new TableMetadata(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<TableMetadata> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string catalog_name = 1;
     public static final int CATALOG_NAME_FIELD_NUMBER = 1;
-    private volatile java.lang.Object catalogName_;
+    private java.lang.Object catalogName_;
     /**
      * <code>optional string catalog_name = 1;</code>
      */
@@ -20372,8 +18150,9 @@
       }
     }
 
+    // optional string schema_name = 2;
     public static final int SCHEMA_NAME_FIELD_NUMBER = 2;
-    private volatile java.lang.Object schemaName_;
+    private java.lang.Object schemaName_;
     /**
      * <code>optional string schema_name = 2;</code>
      */
@@ -20414,8 +18193,9 @@
       }
     }
 
+    // optional string table_name = 3;
     public static final int TABLE_NAME_FIELD_NUMBER = 3;
-    private volatile java.lang.Object tableName_;
+    private java.lang.Object tableName_;
     /**
      * <code>optional string table_name = 3;</code>
      */
@@ -20456,24 +18236,25 @@
       }
     }
 
+    // optional string type = 4;
     public static final int TYPE_FIELD_NUMBER = 4;
-    private volatile java.lang.Object type_;
+    private java.lang.Object type_;
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "TABLE", "VIEW" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     public boolean hasType() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "TABLE", "VIEW" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     public java.lang.String getType() {
       java.lang.Object ref = type_;
@@ -20490,11 +18271,11 @@
       }
     }
     /**
+     * <code>optional string type = 4;</code>
+     *
      * <pre>
      * Type. Ex. "TABLE", "VIEW" etc.
      * </pre>
-     *
-     * <code>optional string type = 4;</code>
      */
     public com.google.protobuf.ByteString
         getTypeBytes() {
@@ -20510,132 +18291,73 @@
       }
     }
 
+    private void initFields() {
+      catalogName_ = "";
+      schemaName_ = "";
+      tableName_ = "";
+      type_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, catalogName_);
+        output.writeBytes(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, schemaName_);
+        output.writeBytes(2, getSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, tableName_);
+        output.writeBytes(3, getTableNameBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, type_);
+        output.writeBytes(4, getTypeBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, catalogName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, schemaName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, tableName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(3, getTableNameBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, type_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getTypeBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.TableMetadata)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.TableMetadata other = (org.apache.drill.exec.proto.UserProtos.TableMetadata) obj;
-
-      boolean result = true;
-      result = result && (hasCatalogName() == other.hasCatalogName());
-      if (hasCatalogName()) {
-        result = result && getCatalogName()
-            .equals(other.getCatalogName());
-      }
-      result = result && (hasSchemaName() == other.hasSchemaName());
-      if (hasSchemaName()) {
-        result = result && getSchemaName()
-            .equals(other.getSchemaName());
-      }
-      result = result && (hasTableName() == other.hasTableName());
-      if (hasTableName()) {
-        result = result && getTableName()
-            .equals(other.getTableName());
-      }
-      result = result && (hasType() == other.hasType());
-      if (hasType()) {
-        result = result && getType()
-            .equals(other.getType());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasCatalogName()) {
-        hash = (37 * hash) + CATALOG_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogName().hashCode();
-      }
-      if (hasSchemaName()) {
-        hash = (37 * hash) + SCHEMA_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getSchemaName().hashCode();
-      }
-      if (hasTableName()) {
-        hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getTableName().hashCode();
-      }
-      if (hasType()) {
-        hash = (37 * hash) + TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + getType().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.TableMetadata parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.TableMetadata parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.TableMetadata parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -20659,80 +18381,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.TableMetadata parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.TableMetadata parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.TableMetadata parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.TableMetadata parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.TableMetadata parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.TableMetadata parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.TableMetadata prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.TableMetadata}
+     *
      * <pre>
+     *
      * Message encapsulating metadata for a Table.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.TableMetadata}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.TableMetadata)
-        org.apache.drill.exec.proto.UserProtos.TableMetadataOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.TableMetadataOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_TableMetadata_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_TableMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -20745,16 +18453,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         catalogName_ = "";
@@ -20768,18 +18478,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_TableMetadata_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.TableMetadata getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.TableMetadata.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.TableMetadata build() {
         org.apache.drill.exec.proto.UserProtos.TableMetadata result = buildPartial();
         if (!result.isInitialized()) {
@@ -20788,7 +18499,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.TableMetadata buildPartial() {
         org.apache.drill.exec.proto.UserProtos.TableMetadata result = new org.apache.drill.exec.proto.UserProtos.TableMetadata(this);
         int from_bitField0_ = bitField0_;
@@ -20814,39 +18524,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.TableMetadata) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.TableMetadata)other);
@@ -20878,17 +18555,14 @@
           type_ = other.type_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -20898,7 +18572,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.TableMetadata) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -20908,6 +18582,7 @@
       }
       private int bitField0_;
 
+      // optional string catalog_name = 1;
       private java.lang.Object catalogName_ = "";
       /**
        * <code>optional string catalog_name = 1;</code>
@@ -20921,12 +18596,9 @@
       public java.lang.String getCatalogName() {
         java.lang.Object ref = catalogName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            catalogName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          catalogName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -20984,6 +18656,7 @@
         return this;
       }
 
+      // optional string schema_name = 2;
       private java.lang.Object schemaName_ = "";
       /**
        * <code>optional string schema_name = 2;</code>
@@ -20997,12 +18670,9 @@
       public java.lang.String getSchemaName() {
         java.lang.Object ref = schemaName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            schemaName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          schemaName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -21060,6 +18730,7 @@
         return this;
       }
 
+      // optional string table_name = 3;
       private java.lang.Object tableName_ = "";
       /**
        * <code>optional string table_name = 3;</code>
@@ -21073,12 +18744,9 @@
       public java.lang.String getTableName() {
         java.lang.Object ref = tableName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            tableName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          tableName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -21136,44 +18804,42 @@
         return this;
       }
 
+      // optional string type = 4;
       private java.lang.Object type_ = "";
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "TABLE", "VIEW" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public boolean hasType() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "TABLE", "VIEW" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public java.lang.String getType() {
         java.lang.Object ref = type_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            type_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          type_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "TABLE", "VIEW" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public com.google.protobuf.ByteString
           getTypeBytes() {
@@ -21189,11 +18855,11 @@
         }
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "TABLE", "VIEW" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public Builder setType(
           java.lang.String value) {
@@ -21206,11 +18872,11 @@
         return this;
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "TABLE", "VIEW" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public Builder clearType() {
         bitField0_ = (bitField0_ & ~0x00000008);
@@ -21219,11 +18885,11 @@
         return this;
       }
       /**
+       * <code>optional string type = 4;</code>
+       *
        * <pre>
        * Type. Ex. "TABLE", "VIEW" etc.
        * </pre>
-       *
-       * <code>optional string type = 4;</code>
        */
       public Builder setTypeBytes(
           com.google.protobuf.ByteString value) {
@@ -21235,63 +18901,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.TableMetadata)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.TableMetadata)
-    private static final org.apache.drill.exec.proto.UserProtos.TableMetadata DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.TableMetadata();
+      defaultInstance = new TableMetadata(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.TableMetadata getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<TableMetadata>
-        PARSER = new com.google.protobuf.AbstractParser<TableMetadata>() {
-      @java.lang.Override
-      public TableMetadata parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new TableMetadata(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<TableMetadata> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<TableMetadata> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.TableMetadata getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.TableMetadata)
   }
 
-  public interface GetTablesRespOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetTablesResp)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetTablesRespOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.RequestStatus status = 1;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -21301,6 +18926,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus();
 
+    // repeated .exec.user.TableMetadata tables = 2;
     /**
      * <code>repeated .exec.user.TableMetadata tables = 2;</code>
      */
@@ -21325,6 +18951,7 @@
     org.apache.drill.exec.proto.UserProtos.TableMetadataOrBuilder getTablesOrBuilder(
         int index);
 
+    // optional .exec.shared.DrillPBError error = 3;
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
@@ -21339,39 +18966,43 @@
     org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.GetTablesResp}
+   *
    * <pre>
+   *
    * Response message for GetTablesReq.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetTablesResp}
    */
-  public  static final class GetTablesResp extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetTablesResp)
-      GetTablesRespOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetTablesResp extends
+      com.google.protobuf.GeneratedMessage
+      implements GetTablesRespOrBuilder {
     // Use GetTablesResp.newBuilder() to construct.
-    private GetTablesResp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetTablesResp(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetTablesResp() {
-      status_ = 0;
-      tables_ = java.util.Collections.emptyList();
+    private GetTablesResp(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetTablesResp defaultInstance;
+    public static GetTablesResp getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetTablesResp getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetTablesResp(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -21383,15 +19014,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.RequestStatus value = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                status_ = rawValue;
+                status_ = value;
               }
               break;
             }
@@ -21400,8 +19037,7 @@
                 tables_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.TableMetadata>();
                 mutable_bitField0_ |= 0x00000002;
               }
-              tables_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserProtos.TableMetadata.PARSER, extensionRegistry));
+              tables_.add(input.readMessage(org.apache.drill.exec.proto.UserProtos.TableMetadata.PARSER, extensionRegistry));
               break;
             }
             case 26: {
@@ -21417,20 +19053,13 @@
               bitField0_ |= 0x00000002;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
           tables_ = java.util.Collections.unmodifiableList(tables_);
@@ -21444,17 +19073,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesResp_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesResp_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetTablesResp.class, org.apache.drill.exec.proto.UserProtos.GetTablesResp.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetTablesResp> PARSER =
+        new com.google.protobuf.AbstractParser<GetTablesResp>() {
+      public GetTablesResp parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetTablesResp(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetTablesResp> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.RequestStatus status = 1;
     public static final int STATUS_FIELD_NUMBER = 1;
-    private int status_;
+    private org.apache.drill.exec.proto.UserProtos.RequestStatus status_;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -21465,11 +19109,10 @@
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+      return status_;
     }
 
+    // repeated .exec.user.TableMetadata tables = 2;
     public static final int TABLES_FIELD_NUMBER = 2;
     private java.util.List<org.apache.drill.exec.proto.UserProtos.TableMetadata> tables_;
     /**
@@ -21505,6 +19148,7 @@
       return tables_.get(index);
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
     public static final int ERROR_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_;
     /**
@@ -21517,50 +19161,53 @@
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
 
+    private void initFields() {
+      status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
+      tables_ = java.util.Collections.emptyList();
+      error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, status_);
+        output.writeEnum(1, status_.getNumber());
       }
       for (int i = 0; i < tables_.size(); i++) {
         output.writeMessage(2, tables_.get(i));
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(3, getError());
+        output.writeMessage(3, error_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, status_);
+          .computeEnumSize(1, status_.getNumber());
       }
       for (int i = 0; i < tables_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
@@ -21568,74 +19215,20 @@
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getError());
+          .computeMessageSize(3, error_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetTablesResp)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetTablesResp other = (org.apache.drill.exec.proto.UserProtos.GetTablesResp) obj;
-
-      boolean result = true;
-      result = result && (hasStatus() == other.hasStatus());
-      if (hasStatus()) {
-        result = result && status_ == other.status_;
-      }
-      result = result && getTablesList()
-          .equals(other.getTablesList());
-      result = result && (hasError() == other.hasError());
-      if (hasError()) {
-        result = result && getError()
-            .equals(other.getError());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasStatus()) {
-        hash = (37 * hash) + STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + status_;
-      }
-      if (getTablesCount() > 0) {
-        hash = (37 * hash) + TABLES_FIELD_NUMBER;
-        hash = (53 * hash) + getTablesList().hashCode();
-      }
-      if (hasError()) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getError().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetTablesResp parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetTablesResp parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesResp parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -21659,80 +19252,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesResp parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesResp parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesResp parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesResp parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesResp parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetTablesResp parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetTablesResp prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetTablesResp}
+     *
      * <pre>
+     *
      * Response message for GetTablesReq.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetTablesResp}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetTablesResp)
-        org.apache.drill.exec.proto.UserProtos.GetTablesRespOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetTablesRespOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesResp_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesResp_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -21745,21 +19324,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getTablesFieldBuilder();
           getErrorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         bitField0_ = (bitField0_ & ~0x00000001);
         if (tablesBuilder_ == null) {
           tables_ = java.util.Collections.emptyList();
@@ -21768,7 +19349,7 @@
           tablesBuilder_.clear();
         }
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
         } else {
           errorBuilder_.clear();
         }
@@ -21776,18 +19357,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetTablesResp_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetTablesResp getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetTablesResp.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetTablesResp build() {
         org.apache.drill.exec.proto.UserProtos.GetTablesResp result = buildPartial();
         if (!result.isInitialized()) {
@@ -21796,7 +19378,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetTablesResp buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetTablesResp result = new org.apache.drill.exec.proto.UserProtos.GetTablesResp(this);
         int from_bitField0_ = bitField0_;
@@ -21827,39 +19408,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetTablesResp) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetTablesResp)other);
@@ -21893,7 +19441,7 @@
               tables_ = other.tables_;
               bitField0_ = (bitField0_ & ~0x00000002);
               tablesBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getTablesFieldBuilder() : null;
             } else {
               tablesBuilder_.addAllMessages(other.tables_);
@@ -21903,17 +19451,14 @@
         if (other.hasError()) {
           mergeError(other.getError());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -21923,7 +19468,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetTablesResp) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -21933,7 +19478,8 @@
       }
       private int bitField0_;
 
-      private int status_ = 0;
+      // optional .exec.user.RequestStatus status = 1;
+      private org.apache.drill.exec.proto.UserProtos.RequestStatus status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
@@ -21944,9 +19490,7 @@
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+        return status_;
       }
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
@@ -21956,7 +19500,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        status_ = value.getNumber();
+        status_ = value;
         onChanged();
         return this;
       }
@@ -21965,11 +19509,12 @@
        */
       public Builder clearStatus() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         onChanged();
         return this;
       }
 
+      // repeated .exec.user.TableMetadata tables = 2;
       private java.util.List<org.apache.drill.exec.proto.UserProtos.TableMetadata> tables_ =
         java.util.Collections.emptyList();
       private void ensureTablesIsMutable() {
@@ -21979,7 +19524,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.TableMetadata, org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder, org.apache.drill.exec.proto.UserProtos.TableMetadataOrBuilder> tablesBuilder_;
 
       /**
@@ -22111,8 +19656,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.TableMetadata> values) {
         if (tablesBuilder_ == null) {
           ensureTablesIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, tables_);
+          super.addAll(values, tables_);
           onChanged();
         } else {
           tablesBuilder_.addAllMessages(values);
@@ -22195,11 +19739,11 @@
            getTablesBuilderList() {
         return getTablesFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.TableMetadata, org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder, org.apache.drill.exec.proto.UserProtos.TableMetadataOrBuilder> 
           getTablesFieldBuilder() {
         if (tablesBuilder_ == null) {
-          tablesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          tablesBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.TableMetadata, org.apache.drill.exec.proto.UserProtos.TableMetadata.Builder, org.apache.drill.exec.proto.UserProtos.TableMetadataOrBuilder>(
                   tables_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -22210,8 +19754,9 @@
         return tablesBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.DrillPBError error = 3;
+      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> errorBuilder_;
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
@@ -22224,7 +19769,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
         if (errorBuilder_ == null) {
-          return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         } else {
           return errorBuilder_.getMessage();
         }
@@ -22265,7 +19810,6 @@
       public Builder mergeError(org.apache.drill.exec.proto.UserBitShared.DrillPBError value) {
         if (errorBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              error_ != null &&
               error_ != org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance()) {
             error_ =
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(error_).mergeFrom(value).buildPartial();
@@ -22284,7 +19828,7 @@
        */
       public Builder clearError() {
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
           onChanged();
         } else {
           errorBuilder_.clear();
@@ -22307,83 +19851,41 @@
         if (errorBuilder_ != null) {
           return errorBuilder_.getMessageOrBuilder();
         } else {
-          return error_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         }
       }
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> 
           getErrorFieldBuilder() {
         if (errorBuilder_ == null) {
-          errorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          errorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder>(
-                  getError(),
+                  error_,
                   getParentForChildren(),
                   isClean());
           error_ = null;
         }
         return errorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetTablesResp)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetTablesResp)
-    private static final org.apache.drill.exec.proto.UserProtos.GetTablesResp DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetTablesResp();
+      defaultInstance = new GetTablesResp(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetTablesResp getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetTablesResp>
-        PARSER = new com.google.protobuf.AbstractParser<GetTablesResp>() {
-      @java.lang.Override
-      public GetTablesResp parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetTablesResp(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetTablesResp> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetTablesResp> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetTablesResp getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetTablesResp)
   }
 
-  public interface GetColumnsReqOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetColumnsReq)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetColumnsReqOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.LikeFilter catalog_name_filter = 1;
     /**
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
@@ -22397,6 +19899,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getCatalogNameFilterOrBuilder();
 
+    // optional .exec.user.LikeFilter schema_name_filter = 2;
     /**
      * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
      */
@@ -22410,6 +19913,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getSchemaNameFilterOrBuilder();
 
+    // optional .exec.user.LikeFilter table_name_filter = 3;
     /**
      * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
      */
@@ -22423,6 +19927,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getTableNameFilterOrBuilder();
 
+    // optional .exec.user.LikeFilter column_name_filter = 4;
     /**
      * <code>optional .exec.user.LikeFilter column_name_filter = 4;</code>
      */
@@ -22437,37 +19942,43 @@
     org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getColumnNameFilterOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.GetColumnsReq}
+   *
    * <pre>
+   *
    * Request message for getting the metadata for columns satisfying the given optional filters.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetColumnsReq}
    */
-  public  static final class GetColumnsReq extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetColumnsReq)
-      GetColumnsReqOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetColumnsReq extends
+      com.google.protobuf.GeneratedMessage
+      implements GetColumnsReqOrBuilder {
     // Use GetColumnsReq.newBuilder() to construct.
-    private GetColumnsReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetColumnsReq(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetColumnsReq() {
+    private GetColumnsReq(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetColumnsReq defaultInstance;
+    public static GetColumnsReq getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetColumnsReq getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetColumnsReq(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -22479,6 +19990,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder subBuilder = null;
               if (((bitField0_ & 0x00000001) == 0x00000001)) {
@@ -22531,20 +20049,13 @@
               bitField0_ |= 0x00000008;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -22555,15 +20066,30 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsReq_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsReq_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetColumnsReq.class, org.apache.drill.exec.proto.UserProtos.GetColumnsReq.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetColumnsReq> PARSER =
+        new com.google.protobuf.AbstractParser<GetColumnsReq>() {
+      public GetColumnsReq parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetColumnsReq(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetColumnsReq> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.LikeFilter catalog_name_filter = 1;
     public static final int CATALOG_NAME_FILTER_FIELD_NUMBER = 1;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_;
     /**
@@ -22576,15 +20102,16 @@
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getCatalogNameFilter() {
-      return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+      return catalogNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getCatalogNameFilterOrBuilder() {
-      return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+      return catalogNameFilter_;
     }
 
+    // optional .exec.user.LikeFilter schema_name_filter = 2;
     public static final int SCHEMA_NAME_FILTER_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter schemaNameFilter_;
     /**
@@ -22597,15 +20124,16 @@
      * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getSchemaNameFilter() {
-      return schemaNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+      return schemaNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getSchemaNameFilterOrBuilder() {
-      return schemaNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+      return schemaNameFilter_;
     }
 
+    // optional .exec.user.LikeFilter table_name_filter = 3;
     public static final int TABLE_NAME_FILTER_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter tableNameFilter_;
     /**
@@ -22618,15 +20146,16 @@
      * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getTableNameFilter() {
-      return tableNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : tableNameFilter_;
+      return tableNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getTableNameFilterOrBuilder() {
-      return tableNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : tableNameFilter_;
+      return tableNameFilter_;
     }
 
+    // optional .exec.user.LikeFilter column_name_filter = 4;
     public static final int COLUMN_NAME_FILTER_FIELD_NUMBER = 4;
     private org.apache.drill.exec.proto.UserProtos.LikeFilter columnNameFilter_;
     /**
@@ -22639,145 +20168,82 @@
      * <code>optional .exec.user.LikeFilter column_name_filter = 4;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilter getColumnNameFilter() {
-      return columnNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : columnNameFilter_;
+      return columnNameFilter_;
     }
     /**
      * <code>optional .exec.user.LikeFilter column_name_filter = 4;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder getColumnNameFilterOrBuilder() {
-      return columnNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : columnNameFilter_;
+      return columnNameFilter_;
     }
 
+    private void initFields() {
+      catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      tableNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      columnNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(1, getCatalogNameFilter());
+        output.writeMessage(1, catalogNameFilter_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getSchemaNameFilter());
+        output.writeMessage(2, schemaNameFilter_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, getTableNameFilter());
+        output.writeMessage(3, tableNameFilter_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        output.writeMessage(4, getColumnNameFilter());
+        output.writeMessage(4, columnNameFilter_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(1, getCatalogNameFilter());
+          .computeMessageSize(1, catalogNameFilter_);
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getSchemaNameFilter());
+          .computeMessageSize(2, schemaNameFilter_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getTableNameFilter());
+          .computeMessageSize(3, tableNameFilter_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(4, getColumnNameFilter());
+          .computeMessageSize(4, columnNameFilter_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetColumnsReq)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetColumnsReq other = (org.apache.drill.exec.proto.UserProtos.GetColumnsReq) obj;
-
-      boolean result = true;
-      result = result && (hasCatalogNameFilter() == other.hasCatalogNameFilter());
-      if (hasCatalogNameFilter()) {
-        result = result && getCatalogNameFilter()
-            .equals(other.getCatalogNameFilter());
-      }
-      result = result && (hasSchemaNameFilter() == other.hasSchemaNameFilter());
-      if (hasSchemaNameFilter()) {
-        result = result && getSchemaNameFilter()
-            .equals(other.getSchemaNameFilter());
-      }
-      result = result && (hasTableNameFilter() == other.hasTableNameFilter());
-      if (hasTableNameFilter()) {
-        result = result && getTableNameFilter()
-            .equals(other.getTableNameFilter());
-      }
-      result = result && (hasColumnNameFilter() == other.hasColumnNameFilter());
-      if (hasColumnNameFilter()) {
-        result = result && getColumnNameFilter()
-            .equals(other.getColumnNameFilter());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasCatalogNameFilter()) {
-        hash = (37 * hash) + CATALOG_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogNameFilter().hashCode();
-      }
-      if (hasSchemaNameFilter()) {
-        hash = (37 * hash) + SCHEMA_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getSchemaNameFilter().hashCode();
-      }
-      if (hasTableNameFilter()) {
-        hash = (37 * hash) + TABLE_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getTableNameFilter().hashCode();
-      }
-      if (hasColumnNameFilter()) {
-        hash = (37 * hash) + COLUMN_NAME_FILTER_FIELD_NUMBER;
-        hash = (53 * hash) + getColumnNameFilter().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -22801,80 +20267,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetColumnsReq prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetColumnsReq}
+     *
      * <pre>
+     *
      * Request message for getting the metadata for columns satisfying the given optional filters.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetColumnsReq}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetColumnsReq)
-        org.apache.drill.exec.proto.UserProtos.GetColumnsReqOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetColumnsReqOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsReq_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsReq_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -22887,42 +20339,44 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getCatalogNameFilterFieldBuilder();
           getSchemaNameFilterFieldBuilder();
           getTableNameFilterFieldBuilder();
           getColumnNameFilterFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilter_ = null;
+          catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           catalogNameFilterBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000001);
         if (schemaNameFilterBuilder_ == null) {
-          schemaNameFilter_ = null;
+          schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           schemaNameFilterBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000002);
         if (tableNameFilterBuilder_ == null) {
-          tableNameFilter_ = null;
+          tableNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           tableNameFilterBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000004);
         if (columnNameFilterBuilder_ == null) {
-          columnNameFilter_ = null;
+          columnNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
         } else {
           columnNameFilterBuilder_.clear();
         }
@@ -22930,18 +20384,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsReq_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetColumnsReq getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetColumnsReq.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetColumnsReq build() {
         org.apache.drill.exec.proto.UserProtos.GetColumnsReq result = buildPartial();
         if (!result.isInitialized()) {
@@ -22950,7 +20405,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetColumnsReq buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetColumnsReq result = new org.apache.drill.exec.proto.UserProtos.GetColumnsReq(this);
         int from_bitField0_ = bitField0_;
@@ -22992,39 +20446,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetColumnsReq) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetColumnsReq)other);
@@ -23048,17 +20469,14 @@
         if (other.hasColumnNameFilter()) {
           mergeColumnNameFilter(other.getColumnNameFilter());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -23068,7 +20486,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetColumnsReq) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -23078,8 +20496,9 @@
       }
       private int bitField0_;
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter catalog_name_filter = 1;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> catalogNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
@@ -23092,7 +20511,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getCatalogNameFilter() {
         if (catalogNameFilterBuilder_ == null) {
-          return catalogNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+          return catalogNameFilter_;
         } else {
           return catalogNameFilterBuilder_.getMessage();
         }
@@ -23133,7 +20552,6 @@
       public Builder mergeCatalogNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (catalogNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000001) == 0x00000001) &&
-              catalogNameFilter_ != null &&
               catalogNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             catalogNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(catalogNameFilter_).mergeFrom(value).buildPartial();
@@ -23152,7 +20570,7 @@
        */
       public Builder clearCatalogNameFilter() {
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilter_ = null;
+          catalogNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           catalogNameFilterBuilder_.clear();
@@ -23175,20 +20593,19 @@
         if (catalogNameFilterBuilder_ != null) {
           return catalogNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return catalogNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : catalogNameFilter_;
+          return catalogNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter catalog_name_filter = 1;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getCatalogNameFilterFieldBuilder() {
         if (catalogNameFilterBuilder_ == null) {
-          catalogNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          catalogNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getCatalogNameFilter(),
+                  catalogNameFilter_,
                   getParentForChildren(),
                   isClean());
           catalogNameFilter_ = null;
@@ -23196,8 +20613,9 @@
         return catalogNameFilterBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter schemaNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter schema_name_filter = 2;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> schemaNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
@@ -23210,7 +20628,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getSchemaNameFilter() {
         if (schemaNameFilterBuilder_ == null) {
-          return schemaNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+          return schemaNameFilter_;
         } else {
           return schemaNameFilterBuilder_.getMessage();
         }
@@ -23251,7 +20669,6 @@
       public Builder mergeSchemaNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (schemaNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              schemaNameFilter_ != null &&
               schemaNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             schemaNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(schemaNameFilter_).mergeFrom(value).buildPartial();
@@ -23270,7 +20687,7 @@
        */
       public Builder clearSchemaNameFilter() {
         if (schemaNameFilterBuilder_ == null) {
-          schemaNameFilter_ = null;
+          schemaNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           schemaNameFilterBuilder_.clear();
@@ -23293,20 +20710,19 @@
         if (schemaNameFilterBuilder_ != null) {
           return schemaNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return schemaNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : schemaNameFilter_;
+          return schemaNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter schema_name_filter = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getSchemaNameFilterFieldBuilder() {
         if (schemaNameFilterBuilder_ == null) {
-          schemaNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          schemaNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getSchemaNameFilter(),
+                  schemaNameFilter_,
                   getParentForChildren(),
                   isClean());
           schemaNameFilter_ = null;
@@ -23314,8 +20730,9 @@
         return schemaNameFilterBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter tableNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter table_name_filter = 3;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter tableNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> tableNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
@@ -23328,7 +20745,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getTableNameFilter() {
         if (tableNameFilterBuilder_ == null) {
-          return tableNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : tableNameFilter_;
+          return tableNameFilter_;
         } else {
           return tableNameFilterBuilder_.getMessage();
         }
@@ -23369,7 +20786,6 @@
       public Builder mergeTableNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (tableNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              tableNameFilter_ != null &&
               tableNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             tableNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(tableNameFilter_).mergeFrom(value).buildPartial();
@@ -23388,7 +20804,7 @@
        */
       public Builder clearTableNameFilter() {
         if (tableNameFilterBuilder_ == null) {
-          tableNameFilter_ = null;
+          tableNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           tableNameFilterBuilder_.clear();
@@ -23411,20 +20827,19 @@
         if (tableNameFilterBuilder_ != null) {
           return tableNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return tableNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : tableNameFilter_;
+          return tableNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter table_name_filter = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getTableNameFilterFieldBuilder() {
         if (tableNameFilterBuilder_ == null) {
-          tableNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          tableNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getTableNameFilter(),
+                  tableNameFilter_,
                   getParentForChildren(),
                   isClean());
           tableNameFilter_ = null;
@@ -23432,8 +20847,9 @@
         return tableNameFilterBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.LikeFilter columnNameFilter_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.LikeFilter column_name_filter = 4;
+      private org.apache.drill.exec.proto.UserProtos.LikeFilter columnNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> columnNameFilterBuilder_;
       /**
        * <code>optional .exec.user.LikeFilter column_name_filter = 4;</code>
@@ -23446,7 +20862,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.LikeFilter getColumnNameFilter() {
         if (columnNameFilterBuilder_ == null) {
-          return columnNameFilter_ == null ? org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : columnNameFilter_;
+          return columnNameFilter_;
         } else {
           return columnNameFilterBuilder_.getMessage();
         }
@@ -23487,7 +20903,6 @@
       public Builder mergeColumnNameFilter(org.apache.drill.exec.proto.UserProtos.LikeFilter value) {
         if (columnNameFilterBuilder_ == null) {
           if (((bitField0_ & 0x00000008) == 0x00000008) &&
-              columnNameFilter_ != null &&
               columnNameFilter_ != org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance()) {
             columnNameFilter_ =
               org.apache.drill.exec.proto.UserProtos.LikeFilter.newBuilder(columnNameFilter_).mergeFrom(value).buildPartial();
@@ -23506,7 +20921,7 @@
        */
       public Builder clearColumnNameFilter() {
         if (columnNameFilterBuilder_ == null) {
-          columnNameFilter_ = null;
+          columnNameFilter_ = org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance();
           onChanged();
         } else {
           columnNameFilterBuilder_.clear();
@@ -23529,83 +20944,41 @@
         if (columnNameFilterBuilder_ != null) {
           return columnNameFilterBuilder_.getMessageOrBuilder();
         } else {
-          return columnNameFilter_ == null ?
-              org.apache.drill.exec.proto.UserProtos.LikeFilter.getDefaultInstance() : columnNameFilter_;
+          return columnNameFilter_;
         }
       }
       /**
        * <code>optional .exec.user.LikeFilter column_name_filter = 4;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder> 
           getColumnNameFilterFieldBuilder() {
         if (columnNameFilterBuilder_ == null) {
-          columnNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          columnNameFilterBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.LikeFilter, org.apache.drill.exec.proto.UserProtos.LikeFilter.Builder, org.apache.drill.exec.proto.UserProtos.LikeFilterOrBuilder>(
-                  getColumnNameFilter(),
+                  columnNameFilter_,
                   getParentForChildren(),
                   isClean());
           columnNameFilter_ = null;
         }
         return columnNameFilterBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetColumnsReq)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetColumnsReq)
-    private static final org.apache.drill.exec.proto.UserProtos.GetColumnsReq DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetColumnsReq();
+      defaultInstance = new GetColumnsReq(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetColumnsReq getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetColumnsReq>
-        PARSER = new com.google.protobuf.AbstractParser<GetColumnsReq>() {
-      @java.lang.Override
-      public GetColumnsReq parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetColumnsReq(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetColumnsReq> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetColumnsReq> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetColumnsReq getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetColumnsReq)
   }
 
-  public interface ColumnMetadataOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.ColumnMetadata)
-      com.google.protobuf.MessageOrBuilder {
+  public interface ColumnMetadataOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string catalog_name = 1;
     /**
      * <code>optional string catalog_name = 1;</code>
      */
@@ -23620,6 +20993,7 @@
     com.google.protobuf.ByteString
         getCatalogNameBytes();
 
+    // optional string schema_name = 2;
     /**
      * <code>optional string schema_name = 2;</code>
      */
@@ -23634,6 +21008,7 @@
     com.google.protobuf.ByteString
         getSchemaNameBytes();
 
+    // optional string table_name = 3;
     /**
      * <code>optional string table_name = 3;</code>
      */
@@ -23648,6 +21023,7 @@
     com.google.protobuf.ByteString
         getTableNameBytes();
 
+    // optional string column_name = 4;
     /**
      * <code>optional string column_name = 4;</code>
      */
@@ -23662,6 +21038,7 @@
     com.google.protobuf.ByteString
         getColumnNameBytes();
 
+    // optional int32 ordinal_position = 5;
     /**
      * <code>optional int32 ordinal_position = 5;</code>
      */
@@ -23671,6 +21048,7 @@
      */
     int getOrdinalPosition();
 
+    // optional string default_value = 6;
     /**
      * <code>optional string default_value = 6;</code>
      */
@@ -23685,6 +21063,7 @@
     com.google.protobuf.ByteString
         getDefaultValueBytes();
 
+    // optional bool is_nullable = 7;
     /**
      * <code>optional bool is_nullable = 7;</code>
      */
@@ -23694,6 +21073,7 @@
      */
     boolean getIsNullable();
 
+    // optional string data_type = 8;
     /**
      * <code>optional string data_type = 8;</code>
      */
@@ -23708,6 +21088,7 @@
     com.google.protobuf.ByteString
         getDataTypeBytes();
 
+    // optional int32 char_max_length = 9;
     /**
      * <code>optional int32 char_max_length = 9;</code>
      */
@@ -23717,6 +21098,7 @@
      */
     int getCharMaxLength();
 
+    // optional int32 char_octet_length = 10;
     /**
      * <code>optional int32 char_octet_length = 10;</code>
      */
@@ -23726,6 +21108,7 @@
      */
     int getCharOctetLength();
 
+    // optional int32 numeric_precision = 11;
     /**
      * <code>optional int32 numeric_precision = 11;</code>
      */
@@ -23735,6 +21118,7 @@
      */
     int getNumericPrecision();
 
+    // optional int32 numeric_precision_radix = 12;
     /**
      * <code>optional int32 numeric_precision_radix = 12;</code>
      */
@@ -23744,6 +21128,7 @@
      */
     int getNumericPrecisionRadix();
 
+    // optional int32 numeric_scale = 13;
     /**
      * <code>optional int32 numeric_scale = 13;</code>
      */
@@ -23753,6 +21138,7 @@
      */
     int getNumericScale();
 
+    // optional int32 date_time_precision = 14;
     /**
      * <code>optional int32 date_time_precision = 14;</code>
      */
@@ -23762,6 +21148,7 @@
      */
     int getDateTimePrecision();
 
+    // optional string interval_type = 15;
     /**
      * <code>optional string interval_type = 15;</code>
      */
@@ -23776,6 +21163,7 @@
     com.google.protobuf.ByteString
         getIntervalTypeBytes();
 
+    // optional int32 interval_precision = 16;
     /**
      * <code>optional int32 interval_precision = 16;</code>
      */
@@ -23785,6 +21173,7 @@
      */
     int getIntervalPrecision();
 
+    // optional int32 column_size = 17;
     /**
      * <code>optional int32 column_size = 17;</code>
      */
@@ -23795,54 +21184,43 @@
     int getColumnSize();
   }
   /**
+   * Protobuf type {@code exec.user.ColumnMetadata}
+   *
    * <pre>
+   *
    * Message encapsulating metadata for a Column.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.ColumnMetadata}
    */
-  public  static final class ColumnMetadata extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.ColumnMetadata)
-      ColumnMetadataOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class ColumnMetadata extends
+      com.google.protobuf.GeneratedMessage
+      implements ColumnMetadataOrBuilder {
     // Use ColumnMetadata.newBuilder() to construct.
-    private ColumnMetadata(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private ColumnMetadata(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private ColumnMetadata() {
-      catalogName_ = "";
-      schemaName_ = "";
-      tableName_ = "";
-      columnName_ = "";
-      ordinalPosition_ = 0;
-      defaultValue_ = "";
-      isNullable_ = false;
-      dataType_ = "";
-      charMaxLength_ = 0;
-      charOctetLength_ = 0;
-      numericPrecision_ = 0;
-      numericPrecisionRadix_ = 0;
-      numericScale_ = 0;
-      dateTimePrecision_ = 0;
-      intervalType_ = "";
-      intervalPrecision_ = 0;
-      columnSize_ = 0;
+    private ColumnMetadata(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final ColumnMetadata defaultInstance;
+    public static ColumnMetadata getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public ColumnMetadata getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private ColumnMetadata(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -23854,28 +21232,31 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              catalogName_ = bs;
+              catalogName_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              schemaName_ = bs;
+              schemaName_ = input.readBytes();
               break;
             }
             case 26: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000004;
-              tableName_ = bs;
+              tableName_ = input.readBytes();
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              columnName_ = bs;
+              columnName_ = input.readBytes();
               break;
             }
             case 40: {
@@ -23884,9 +21265,8 @@
               break;
             }
             case 50: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000020;
-              defaultValue_ = bs;
+              defaultValue_ = input.readBytes();
               break;
             }
             case 56: {
@@ -23895,9 +21275,8 @@
               break;
             }
             case 66: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000080;
-              dataType_ = bs;
+              dataType_ = input.readBytes();
               break;
             }
             case 72: {
@@ -23931,9 +21310,8 @@
               break;
             }
             case 122: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00004000;
-              intervalType_ = bs;
+              intervalType_ = input.readBytes();
               break;
             }
             case 128: {
@@ -23946,20 +21324,13 @@
               columnSize_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -23970,17 +21341,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ColumnMetadata_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ColumnMetadata_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.ColumnMetadata.class, org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<ColumnMetadata> PARSER =
+        new com.google.protobuf.AbstractParser<ColumnMetadata>() {
+      public ColumnMetadata parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new ColumnMetadata(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<ColumnMetadata> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string catalog_name = 1;
     public static final int CATALOG_NAME_FIELD_NUMBER = 1;
-    private volatile java.lang.Object catalogName_;
+    private java.lang.Object catalogName_;
     /**
      * <code>optional string catalog_name = 1;</code>
      */
@@ -24021,8 +21407,9 @@
       }
     }
 
+    // optional string schema_name = 2;
     public static final int SCHEMA_NAME_FIELD_NUMBER = 2;
-    private volatile java.lang.Object schemaName_;
+    private java.lang.Object schemaName_;
     /**
      * <code>optional string schema_name = 2;</code>
      */
@@ -24063,8 +21450,9 @@
       }
     }
 
+    // optional string table_name = 3;
     public static final int TABLE_NAME_FIELD_NUMBER = 3;
-    private volatile java.lang.Object tableName_;
+    private java.lang.Object tableName_;
     /**
      * <code>optional string table_name = 3;</code>
      */
@@ -24105,8 +21493,9 @@
       }
     }
 
+    // optional string column_name = 4;
     public static final int COLUMN_NAME_FIELD_NUMBER = 4;
-    private volatile java.lang.Object columnName_;
+    private java.lang.Object columnName_;
     /**
      * <code>optional string column_name = 4;</code>
      */
@@ -24147,6 +21536,7 @@
       }
     }
 
+    // optional int32 ordinal_position = 5;
     public static final int ORDINAL_POSITION_FIELD_NUMBER = 5;
     private int ordinalPosition_;
     /**
@@ -24162,8 +21552,9 @@
       return ordinalPosition_;
     }
 
+    // optional string default_value = 6;
     public static final int DEFAULT_VALUE_FIELD_NUMBER = 6;
-    private volatile java.lang.Object defaultValue_;
+    private java.lang.Object defaultValue_;
     /**
      * <code>optional string default_value = 6;</code>
      */
@@ -24204,6 +21595,7 @@
       }
     }
 
+    // optional bool is_nullable = 7;
     public static final int IS_NULLABLE_FIELD_NUMBER = 7;
     private boolean isNullable_;
     /**
@@ -24219,8 +21611,9 @@
       return isNullable_;
     }
 
+    // optional string data_type = 8;
     public static final int DATA_TYPE_FIELD_NUMBER = 8;
-    private volatile java.lang.Object dataType_;
+    private java.lang.Object dataType_;
     /**
      * <code>optional string data_type = 8;</code>
      */
@@ -24261,6 +21654,7 @@
       }
     }
 
+    // optional int32 char_max_length = 9;
     public static final int CHAR_MAX_LENGTH_FIELD_NUMBER = 9;
     private int charMaxLength_;
     /**
@@ -24276,6 +21670,7 @@
       return charMaxLength_;
     }
 
+    // optional int32 char_octet_length = 10;
     public static final int CHAR_OCTET_LENGTH_FIELD_NUMBER = 10;
     private int charOctetLength_;
     /**
@@ -24291,6 +21686,7 @@
       return charOctetLength_;
     }
 
+    // optional int32 numeric_precision = 11;
     public static final int NUMERIC_PRECISION_FIELD_NUMBER = 11;
     private int numericPrecision_;
     /**
@@ -24306,6 +21702,7 @@
       return numericPrecision_;
     }
 
+    // optional int32 numeric_precision_radix = 12;
     public static final int NUMERIC_PRECISION_RADIX_FIELD_NUMBER = 12;
     private int numericPrecisionRadix_;
     /**
@@ -24321,6 +21718,7 @@
       return numericPrecisionRadix_;
     }
 
+    // optional int32 numeric_scale = 13;
     public static final int NUMERIC_SCALE_FIELD_NUMBER = 13;
     private int numericScale_;
     /**
@@ -24336,6 +21734,7 @@
       return numericScale_;
     }
 
+    // optional int32 date_time_precision = 14;
     public static final int DATE_TIME_PRECISION_FIELD_NUMBER = 14;
     private int dateTimePrecision_;
     /**
@@ -24351,8 +21750,9 @@
       return dateTimePrecision_;
     }
 
+    // optional string interval_type = 15;
     public static final int INTERVAL_TYPE_FIELD_NUMBER = 15;
-    private volatile java.lang.Object intervalType_;
+    private java.lang.Object intervalType_;
     /**
      * <code>optional string interval_type = 15;</code>
      */
@@ -24393,6 +21793,7 @@
       }
     }
 
+    // optional int32 interval_precision = 16;
     public static final int INTERVAL_PRECISION_FIELD_NUMBER = 16;
     private int intervalPrecision_;
     /**
@@ -24408,6 +21809,7 @@
       return intervalPrecision_;
     }
 
+    // optional int32 column_size = 17;
     public static final int COLUMN_SIZE_FIELD_NUMBER = 17;
     private int columnSize_;
     /**
@@ -24423,43 +21825,60 @@
       return columnSize_;
     }
 
+    private void initFields() {
+      catalogName_ = "";
+      schemaName_ = "";
+      tableName_ = "";
+      columnName_ = "";
+      ordinalPosition_ = 0;
+      defaultValue_ = "";
+      isNullable_ = false;
+      dataType_ = "";
+      charMaxLength_ = 0;
+      charOctetLength_ = 0;
+      numericPrecision_ = 0;
+      numericPrecisionRadix_ = 0;
+      numericScale_ = 0;
+      dateTimePrecision_ = 0;
+      intervalType_ = "";
+      intervalPrecision_ = 0;
+      columnSize_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, catalogName_);
+        output.writeBytes(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, schemaName_);
+        output.writeBytes(2, getSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, tableName_);
+        output.writeBytes(3, getTableNameBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, columnName_);
+        output.writeBytes(4, getColumnNameBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         output.writeInt32(5, ordinalPosition_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, defaultValue_);
+        output.writeBytes(6, getDefaultValueBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         output.writeBool(7, isNullable_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 8, dataType_);
+        output.writeBytes(8, getDataTypeBytes());
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
         output.writeInt32(9, charMaxLength_);
@@ -24480,7 +21899,7 @@
         output.writeInt32(14, dateTimePrecision_);
       }
       if (((bitField0_ & 0x00004000) == 0x00004000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 15, intervalType_);
+        output.writeBytes(15, getIntervalTypeBytes());
       }
       if (((bitField0_ & 0x00008000) == 0x00008000)) {
         output.writeInt32(16, intervalPrecision_);
@@ -24488,40 +21907,46 @@
       if (((bitField0_ & 0x00010000) == 0x00010000)) {
         output.writeInt32(17, columnSize_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, catalogName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, schemaName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, tableName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(3, getTableNameBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, columnName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getColumnNameBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(5, ordinalPosition_);
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, defaultValue_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(6, getDefaultValueBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(7, isNullable_);
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, dataType_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(8, getDataTypeBytes());
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
         size += com.google.protobuf.CodedOutputStream
@@ -24548,7 +21973,8 @@
           .computeInt32Size(14, dateTimePrecision_);
       }
       if (((bitField0_ & 0x00004000) == 0x00004000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(15, intervalType_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(15, getIntervalTypeBytes());
       }
       if (((bitField0_ & 0x00008000) == 0x00008000)) {
         size += com.google.protobuf.CodedOutputStream
@@ -24558,203 +21984,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(17, columnSize_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.ColumnMetadata)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.ColumnMetadata other = (org.apache.drill.exec.proto.UserProtos.ColumnMetadata) obj;
-
-      boolean result = true;
-      result = result && (hasCatalogName() == other.hasCatalogName());
-      if (hasCatalogName()) {
-        result = result && getCatalogName()
-            .equals(other.getCatalogName());
-      }
-      result = result && (hasSchemaName() == other.hasSchemaName());
-      if (hasSchemaName()) {
-        result = result && getSchemaName()
-            .equals(other.getSchemaName());
-      }
-      result = result && (hasTableName() == other.hasTableName());
-      if (hasTableName()) {
-        result = result && getTableName()
-            .equals(other.getTableName());
-      }
-      result = result && (hasColumnName() == other.hasColumnName());
-      if (hasColumnName()) {
-        result = result && getColumnName()
-            .equals(other.getColumnName());
-      }
-      result = result && (hasOrdinalPosition() == other.hasOrdinalPosition());
-      if (hasOrdinalPosition()) {
-        result = result && (getOrdinalPosition()
-            == other.getOrdinalPosition());
-      }
-      result = result && (hasDefaultValue() == other.hasDefaultValue());
-      if (hasDefaultValue()) {
-        result = result && getDefaultValue()
-            .equals(other.getDefaultValue());
-      }
-      result = result && (hasIsNullable() == other.hasIsNullable());
-      if (hasIsNullable()) {
-        result = result && (getIsNullable()
-            == other.getIsNullable());
-      }
-      result = result && (hasDataType() == other.hasDataType());
-      if (hasDataType()) {
-        result = result && getDataType()
-            .equals(other.getDataType());
-      }
-      result = result && (hasCharMaxLength() == other.hasCharMaxLength());
-      if (hasCharMaxLength()) {
-        result = result && (getCharMaxLength()
-            == other.getCharMaxLength());
-      }
-      result = result && (hasCharOctetLength() == other.hasCharOctetLength());
-      if (hasCharOctetLength()) {
-        result = result && (getCharOctetLength()
-            == other.getCharOctetLength());
-      }
-      result = result && (hasNumericPrecision() == other.hasNumericPrecision());
-      if (hasNumericPrecision()) {
-        result = result && (getNumericPrecision()
-            == other.getNumericPrecision());
-      }
-      result = result && (hasNumericPrecisionRadix() == other.hasNumericPrecisionRadix());
-      if (hasNumericPrecisionRadix()) {
-        result = result && (getNumericPrecisionRadix()
-            == other.getNumericPrecisionRadix());
-      }
-      result = result && (hasNumericScale() == other.hasNumericScale());
-      if (hasNumericScale()) {
-        result = result && (getNumericScale()
-            == other.getNumericScale());
-      }
-      result = result && (hasDateTimePrecision() == other.hasDateTimePrecision());
-      if (hasDateTimePrecision()) {
-        result = result && (getDateTimePrecision()
-            == other.getDateTimePrecision());
-      }
-      result = result && (hasIntervalType() == other.hasIntervalType());
-      if (hasIntervalType()) {
-        result = result && getIntervalType()
-            .equals(other.getIntervalType());
-      }
-      result = result && (hasIntervalPrecision() == other.hasIntervalPrecision());
-      if (hasIntervalPrecision()) {
-        result = result && (getIntervalPrecision()
-            == other.getIntervalPrecision());
-      }
-      result = result && (hasColumnSize() == other.hasColumnSize());
-      if (hasColumnSize()) {
-        result = result && (getColumnSize()
-            == other.getColumnSize());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasCatalogName()) {
-        hash = (37 * hash) + CATALOG_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogName().hashCode();
-      }
-      if (hasSchemaName()) {
-        hash = (37 * hash) + SCHEMA_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getSchemaName().hashCode();
-      }
-      if (hasTableName()) {
-        hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getTableName().hashCode();
-      }
-      if (hasColumnName()) {
-        hash = (37 * hash) + COLUMN_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getColumnName().hashCode();
-      }
-      if (hasOrdinalPosition()) {
-        hash = (37 * hash) + ORDINAL_POSITION_FIELD_NUMBER;
-        hash = (53 * hash) + getOrdinalPosition();
-      }
-      if (hasDefaultValue()) {
-        hash = (37 * hash) + DEFAULT_VALUE_FIELD_NUMBER;
-        hash = (53 * hash) + getDefaultValue().hashCode();
-      }
-      if (hasIsNullable()) {
-        hash = (37 * hash) + IS_NULLABLE_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getIsNullable());
-      }
-      if (hasDataType()) {
-        hash = (37 * hash) + DATA_TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + getDataType().hashCode();
-      }
-      if (hasCharMaxLength()) {
-        hash = (37 * hash) + CHAR_MAX_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getCharMaxLength();
-      }
-      if (hasCharOctetLength()) {
-        hash = (37 * hash) + CHAR_OCTET_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getCharOctetLength();
-      }
-      if (hasNumericPrecision()) {
-        hash = (37 * hash) + NUMERIC_PRECISION_FIELD_NUMBER;
-        hash = (53 * hash) + getNumericPrecision();
-      }
-      if (hasNumericPrecisionRadix()) {
-        hash = (37 * hash) + NUMERIC_PRECISION_RADIX_FIELD_NUMBER;
-        hash = (53 * hash) + getNumericPrecisionRadix();
-      }
-      if (hasNumericScale()) {
-        hash = (37 * hash) + NUMERIC_SCALE_FIELD_NUMBER;
-        hash = (53 * hash) + getNumericScale();
-      }
-      if (hasDateTimePrecision()) {
-        hash = (37 * hash) + DATE_TIME_PRECISION_FIELD_NUMBER;
-        hash = (53 * hash) + getDateTimePrecision();
-      }
-      if (hasIntervalType()) {
-        hash = (37 * hash) + INTERVAL_TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + getIntervalType().hashCode();
-      }
-      if (hasIntervalPrecision()) {
-        hash = (37 * hash) + INTERVAL_PRECISION_FIELD_NUMBER;
-        hash = (53 * hash) + getIntervalPrecision();
-      }
-      if (hasColumnSize()) {
-        hash = (37 * hash) + COLUMN_SIZE_FIELD_NUMBER;
-        hash = (53 * hash) + getColumnSize();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -24778,80 +22019,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.ColumnMetadata prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.ColumnMetadata}
+     *
      * <pre>
+     *
      * Message encapsulating metadata for a Column.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.ColumnMetadata}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.ColumnMetadata)
-        org.apache.drill.exec.proto.UserProtos.ColumnMetadataOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.ColumnMetadataOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ColumnMetadata_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ColumnMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -24864,16 +22091,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         catalogName_ = "";
@@ -24913,18 +22142,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ColumnMetadata_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ColumnMetadata getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.ColumnMetadata.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ColumnMetadata build() {
         org.apache.drill.exec.proto.UserProtos.ColumnMetadata result = buildPartial();
         if (!result.isInitialized()) {
@@ -24933,7 +22163,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ColumnMetadata buildPartial() {
         org.apache.drill.exec.proto.UserProtos.ColumnMetadata result = new org.apache.drill.exec.proto.UserProtos.ColumnMetadata(this);
         int from_bitField0_ = bitField0_;
@@ -25011,39 +22240,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.ColumnMetadata) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.ColumnMetadata)other);
@@ -25120,17 +22316,14 @@
         if (other.hasColumnSize()) {
           setColumnSize(other.getColumnSize());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -25140,7 +22333,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.ColumnMetadata) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -25150,6 +22343,7 @@
       }
       private int bitField0_;
 
+      // optional string catalog_name = 1;
       private java.lang.Object catalogName_ = "";
       /**
        * <code>optional string catalog_name = 1;</code>
@@ -25163,12 +22357,9 @@
       public java.lang.String getCatalogName() {
         java.lang.Object ref = catalogName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            catalogName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          catalogName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -25226,6 +22417,7 @@
         return this;
       }
 
+      // optional string schema_name = 2;
       private java.lang.Object schemaName_ = "";
       /**
        * <code>optional string schema_name = 2;</code>
@@ -25239,12 +22431,9 @@
       public java.lang.String getSchemaName() {
         java.lang.Object ref = schemaName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            schemaName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          schemaName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -25302,6 +22491,7 @@
         return this;
       }
 
+      // optional string table_name = 3;
       private java.lang.Object tableName_ = "";
       /**
        * <code>optional string table_name = 3;</code>
@@ -25315,12 +22505,9 @@
       public java.lang.String getTableName() {
         java.lang.Object ref = tableName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            tableName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          tableName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -25378,6 +22565,7 @@
         return this;
       }
 
+      // optional string column_name = 4;
       private java.lang.Object columnName_ = "";
       /**
        * <code>optional string column_name = 4;</code>
@@ -25391,12 +22579,9 @@
       public java.lang.String getColumnName() {
         java.lang.Object ref = columnName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            columnName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          columnName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -25454,6 +22639,7 @@
         return this;
       }
 
+      // optional int32 ordinal_position = 5;
       private int ordinalPosition_ ;
       /**
        * <code>optional int32 ordinal_position = 5;</code>
@@ -25486,6 +22672,7 @@
         return this;
       }
 
+      // optional string default_value = 6;
       private java.lang.Object defaultValue_ = "";
       /**
        * <code>optional string default_value = 6;</code>
@@ -25499,12 +22686,9 @@
       public java.lang.String getDefaultValue() {
         java.lang.Object ref = defaultValue_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            defaultValue_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          defaultValue_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -25562,6 +22746,7 @@
         return this;
       }
 
+      // optional bool is_nullable = 7;
       private boolean isNullable_ ;
       /**
        * <code>optional bool is_nullable = 7;</code>
@@ -25594,6 +22779,7 @@
         return this;
       }
 
+      // optional string data_type = 8;
       private java.lang.Object dataType_ = "";
       /**
        * <code>optional string data_type = 8;</code>
@@ -25607,12 +22793,9 @@
       public java.lang.String getDataType() {
         java.lang.Object ref = dataType_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            dataType_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          dataType_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -25670,6 +22853,7 @@
         return this;
       }
 
+      // optional int32 char_max_length = 9;
       private int charMaxLength_ ;
       /**
        * <code>optional int32 char_max_length = 9;</code>
@@ -25702,6 +22886,7 @@
         return this;
       }
 
+      // optional int32 char_octet_length = 10;
       private int charOctetLength_ ;
       /**
        * <code>optional int32 char_octet_length = 10;</code>
@@ -25734,6 +22919,7 @@
         return this;
       }
 
+      // optional int32 numeric_precision = 11;
       private int numericPrecision_ ;
       /**
        * <code>optional int32 numeric_precision = 11;</code>
@@ -25766,6 +22952,7 @@
         return this;
       }
 
+      // optional int32 numeric_precision_radix = 12;
       private int numericPrecisionRadix_ ;
       /**
        * <code>optional int32 numeric_precision_radix = 12;</code>
@@ -25798,6 +22985,7 @@
         return this;
       }
 
+      // optional int32 numeric_scale = 13;
       private int numericScale_ ;
       /**
        * <code>optional int32 numeric_scale = 13;</code>
@@ -25830,6 +23018,7 @@
         return this;
       }
 
+      // optional int32 date_time_precision = 14;
       private int dateTimePrecision_ ;
       /**
        * <code>optional int32 date_time_precision = 14;</code>
@@ -25862,6 +23051,7 @@
         return this;
       }
 
+      // optional string interval_type = 15;
       private java.lang.Object intervalType_ = "";
       /**
        * <code>optional string interval_type = 15;</code>
@@ -25875,12 +23065,9 @@
       public java.lang.String getIntervalType() {
         java.lang.Object ref = intervalType_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            intervalType_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          intervalType_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -25938,6 +23125,7 @@
         return this;
       }
 
+      // optional int32 interval_precision = 16;
       private int intervalPrecision_ ;
       /**
        * <code>optional int32 interval_precision = 16;</code>
@@ -25970,6 +23158,7 @@
         return this;
       }
 
+      // optional int32 column_size = 17;
       private int columnSize_ ;
       /**
        * <code>optional int32 column_size = 17;</code>
@@ -26001,63 +23190,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.ColumnMetadata)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.ColumnMetadata)
-    private static final org.apache.drill.exec.proto.UserProtos.ColumnMetadata DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.ColumnMetadata();
+      defaultInstance = new ColumnMetadata(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.ColumnMetadata getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<ColumnMetadata>
-        PARSER = new com.google.protobuf.AbstractParser<ColumnMetadata>() {
-      @java.lang.Override
-      public ColumnMetadata parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new ColumnMetadata(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<ColumnMetadata> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<ColumnMetadata> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.ColumnMetadata getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.ColumnMetadata)
   }
 
-  public interface GetColumnsRespOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetColumnsResp)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetColumnsRespOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.RequestStatus status = 1;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -26067,6 +23215,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus();
 
+    // repeated .exec.user.ColumnMetadata columns = 2;
     /**
      * <code>repeated .exec.user.ColumnMetadata columns = 2;</code>
      */
@@ -26091,6 +23240,7 @@
     org.apache.drill.exec.proto.UserProtos.ColumnMetadataOrBuilder getColumnsOrBuilder(
         int index);
 
+    // optional .exec.shared.DrillPBError error = 3;
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
@@ -26105,39 +23255,43 @@
     org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.GetColumnsResp}
+   *
    * <pre>
+   *
    * Response message for GetColumnsReq.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetColumnsResp}
    */
-  public  static final class GetColumnsResp extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetColumnsResp)
-      GetColumnsRespOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetColumnsResp extends
+      com.google.protobuf.GeneratedMessage
+      implements GetColumnsRespOrBuilder {
     // Use GetColumnsResp.newBuilder() to construct.
-    private GetColumnsResp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetColumnsResp(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetColumnsResp() {
-      status_ = 0;
-      columns_ = java.util.Collections.emptyList();
+    private GetColumnsResp(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetColumnsResp defaultInstance;
+    public static GetColumnsResp getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetColumnsResp getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetColumnsResp(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -26149,15 +23303,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.RequestStatus value = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                status_ = rawValue;
+                status_ = value;
               }
               break;
             }
@@ -26166,8 +23326,7 @@
                 columns_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.ColumnMetadata>();
                 mutable_bitField0_ |= 0x00000002;
               }
-              columns_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserProtos.ColumnMetadata.PARSER, extensionRegistry));
+              columns_.add(input.readMessage(org.apache.drill.exec.proto.UserProtos.ColumnMetadata.PARSER, extensionRegistry));
               break;
             }
             case 26: {
@@ -26183,20 +23342,13 @@
               bitField0_ |= 0x00000002;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
           columns_ = java.util.Collections.unmodifiableList(columns_);
@@ -26210,17 +23362,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsResp_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsResp_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetColumnsResp.class, org.apache.drill.exec.proto.UserProtos.GetColumnsResp.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetColumnsResp> PARSER =
+        new com.google.protobuf.AbstractParser<GetColumnsResp>() {
+      public GetColumnsResp parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetColumnsResp(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetColumnsResp> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.RequestStatus status = 1;
     public static final int STATUS_FIELD_NUMBER = 1;
-    private int status_;
+    private org.apache.drill.exec.proto.UserProtos.RequestStatus status_;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -26231,11 +23398,10 @@
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+      return status_;
     }
 
+    // repeated .exec.user.ColumnMetadata columns = 2;
     public static final int COLUMNS_FIELD_NUMBER = 2;
     private java.util.List<org.apache.drill.exec.proto.UserProtos.ColumnMetadata> columns_;
     /**
@@ -26271,6 +23437,7 @@
       return columns_.get(index);
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
     public static final int ERROR_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_;
     /**
@@ -26283,50 +23450,53 @@
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
 
+    private void initFields() {
+      status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
+      columns_ = java.util.Collections.emptyList();
+      error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, status_);
+        output.writeEnum(1, status_.getNumber());
       }
       for (int i = 0; i < columns_.size(); i++) {
         output.writeMessage(2, columns_.get(i));
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(3, getError());
+        output.writeMessage(3, error_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, status_);
+          .computeEnumSize(1, status_.getNumber());
       }
       for (int i = 0; i < columns_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
@@ -26334,74 +23504,20 @@
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getError());
+          .computeMessageSize(3, error_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetColumnsResp)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetColumnsResp other = (org.apache.drill.exec.proto.UserProtos.GetColumnsResp) obj;
-
-      boolean result = true;
-      result = result && (hasStatus() == other.hasStatus());
-      if (hasStatus()) {
-        result = result && status_ == other.status_;
-      }
-      result = result && getColumnsList()
-          .equals(other.getColumnsList());
-      result = result && (hasError() == other.hasError());
-      if (hasError()) {
-        result = result && getError()
-            .equals(other.getError());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasStatus()) {
-        hash = (37 * hash) + STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + status_;
-      }
-      if (getColumnsCount() > 0) {
-        hash = (37 * hash) + COLUMNS_FIELD_NUMBER;
-        hash = (53 * hash) + getColumnsList().hashCode();
-      }
-      if (hasError()) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getError().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -26425,80 +23541,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetColumnsResp prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetColumnsResp}
+     *
      * <pre>
+     *
      * Response message for GetColumnsReq.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetColumnsResp}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetColumnsResp)
-        org.apache.drill.exec.proto.UserProtos.GetColumnsRespOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetColumnsRespOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsResp_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsResp_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -26511,21 +23613,23 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getColumnsFieldBuilder();
           getErrorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         bitField0_ = (bitField0_ & ~0x00000001);
         if (columnsBuilder_ == null) {
           columns_ = java.util.Collections.emptyList();
@@ -26534,7 +23638,7 @@
           columnsBuilder_.clear();
         }
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
         } else {
           errorBuilder_.clear();
         }
@@ -26542,18 +23646,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetColumnsResp_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetColumnsResp getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetColumnsResp.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetColumnsResp build() {
         org.apache.drill.exec.proto.UserProtos.GetColumnsResp result = buildPartial();
         if (!result.isInitialized()) {
@@ -26562,7 +23667,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetColumnsResp buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetColumnsResp result = new org.apache.drill.exec.proto.UserProtos.GetColumnsResp(this);
         int from_bitField0_ = bitField0_;
@@ -26593,39 +23697,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetColumnsResp) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetColumnsResp)other);
@@ -26659,7 +23730,7 @@
               columns_ = other.columns_;
               bitField0_ = (bitField0_ & ~0x00000002);
               columnsBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getColumnsFieldBuilder() : null;
             } else {
               columnsBuilder_.addAllMessages(other.columns_);
@@ -26669,17 +23740,14 @@
         if (other.hasError()) {
           mergeError(other.getError());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -26689,7 +23757,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetColumnsResp) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -26699,7 +23767,8 @@
       }
       private int bitField0_;
 
-      private int status_ = 0;
+      // optional .exec.user.RequestStatus status = 1;
+      private org.apache.drill.exec.proto.UserProtos.RequestStatus status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
@@ -26710,9 +23779,7 @@
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+        return status_;
       }
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
@@ -26722,7 +23789,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        status_ = value.getNumber();
+        status_ = value;
         onChanged();
         return this;
       }
@@ -26731,11 +23798,12 @@
        */
       public Builder clearStatus() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         onChanged();
         return this;
       }
 
+      // repeated .exec.user.ColumnMetadata columns = 2;
       private java.util.List<org.apache.drill.exec.proto.UserProtos.ColumnMetadata> columns_ =
         java.util.Collections.emptyList();
       private void ensureColumnsIsMutable() {
@@ -26745,7 +23813,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.ColumnMetadata, org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder, org.apache.drill.exec.proto.UserProtos.ColumnMetadataOrBuilder> columnsBuilder_;
 
       /**
@@ -26877,8 +23945,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.ColumnMetadata> values) {
         if (columnsBuilder_ == null) {
           ensureColumnsIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, columns_);
+          super.addAll(values, columns_);
           onChanged();
         } else {
           columnsBuilder_.addAllMessages(values);
@@ -26961,11 +24028,11 @@
            getColumnsBuilderList() {
         return getColumnsFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.ColumnMetadata, org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder, org.apache.drill.exec.proto.UserProtos.ColumnMetadataOrBuilder> 
           getColumnsFieldBuilder() {
         if (columnsBuilder_ == null) {
-          columnsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          columnsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.ColumnMetadata, org.apache.drill.exec.proto.UserProtos.ColumnMetadata.Builder, org.apache.drill.exec.proto.UserProtos.ColumnMetadataOrBuilder>(
                   columns_,
                   ((bitField0_ & 0x00000002) == 0x00000002),
@@ -26976,8 +24043,9 @@
         return columnsBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.DrillPBError error = 3;
+      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> errorBuilder_;
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
@@ -26990,7 +24058,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
         if (errorBuilder_ == null) {
-          return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         } else {
           return errorBuilder_.getMessage();
         }
@@ -27031,7 +24099,6 @@
       public Builder mergeError(org.apache.drill.exec.proto.UserBitShared.DrillPBError value) {
         if (errorBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              error_ != null &&
               error_ != org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance()) {
             error_ =
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(error_).mergeFrom(value).buildPartial();
@@ -27050,7 +24117,7 @@
        */
       public Builder clearError() {
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
           onChanged();
         } else {
           errorBuilder_.clear();
@@ -27073,83 +24140,41 @@
         if (errorBuilder_ != null) {
           return errorBuilder_.getMessageOrBuilder();
         } else {
-          return error_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         }
       }
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> 
           getErrorFieldBuilder() {
         if (errorBuilder_ == null) {
-          errorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          errorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder>(
-                  getError(),
+                  error_,
                   getParentForChildren(),
                   isClean());
           error_ = null;
         }
         return errorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetColumnsResp)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetColumnsResp)
-    private static final org.apache.drill.exec.proto.UserProtos.GetColumnsResp DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetColumnsResp();
+      defaultInstance = new GetColumnsResp(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetColumnsResp getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetColumnsResp>
-        PARSER = new com.google.protobuf.AbstractParser<GetColumnsResp>() {
-      @java.lang.Override
-      public GetColumnsResp parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetColumnsResp(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetColumnsResp> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetColumnsResp> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetColumnsResp getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetColumnsResp)
   }
 
-  public interface CreatePreparedStatementReqOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.CreatePreparedStatementReq)
-      com.google.protobuf.MessageOrBuilder {
+  public interface CreatePreparedStatementReqOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string sql_query = 1;
     /**
      * <code>optional string sql_query = 1;</code>
      */
@@ -27165,40 +24190,45 @@
         getSqlQueryBytes();
   }
   /**
+   * Protobuf type {@code exec.user.CreatePreparedStatementReq}
+   *
    * <pre>
+   *
    * Request message to create a prepared statement. Currently prepared
    * statement only accepts a SQL query. Query parameter support is not
    * included in current implementation.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.CreatePreparedStatementReq}
    */
-  public  static final class CreatePreparedStatementReq extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.CreatePreparedStatementReq)
-      CreatePreparedStatementReqOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class CreatePreparedStatementReq extends
+      com.google.protobuf.GeneratedMessage
+      implements CreatePreparedStatementReqOrBuilder {
     // Use CreatePreparedStatementReq.newBuilder() to construct.
-    private CreatePreparedStatementReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private CreatePreparedStatementReq(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private CreatePreparedStatementReq() {
-      sqlQuery_ = "";
+    private CreatePreparedStatementReq(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final CreatePreparedStatementReq defaultInstance;
+    public static CreatePreparedStatementReq getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public CreatePreparedStatementReq getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private CreatePreparedStatementReq(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -27210,26 +24240,25 @@
             case 0:
               done = true;
               break;
-            case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
-              bitField0_ |= 0x00000001;
-              sqlQuery_ = bs;
-              break;
-            }
             default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
                 done = true;
               }
               break;
             }
+            case 10: {
+              bitField0_ |= 0x00000001;
+              sqlQuery_ = input.readBytes();
+              break;
+            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -27240,17 +24269,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementReq_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementReq_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.class, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<CreatePreparedStatementReq> PARSER =
+        new com.google.protobuf.AbstractParser<CreatePreparedStatementReq>() {
+      public CreatePreparedStatementReq parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new CreatePreparedStatementReq(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<CreatePreparedStatementReq> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string sql_query = 1;
     public static final int SQL_QUERY_FIELD_NUMBER = 1;
-    private volatile java.lang.Object sqlQuery_;
+    private java.lang.Object sqlQuery_;
     /**
      * <code>optional string sql_query = 1;</code>
      */
@@ -27291,87 +24335,49 @@
       }
     }
 
+    private void initFields() {
+      sqlQuery_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, sqlQuery_);
+        output.writeBytes(1, getSqlQueryBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, sqlQuery_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getSqlQueryBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq other = (org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq) obj;
-
-      boolean result = true;
-      result = result && (hasSqlQuery() == other.hasSqlQuery());
-      if (hasSqlQuery()) {
-        result = result && getSqlQuery()
-            .equals(other.getSqlQuery());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasSqlQuery()) {
-        hash = (37 * hash) + SQL_QUERY_FIELD_NUMBER;
-        hash = (53 * hash) + getSqlQuery().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -27395,82 +24401,68 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.CreatePreparedStatementReq}
+     *
      * <pre>
+     *
      * Request message to create a prepared statement. Currently prepared
      * statement only accepts a SQL query. Query parameter support is not
      * included in current implementation.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.CreatePreparedStatementReq}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.CreatePreparedStatementReq)
-        org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReqOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReqOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementReq_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementReq_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -27483,16 +24475,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         sqlQuery_ = "";
@@ -27500,18 +24494,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementReq_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq build() {
         org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq result = buildPartial();
         if (!result.isInitialized()) {
@@ -27520,7 +24515,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq buildPartial() {
         org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq result = new org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq(this);
         int from_bitField0_ = bitField0_;
@@ -27534,39 +24528,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq)other);
@@ -27583,17 +24544,14 @@
           sqlQuery_ = other.sqlQuery_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -27603,7 +24561,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -27613,6 +24571,7 @@
       }
       private int bitField0_;
 
+      // optional string sql_query = 1;
       private java.lang.Object sqlQuery_ = "";
       /**
        * <code>optional string sql_query = 1;</code>
@@ -27626,12 +24585,9 @@
       public java.lang.String getSqlQuery() {
         java.lang.Object ref = sqlQuery_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            sqlQuery_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          sqlQuery_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
@@ -27688,237 +24644,217 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.CreatePreparedStatementReq)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.CreatePreparedStatementReq)
-    private static final org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq();
+      defaultInstance = new CreatePreparedStatementReq(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<CreatePreparedStatementReq>
-        PARSER = new com.google.protobuf.AbstractParser<CreatePreparedStatementReq>() {
-      @java.lang.Override
-      public CreatePreparedStatementReq parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new CreatePreparedStatementReq(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<CreatePreparedStatementReq> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<CreatePreparedStatementReq> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementReq getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.CreatePreparedStatementReq)
   }
 
-  public interface ResultColumnMetadataOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.ResultColumnMetadata)
-      com.google.protobuf.MessageOrBuilder {
+  public interface ResultColumnMetadataOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional string catalog_name = 1;
     /**
+     * <code>optional string catalog_name = 1;</code>
+     *
      * <pre>
+     *
      * Designated column's catalog name. Empty string if not applicable.
      * Defaults to "DRILL" as drill has only one catalog.
      * </pre>
-     *
-     * <code>optional string catalog_name = 1;</code>
      */
     boolean hasCatalogName();
     /**
+     * <code>optional string catalog_name = 1;</code>
+     *
      * <pre>
+     *
      * Designated column's catalog name. Empty string if not applicable.
      * Defaults to "DRILL" as drill has only one catalog.
      * </pre>
-     *
-     * <code>optional string catalog_name = 1;</code>
      */
     java.lang.String getCatalogName();
     /**
+     * <code>optional string catalog_name = 1;</code>
+     *
      * <pre>
+     *
      * Designated column's catalog name. Empty string if not applicable.
      * Defaults to "DRILL" as drill has only one catalog.
      * </pre>
-     *
-     * <code>optional string catalog_name = 1;</code>
      */
     com.google.protobuf.ByteString
         getCatalogNameBytes();
 
+    // optional string schema_name = 2;
     /**
+     * <code>optional string schema_name = 2;</code>
+     *
      * <pre>
+     *
      * Designated column's schema name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
      * is lost. If we derive the schema from plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string schema_name = 2;</code>
      */
     boolean hasSchemaName();
     /**
+     * <code>optional string schema_name = 2;</code>
+     *
      * <pre>
+     *
      * Designated column's schema name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
      * is lost. If we derive the schema from plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string schema_name = 2;</code>
      */
     java.lang.String getSchemaName();
     /**
+     * <code>optional string schema_name = 2;</code>
+     *
      * <pre>
+     *
      * Designated column's schema name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
      * is lost. If we derive the schema from plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string schema_name = 2;</code>
      */
     com.google.protobuf.ByteString
         getSchemaNameBytes();
 
+    // optional string table_name = 3;
     /**
+     * <code>optional string table_name = 3;</code>
+     *
      * <pre>
+     *
      * Designated column's table name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and table info
      * is lost. If we derive the schema from query plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string table_name = 3;</code>
      */
     boolean hasTableName();
     /**
+     * <code>optional string table_name = 3;</code>
+     *
      * <pre>
+     *
      * Designated column's table name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and table info
      * is lost. If we derive the schema from query plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string table_name = 3;</code>
      */
     java.lang.String getTableName();
     /**
+     * <code>optional string table_name = 3;</code>
+     *
      * <pre>
+     *
      * Designated column's table name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and table info
      * is lost. If we derive the schema from query plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string table_name = 3;</code>
      */
     com.google.protobuf.ByteString
         getTableNameBytes();
 
+    // optional string column_name = 4;
     /**
+     * <code>optional string column_name = 4;</code>
+     *
      * <pre>
      * column name
      * </pre>
-     *
-     * <code>optional string column_name = 4;</code>
      */
     boolean hasColumnName();
     /**
+     * <code>optional string column_name = 4;</code>
+     *
      * <pre>
      * column name
      * </pre>
-     *
-     * <code>optional string column_name = 4;</code>
      */
     java.lang.String getColumnName();
     /**
+     * <code>optional string column_name = 4;</code>
+     *
      * <pre>
      * column name
      * </pre>
-     *
-     * <code>optional string column_name = 4;</code>
      */
     com.google.protobuf.ByteString
         getColumnNameBytes();
 
+    // optional string label = 5;
     /**
+     * <code>optional string label = 5;</code>
+     *
      * <pre>
+     *
      * Column label name for display or print purposes.
      * Ex. a column named "empName" might be labeled as "Employee Name".
      * </pre>
-     *
-     * <code>optional string label = 5;</code>
      */
     boolean hasLabel();
     /**
+     * <code>optional string label = 5;</code>
+     *
      * <pre>
+     *
      * Column label name for display or print purposes.
      * Ex. a column named "empName" might be labeled as "Employee Name".
      * </pre>
-     *
-     * <code>optional string label = 5;</code>
      */
     java.lang.String getLabel();
     /**
+     * <code>optional string label = 5;</code>
+     *
      * <pre>
+     *
      * Column label name for display or print purposes.
      * Ex. a column named "empName" might be labeled as "Employee Name".
      * </pre>
-     *
-     * <code>optional string label = 5;</code>
      */
     com.google.protobuf.ByteString
         getLabelBytes();
 
+    // optional string data_type = 6;
     /**
+     * <code>optional string data_type = 6;</code>
+     *
      * <pre>
+     *
      * Data type in string format. Value is SQL standard type.
      * </pre>
-     *
-     * <code>optional string data_type = 6;</code>
      */
     boolean hasDataType();
     /**
+     * <code>optional string data_type = 6;</code>
+     *
      * <pre>
+     *
      * Data type in string format. Value is SQL standard type.
      * </pre>
-     *
-     * <code>optional string data_type = 6;</code>
      */
     java.lang.String getDataType();
     /**
+     * <code>optional string data_type = 6;</code>
+     *
      * <pre>
+     *
      * Data type in string format. Value is SQL standard type.
      * </pre>
-     *
-     * <code>optional string data_type = 6;</code>
      */
     com.google.protobuf.ByteString
         getDataTypeBytes();
 
+    // optional bool is_nullable = 7;
     /**
      * <code>optional bool is_nullable = 7;</code>
      */
@@ -27928,8 +24864,12 @@
      */
     boolean getIsNullable();
 
+    // optional int32 precision = 8;
     /**
+     * <code>optional int32 precision = 8;</code>
+     *
      * <pre>
+     *
      * For numeric data, this is the maximum precision.
      * For character data, this is the length in characters.
      * For datetime datatypes, this is the length in characters of the String representation
@@ -27937,12 +24877,13 @@
      * For binary data, this is the length in bytes.
      * For all other types 0 is returned where the column size is not applicable.
      * </pre>
-     *
-     * <code>optional int32 precision = 8;</code>
      */
     boolean hasPrecision();
     /**
+     * <code>optional int32 precision = 8;</code>
+     *
      * <pre>
+     *
      * For numeric data, this is the maximum precision.
      * For character data, this is the length in characters.
      * For datetime datatypes, this is the length in characters of the String representation
@@ -27950,83 +24891,94 @@
      * For binary data, this is the length in bytes.
      * For all other types 0 is returned where the column size is not applicable.
      * </pre>
-     *
-     * <code>optional int32 precision = 8;</code>
      */
     int getPrecision();
 
+    // optional int32 scale = 9;
     /**
+     * <code>optional int32 scale = 9;</code>
+     *
      * <pre>
+     *
      * Column's number of digits to right of the decimal point.
      * 0 is returned for types where the scale is not applicable
      * </pre>
-     *
-     * <code>optional int32 scale = 9;</code>
      */
     boolean hasScale();
     /**
+     * <code>optional int32 scale = 9;</code>
+     *
      * <pre>
+     *
      * Column's number of digits to right of the decimal point.
      * 0 is returned for types where the scale is not applicable
      * </pre>
-     *
-     * <code>optional int32 scale = 9;</code>
      */
     int getScale();
 
+    // optional bool signed = 10;
     /**
+     * <code>optional bool signed = 10;</code>
+     *
      * <pre>
+     *
      * Indicates whether values in the designated column are signed numbers.
      * </pre>
-     *
-     * <code>optional bool signed = 10;</code>
      */
     boolean hasSigned();
     /**
+     * <code>optional bool signed = 10;</code>
+     *
      * <pre>
+     *
      * Indicates whether values in the designated column are signed numbers.
      * </pre>
-     *
-     * <code>optional bool signed = 10;</code>
      */
     boolean getSigned();
 
+    // optional int32 display_size = 11;
     /**
+     * <code>optional int32 display_size = 11;</code>
+     *
      * <pre>
+     *
      * Maximum number of characters required to display data from the column.
      * </pre>
-     *
-     * <code>optional int32 display_size = 11;</code>
      */
     boolean hasDisplaySize();
     /**
+     * <code>optional int32 display_size = 11;</code>
+     *
      * <pre>
+     *
      * Maximum number of characters required to display data from the column.
      * </pre>
-     *
-     * <code>optional int32 display_size = 11;</code>
      */
     int getDisplaySize();
 
+    // optional bool is_aliased = 12;
     /**
+     * <code>optional bool is_aliased = 12;</code>
+     *
      * <pre>
+     *
      * Is the column an aliased column. Initial implementation defaults to
      * true as we derive schema from LIMIT 0 query and not the query plan.
      * </pre>
-     *
-     * <code>optional bool is_aliased = 12;</code>
      */
     boolean hasIsAliased();
     /**
+     * <code>optional bool is_aliased = 12;</code>
+     *
      * <pre>
+     *
      * Is the column an aliased column. Initial implementation defaults to
      * true as we derive schema from LIMIT 0 query and not the query plan.
      * </pre>
-     *
-     * <code>optional bool is_aliased = 12;</code>
      */
     boolean getIsAliased();
 
+    // optional .exec.user.ColumnSearchability searchability = 13;
     /**
      * <code>optional .exec.user.ColumnSearchability searchability = 13;</code>
      */
@@ -28036,174 +24988,180 @@
      */
     org.apache.drill.exec.proto.UserProtos.ColumnSearchability getSearchability();
 
+    // optional .exec.user.ColumnUpdatability updatability = 14;
     /**
+     * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
+     *
      * <pre>
+     *
      * Defaults to READ_ONLY
      * </pre>
-     *
-     * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
      */
     boolean hasUpdatability();
     /**
+     * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
+     *
      * <pre>
+     *
      * Defaults to READ_ONLY
      * </pre>
-     *
-     * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
      */
     org.apache.drill.exec.proto.UserProtos.ColumnUpdatability getUpdatability();
 
+    // optional bool auto_increment = 15;
     /**
+     * <code>optional bool auto_increment = 15;</code>
+     *
      * <pre>
+     *
      * whether the designated column is automatically incremented.
      * </pre>
-     *
-     * <code>optional bool auto_increment = 15;</code>
      */
     boolean hasAutoIncrement();
     /**
+     * <code>optional bool auto_increment = 15;</code>
+     *
      * <pre>
+     *
      * whether the designated column is automatically incremented.
      * </pre>
-     *
-     * <code>optional bool auto_increment = 15;</code>
      */
     boolean getAutoIncrement();
 
+    // optional bool case_sensitivity = 16;
     /**
+     * <code>optional bool case_sensitivity = 16;</code>
+     *
      * <pre>
+     *
      * Whether column's case matters for collations and comparisons. Defaults to true.
      * </pre>
-     *
-     * <code>optional bool case_sensitivity = 16;</code>
      */
     boolean hasCaseSensitivity();
     /**
+     * <code>optional bool case_sensitivity = 16;</code>
+     *
      * <pre>
+     *
      * Whether column's case matters for collations and comparisons. Defaults to true.
      * </pre>
-     *
-     * <code>optional bool case_sensitivity = 16;</code>
      */
     boolean getCaseSensitivity();
 
+    // optional bool sortable = 17;
     /**
+     * <code>optional bool sortable = 17;</code>
+     *
      * <pre>
+     *
      * whether the column can be used in ORDER BY clause
      * </pre>
-     *
-     * <code>optional bool sortable = 17;</code>
      */
     boolean hasSortable();
     /**
+     * <code>optional bool sortable = 17;</code>
+     *
      * <pre>
+     *
      * whether the column can be used in ORDER BY clause
      * </pre>
-     *
-     * <code>optional bool sortable = 17;</code>
      */
     boolean getSortable();
 
+    // optional string class_name = 18;
     /**
+     * <code>optional string class_name = 18;</code>
+     *
      * <pre>
+     *
      * A fully-qualified name of the Java class whose instances are created
      * if the method ResultSet.getObject is called to retrieve
      * a value from the column. Applicable only to JDBC clients.
      * </pre>
-     *
-     * <code>optional string class_name = 18;</code>
      */
     boolean hasClassName();
     /**
+     * <code>optional string class_name = 18;</code>
+     *
      * <pre>
+     *
      * A fully-qualified name of the Java class whose instances are created
      * if the method ResultSet.getObject is called to retrieve
      * a value from the column. Applicable only to JDBC clients.
      * </pre>
-     *
-     * <code>optional string class_name = 18;</code>
      */
     java.lang.String getClassName();
     /**
+     * <code>optional string class_name = 18;</code>
+     *
      * <pre>
+     *
      * A fully-qualified name of the Java class whose instances are created
      * if the method ResultSet.getObject is called to retrieve
      * a value from the column. Applicable only to JDBC clients.
      * </pre>
-     *
-     * <code>optional string class_name = 18;</code>
      */
     com.google.protobuf.ByteString
         getClassNameBytes();
 
+    // optional bool is_currency = 20;
     /**
+     * <code>optional bool is_currency = 20;</code>
+     *
      * <pre>
+     *
      * Is the data type a currency type? For JDBC only.
      * </pre>
-     *
-     * <code>optional bool is_currency = 20;</code>
      */
     boolean hasIsCurrency();
     /**
+     * <code>optional bool is_currency = 20;</code>
+     *
      * <pre>
+     *
      * Is the data type a currency type? For JDBC only.
      * </pre>
-     *
-     * <code>optional bool is_currency = 20;</code>
      */
     boolean getIsCurrency();
   }
   /**
+   * Protobuf type {@code exec.user.ResultColumnMetadata}
+   *
    * <pre>
+   *
    * Metadata of a column in query result set
    * </pre>
-   *
-   * Protobuf type {@code exec.user.ResultColumnMetadata}
    */
-  public  static final class ResultColumnMetadata extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.ResultColumnMetadata)
-      ResultColumnMetadataOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class ResultColumnMetadata extends
+      com.google.protobuf.GeneratedMessage
+      implements ResultColumnMetadataOrBuilder {
     // Use ResultColumnMetadata.newBuilder() to construct.
-    private ResultColumnMetadata(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private ResultColumnMetadata(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private ResultColumnMetadata() {
-      catalogName_ = "";
-      schemaName_ = "";
-      tableName_ = "";
-      columnName_ = "";
-      label_ = "";
-      dataType_ = "";
-      isNullable_ = false;
-      precision_ = 0;
-      scale_ = 0;
-      signed_ = false;
-      displaySize_ = 0;
-      isAliased_ = false;
-      searchability_ = 0;
-      updatability_ = 0;
-      autoIncrement_ = false;
-      caseSensitivity_ = false;
-      sortable_ = false;
-      className_ = "";
-      isCurrency_ = false;
+    private ResultColumnMetadata(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final ResultColumnMetadata defaultInstance;
+    public static ResultColumnMetadata getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public ResultColumnMetadata getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private ResultColumnMetadata(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -28215,40 +25173,41 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000001;
-              catalogName_ = bs;
+              catalogName_ = input.readBytes();
               break;
             }
             case 18: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000002;
-              schemaName_ = bs;
+              schemaName_ = input.readBytes();
               break;
             }
             case 26: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000004;
-              tableName_ = bs;
+              tableName_ = input.readBytes();
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              columnName_ = bs;
+              columnName_ = input.readBytes();
               break;
             }
             case 42: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000010;
-              label_ = bs;
+              label_ = input.readBytes();
               break;
             }
             case 50: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000020;
-              dataType_ = bs;
+              dataType_ = input.readBytes();
               break;
             }
             case 56: {
@@ -28283,25 +25242,23 @@
             }
             case 104: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.ColumnSearchability value = org.apache.drill.exec.proto.UserProtos.ColumnSearchability.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(13, rawValue);
               } else {
                 bitField0_ |= 0x00001000;
-                searchability_ = rawValue;
+                searchability_ = value;
               }
               break;
             }
             case 112: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.ColumnUpdatability value = org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(14, rawValue);
               } else {
                 bitField0_ |= 0x00002000;
-                updatability_ = rawValue;
+                updatability_ = value;
               }
               break;
             }
@@ -28321,9 +25278,8 @@
               break;
             }
             case 146: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00020000;
-              className_ = bs;
+              className_ = input.readBytes();
               break;
             }
             case 160: {
@@ -28331,20 +25287,13 @@
               isCurrency_ = input.readBool();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -28355,35 +25304,52 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ResultColumnMetadata_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ResultColumnMetadata_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.class, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<ResultColumnMetadata> PARSER =
+        new com.google.protobuf.AbstractParser<ResultColumnMetadata>() {
+      public ResultColumnMetadata parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new ResultColumnMetadata(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<ResultColumnMetadata> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional string catalog_name = 1;
     public static final int CATALOG_NAME_FIELD_NUMBER = 1;
-    private volatile java.lang.Object catalogName_;
+    private java.lang.Object catalogName_;
     /**
+     * <code>optional string catalog_name = 1;</code>
+     *
      * <pre>
+     *
      * Designated column's catalog name. Empty string if not applicable.
      * Defaults to "DRILL" as drill has only one catalog.
      * </pre>
-     *
-     * <code>optional string catalog_name = 1;</code>
      */
     public boolean hasCatalogName() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional string catalog_name = 1;</code>
+     *
      * <pre>
+     *
      * Designated column's catalog name. Empty string if not applicable.
      * Defaults to "DRILL" as drill has only one catalog.
      * </pre>
-     *
-     * <code>optional string catalog_name = 1;</code>
      */
     public java.lang.String getCatalogName() {
       java.lang.Object ref = catalogName_;
@@ -28400,12 +25366,13 @@
       }
     }
     /**
+     * <code>optional string catalog_name = 1;</code>
+     *
      * <pre>
+     *
      * Designated column's catalog name. Empty string if not applicable.
      * Defaults to "DRILL" as drill has only one catalog.
      * </pre>
-     *
-     * <code>optional string catalog_name = 1;</code>
      */
     public com.google.protobuf.ByteString
         getCatalogNameBytes() {
@@ -28421,28 +25388,31 @@
       }
     }
 
+    // optional string schema_name = 2;
     public static final int SCHEMA_NAME_FIELD_NUMBER = 2;
-    private volatile java.lang.Object schemaName_;
+    private java.lang.Object schemaName_;
     /**
+     * <code>optional string schema_name = 2;</code>
+     *
      * <pre>
+     *
      * Designated column's schema name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
      * is lost. If we derive the schema from plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string schema_name = 2;</code>
      */
     public boolean hasSchemaName() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
+     * <code>optional string schema_name = 2;</code>
+     *
      * <pre>
+     *
      * Designated column's schema name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
      * is lost. If we derive the schema from plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string schema_name = 2;</code>
      */
     public java.lang.String getSchemaName() {
       java.lang.Object ref = schemaName_;
@@ -28459,13 +25429,14 @@
       }
     }
     /**
+     * <code>optional string schema_name = 2;</code>
+     *
      * <pre>
+     *
      * Designated column's schema name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
      * is lost. If we derive the schema from plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string schema_name = 2;</code>
      */
     public com.google.protobuf.ByteString
         getSchemaNameBytes() {
@@ -28481,28 +25452,31 @@
       }
     }
 
+    // optional string table_name = 3;
     public static final int TABLE_NAME_FIELD_NUMBER = 3;
-    private volatile java.lang.Object tableName_;
+    private java.lang.Object tableName_;
     /**
+     * <code>optional string table_name = 3;</code>
+     *
      * <pre>
+     *
      * Designated column's table name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and table info
      * is lost. If we derive the schema from query plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string table_name = 3;</code>
      */
     public boolean hasTableName() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
+     * <code>optional string table_name = 3;</code>
+     *
      * <pre>
+     *
      * Designated column's table name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and table info
      * is lost. If we derive the schema from query plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string table_name = 3;</code>
      */
     public java.lang.String getTableName() {
       java.lang.Object ref = tableName_;
@@ -28519,13 +25493,14 @@
       }
     }
     /**
+     * <code>optional string table_name = 3;</code>
+     *
      * <pre>
+     *
      * Designated column's table name. Not set if not applicable. Initial implementation
      * defaults to no value as we use LIMIT 0 queries to get the schema and table info
      * is lost. If we derive the schema from query plan, we may get the right value.
      * </pre>
-     *
-     * <code>optional string table_name = 3;</code>
      */
     public com.google.protobuf.ByteString
         getTableNameBytes() {
@@ -28541,24 +25516,25 @@
       }
     }
 
+    // optional string column_name = 4;
     public static final int COLUMN_NAME_FIELD_NUMBER = 4;
-    private volatile java.lang.Object columnName_;
+    private java.lang.Object columnName_;
     /**
+     * <code>optional string column_name = 4;</code>
+     *
      * <pre>
      * column name
      * </pre>
-     *
-     * <code>optional string column_name = 4;</code>
      */
     public boolean hasColumnName() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional string column_name = 4;</code>
+     *
      * <pre>
      * column name
      * </pre>
-     *
-     * <code>optional string column_name = 4;</code>
      */
     public java.lang.String getColumnName() {
       java.lang.Object ref = columnName_;
@@ -28575,11 +25551,11 @@
       }
     }
     /**
+     * <code>optional string column_name = 4;</code>
+     *
      * <pre>
      * column name
      * </pre>
-     *
-     * <code>optional string column_name = 4;</code>
      */
     public com.google.protobuf.ByteString
         getColumnNameBytes() {
@@ -28595,26 +25571,29 @@
       }
     }
 
+    // optional string label = 5;
     public static final int LABEL_FIELD_NUMBER = 5;
-    private volatile java.lang.Object label_;
+    private java.lang.Object label_;
     /**
+     * <code>optional string label = 5;</code>
+     *
      * <pre>
+     *
      * Column label name for display or print purposes.
      * Ex. a column named "empName" might be labeled as "Employee Name".
      * </pre>
-     *
-     * <code>optional string label = 5;</code>
      */
     public boolean hasLabel() {
       return ((bitField0_ & 0x00000010) == 0x00000010);
     }
     /**
+     * <code>optional string label = 5;</code>
+     *
      * <pre>
+     *
      * Column label name for display or print purposes.
      * Ex. a column named "empName" might be labeled as "Employee Name".
      * </pre>
-     *
-     * <code>optional string label = 5;</code>
      */
     public java.lang.String getLabel() {
       java.lang.Object ref = label_;
@@ -28631,12 +25610,13 @@
       }
     }
     /**
+     * <code>optional string label = 5;</code>
+     *
      * <pre>
+     *
      * Column label name for display or print purposes.
      * Ex. a column named "empName" might be labeled as "Employee Name".
      * </pre>
-     *
-     * <code>optional string label = 5;</code>
      */
     public com.google.protobuf.ByteString
         getLabelBytes() {
@@ -28652,24 +25632,27 @@
       }
     }
 
+    // optional string data_type = 6;
     public static final int DATA_TYPE_FIELD_NUMBER = 6;
-    private volatile java.lang.Object dataType_;
+    private java.lang.Object dataType_;
     /**
+     * <code>optional string data_type = 6;</code>
+     *
      * <pre>
+     *
      * Data type in string format. Value is SQL standard type.
      * </pre>
-     *
-     * <code>optional string data_type = 6;</code>
      */
     public boolean hasDataType() {
       return ((bitField0_ & 0x00000020) == 0x00000020);
     }
     /**
+     * <code>optional string data_type = 6;</code>
+     *
      * <pre>
+     *
      * Data type in string format. Value is SQL standard type.
      * </pre>
-     *
-     * <code>optional string data_type = 6;</code>
      */
     public java.lang.String getDataType() {
       java.lang.Object ref = dataType_;
@@ -28686,11 +25669,12 @@
       }
     }
     /**
+     * <code>optional string data_type = 6;</code>
+     *
      * <pre>
+     *
      * Data type in string format. Value is SQL standard type.
      * </pre>
-     *
-     * <code>optional string data_type = 6;</code>
      */
     public com.google.protobuf.ByteString
         getDataTypeBytes() {
@@ -28706,6 +25690,7 @@
       }
     }
 
+    // optional bool is_nullable = 7;
     public static final int IS_NULLABLE_FIELD_NUMBER = 7;
     private boolean isNullable_;
     /**
@@ -28721,10 +25706,14 @@
       return isNullable_;
     }
 
+    // optional int32 precision = 8;
     public static final int PRECISION_FIELD_NUMBER = 8;
     private int precision_;
     /**
+     * <code>optional int32 precision = 8;</code>
+     *
      * <pre>
+     *
      * For numeric data, this is the maximum precision.
      * For character data, this is the length in characters.
      * For datetime datatypes, this is the length in characters of the String representation
@@ -28732,14 +25721,15 @@
      * For binary data, this is the length in bytes.
      * For all other types 0 is returned where the column size is not applicable.
      * </pre>
-     *
-     * <code>optional int32 precision = 8;</code>
      */
     public boolean hasPrecision() {
       return ((bitField0_ & 0x00000080) == 0x00000080);
     }
     /**
+     * <code>optional int32 precision = 8;</code>
+     *
      * <pre>
+     *
      * For numeric data, this is the maximum precision.
      * For character data, this is the length in characters.
      * For datetime datatypes, this is the length in characters of the String representation
@@ -28747,111 +25737,122 @@
      * For binary data, this is the length in bytes.
      * For all other types 0 is returned where the column size is not applicable.
      * </pre>
-     *
-     * <code>optional int32 precision = 8;</code>
      */
     public int getPrecision() {
       return precision_;
     }
 
+    // optional int32 scale = 9;
     public static final int SCALE_FIELD_NUMBER = 9;
     private int scale_;
     /**
+     * <code>optional int32 scale = 9;</code>
+     *
      * <pre>
+     *
      * Column's number of digits to right of the decimal point.
      * 0 is returned for types where the scale is not applicable
      * </pre>
-     *
-     * <code>optional int32 scale = 9;</code>
      */
     public boolean hasScale() {
       return ((bitField0_ & 0x00000100) == 0x00000100);
     }
     /**
+     * <code>optional int32 scale = 9;</code>
+     *
      * <pre>
+     *
      * Column's number of digits to right of the decimal point.
      * 0 is returned for types where the scale is not applicable
      * </pre>
-     *
-     * <code>optional int32 scale = 9;</code>
      */
     public int getScale() {
       return scale_;
     }
 
+    // optional bool signed = 10;
     public static final int SIGNED_FIELD_NUMBER = 10;
     private boolean signed_;
     /**
+     * <code>optional bool signed = 10;</code>
+     *
      * <pre>
+     *
      * Indicates whether values in the designated column are signed numbers.
      * </pre>
-     *
-     * <code>optional bool signed = 10;</code>
      */
     public boolean hasSigned() {
       return ((bitField0_ & 0x00000200) == 0x00000200);
     }
     /**
+     * <code>optional bool signed = 10;</code>
+     *
      * <pre>
+     *
      * Indicates whether values in the designated column are signed numbers.
      * </pre>
-     *
-     * <code>optional bool signed = 10;</code>
      */
     public boolean getSigned() {
       return signed_;
     }
 
+    // optional int32 display_size = 11;
     public static final int DISPLAY_SIZE_FIELD_NUMBER = 11;
     private int displaySize_;
     /**
+     * <code>optional int32 display_size = 11;</code>
+     *
      * <pre>
+     *
      * Maximum number of characters required to display data from the column.
      * </pre>
-     *
-     * <code>optional int32 display_size = 11;</code>
      */
     public boolean hasDisplaySize() {
       return ((bitField0_ & 0x00000400) == 0x00000400);
     }
     /**
+     * <code>optional int32 display_size = 11;</code>
+     *
      * <pre>
+     *
      * Maximum number of characters required to display data from the column.
      * </pre>
-     *
-     * <code>optional int32 display_size = 11;</code>
      */
     public int getDisplaySize() {
       return displaySize_;
     }
 
+    // optional bool is_aliased = 12;
     public static final int IS_ALIASED_FIELD_NUMBER = 12;
     private boolean isAliased_;
     /**
+     * <code>optional bool is_aliased = 12;</code>
+     *
      * <pre>
+     *
      * Is the column an aliased column. Initial implementation defaults to
      * true as we derive schema from LIMIT 0 query and not the query plan.
      * </pre>
-     *
-     * <code>optional bool is_aliased = 12;</code>
      */
     public boolean hasIsAliased() {
       return ((bitField0_ & 0x00000800) == 0x00000800);
     }
     /**
+     * <code>optional bool is_aliased = 12;</code>
+     *
      * <pre>
+     *
      * Is the column an aliased column. Initial implementation defaults to
      * true as we derive schema from LIMIT 0 query and not the query plan.
      * </pre>
-     *
-     * <code>optional bool is_aliased = 12;</code>
      */
     public boolean getIsAliased() {
       return isAliased_;
     }
 
+    // optional .exec.user.ColumnSearchability searchability = 13;
     public static final int SEARCHABILITY_FIELD_NUMBER = 13;
-    private int searchability_;
+    private org.apache.drill.exec.proto.UserProtos.ColumnSearchability searchability_;
     /**
      * <code>optional .exec.user.ColumnSearchability searchability = 13;</code>
      */
@@ -28862,127 +25863,138 @@
      * <code>optional .exec.user.ColumnSearchability searchability = 13;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.ColumnSearchability getSearchability() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.ColumnSearchability result = org.apache.drill.exec.proto.UserProtos.ColumnSearchability.valueOf(searchability_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.ColumnSearchability.UNKNOWN_SEARCHABILITY : result;
+      return searchability_;
     }
 
+    // optional .exec.user.ColumnUpdatability updatability = 14;
     public static final int UPDATABILITY_FIELD_NUMBER = 14;
-    private int updatability_;
+    private org.apache.drill.exec.proto.UserProtos.ColumnUpdatability updatability_;
     /**
+     * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
+     *
      * <pre>
+     *
      * Defaults to READ_ONLY
      * </pre>
-     *
-     * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
      */
     public boolean hasUpdatability() {
       return ((bitField0_ & 0x00002000) == 0x00002000);
     }
     /**
+     * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
+     *
      * <pre>
+     *
      * Defaults to READ_ONLY
      * </pre>
-     *
-     * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.ColumnUpdatability getUpdatability() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.ColumnUpdatability result = org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.valueOf(updatability_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.UNKNOWN_UPDATABILITY : result;
+      return updatability_;
     }
 
+    // optional bool auto_increment = 15;
     public static final int AUTO_INCREMENT_FIELD_NUMBER = 15;
     private boolean autoIncrement_;
     /**
+     * <code>optional bool auto_increment = 15;</code>
+     *
      * <pre>
+     *
      * whether the designated column is automatically incremented.
      * </pre>
-     *
-     * <code>optional bool auto_increment = 15;</code>
      */
     public boolean hasAutoIncrement() {
       return ((bitField0_ & 0x00004000) == 0x00004000);
     }
     /**
+     * <code>optional bool auto_increment = 15;</code>
+     *
      * <pre>
+     *
      * whether the designated column is automatically incremented.
      * </pre>
-     *
-     * <code>optional bool auto_increment = 15;</code>
      */
     public boolean getAutoIncrement() {
       return autoIncrement_;
     }
 
+    // optional bool case_sensitivity = 16;
     public static final int CASE_SENSITIVITY_FIELD_NUMBER = 16;
     private boolean caseSensitivity_;
     /**
+     * <code>optional bool case_sensitivity = 16;</code>
+     *
      * <pre>
+     *
      * Whether column's case matters for collations and comparisons. Defaults to true.
      * </pre>
-     *
-     * <code>optional bool case_sensitivity = 16;</code>
      */
     public boolean hasCaseSensitivity() {
       return ((bitField0_ & 0x00008000) == 0x00008000);
     }
     /**
+     * <code>optional bool case_sensitivity = 16;</code>
+     *
      * <pre>
+     *
      * Whether column's case matters for collations and comparisons. Defaults to true.
      * </pre>
-     *
-     * <code>optional bool case_sensitivity = 16;</code>
      */
     public boolean getCaseSensitivity() {
       return caseSensitivity_;
     }
 
+    // optional bool sortable = 17;
     public static final int SORTABLE_FIELD_NUMBER = 17;
     private boolean sortable_;
     /**
+     * <code>optional bool sortable = 17;</code>
+     *
      * <pre>
+     *
      * whether the column can be used in ORDER BY clause
      * </pre>
-     *
-     * <code>optional bool sortable = 17;</code>
      */
     public boolean hasSortable() {
       return ((bitField0_ & 0x00010000) == 0x00010000);
     }
     /**
+     * <code>optional bool sortable = 17;</code>
+     *
      * <pre>
+     *
      * whether the column can be used in ORDER BY clause
      * </pre>
-     *
-     * <code>optional bool sortable = 17;</code>
      */
     public boolean getSortable() {
       return sortable_;
     }
 
+    // optional string class_name = 18;
     public static final int CLASS_NAME_FIELD_NUMBER = 18;
-    private volatile java.lang.Object className_;
+    private java.lang.Object className_;
     /**
+     * <code>optional string class_name = 18;</code>
+     *
      * <pre>
+     *
      * A fully-qualified name of the Java class whose instances are created
      * if the method ResultSet.getObject is called to retrieve
      * a value from the column. Applicable only to JDBC clients.
      * </pre>
-     *
-     * <code>optional string class_name = 18;</code>
      */
     public boolean hasClassName() {
       return ((bitField0_ & 0x00020000) == 0x00020000);
     }
     /**
+     * <code>optional string class_name = 18;</code>
+     *
      * <pre>
+     *
      * A fully-qualified name of the Java class whose instances are created
      * if the method ResultSet.getObject is called to retrieve
      * a value from the column. Applicable only to JDBC clients.
      * </pre>
-     *
-     * <code>optional string class_name = 18;</code>
      */
     public java.lang.String getClassName() {
       java.lang.Object ref = className_;
@@ -28999,13 +26011,14 @@
       }
     }
     /**
+     * <code>optional string class_name = 18;</code>
+     *
      * <pre>
+     *
      * A fully-qualified name of the Java class whose instances are created
      * if the method ResultSet.getObject is called to retrieve
      * a value from the column. Applicable only to JDBC clients.
      * </pre>
-     *
-     * <code>optional string class_name = 18;</code>
      */
     public com.google.protobuf.ByteString
         getClassNameBytes() {
@@ -29021,60 +26034,82 @@
       }
     }
 
+    // optional bool is_currency = 20;
     public static final int IS_CURRENCY_FIELD_NUMBER = 20;
     private boolean isCurrency_;
     /**
+     * <code>optional bool is_currency = 20;</code>
+     *
      * <pre>
+     *
      * Is the data type a currency type? For JDBC only.
      * </pre>
-     *
-     * <code>optional bool is_currency = 20;</code>
      */
     public boolean hasIsCurrency() {
       return ((bitField0_ & 0x00040000) == 0x00040000);
     }
     /**
+     * <code>optional bool is_currency = 20;</code>
+     *
      * <pre>
+     *
      * Is the data type a currency type? For JDBC only.
      * </pre>
-     *
-     * <code>optional bool is_currency = 20;</code>
      */
     public boolean getIsCurrency() {
       return isCurrency_;
     }
 
+    private void initFields() {
+      catalogName_ = "";
+      schemaName_ = "";
+      tableName_ = "";
+      columnName_ = "";
+      label_ = "";
+      dataType_ = "";
+      isNullable_ = false;
+      precision_ = 0;
+      scale_ = 0;
+      signed_ = false;
+      displaySize_ = 0;
+      isAliased_ = false;
+      searchability_ = org.apache.drill.exec.proto.UserProtos.ColumnSearchability.UNKNOWN_SEARCHABILITY;
+      updatability_ = org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.UNKNOWN_UPDATABILITY;
+      autoIncrement_ = false;
+      caseSensitivity_ = false;
+      sortable_ = false;
+      className_ = "";
+      isCurrency_ = false;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 1, catalogName_);
+        output.writeBytes(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 2, schemaName_);
+        output.writeBytes(2, getSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, tableName_);
+        output.writeBytes(3, getTableNameBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, columnName_);
+        output.writeBytes(4, getColumnNameBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, label_);
+        output.writeBytes(5, getLabelBytes());
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 6, dataType_);
+        output.writeBytes(6, getDataTypeBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         output.writeBool(7, isNullable_);
@@ -29095,10 +26130,10 @@
         output.writeBool(12, isAliased_);
       }
       if (((bitField0_ & 0x00001000) == 0x00001000)) {
-        output.writeEnum(13, searchability_);
+        output.writeEnum(13, searchability_.getNumber());
       }
       if (((bitField0_ & 0x00002000) == 0x00002000)) {
-        output.writeEnum(14, updatability_);
+        output.writeEnum(14, updatability_.getNumber());
       }
       if (((bitField0_ & 0x00004000) == 0x00004000)) {
         output.writeBool(15, autoIncrement_);
@@ -29110,37 +26145,43 @@
         output.writeBool(17, sortable_);
       }
       if (((bitField0_ & 0x00020000) == 0x00020000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 18, className_);
+        output.writeBytes(18, getClassNameBytes());
       }
       if (((bitField0_ & 0x00040000) == 0x00040000)) {
         output.writeBool(20, isCurrency_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, catalogName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(1, getCatalogNameBytes());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, schemaName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(2, getSchemaNameBytes());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, tableName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(3, getTableNameBytes());
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, columnName_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getColumnNameBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, label_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(5, getLabelBytes());
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, dataType_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(6, getDataTypeBytes());
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         size += com.google.protobuf.CodedOutputStream
@@ -29168,11 +26209,11 @@
       }
       if (((bitField0_ & 0x00001000) == 0x00001000)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(13, searchability_);
+          .computeEnumSize(13, searchability_.getNumber());
       }
       if (((bitField0_ & 0x00002000) == 0x00002000)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(14, updatability_);
+          .computeEnumSize(14, updatability_.getNumber());
       }
       if (((bitField0_ & 0x00004000) == 0x00004000)) {
         size += com.google.protobuf.CodedOutputStream
@@ -29187,231 +26228,25 @@
           .computeBoolSize(17, sortable_);
       }
       if (((bitField0_ & 0x00020000) == 0x00020000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(18, className_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(18, getClassNameBytes());
       }
       if (((bitField0_ & 0x00040000) == 0x00040000)) {
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(20, isCurrency_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata other = (org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata) obj;
-
-      boolean result = true;
-      result = result && (hasCatalogName() == other.hasCatalogName());
-      if (hasCatalogName()) {
-        result = result && getCatalogName()
-            .equals(other.getCatalogName());
-      }
-      result = result && (hasSchemaName() == other.hasSchemaName());
-      if (hasSchemaName()) {
-        result = result && getSchemaName()
-            .equals(other.getSchemaName());
-      }
-      result = result && (hasTableName() == other.hasTableName());
-      if (hasTableName()) {
-        result = result && getTableName()
-            .equals(other.getTableName());
-      }
-      result = result && (hasColumnName() == other.hasColumnName());
-      if (hasColumnName()) {
-        result = result && getColumnName()
-            .equals(other.getColumnName());
-      }
-      result = result && (hasLabel() == other.hasLabel());
-      if (hasLabel()) {
-        result = result && getLabel()
-            .equals(other.getLabel());
-      }
-      result = result && (hasDataType() == other.hasDataType());
-      if (hasDataType()) {
-        result = result && getDataType()
-            .equals(other.getDataType());
-      }
-      result = result && (hasIsNullable() == other.hasIsNullable());
-      if (hasIsNullable()) {
-        result = result && (getIsNullable()
-            == other.getIsNullable());
-      }
-      result = result && (hasPrecision() == other.hasPrecision());
-      if (hasPrecision()) {
-        result = result && (getPrecision()
-            == other.getPrecision());
-      }
-      result = result && (hasScale() == other.hasScale());
-      if (hasScale()) {
-        result = result && (getScale()
-            == other.getScale());
-      }
-      result = result && (hasSigned() == other.hasSigned());
-      if (hasSigned()) {
-        result = result && (getSigned()
-            == other.getSigned());
-      }
-      result = result && (hasDisplaySize() == other.hasDisplaySize());
-      if (hasDisplaySize()) {
-        result = result && (getDisplaySize()
-            == other.getDisplaySize());
-      }
-      result = result && (hasIsAliased() == other.hasIsAliased());
-      if (hasIsAliased()) {
-        result = result && (getIsAliased()
-            == other.getIsAliased());
-      }
-      result = result && (hasSearchability() == other.hasSearchability());
-      if (hasSearchability()) {
-        result = result && searchability_ == other.searchability_;
-      }
-      result = result && (hasUpdatability() == other.hasUpdatability());
-      if (hasUpdatability()) {
-        result = result && updatability_ == other.updatability_;
-      }
-      result = result && (hasAutoIncrement() == other.hasAutoIncrement());
-      if (hasAutoIncrement()) {
-        result = result && (getAutoIncrement()
-            == other.getAutoIncrement());
-      }
-      result = result && (hasCaseSensitivity() == other.hasCaseSensitivity());
-      if (hasCaseSensitivity()) {
-        result = result && (getCaseSensitivity()
-            == other.getCaseSensitivity());
-      }
-      result = result && (hasSortable() == other.hasSortable());
-      if (hasSortable()) {
-        result = result && (getSortable()
-            == other.getSortable());
-      }
-      result = result && (hasClassName() == other.hasClassName());
-      if (hasClassName()) {
-        result = result && getClassName()
-            .equals(other.getClassName());
-      }
-      result = result && (hasIsCurrency() == other.hasIsCurrency());
-      if (hasIsCurrency()) {
-        result = result && (getIsCurrency()
-            == other.getIsCurrency());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasCatalogName()) {
-        hash = (37 * hash) + CATALOG_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogName().hashCode();
-      }
-      if (hasSchemaName()) {
-        hash = (37 * hash) + SCHEMA_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getSchemaName().hashCode();
-      }
-      if (hasTableName()) {
-        hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getTableName().hashCode();
-      }
-      if (hasColumnName()) {
-        hash = (37 * hash) + COLUMN_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getColumnName().hashCode();
-      }
-      if (hasLabel()) {
-        hash = (37 * hash) + LABEL_FIELD_NUMBER;
-        hash = (53 * hash) + getLabel().hashCode();
-      }
-      if (hasDataType()) {
-        hash = (37 * hash) + DATA_TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + getDataType().hashCode();
-      }
-      if (hasIsNullable()) {
-        hash = (37 * hash) + IS_NULLABLE_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getIsNullable());
-      }
-      if (hasPrecision()) {
-        hash = (37 * hash) + PRECISION_FIELD_NUMBER;
-        hash = (53 * hash) + getPrecision();
-      }
-      if (hasScale()) {
-        hash = (37 * hash) + SCALE_FIELD_NUMBER;
-        hash = (53 * hash) + getScale();
-      }
-      if (hasSigned()) {
-        hash = (37 * hash) + SIGNED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getSigned());
-      }
-      if (hasDisplaySize()) {
-        hash = (37 * hash) + DISPLAY_SIZE_FIELD_NUMBER;
-        hash = (53 * hash) + getDisplaySize();
-      }
-      if (hasIsAliased()) {
-        hash = (37 * hash) + IS_ALIASED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getIsAliased());
-      }
-      if (hasSearchability()) {
-        hash = (37 * hash) + SEARCHABILITY_FIELD_NUMBER;
-        hash = (53 * hash) + searchability_;
-      }
-      if (hasUpdatability()) {
-        hash = (37 * hash) + UPDATABILITY_FIELD_NUMBER;
-        hash = (53 * hash) + updatability_;
-      }
-      if (hasAutoIncrement()) {
-        hash = (37 * hash) + AUTO_INCREMENT_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getAutoIncrement());
-      }
-      if (hasCaseSensitivity()) {
-        hash = (37 * hash) + CASE_SENSITIVITY_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getCaseSensitivity());
-      }
-      if (hasSortable()) {
-        hash = (37 * hash) + SORTABLE_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getSortable());
-      }
-      if (hasClassName()) {
-        hash = (37 * hash) + CLASS_NAME_FIELD_NUMBER;
-        hash = (53 * hash) + getClassName().hashCode();
-      }
-      if (hasIsCurrency()) {
-        hash = (37 * hash) + IS_CURRENCY_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getIsCurrency());
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -29435,80 +26270,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.ResultColumnMetadata}
+     *
      * <pre>
+     *
      * Metadata of a column in query result set
      * </pre>
-     *
-     * Protobuf type {@code exec.user.ResultColumnMetadata}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.ResultColumnMetadata)
-        org.apache.drill.exec.proto.UserProtos.ResultColumnMetadataOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.ResultColumnMetadataOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ResultColumnMetadata_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ResultColumnMetadata_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -29521,16 +26342,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         catalogName_ = "";
@@ -29557,9 +26380,9 @@
         bitField0_ = (bitField0_ & ~0x00000400);
         isAliased_ = false;
         bitField0_ = (bitField0_ & ~0x00000800);
-        searchability_ = 0;
+        searchability_ = org.apache.drill.exec.proto.UserProtos.ColumnSearchability.UNKNOWN_SEARCHABILITY;
         bitField0_ = (bitField0_ & ~0x00001000);
-        updatability_ = 0;
+        updatability_ = org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.UNKNOWN_UPDATABILITY;
         bitField0_ = (bitField0_ & ~0x00002000);
         autoIncrement_ = false;
         bitField0_ = (bitField0_ & ~0x00004000);
@@ -29574,18 +26397,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ResultColumnMetadata_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata build() {
         org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata result = buildPartial();
         if (!result.isInitialized()) {
@@ -29594,7 +26418,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata buildPartial() {
         org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata result = new org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata(this);
         int from_bitField0_ = bitField0_;
@@ -29680,39 +26503,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata)other);
@@ -29795,17 +26585,14 @@
         if (other.hasIsCurrency()) {
           setIsCurrency(other.getIsCurrency());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -29815,7 +26602,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -29825,47 +26612,48 @@
       }
       private int bitField0_;
 
+      // optional string catalog_name = 1;
       private java.lang.Object catalogName_ = "";
       /**
+       * <code>optional string catalog_name = 1;</code>
+       *
        * <pre>
+       *
        * Designated column's catalog name. Empty string if not applicable.
        * Defaults to "DRILL" as drill has only one catalog.
        * </pre>
-       *
-       * <code>optional string catalog_name = 1;</code>
        */
       public boolean hasCatalogName() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
+       * <code>optional string catalog_name = 1;</code>
+       *
        * <pre>
+       *
        * Designated column's catalog name. Empty string if not applicable.
        * Defaults to "DRILL" as drill has only one catalog.
        * </pre>
-       *
-       * <code>optional string catalog_name = 1;</code>
        */
       public java.lang.String getCatalogName() {
         java.lang.Object ref = catalogName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            catalogName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          catalogName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string catalog_name = 1;</code>
+       *
        * <pre>
+       *
        * Designated column's catalog name. Empty string if not applicable.
        * Defaults to "DRILL" as drill has only one catalog.
        * </pre>
-       *
-       * <code>optional string catalog_name = 1;</code>
        */
       public com.google.protobuf.ByteString
           getCatalogNameBytes() {
@@ -29881,12 +26669,13 @@
         }
       }
       /**
+       * <code>optional string catalog_name = 1;</code>
+       *
        * <pre>
+       *
        * Designated column's catalog name. Empty string if not applicable.
        * Defaults to "DRILL" as drill has only one catalog.
        * </pre>
-       *
-       * <code>optional string catalog_name = 1;</code>
        */
       public Builder setCatalogName(
           java.lang.String value) {
@@ -29899,12 +26688,13 @@
         return this;
       }
       /**
+       * <code>optional string catalog_name = 1;</code>
+       *
        * <pre>
+       *
        * Designated column's catalog name. Empty string if not applicable.
        * Defaults to "DRILL" as drill has only one catalog.
        * </pre>
-       *
-       * <code>optional string catalog_name = 1;</code>
        */
       public Builder clearCatalogName() {
         bitField0_ = (bitField0_ & ~0x00000001);
@@ -29913,12 +26703,13 @@
         return this;
       }
       /**
+       * <code>optional string catalog_name = 1;</code>
+       *
        * <pre>
+       *
        * Designated column's catalog name. Empty string if not applicable.
        * Defaults to "DRILL" as drill has only one catalog.
        * </pre>
-       *
-       * <code>optional string catalog_name = 1;</code>
        */
       public Builder setCatalogNameBytes(
           com.google.protobuf.ByteString value) {
@@ -29931,50 +26722,51 @@
         return this;
       }
 
+      // optional string schema_name = 2;
       private java.lang.Object schemaName_ = "";
       /**
+       * <code>optional string schema_name = 2;</code>
+       *
        * <pre>
+       *
        * Designated column's schema name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
        * is lost. If we derive the schema from plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string schema_name = 2;</code>
        */
       public boolean hasSchemaName() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
+       * <code>optional string schema_name = 2;</code>
+       *
        * <pre>
+       *
        * Designated column's schema name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
        * is lost. If we derive the schema from plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string schema_name = 2;</code>
        */
       public java.lang.String getSchemaName() {
         java.lang.Object ref = schemaName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            schemaName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          schemaName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string schema_name = 2;</code>
+       *
        * <pre>
+       *
        * Designated column's schema name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
        * is lost. If we derive the schema from plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string schema_name = 2;</code>
        */
       public com.google.protobuf.ByteString
           getSchemaNameBytes() {
@@ -29990,13 +26782,14 @@
         }
       }
       /**
+       * <code>optional string schema_name = 2;</code>
+       *
        * <pre>
+       *
        * Designated column's schema name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
        * is lost. If we derive the schema from plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string schema_name = 2;</code>
        */
       public Builder setSchemaName(
           java.lang.String value) {
@@ -30009,13 +26802,14 @@
         return this;
       }
       /**
+       * <code>optional string schema_name = 2;</code>
+       *
        * <pre>
+       *
        * Designated column's schema name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
        * is lost. If we derive the schema from plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string schema_name = 2;</code>
        */
       public Builder clearSchemaName() {
         bitField0_ = (bitField0_ & ~0x00000002);
@@ -30024,13 +26818,14 @@
         return this;
       }
       /**
+       * <code>optional string schema_name = 2;</code>
+       *
        * <pre>
+       *
        * Designated column's schema name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and schema info
        * is lost. If we derive the schema from plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string schema_name = 2;</code>
        */
       public Builder setSchemaNameBytes(
           com.google.protobuf.ByteString value) {
@@ -30043,50 +26838,51 @@
         return this;
       }
 
+      // optional string table_name = 3;
       private java.lang.Object tableName_ = "";
       /**
+       * <code>optional string table_name = 3;</code>
+       *
        * <pre>
+       *
        * Designated column's table name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and table info
        * is lost. If we derive the schema from query plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string table_name = 3;</code>
        */
       public boolean hasTableName() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
+       * <code>optional string table_name = 3;</code>
+       *
        * <pre>
+       *
        * Designated column's table name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and table info
        * is lost. If we derive the schema from query plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string table_name = 3;</code>
        */
       public java.lang.String getTableName() {
         java.lang.Object ref = tableName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            tableName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          tableName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string table_name = 3;</code>
+       *
        * <pre>
+       *
        * Designated column's table name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and table info
        * is lost. If we derive the schema from query plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string table_name = 3;</code>
        */
       public com.google.protobuf.ByteString
           getTableNameBytes() {
@@ -30102,13 +26898,14 @@
         }
       }
       /**
+       * <code>optional string table_name = 3;</code>
+       *
        * <pre>
+       *
        * Designated column's table name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and table info
        * is lost. If we derive the schema from query plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string table_name = 3;</code>
        */
       public Builder setTableName(
           java.lang.String value) {
@@ -30121,13 +26918,14 @@
         return this;
       }
       /**
+       * <code>optional string table_name = 3;</code>
+       *
        * <pre>
+       *
        * Designated column's table name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and table info
        * is lost. If we derive the schema from query plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string table_name = 3;</code>
        */
       public Builder clearTableName() {
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -30136,13 +26934,14 @@
         return this;
       }
       /**
+       * <code>optional string table_name = 3;</code>
+       *
        * <pre>
+       *
        * Designated column's table name. Not set if not applicable. Initial implementation
        * defaults to no value as we use LIMIT 0 queries to get the schema and table info
        * is lost. If we derive the schema from query plan, we may get the right value.
        * </pre>
-       *
-       * <code>optional string table_name = 3;</code>
        */
       public Builder setTableNameBytes(
           com.google.protobuf.ByteString value) {
@@ -30155,44 +26954,42 @@
         return this;
       }
 
+      // optional string column_name = 4;
       private java.lang.Object columnName_ = "";
       /**
+       * <code>optional string column_name = 4;</code>
+       *
        * <pre>
        * column name
        * </pre>
-       *
-       * <code>optional string column_name = 4;</code>
        */
       public boolean hasColumnName() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
+       * <code>optional string column_name = 4;</code>
+       *
        * <pre>
        * column name
        * </pre>
-       *
-       * <code>optional string column_name = 4;</code>
        */
       public java.lang.String getColumnName() {
         java.lang.Object ref = columnName_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            columnName_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          columnName_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string column_name = 4;</code>
+       *
        * <pre>
        * column name
        * </pre>
-       *
-       * <code>optional string column_name = 4;</code>
        */
       public com.google.protobuf.ByteString
           getColumnNameBytes() {
@@ -30208,11 +27005,11 @@
         }
       }
       /**
+       * <code>optional string column_name = 4;</code>
+       *
        * <pre>
        * column name
        * </pre>
-       *
-       * <code>optional string column_name = 4;</code>
        */
       public Builder setColumnName(
           java.lang.String value) {
@@ -30225,11 +27022,11 @@
         return this;
       }
       /**
+       * <code>optional string column_name = 4;</code>
+       *
        * <pre>
        * column name
        * </pre>
-       *
-       * <code>optional string column_name = 4;</code>
        */
       public Builder clearColumnName() {
         bitField0_ = (bitField0_ & ~0x00000008);
@@ -30238,11 +27035,11 @@
         return this;
       }
       /**
+       * <code>optional string column_name = 4;</code>
+       *
        * <pre>
        * column name
        * </pre>
-       *
-       * <code>optional string column_name = 4;</code>
        */
       public Builder setColumnNameBytes(
           com.google.protobuf.ByteString value) {
@@ -30255,47 +27052,48 @@
         return this;
       }
 
+      // optional string label = 5;
       private java.lang.Object label_ = "";
       /**
+       * <code>optional string label = 5;</code>
+       *
        * <pre>
+       *
        * Column label name for display or print purposes.
        * Ex. a column named "empName" might be labeled as "Employee Name".
        * </pre>
-       *
-       * <code>optional string label = 5;</code>
        */
       public boolean hasLabel() {
         return ((bitField0_ & 0x00000010) == 0x00000010);
       }
       /**
+       * <code>optional string label = 5;</code>
+       *
        * <pre>
+       *
        * Column label name for display or print purposes.
        * Ex. a column named "empName" might be labeled as "Employee Name".
        * </pre>
-       *
-       * <code>optional string label = 5;</code>
        */
       public java.lang.String getLabel() {
         java.lang.Object ref = label_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            label_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          label_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string label = 5;</code>
+       *
        * <pre>
+       *
        * Column label name for display or print purposes.
        * Ex. a column named "empName" might be labeled as "Employee Name".
        * </pre>
-       *
-       * <code>optional string label = 5;</code>
        */
       public com.google.protobuf.ByteString
           getLabelBytes() {
@@ -30311,12 +27109,13 @@
         }
       }
       /**
+       * <code>optional string label = 5;</code>
+       *
        * <pre>
+       *
        * Column label name for display or print purposes.
        * Ex. a column named "empName" might be labeled as "Employee Name".
        * </pre>
-       *
-       * <code>optional string label = 5;</code>
        */
       public Builder setLabel(
           java.lang.String value) {
@@ -30329,12 +27128,13 @@
         return this;
       }
       /**
+       * <code>optional string label = 5;</code>
+       *
        * <pre>
+       *
        * Column label name for display or print purposes.
        * Ex. a column named "empName" might be labeled as "Employee Name".
        * </pre>
-       *
-       * <code>optional string label = 5;</code>
        */
       public Builder clearLabel() {
         bitField0_ = (bitField0_ & ~0x00000010);
@@ -30343,12 +27143,13 @@
         return this;
       }
       /**
+       * <code>optional string label = 5;</code>
+       *
        * <pre>
+       *
        * Column label name for display or print purposes.
        * Ex. a column named "empName" might be labeled as "Employee Name".
        * </pre>
-       *
-       * <code>optional string label = 5;</code>
        */
       public Builder setLabelBytes(
           com.google.protobuf.ByteString value) {
@@ -30361,44 +27162,45 @@
         return this;
       }
 
+      // optional string data_type = 6;
       private java.lang.Object dataType_ = "";
       /**
+       * <code>optional string data_type = 6;</code>
+       *
        * <pre>
+       *
        * Data type in string format. Value is SQL standard type.
        * </pre>
-       *
-       * <code>optional string data_type = 6;</code>
        */
       public boolean hasDataType() {
         return ((bitField0_ & 0x00000020) == 0x00000020);
       }
       /**
+       * <code>optional string data_type = 6;</code>
+       *
        * <pre>
+       *
        * Data type in string format. Value is SQL standard type.
        * </pre>
-       *
-       * <code>optional string data_type = 6;</code>
        */
       public java.lang.String getDataType() {
         java.lang.Object ref = dataType_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            dataType_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          dataType_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string data_type = 6;</code>
+       *
        * <pre>
+       *
        * Data type in string format. Value is SQL standard type.
        * </pre>
-       *
-       * <code>optional string data_type = 6;</code>
        */
       public com.google.protobuf.ByteString
           getDataTypeBytes() {
@@ -30414,11 +27216,12 @@
         }
       }
       /**
+       * <code>optional string data_type = 6;</code>
+       *
        * <pre>
+       *
        * Data type in string format. Value is SQL standard type.
        * </pre>
-       *
-       * <code>optional string data_type = 6;</code>
        */
       public Builder setDataType(
           java.lang.String value) {
@@ -30431,11 +27234,12 @@
         return this;
       }
       /**
+       * <code>optional string data_type = 6;</code>
+       *
        * <pre>
+       *
        * Data type in string format. Value is SQL standard type.
        * </pre>
-       *
-       * <code>optional string data_type = 6;</code>
        */
       public Builder clearDataType() {
         bitField0_ = (bitField0_ & ~0x00000020);
@@ -30444,11 +27248,12 @@
         return this;
       }
       /**
+       * <code>optional string data_type = 6;</code>
+       *
        * <pre>
+       *
        * Data type in string format. Value is SQL standard type.
        * </pre>
-       *
-       * <code>optional string data_type = 6;</code>
        */
       public Builder setDataTypeBytes(
           com.google.protobuf.ByteString value) {
@@ -30461,6 +27266,7 @@
         return this;
       }
 
+      // optional bool is_nullable = 7;
       private boolean isNullable_ ;
       /**
        * <code>optional bool is_nullable = 7;</code>
@@ -30493,9 +27299,13 @@
         return this;
       }
 
+      // optional int32 precision = 8;
       private int precision_ ;
       /**
+       * <code>optional int32 precision = 8;</code>
+       *
        * <pre>
+       *
        * For numeric data, this is the maximum precision.
        * For character data, this is the length in characters.
        * For datetime datatypes, this is the length in characters of the String representation
@@ -30503,14 +27313,15 @@
        * For binary data, this is the length in bytes.
        * For all other types 0 is returned where the column size is not applicable.
        * </pre>
-       *
-       * <code>optional int32 precision = 8;</code>
        */
       public boolean hasPrecision() {
         return ((bitField0_ & 0x00000080) == 0x00000080);
       }
       /**
+       * <code>optional int32 precision = 8;</code>
+       *
        * <pre>
+       *
        * For numeric data, this is the maximum precision.
        * For character data, this is the length in characters.
        * For datetime datatypes, this is the length in characters of the String representation
@@ -30518,14 +27329,15 @@
        * For binary data, this is the length in bytes.
        * For all other types 0 is returned where the column size is not applicable.
        * </pre>
-       *
-       * <code>optional int32 precision = 8;</code>
        */
       public int getPrecision() {
         return precision_;
       }
       /**
+       * <code>optional int32 precision = 8;</code>
+       *
        * <pre>
+       *
        * For numeric data, this is the maximum precision.
        * For character data, this is the length in characters.
        * For datetime datatypes, this is the length in characters of the String representation
@@ -30533,8 +27345,6 @@
        * For binary data, this is the length in bytes.
        * For all other types 0 is returned where the column size is not applicable.
        * </pre>
-       *
-       * <code>optional int32 precision = 8;</code>
        */
       public Builder setPrecision(int value) {
         bitField0_ |= 0x00000080;
@@ -30543,7 +27353,10 @@
         return this;
       }
       /**
+       * <code>optional int32 precision = 8;</code>
+       *
        * <pre>
+       *
        * For numeric data, this is the maximum precision.
        * For character data, this is the length in characters.
        * For datetime datatypes, this is the length in characters of the String representation
@@ -30551,8 +27364,6 @@
        * For binary data, this is the length in bytes.
        * For all other types 0 is returned where the column size is not applicable.
        * </pre>
-       *
-       * <code>optional int32 precision = 8;</code>
        */
       public Builder clearPrecision() {
         bitField0_ = (bitField0_ & ~0x00000080);
@@ -30561,36 +27372,40 @@
         return this;
       }
 
+      // optional int32 scale = 9;
       private int scale_ ;
       /**
+       * <code>optional int32 scale = 9;</code>
+       *
        * <pre>
+       *
        * Column's number of digits to right of the decimal point.
        * 0 is returned for types where the scale is not applicable
        * </pre>
-       *
-       * <code>optional int32 scale = 9;</code>
        */
       public boolean hasScale() {
         return ((bitField0_ & 0x00000100) == 0x00000100);
       }
       /**
+       * <code>optional int32 scale = 9;</code>
+       *
        * <pre>
+       *
        * Column's number of digits to right of the decimal point.
        * 0 is returned for types where the scale is not applicable
        * </pre>
-       *
-       * <code>optional int32 scale = 9;</code>
        */
       public int getScale() {
         return scale_;
       }
       /**
+       * <code>optional int32 scale = 9;</code>
+       *
        * <pre>
+       *
        * Column's number of digits to right of the decimal point.
        * 0 is returned for types where the scale is not applicable
        * </pre>
-       *
-       * <code>optional int32 scale = 9;</code>
        */
       public Builder setScale(int value) {
         bitField0_ |= 0x00000100;
@@ -30599,12 +27414,13 @@
         return this;
       }
       /**
+       * <code>optional int32 scale = 9;</code>
+       *
        * <pre>
+       *
        * Column's number of digits to right of the decimal point.
        * 0 is returned for types where the scale is not applicable
        * </pre>
-       *
-       * <code>optional int32 scale = 9;</code>
        */
       public Builder clearScale() {
         bitField0_ = (bitField0_ & ~0x00000100);
@@ -30613,33 +27429,37 @@
         return this;
       }
 
+      // optional bool signed = 10;
       private boolean signed_ ;
       /**
+       * <code>optional bool signed = 10;</code>
+       *
        * <pre>
+       *
        * Indicates whether values in the designated column are signed numbers.
        * </pre>
-       *
-       * <code>optional bool signed = 10;</code>
        */
       public boolean hasSigned() {
         return ((bitField0_ & 0x00000200) == 0x00000200);
       }
       /**
+       * <code>optional bool signed = 10;</code>
+       *
        * <pre>
+       *
        * Indicates whether values in the designated column are signed numbers.
        * </pre>
-       *
-       * <code>optional bool signed = 10;</code>
        */
       public boolean getSigned() {
         return signed_;
       }
       /**
+       * <code>optional bool signed = 10;</code>
+       *
        * <pre>
+       *
        * Indicates whether values in the designated column are signed numbers.
        * </pre>
-       *
-       * <code>optional bool signed = 10;</code>
        */
       public Builder setSigned(boolean value) {
         bitField0_ |= 0x00000200;
@@ -30648,11 +27468,12 @@
         return this;
       }
       /**
+       * <code>optional bool signed = 10;</code>
+       *
        * <pre>
+       *
        * Indicates whether values in the designated column are signed numbers.
        * </pre>
-       *
-       * <code>optional bool signed = 10;</code>
        */
       public Builder clearSigned() {
         bitField0_ = (bitField0_ & ~0x00000200);
@@ -30661,33 +27482,37 @@
         return this;
       }
 
+      // optional int32 display_size = 11;
       private int displaySize_ ;
       /**
+       * <code>optional int32 display_size = 11;</code>
+       *
        * <pre>
+       *
        * Maximum number of characters required to display data from the column.
        * </pre>
-       *
-       * <code>optional int32 display_size = 11;</code>
        */
       public boolean hasDisplaySize() {
         return ((bitField0_ & 0x00000400) == 0x00000400);
       }
       /**
+       * <code>optional int32 display_size = 11;</code>
+       *
        * <pre>
+       *
        * Maximum number of characters required to display data from the column.
        * </pre>
-       *
-       * <code>optional int32 display_size = 11;</code>
        */
       public int getDisplaySize() {
         return displaySize_;
       }
       /**
+       * <code>optional int32 display_size = 11;</code>
+       *
        * <pre>
+       *
        * Maximum number of characters required to display data from the column.
        * </pre>
-       *
-       * <code>optional int32 display_size = 11;</code>
        */
       public Builder setDisplaySize(int value) {
         bitField0_ |= 0x00000400;
@@ -30696,11 +27521,12 @@
         return this;
       }
       /**
+       * <code>optional int32 display_size = 11;</code>
+       *
        * <pre>
+       *
        * Maximum number of characters required to display data from the column.
        * </pre>
-       *
-       * <code>optional int32 display_size = 11;</code>
        */
       public Builder clearDisplaySize() {
         bitField0_ = (bitField0_ & ~0x00000400);
@@ -30709,36 +27535,40 @@
         return this;
       }
 
+      // optional bool is_aliased = 12;
       private boolean isAliased_ ;
       /**
+       * <code>optional bool is_aliased = 12;</code>
+       *
        * <pre>
+       *
        * Is the column an aliased column. Initial implementation defaults to
        * true as we derive schema from LIMIT 0 query and not the query plan.
        * </pre>
-       *
-       * <code>optional bool is_aliased = 12;</code>
        */
       public boolean hasIsAliased() {
         return ((bitField0_ & 0x00000800) == 0x00000800);
       }
       /**
+       * <code>optional bool is_aliased = 12;</code>
+       *
        * <pre>
+       *
        * Is the column an aliased column. Initial implementation defaults to
        * true as we derive schema from LIMIT 0 query and not the query plan.
        * </pre>
-       *
-       * <code>optional bool is_aliased = 12;</code>
        */
       public boolean getIsAliased() {
         return isAliased_;
       }
       /**
+       * <code>optional bool is_aliased = 12;</code>
+       *
        * <pre>
+       *
        * Is the column an aliased column. Initial implementation defaults to
        * true as we derive schema from LIMIT 0 query and not the query plan.
        * </pre>
-       *
-       * <code>optional bool is_aliased = 12;</code>
        */
       public Builder setIsAliased(boolean value) {
         bitField0_ |= 0x00000800;
@@ -30747,12 +27577,13 @@
         return this;
       }
       /**
+       * <code>optional bool is_aliased = 12;</code>
+       *
        * <pre>
+       *
        * Is the column an aliased column. Initial implementation defaults to
        * true as we derive schema from LIMIT 0 query and not the query plan.
        * </pre>
-       *
-       * <code>optional bool is_aliased = 12;</code>
        */
       public Builder clearIsAliased() {
         bitField0_ = (bitField0_ & ~0x00000800);
@@ -30761,7 +27592,8 @@
         return this;
       }
 
-      private int searchability_ = 0;
+      // optional .exec.user.ColumnSearchability searchability = 13;
+      private org.apache.drill.exec.proto.UserProtos.ColumnSearchability searchability_ = org.apache.drill.exec.proto.UserProtos.ColumnSearchability.UNKNOWN_SEARCHABILITY;
       /**
        * <code>optional .exec.user.ColumnSearchability searchability = 13;</code>
        */
@@ -30772,9 +27604,7 @@
        * <code>optional .exec.user.ColumnSearchability searchability = 13;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.ColumnSearchability getSearchability() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.ColumnSearchability result = org.apache.drill.exec.proto.UserProtos.ColumnSearchability.valueOf(searchability_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.ColumnSearchability.UNKNOWN_SEARCHABILITY : result;
+        return searchability_;
       }
       /**
        * <code>optional .exec.user.ColumnSearchability searchability = 13;</code>
@@ -30784,7 +27614,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00001000;
-        searchability_ = value.getNumber();
+        searchability_ = value;
         onChanged();
         return this;
       }
@@ -30793,91 +27623,98 @@
        */
       public Builder clearSearchability() {
         bitField0_ = (bitField0_ & ~0x00001000);
-        searchability_ = 0;
+        searchability_ = org.apache.drill.exec.proto.UserProtos.ColumnSearchability.UNKNOWN_SEARCHABILITY;
         onChanged();
         return this;
       }
 
-      private int updatability_ = 0;
+      // optional .exec.user.ColumnUpdatability updatability = 14;
+      private org.apache.drill.exec.proto.UserProtos.ColumnUpdatability updatability_ = org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.UNKNOWN_UPDATABILITY;
       /**
+       * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
+       *
        * <pre>
+       *
        * Defaults to READ_ONLY
        * </pre>
-       *
-       * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
        */
       public boolean hasUpdatability() {
         return ((bitField0_ & 0x00002000) == 0x00002000);
       }
       /**
+       * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
+       *
        * <pre>
+       *
        * Defaults to READ_ONLY
        * </pre>
-       *
-       * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.ColumnUpdatability getUpdatability() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.ColumnUpdatability result = org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.valueOf(updatability_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.UNKNOWN_UPDATABILITY : result;
+        return updatability_;
       }
       /**
+       * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
+       *
        * <pre>
+       *
        * Defaults to READ_ONLY
        * </pre>
-       *
-       * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
        */
       public Builder setUpdatability(org.apache.drill.exec.proto.UserProtos.ColumnUpdatability value) {
         if (value == null) {
           throw new NullPointerException();
         }
         bitField0_ |= 0x00002000;
-        updatability_ = value.getNumber();
+        updatability_ = value;
         onChanged();
         return this;
       }
       /**
+       * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
+       *
        * <pre>
+       *
        * Defaults to READ_ONLY
        * </pre>
-       *
-       * <code>optional .exec.user.ColumnUpdatability updatability = 14;</code>
        */
       public Builder clearUpdatability() {
         bitField0_ = (bitField0_ & ~0x00002000);
-        updatability_ = 0;
+        updatability_ = org.apache.drill.exec.proto.UserProtos.ColumnUpdatability.UNKNOWN_UPDATABILITY;
         onChanged();
         return this;
       }
 
+      // optional bool auto_increment = 15;
       private boolean autoIncrement_ ;
       /**
+       * <code>optional bool auto_increment = 15;</code>
+       *
        * <pre>
+       *
        * whether the designated column is automatically incremented.
        * </pre>
-       *
-       * <code>optional bool auto_increment = 15;</code>
        */
       public boolean hasAutoIncrement() {
         return ((bitField0_ & 0x00004000) == 0x00004000);
       }
       /**
+       * <code>optional bool auto_increment = 15;</code>
+       *
        * <pre>
+       *
        * whether the designated column is automatically incremented.
        * </pre>
-       *
-       * <code>optional bool auto_increment = 15;</code>
        */
       public boolean getAutoIncrement() {
         return autoIncrement_;
       }
       /**
+       * <code>optional bool auto_increment = 15;</code>
+       *
        * <pre>
+       *
        * whether the designated column is automatically incremented.
        * </pre>
-       *
-       * <code>optional bool auto_increment = 15;</code>
        */
       public Builder setAutoIncrement(boolean value) {
         bitField0_ |= 0x00004000;
@@ -30886,11 +27723,12 @@
         return this;
       }
       /**
+       * <code>optional bool auto_increment = 15;</code>
+       *
        * <pre>
+       *
        * whether the designated column is automatically incremented.
        * </pre>
-       *
-       * <code>optional bool auto_increment = 15;</code>
        */
       public Builder clearAutoIncrement() {
         bitField0_ = (bitField0_ & ~0x00004000);
@@ -30899,33 +27737,37 @@
         return this;
       }
 
+      // optional bool case_sensitivity = 16;
       private boolean caseSensitivity_ ;
       /**
+       * <code>optional bool case_sensitivity = 16;</code>
+       *
        * <pre>
+       *
        * Whether column's case matters for collations and comparisons. Defaults to true.
        * </pre>
-       *
-       * <code>optional bool case_sensitivity = 16;</code>
        */
       public boolean hasCaseSensitivity() {
         return ((bitField0_ & 0x00008000) == 0x00008000);
       }
       /**
+       * <code>optional bool case_sensitivity = 16;</code>
+       *
        * <pre>
+       *
        * Whether column's case matters for collations and comparisons. Defaults to true.
        * </pre>
-       *
-       * <code>optional bool case_sensitivity = 16;</code>
        */
       public boolean getCaseSensitivity() {
         return caseSensitivity_;
       }
       /**
+       * <code>optional bool case_sensitivity = 16;</code>
+       *
        * <pre>
+       *
        * Whether column's case matters for collations and comparisons. Defaults to true.
        * </pre>
-       *
-       * <code>optional bool case_sensitivity = 16;</code>
        */
       public Builder setCaseSensitivity(boolean value) {
         bitField0_ |= 0x00008000;
@@ -30934,11 +27776,12 @@
         return this;
       }
       /**
+       * <code>optional bool case_sensitivity = 16;</code>
+       *
        * <pre>
+       *
        * Whether column's case matters for collations and comparisons. Defaults to true.
        * </pre>
-       *
-       * <code>optional bool case_sensitivity = 16;</code>
        */
       public Builder clearCaseSensitivity() {
         bitField0_ = (bitField0_ & ~0x00008000);
@@ -30947,33 +27790,37 @@
         return this;
       }
 
+      // optional bool sortable = 17;
       private boolean sortable_ ;
       /**
+       * <code>optional bool sortable = 17;</code>
+       *
        * <pre>
+       *
        * whether the column can be used in ORDER BY clause
        * </pre>
-       *
-       * <code>optional bool sortable = 17;</code>
        */
       public boolean hasSortable() {
         return ((bitField0_ & 0x00010000) == 0x00010000);
       }
       /**
+       * <code>optional bool sortable = 17;</code>
+       *
        * <pre>
+       *
        * whether the column can be used in ORDER BY clause
        * </pre>
-       *
-       * <code>optional bool sortable = 17;</code>
        */
       public boolean getSortable() {
         return sortable_;
       }
       /**
+       * <code>optional bool sortable = 17;</code>
+       *
        * <pre>
+       *
        * whether the column can be used in ORDER BY clause
        * </pre>
-       *
-       * <code>optional bool sortable = 17;</code>
        */
       public Builder setSortable(boolean value) {
         bitField0_ |= 0x00010000;
@@ -30982,11 +27829,12 @@
         return this;
       }
       /**
+       * <code>optional bool sortable = 17;</code>
+       *
        * <pre>
+       *
        * whether the column can be used in ORDER BY clause
        * </pre>
-       *
-       * <code>optional bool sortable = 17;</code>
        */
       public Builder clearSortable() {
         bitField0_ = (bitField0_ & ~0x00010000);
@@ -30995,50 +27843,51 @@
         return this;
       }
 
+      // optional string class_name = 18;
       private java.lang.Object className_ = "";
       /**
+       * <code>optional string class_name = 18;</code>
+       *
        * <pre>
+       *
        * A fully-qualified name of the Java class whose instances are created
        * if the method ResultSet.getObject is called to retrieve
        * a value from the column. Applicable only to JDBC clients.
        * </pre>
-       *
-       * <code>optional string class_name = 18;</code>
        */
       public boolean hasClassName() {
         return ((bitField0_ & 0x00020000) == 0x00020000);
       }
       /**
+       * <code>optional string class_name = 18;</code>
+       *
        * <pre>
+       *
        * A fully-qualified name of the Java class whose instances are created
        * if the method ResultSet.getObject is called to retrieve
        * a value from the column. Applicable only to JDBC clients.
        * </pre>
-       *
-       * <code>optional string class_name = 18;</code>
        */
       public java.lang.String getClassName() {
         java.lang.Object ref = className_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            className_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          className_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string class_name = 18;</code>
+       *
        * <pre>
+       *
        * A fully-qualified name of the Java class whose instances are created
        * if the method ResultSet.getObject is called to retrieve
        * a value from the column. Applicable only to JDBC clients.
        * </pre>
-       *
-       * <code>optional string class_name = 18;</code>
        */
       public com.google.protobuf.ByteString
           getClassNameBytes() {
@@ -31054,13 +27903,14 @@
         }
       }
       /**
+       * <code>optional string class_name = 18;</code>
+       *
        * <pre>
+       *
        * A fully-qualified name of the Java class whose instances are created
        * if the method ResultSet.getObject is called to retrieve
        * a value from the column. Applicable only to JDBC clients.
        * </pre>
-       *
-       * <code>optional string class_name = 18;</code>
        */
       public Builder setClassName(
           java.lang.String value) {
@@ -31073,13 +27923,14 @@
         return this;
       }
       /**
+       * <code>optional string class_name = 18;</code>
+       *
        * <pre>
+       *
        * A fully-qualified name of the Java class whose instances are created
        * if the method ResultSet.getObject is called to retrieve
        * a value from the column. Applicable only to JDBC clients.
        * </pre>
-       *
-       * <code>optional string class_name = 18;</code>
        */
       public Builder clearClassName() {
         bitField0_ = (bitField0_ & ~0x00020000);
@@ -31088,13 +27939,14 @@
         return this;
       }
       /**
+       * <code>optional string class_name = 18;</code>
+       *
        * <pre>
+       *
        * A fully-qualified name of the Java class whose instances are created
        * if the method ResultSet.getObject is called to retrieve
        * a value from the column. Applicable only to JDBC clients.
        * </pre>
-       *
-       * <code>optional string class_name = 18;</code>
        */
       public Builder setClassNameBytes(
           com.google.protobuf.ByteString value) {
@@ -31107,33 +27959,37 @@
         return this;
       }
 
+      // optional bool is_currency = 20;
       private boolean isCurrency_ ;
       /**
+       * <code>optional bool is_currency = 20;</code>
+       *
        * <pre>
+       *
        * Is the data type a currency type? For JDBC only.
        * </pre>
-       *
-       * <code>optional bool is_currency = 20;</code>
        */
       public boolean hasIsCurrency() {
         return ((bitField0_ & 0x00040000) == 0x00040000);
       }
       /**
+       * <code>optional bool is_currency = 20;</code>
+       *
        * <pre>
+       *
        * Is the data type a currency type? For JDBC only.
        * </pre>
-       *
-       * <code>optional bool is_currency = 20;</code>
        */
       public boolean getIsCurrency() {
         return isCurrency_;
       }
       /**
+       * <code>optional bool is_currency = 20;</code>
+       *
        * <pre>
+       *
        * Is the data type a currency type? For JDBC only.
        * </pre>
-       *
-       * <code>optional bool is_currency = 20;</code>
        */
       public Builder setIsCurrency(boolean value) {
         bitField0_ |= 0x00040000;
@@ -31142,11 +27998,12 @@
         return this;
       }
       /**
+       * <code>optional bool is_currency = 20;</code>
+       *
        * <pre>
+       *
        * Is the data type a currency type? For JDBC only.
        * </pre>
-       *
-       * <code>optional bool is_currency = 20;</code>
        */
       public Builder clearIsCurrency() {
         bitField0_ = (bitField0_ & ~0x00040000);
@@ -31154,63 +28011,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.ResultColumnMetadata)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.ResultColumnMetadata)
-    private static final org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata();
+      defaultInstance = new ResultColumnMetadata(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<ResultColumnMetadata>
-        PARSER = new com.google.protobuf.AbstractParser<ResultColumnMetadata>() {
-      @java.lang.Override
-      public ResultColumnMetadata parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new ResultColumnMetadata(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<ResultColumnMetadata> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<ResultColumnMetadata> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.ResultColumnMetadata)
   }
 
-  public interface PreparedStatementHandleOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.PreparedStatementHandle)
-      com.google.protobuf.MessageOrBuilder {
+  public interface PreparedStatementHandleOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional bytes server_info = 1;
     /**
      * <code>optional bytes server_info = 1;</code>
      */
@@ -31221,40 +28037,45 @@
     com.google.protobuf.ByteString getServerInfo();
   }
   /**
+   * Protobuf type {@code exec.user.PreparedStatementHandle}
+   *
    * <pre>
+   *
    * Server state of prepared statement. Contents are opaque to
    * client. Client just need to submit this object in RunQuery to
    * the prepared statement.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.PreparedStatementHandle}
    */
-  public  static final class PreparedStatementHandle extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.PreparedStatementHandle)
-      PreparedStatementHandleOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class PreparedStatementHandle extends
+      com.google.protobuf.GeneratedMessage
+      implements PreparedStatementHandleOrBuilder {
     // Use PreparedStatementHandle.newBuilder() to construct.
-    private PreparedStatementHandle(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private PreparedStatementHandle(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private PreparedStatementHandle() {
-      serverInfo_ = com.google.protobuf.ByteString.EMPTY;
+    private PreparedStatementHandle(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final PreparedStatementHandle defaultInstance;
+    public static PreparedStatementHandle getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public PreparedStatementHandle getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private PreparedStatementHandle(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -31266,25 +28087,25 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               bitField0_ |= 0x00000001;
               serverInfo_ = input.readBytes();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -31295,15 +28116,30 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatementHandle_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatementHandle_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.class, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<PreparedStatementHandle> PARSER =
+        new com.google.protobuf.AbstractParser<PreparedStatementHandle>() {
+      public PreparedStatementHandle parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new PreparedStatementHandle(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<PreparedStatementHandle> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional bytes server_info = 1;
     public static final int SERVER_INFO_FIELD_NUMBER = 1;
     private com.google.protobuf.ByteString serverInfo_;
     /**
@@ -31319,29 +28155,30 @@
       return serverInfo_;
     }
 
+    private void initFields() {
+      serverInfo_ = com.google.protobuf.ByteString.EMPTY;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeBytes(1, serverInfo_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -31349,58 +28186,18 @@
         size += com.google.protobuf.CodedOutputStream
           .computeBytesSize(1, serverInfo_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle other = (org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle) obj;
-
-      boolean result = true;
-      result = result && (hasServerInfo() == other.hasServerInfo());
-      if (hasServerInfo()) {
-        result = result && getServerInfo()
-            .equals(other.getServerInfo());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasServerInfo()) {
-        hash = (37 * hash) + SERVER_INFO_FIELD_NUMBER;
-        hash = (53 * hash) + getServerInfo().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -31424,82 +28221,68 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.PreparedStatementHandle}
+     *
      * <pre>
+     *
      * Server state of prepared statement. Contents are opaque to
      * client. Client just need to submit this object in RunQuery to
      * the prepared statement.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.PreparedStatementHandle}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.PreparedStatementHandle)
-        org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatementHandle_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatementHandle_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -31512,16 +28295,18 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         serverInfo_ = com.google.protobuf.ByteString.EMPTY;
@@ -31529,18 +28314,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatementHandle_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle build() {
         org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle result = buildPartial();
         if (!result.isInitialized()) {
@@ -31549,7 +28335,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle buildPartial() {
         org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle result = new org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle(this);
         int from_bitField0_ = bitField0_;
@@ -31563,39 +28348,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle)other);
@@ -31610,17 +28362,14 @@
         if (other.hasServerInfo()) {
           setServerInfo(other.getServerInfo());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -31630,7 +28379,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -31640,6 +28389,7 @@
       }
       private int bitField0_;
 
+      // optional bytes server_info = 1;
       private com.google.protobuf.ByteString serverInfo_ = com.google.protobuf.ByteString.EMPTY;
       /**
        * <code>optional bytes server_info = 1;</code>
@@ -31674,63 +28424,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.PreparedStatementHandle)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.PreparedStatementHandle)
-    private static final org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle();
+      defaultInstance = new PreparedStatementHandle(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<PreparedStatementHandle>
-        PARSER = new com.google.protobuf.AbstractParser<PreparedStatementHandle>() {
-      @java.lang.Override
-      public PreparedStatementHandle parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new PreparedStatementHandle(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<PreparedStatementHandle> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<PreparedStatementHandle> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.PreparedStatementHandle)
   }
 
-  public interface PreparedStatementOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.PreparedStatement)
-      com.google.protobuf.MessageOrBuilder {
+  public interface PreparedStatementOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // repeated .exec.user.ResultColumnMetadata columns = 1;
     /**
      * <code>repeated .exec.user.ResultColumnMetadata columns = 1;</code>
      */
@@ -31755,68 +28464,77 @@
     org.apache.drill.exec.proto.UserProtos.ResultColumnMetadataOrBuilder getColumnsOrBuilder(
         int index);
 
+    // optional .exec.user.PreparedStatementHandle server_handle = 2;
     /**
+     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+     *
      * <pre>
+     *
      * In order to execute the prepared statement,
      * clients need to submit this object in RunQuery message.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
      */
     boolean hasServerHandle();
     /**
+     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+     *
      * <pre>
+     *
      * In order to execute the prepared statement,
      * clients need to submit this object in RunQuery message.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
      */
     org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle getServerHandle();
     /**
+     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+     *
      * <pre>
+     *
      * In order to execute the prepared statement,
      * clients need to submit this object in RunQuery message.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
      */
     org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder getServerHandleOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.PreparedStatement}
+   *
    * <pre>
+   *
    * Prepared statement. It contains the query metadata and handle to prepared
    * statement state on server.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.PreparedStatement}
    */
-  public  static final class PreparedStatement extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.PreparedStatement)
-      PreparedStatementOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class PreparedStatement extends
+      com.google.protobuf.GeneratedMessage
+      implements PreparedStatementOrBuilder {
     // Use PreparedStatement.newBuilder() to construct.
-    private PreparedStatement(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private PreparedStatement(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private PreparedStatement() {
-      columns_ = java.util.Collections.emptyList();
+    private PreparedStatement(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final PreparedStatement defaultInstance;
+    public static PreparedStatement getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public PreparedStatement getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private PreparedStatement(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -31828,13 +28546,19 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 10: {
               if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                 columns_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata>();
                 mutable_bitField0_ |= 0x00000001;
               }
-              columns_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.PARSER, extensionRegistry));
+              columns_.add(input.readMessage(org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.PARSER, extensionRegistry));
               break;
             }
             case 18: {
@@ -31850,20 +28574,13 @@
               bitField0_ |= 0x00000001;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
           columns_ = java.util.Collections.unmodifiableList(columns_);
@@ -31877,15 +28594,30 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatement_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatement_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.PreparedStatement.class, org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<PreparedStatement> PARSER =
+        new com.google.protobuf.AbstractParser<PreparedStatement>() {
+      public PreparedStatement parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new PreparedStatement(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<PreparedStatement> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // repeated .exec.user.ResultColumnMetadata columns = 1;
     public static final int COLUMNS_FIELD_NUMBER = 1;
     private java.util.List<org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata> columns_;
     /**
@@ -31921,68 +28653,74 @@
       return columns_.get(index);
     }
 
+    // optional .exec.user.PreparedStatementHandle server_handle = 2;
     public static final int SERVER_HANDLE_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle serverHandle_;
     /**
+     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+     *
      * <pre>
+     *
      * In order to execute the prepared statement,
      * clients need to submit this object in RunQuery message.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
      */
     public boolean hasServerHandle() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+     *
      * <pre>
+     *
      * In order to execute the prepared statement,
      * clients need to submit this object in RunQuery message.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle getServerHandle() {
-      return serverHandle_ == null ? org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance() : serverHandle_;
+      return serverHandle_;
     }
     /**
+     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+     *
      * <pre>
+     *
      * In order to execute the prepared statement,
      * clients need to submit this object in RunQuery message.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder getServerHandleOrBuilder() {
-      return serverHandle_ == null ? org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance() : serverHandle_;
+      return serverHandle_;
     }
 
+    private void initFields() {
+      columns_ = java.util.Collections.emptyList();
+      serverHandle_ = org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       for (int i = 0; i < columns_.size(); i++) {
         output.writeMessage(1, columns_.get(i));
       }
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeMessage(2, getServerHandle());
+        output.writeMessage(2, serverHandle_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -31992,66 +28730,20 @@
       }
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getServerHandle());
+          .computeMessageSize(2, serverHandle_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.PreparedStatement)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.PreparedStatement other = (org.apache.drill.exec.proto.UserProtos.PreparedStatement) obj;
-
-      boolean result = true;
-      result = result && getColumnsList()
-          .equals(other.getColumnsList());
-      result = result && (hasServerHandle() == other.hasServerHandle());
-      if (hasServerHandle()) {
-        result = result && getServerHandle()
-            .equals(other.getServerHandle());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (getColumnsCount() > 0) {
-        hash = (37 * hash) + COLUMNS_FIELD_NUMBER;
-        hash = (53 * hash) + getColumnsList().hashCode();
-      }
-      if (hasServerHandle()) {
-        hash = (37 * hash) + SERVER_HANDLE_FIELD_NUMBER;
-        hash = (53 * hash) + getServerHandle().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.PreparedStatement parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.PreparedStatement parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatement parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -32075,81 +28767,67 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatement parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatement parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatement parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatement parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatement parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.PreparedStatement parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.PreparedStatement prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.PreparedStatement}
+     *
      * <pre>
+     *
      * Prepared statement. It contains the query metadata and handle to prepared
      * statement state on server.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.PreparedStatement}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.PreparedStatement)
-        org.apache.drill.exec.proto.UserProtos.PreparedStatementOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.PreparedStatementOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatement_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatement_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -32162,18 +28840,20 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getColumnsFieldBuilder();
           getServerHandleFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         if (columnsBuilder_ == null) {
@@ -32183,7 +28863,7 @@
           columnsBuilder_.clear();
         }
         if (serverHandleBuilder_ == null) {
-          serverHandle_ = null;
+          serverHandle_ = org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance();
         } else {
           serverHandleBuilder_.clear();
         }
@@ -32191,18 +28871,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_PreparedStatement_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.PreparedStatement getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.PreparedStatement build() {
         org.apache.drill.exec.proto.UserProtos.PreparedStatement result = buildPartial();
         if (!result.isInitialized()) {
@@ -32211,7 +28892,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.PreparedStatement buildPartial() {
         org.apache.drill.exec.proto.UserProtos.PreparedStatement result = new org.apache.drill.exec.proto.UserProtos.PreparedStatement(this);
         int from_bitField0_ = bitField0_;
@@ -32238,39 +28918,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.PreparedStatement) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.PreparedStatement)other);
@@ -32301,7 +28948,7 @@
               columns_ = other.columns_;
               bitField0_ = (bitField0_ & ~0x00000001);
               columnsBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getColumnsFieldBuilder() : null;
             } else {
               columnsBuilder_.addAllMessages(other.columns_);
@@ -32311,17 +28958,14 @@
         if (other.hasServerHandle()) {
           mergeServerHandle(other.getServerHandle());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -32331,7 +28975,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.PreparedStatement) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -32341,6 +28985,7 @@
       }
       private int bitField0_;
 
+      // repeated .exec.user.ResultColumnMetadata columns = 1;
       private java.util.List<org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata> columns_ =
         java.util.Collections.emptyList();
       private void ensureColumnsIsMutable() {
@@ -32350,7 +28995,7 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadataOrBuilder> columnsBuilder_;
 
       /**
@@ -32482,8 +29127,7 @@
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata> values) {
         if (columnsBuilder_ == null) {
           ensureColumnsIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, columns_);
+          super.addAll(values, columns_);
           onChanged();
         } else {
           columnsBuilder_.addAllMessages(values);
@@ -32566,11 +29210,11 @@
            getColumnsBuilderList() {
         return getColumnsFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadataOrBuilder> 
           getColumnsFieldBuilder() {
         if (columnsBuilder_ == null) {
-          columnsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          columnsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadata.Builder, org.apache.drill.exec.proto.UserProtos.ResultColumnMetadataOrBuilder>(
                   columns_,
                   ((bitField0_ & 0x00000001) == 0x00000001),
@@ -32581,42 +29225,46 @@
         return columnsBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle serverHandle_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.PreparedStatementHandle server_handle = 2;
+      private org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle serverHandle_ = org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder> serverHandleBuilder_;
       /**
+       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+       *
        * <pre>
+       *
        * In order to execute the prepared statement,
        * clients need to submit this object in RunQuery message.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
        */
       public boolean hasServerHandle() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+       *
        * <pre>
+       *
        * In order to execute the prepared statement,
        * clients need to submit this object in RunQuery message.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle getServerHandle() {
         if (serverHandleBuilder_ == null) {
-          return serverHandle_ == null ? org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance() : serverHandle_;
+          return serverHandle_;
         } else {
           return serverHandleBuilder_.getMessage();
         }
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+       *
        * <pre>
+       *
        * In order to execute the prepared statement,
        * clients need to submit this object in RunQuery message.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
        */
       public Builder setServerHandle(org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle value) {
         if (serverHandleBuilder_ == null) {
@@ -32632,12 +29280,13 @@
         return this;
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+       *
        * <pre>
+       *
        * In order to execute the prepared statement,
        * clients need to submit this object in RunQuery message.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
        */
       public Builder setServerHandle(
           org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder builderForValue) {
@@ -32651,17 +29300,17 @@
         return this;
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+       *
        * <pre>
+       *
        * In order to execute the prepared statement,
        * clients need to submit this object in RunQuery message.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
        */
       public Builder mergeServerHandle(org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle value) {
         if (serverHandleBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              serverHandle_ != null &&
               serverHandle_ != org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance()) {
             serverHandle_ =
               org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.newBuilder(serverHandle_).mergeFrom(value).buildPartial();
@@ -32676,16 +29325,17 @@
         return this;
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+       *
        * <pre>
+       *
        * In order to execute the prepared statement,
        * clients need to submit this object in RunQuery message.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
        */
       public Builder clearServerHandle() {
         if (serverHandleBuilder_ == null) {
-          serverHandle_ = null;
+          serverHandle_ = org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance();
           onChanged();
         } else {
           serverHandleBuilder_.clear();
@@ -32694,12 +29344,13 @@
         return this;
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+       *
        * <pre>
+       *
        * In order to execute the prepared statement,
        * clients need to submit this object in RunQuery message.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder getServerHandleBuilder() {
         bitField0_ |= 0x00000002;
@@ -32707,99 +29358,59 @@
         return getServerHandleFieldBuilder().getBuilder();
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+       *
        * <pre>
+       *
        * In order to execute the prepared statement,
        * clients need to submit this object in RunQuery message.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder getServerHandleOrBuilder() {
         if (serverHandleBuilder_ != null) {
           return serverHandleBuilder_.getMessageOrBuilder();
         } else {
-          return serverHandle_ == null ?
-              org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance() : serverHandle_;
+          return serverHandle_;
         }
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
+       *
        * <pre>
+       *
        * In order to execute the prepared statement,
        * clients need to submit this object in RunQuery message.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle server_handle = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder> 
           getServerHandleFieldBuilder() {
         if (serverHandleBuilder_ == null) {
-          serverHandleBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          serverHandleBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder>(
-                  getServerHandle(),
+                  serverHandle_,
                   getParentForChildren(),
                   isClean());
           serverHandle_ = null;
         }
         return serverHandleBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.PreparedStatement)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.PreparedStatement)
-    private static final org.apache.drill.exec.proto.UserProtos.PreparedStatement DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.PreparedStatement();
+      defaultInstance = new PreparedStatement(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.PreparedStatement getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<PreparedStatement>
-        PARSER = new com.google.protobuf.AbstractParser<PreparedStatement>() {
-      @java.lang.Override
-      public PreparedStatement parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new PreparedStatement(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<PreparedStatement> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<PreparedStatement> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.PreparedStatement getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.PreparedStatement)
   }
 
-  public interface CreatePreparedStatementRespOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.CreatePreparedStatementResp)
-      com.google.protobuf.MessageOrBuilder {
+  public interface CreatePreparedStatementRespOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.RequestStatus status = 1;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -32809,6 +29420,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus();
 
+    // optional .exec.user.PreparedStatement prepared_statement = 2;
     /**
      * <code>optional .exec.user.PreparedStatement prepared_statement = 2;</code>
      */
@@ -32822,6 +29434,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.PreparedStatementOrBuilder getPreparedStatementOrBuilder();
 
+    // optional .exec.shared.DrillPBError error = 3;
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
@@ -32836,38 +29449,43 @@
     org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.CreatePreparedStatementResp}
+   *
    * <pre>
+   *
    * Response message for CreatePreparedStatementReq.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.CreatePreparedStatementResp}
    */
-  public  static final class CreatePreparedStatementResp extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.CreatePreparedStatementResp)
-      CreatePreparedStatementRespOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class CreatePreparedStatementResp extends
+      com.google.protobuf.GeneratedMessage
+      implements CreatePreparedStatementRespOrBuilder {
     // Use CreatePreparedStatementResp.newBuilder() to construct.
-    private CreatePreparedStatementResp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private CreatePreparedStatementResp(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private CreatePreparedStatementResp() {
-      status_ = 0;
+    private CreatePreparedStatementResp(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final CreatePreparedStatementResp defaultInstance;
+    public static CreatePreparedStatementResp getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public CreatePreparedStatementResp getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private CreatePreparedStatementResp(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -32879,15 +29497,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.RequestStatus value = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                status_ = rawValue;
+                status_ = value;
               }
               break;
             }
@@ -32917,20 +29541,13 @@
               bitField0_ |= 0x00000004;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -32941,17 +29558,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementResp_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementResp_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.class, org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<CreatePreparedStatementResp> PARSER =
+        new com.google.protobuf.AbstractParser<CreatePreparedStatementResp>() {
+      public CreatePreparedStatementResp parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new CreatePreparedStatementResp(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<CreatePreparedStatementResp> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.RequestStatus status = 1;
     public static final int STATUS_FIELD_NUMBER = 1;
-    private int status_;
+    private org.apache.drill.exec.proto.UserProtos.RequestStatus status_;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -32962,11 +29594,10 @@
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+      return status_;
     }
 
+    // optional .exec.user.PreparedStatement prepared_statement = 2;
     public static final int PREPARED_STATEMENT_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserProtos.PreparedStatement preparedStatement_;
     /**
@@ -32979,15 +29610,16 @@
      * <code>optional .exec.user.PreparedStatement prepared_statement = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.PreparedStatement getPreparedStatement() {
-      return preparedStatement_ == null ? org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance() : preparedStatement_;
+      return preparedStatement_;
     }
     /**
      * <code>optional .exec.user.PreparedStatement prepared_statement = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.PreparedStatementOrBuilder getPreparedStatementOrBuilder() {
-      return preparedStatement_ == null ? org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance() : preparedStatement_;
+      return preparedStatement_;
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
     public static final int ERROR_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_;
     /**
@@ -33000,128 +29632,74 @@
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
 
+    private void initFields() {
+      status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
+      preparedStatement_ = org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance();
+      error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, status_);
+        output.writeEnum(1, status_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getPreparedStatement());
+        output.writeMessage(2, preparedStatement_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, getError());
+        output.writeMessage(3, error_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, status_);
+          .computeEnumSize(1, status_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getPreparedStatement());
+          .computeMessageSize(2, preparedStatement_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getError());
+          .computeMessageSize(3, error_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp other = (org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp) obj;
-
-      boolean result = true;
-      result = result && (hasStatus() == other.hasStatus());
-      if (hasStatus()) {
-        result = result && status_ == other.status_;
-      }
-      result = result && (hasPreparedStatement() == other.hasPreparedStatement());
-      if (hasPreparedStatement()) {
-        result = result && getPreparedStatement()
-            .equals(other.getPreparedStatement());
-      }
-      result = result && (hasError() == other.hasError());
-      if (hasError()) {
-        result = result && getError()
-            .equals(other.getError());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasStatus()) {
-        hash = (37 * hash) + STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + status_;
-      }
-      if (hasPreparedStatement()) {
-        hash = (37 * hash) + PREPARED_STATEMENT_FIELD_NUMBER;
-        hash = (53 * hash) + getPreparedStatement().hashCode();
-      }
-      if (hasError()) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getError().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -33145,80 +29723,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.CreatePreparedStatementResp}
+     *
      * <pre>
+     *
      * Response message for CreatePreparedStatementReq.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.CreatePreparedStatementResp}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.CreatePreparedStatementResp)
-        org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementRespOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementRespOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementResp_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementResp_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -33231,30 +29795,32 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getPreparedStatementFieldBuilder();
           getErrorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         bitField0_ = (bitField0_ & ~0x00000001);
         if (preparedStatementBuilder_ == null) {
-          preparedStatement_ = null;
+          preparedStatement_ = org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance();
         } else {
           preparedStatementBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000002);
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
         } else {
           errorBuilder_.clear();
         }
@@ -33262,18 +29828,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_CreatePreparedStatementResp_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp build() {
         org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp result = buildPartial();
         if (!result.isInitialized()) {
@@ -33282,7 +29849,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp buildPartial() {
         org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp result = new org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp(this);
         int from_bitField0_ = bitField0_;
@@ -33312,39 +29878,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp)other);
@@ -33365,17 +29898,14 @@
         if (other.hasError()) {
           mergeError(other.getError());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -33385,7 +29915,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -33395,7 +29925,8 @@
       }
       private int bitField0_;
 
-      private int status_ = 0;
+      // optional .exec.user.RequestStatus status = 1;
+      private org.apache.drill.exec.proto.UserProtos.RequestStatus status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
@@ -33406,9 +29937,7 @@
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+        return status_;
       }
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
@@ -33418,7 +29947,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        status_ = value.getNumber();
+        status_ = value;
         onChanged();
         return this;
       }
@@ -33427,13 +29956,14 @@
        */
       public Builder clearStatus() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         onChanged();
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.PreparedStatement preparedStatement_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.PreparedStatement prepared_statement = 2;
+      private org.apache.drill.exec.proto.UserProtos.PreparedStatement preparedStatement_ = org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.PreparedStatement, org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder, org.apache.drill.exec.proto.UserProtos.PreparedStatementOrBuilder> preparedStatementBuilder_;
       /**
        * <code>optional .exec.user.PreparedStatement prepared_statement = 2;</code>
@@ -33446,7 +29976,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.PreparedStatement getPreparedStatement() {
         if (preparedStatementBuilder_ == null) {
-          return preparedStatement_ == null ? org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance() : preparedStatement_;
+          return preparedStatement_;
         } else {
           return preparedStatementBuilder_.getMessage();
         }
@@ -33487,7 +30017,6 @@
       public Builder mergePreparedStatement(org.apache.drill.exec.proto.UserProtos.PreparedStatement value) {
         if (preparedStatementBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              preparedStatement_ != null &&
               preparedStatement_ != org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance()) {
             preparedStatement_ =
               org.apache.drill.exec.proto.UserProtos.PreparedStatement.newBuilder(preparedStatement_).mergeFrom(value).buildPartial();
@@ -33506,7 +30035,7 @@
        */
       public Builder clearPreparedStatement() {
         if (preparedStatementBuilder_ == null) {
-          preparedStatement_ = null;
+          preparedStatement_ = org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance();
           onChanged();
         } else {
           preparedStatementBuilder_.clear();
@@ -33529,20 +30058,19 @@
         if (preparedStatementBuilder_ != null) {
           return preparedStatementBuilder_.getMessageOrBuilder();
         } else {
-          return preparedStatement_ == null ?
-              org.apache.drill.exec.proto.UserProtos.PreparedStatement.getDefaultInstance() : preparedStatement_;
+          return preparedStatement_;
         }
       }
       /**
        * <code>optional .exec.user.PreparedStatement prepared_statement = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.PreparedStatement, org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder, org.apache.drill.exec.proto.UserProtos.PreparedStatementOrBuilder> 
           getPreparedStatementFieldBuilder() {
         if (preparedStatementBuilder_ == null) {
-          preparedStatementBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          preparedStatementBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.PreparedStatement, org.apache.drill.exec.proto.UserProtos.PreparedStatement.Builder, org.apache.drill.exec.proto.UserProtos.PreparedStatementOrBuilder>(
-                  getPreparedStatement(),
+                  preparedStatement_,
                   getParentForChildren(),
                   isClean());
           preparedStatement_ = null;
@@ -33550,8 +30078,9 @@
         return preparedStatementBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.DrillPBError error = 3;
+      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> errorBuilder_;
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
@@ -33564,7 +30093,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
         if (errorBuilder_ == null) {
-          return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         } else {
           return errorBuilder_.getMessage();
         }
@@ -33605,7 +30134,6 @@
       public Builder mergeError(org.apache.drill.exec.proto.UserBitShared.DrillPBError value) {
         if (errorBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              error_ != null &&
               error_ != org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance()) {
             error_ =
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(error_).mergeFrom(value).buildPartial();
@@ -33624,7 +30152,7 @@
        */
       public Builder clearError() {
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
           onChanged();
         } else {
           errorBuilder_.clear();
@@ -33647,115 +30175,78 @@
         if (errorBuilder_ != null) {
           return errorBuilder_.getMessageOrBuilder();
         } else {
-          return error_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         }
       }
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> 
           getErrorFieldBuilder() {
         if (errorBuilder_ == null) {
-          errorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          errorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder>(
-                  getError(),
+                  error_,
                   getParentForChildren(),
                   isClean());
           error_ = null;
         }
         return errorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.CreatePreparedStatementResp)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.CreatePreparedStatementResp)
-    private static final org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp();
+      defaultInstance = new CreatePreparedStatementResp(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<CreatePreparedStatementResp>
-        PARSER = new com.google.protobuf.AbstractParser<CreatePreparedStatementResp>() {
-      @java.lang.Override
-      public CreatePreparedStatementResp parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new CreatePreparedStatementResp(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<CreatePreparedStatementResp> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<CreatePreparedStatementResp> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.CreatePreparedStatementResp getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.CreatePreparedStatementResp)
   }
 
-  public interface GetServerMetaReqOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetServerMetaReq)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetServerMetaReqOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
   }
   /**
+   * Protobuf type {@code exec.user.GetServerMetaReq}
+   *
    * <pre>
+   *
    * Request message for getting server metadata
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetServerMetaReq}
    */
-  public  static final class GetServerMetaReq extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetServerMetaReq)
-      GetServerMetaReqOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetServerMetaReq extends
+      com.google.protobuf.GeneratedMessage
+      implements GetServerMetaReqOrBuilder {
     // Use GetServerMetaReq.newBuilder() to construct.
-    private GetServerMetaReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetServerMetaReq(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetServerMetaReq() {
+    private GetServerMetaReq(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetServerMetaReq defaultInstance;
+    public static GetServerMetaReq getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetServerMetaReq getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetServerMetaReq(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
       try {
@@ -33767,8 +30258,8 @@
               done = true;
               break;
             default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
                 done = true;
               }
               break;
@@ -33779,7 +30270,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -33790,80 +30281,63 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaReq_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaReq_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.class, org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.Builder.class);
     }
 
-    private byte memoizedIsInitialized = -1;
+    public static com.google.protobuf.Parser<GetServerMetaReq> PARSER =
+        new com.google.protobuf.AbstractParser<GetServerMetaReq>() {
+      public GetServerMetaReq parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetServerMetaReq(input, extensionRegistry);
+      }
+    };
+
     @java.lang.Override
+    public com.google.protobuf.Parser<GetServerMetaReq> getParserForType() {
+      return PARSER;
+    }
+
+    private void initFields() {
+    }
+    private byte memoizedIsInitialized = -1;
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
-      unknownFields.writeTo(output);
+      getSerializedSize();
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetServerMetaReq)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetServerMetaReq other = (org.apache.drill.exec.proto.UserProtos.GetServerMetaReq) obj;
-
-      boolean result = true;
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -33887,80 +30361,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetServerMetaReq prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetServerMetaReq}
+     *
      * <pre>
+     *
      * Request message for getting server metadata
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetServerMetaReq}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetServerMetaReq)
-        org.apache.drill.exec.proto.UserProtos.GetServerMetaReqOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetServerMetaReqOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaReq_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaReq_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -33973,33 +30433,36 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaReq_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetServerMetaReq getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetServerMetaReq build() {
         org.apache.drill.exec.proto.UserProtos.GetServerMetaReq result = buildPartial();
         if (!result.isInitialized()) {
@@ -34008,46 +30471,12 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetServerMetaReq buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetServerMetaReq result = new org.apache.drill.exec.proto.UserProtos.GetServerMetaReq(this);
         onBuilt();
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetServerMetaReq) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetServerMetaReq)other);
@@ -34059,17 +30488,14 @@
 
       public Builder mergeFrom(org.apache.drill.exec.proto.UserProtos.GetServerMetaReq other) {
         if (other == org.apache.drill.exec.proto.UserProtos.GetServerMetaReq.getDefaultInstance()) return this;
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -34079,7 +30505,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetServerMetaReq) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -34087,63 +30513,22 @@
         }
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetServerMetaReq)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetServerMetaReq)
-    private static final org.apache.drill.exec.proto.UserProtos.GetServerMetaReq DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetServerMetaReq();
+      defaultInstance = new GetServerMetaReq(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetServerMetaReq getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetServerMetaReq>
-        PARSER = new com.google.protobuf.AbstractParser<GetServerMetaReq>() {
-      @java.lang.Override
-      public GetServerMetaReq parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetServerMetaReq(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetServerMetaReq> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetServerMetaReq> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetServerMetaReq getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetServerMetaReq)
   }
 
-  public interface ConvertSupportOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.ConvertSupport)
-      com.google.protobuf.MessageOrBuilder {
+  public interface ConvertSupportOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // required .common.MinorType from = 1;
     /**
      * <code>required .common.MinorType from = 1;</code>
      */
@@ -34153,6 +30538,7 @@
      */
     org.apache.drill.common.types.TypeProtos.MinorType getFrom();
 
+    // required .common.MinorType to = 2;
     /**
      * <code>required .common.MinorType to = 2;</code>
      */
@@ -34165,33 +30551,36 @@
   /**
    * Protobuf type {@code exec.user.ConvertSupport}
    */
-  public  static final class ConvertSupport extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.ConvertSupport)
-      ConvertSupportOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class ConvertSupport extends
+      com.google.protobuf.GeneratedMessage
+      implements ConvertSupportOrBuilder {
     // Use ConvertSupport.newBuilder() to construct.
-    private ConvertSupport(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private ConvertSupport(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private ConvertSupport() {
-      from_ = 0;
-      to_ = 0;
+    private ConvertSupport(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final ConvertSupport defaultInstance;
+    public static ConvertSupport getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public ConvertSupport getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private ConvertSupport(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -34203,34 +30592,32 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.common.types.TypeProtos.MinorType value = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                from_ = rawValue;
+                from_ = value;
               }
               break;
             }
             case 16: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.common.types.TypeProtos.MinorType value = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(2, rawValue);
               } else {
                 bitField0_ |= 0x00000002;
-                to_ = rawValue;
-              }
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
+                to_ = value;
               }
               break;
             }
@@ -34240,7 +30627,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -34251,17 +30638,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ConvertSupport_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ConvertSupport_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.ConvertSupport.class, org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<ConvertSupport> PARSER =
+        new com.google.protobuf.AbstractParser<ConvertSupport>() {
+      public ConvertSupport parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new ConvertSupport(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<ConvertSupport> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // required .common.MinorType from = 1;
     public static final int FROM_FIELD_NUMBER = 1;
-    private int from_;
+    private org.apache.drill.common.types.TypeProtos.MinorType from_;
     /**
      * <code>required .common.MinorType from = 1;</code>
      */
@@ -34272,13 +30674,12 @@
      * <code>required .common.MinorType from = 1;</code>
      */
     public org.apache.drill.common.types.TypeProtos.MinorType getFrom() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.common.types.TypeProtos.MinorType result = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(from_);
-      return result == null ? org.apache.drill.common.types.TypeProtos.MinorType.LATE : result;
+      return from_;
     }
 
+    // required .common.MinorType to = 2;
     public static final int TO_FIELD_NUMBER = 2;
-    private int to_;
+    private org.apache.drill.common.types.TypeProtos.MinorType to_;
     /**
      * <code>required .common.MinorType to = 2;</code>
      */
@@ -34289,17 +30690,17 @@
      * <code>required .common.MinorType to = 2;</code>
      */
     public org.apache.drill.common.types.TypeProtos.MinorType getTo() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.common.types.TypeProtos.MinorType result = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(to_);
-      return result == null ? org.apache.drill.common.types.TypeProtos.MinorType.LATE : result;
+      return to_;
     }
 
+    private void initFields() {
+      from_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
+      to_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       if (!hasFrom()) {
         memoizedIsInitialized = 0;
@@ -34313,91 +30714,44 @@
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, from_);
+        output.writeEnum(1, from_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeEnum(2, to_);
+        output.writeEnum(2, to_.getNumber());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, from_);
+          .computeEnumSize(1, from_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(2, to_);
+          .computeEnumSize(2, to_.getNumber());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.ConvertSupport)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.ConvertSupport other = (org.apache.drill.exec.proto.UserProtos.ConvertSupport) obj;
-
-      boolean result = true;
-      result = result && (hasFrom() == other.hasFrom());
-      if (hasFrom()) {
-        result = result && from_ == other.from_;
-      }
-      result = result && (hasTo() == other.hasTo());
-      if (hasTo()) {
-        result = result && to_ == other.to_;
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasFrom()) {
-        hash = (37 * hash) + FROM_FIELD_NUMBER;
-        hash = (53 * hash) + from_;
-      }
-      if (hasTo()) {
-        hash = (37 * hash) + TO_FIELD_NUMBER;
-        hash = (53 * hash) + to_;
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.ConvertSupport parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.ConvertSupport parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.ConvertSupport parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -34421,59 +30775,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.ConvertSupport parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ConvertSupport parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.ConvertSupport parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ConvertSupport parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.ConvertSupport parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ConvertSupport parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.ConvertSupport prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -34481,16 +30822,14 @@
      * Protobuf type {@code exec.user.ConvertSupport}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.ConvertSupport)
-        org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ConvertSupport_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ConvertSupport_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -34503,37 +30842,40 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        from_ = 0;
+        from_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
         bitField0_ = (bitField0_ & ~0x00000001);
-        to_ = 0;
+        to_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
         bitField0_ = (bitField0_ & ~0x00000002);
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ConvertSupport_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ConvertSupport getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.ConvertSupport.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ConvertSupport build() {
         org.apache.drill.exec.proto.UserProtos.ConvertSupport result = buildPartial();
         if (!result.isInitialized()) {
@@ -34542,7 +30884,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ConvertSupport buildPartial() {
         org.apache.drill.exec.proto.UserProtos.ConvertSupport result = new org.apache.drill.exec.proto.UserProtos.ConvertSupport(this);
         int from_bitField0_ = bitField0_;
@@ -34560,39 +30901,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.ConvertSupport) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.ConvertSupport)other);
@@ -34610,23 +30918,22 @@
         if (other.hasTo()) {
           setTo(other.getTo());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         if (!hasFrom()) {
+          
           return false;
         }
         if (!hasTo()) {
+          
           return false;
         }
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -34636,7 +30943,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.ConvertSupport) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -34646,7 +30953,8 @@
       }
       private int bitField0_;
 
-      private int from_ = 0;
+      // required .common.MinorType from = 1;
+      private org.apache.drill.common.types.TypeProtos.MinorType from_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
       /**
        * <code>required .common.MinorType from = 1;</code>
        */
@@ -34657,9 +30965,7 @@
        * <code>required .common.MinorType from = 1;</code>
        */
       public org.apache.drill.common.types.TypeProtos.MinorType getFrom() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.common.types.TypeProtos.MinorType result = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(from_);
-        return result == null ? org.apache.drill.common.types.TypeProtos.MinorType.LATE : result;
+        return from_;
       }
       /**
        * <code>required .common.MinorType from = 1;</code>
@@ -34669,7 +30975,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        from_ = value.getNumber();
+        from_ = value;
         onChanged();
         return this;
       }
@@ -34678,12 +30984,13 @@
        */
       public Builder clearFrom() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        from_ = 0;
+        from_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
         onChanged();
         return this;
       }
 
-      private int to_ = 0;
+      // required .common.MinorType to = 2;
+      private org.apache.drill.common.types.TypeProtos.MinorType to_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
       /**
        * <code>required .common.MinorType to = 2;</code>
        */
@@ -34694,9 +31001,7 @@
        * <code>required .common.MinorType to = 2;</code>
        */
       public org.apache.drill.common.types.TypeProtos.MinorType getTo() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.common.types.TypeProtos.MinorType result = org.apache.drill.common.types.TypeProtos.MinorType.valueOf(to_);
-        return result == null ? org.apache.drill.common.types.TypeProtos.MinorType.LATE : result;
+        return to_;
       }
       /**
        * <code>required .common.MinorType to = 2;</code>
@@ -34706,7 +31011,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000002;
-        to_ = value.getNumber();
+        to_ = value;
         onChanged();
         return this;
       }
@@ -34715,67 +31020,26 @@
        */
       public Builder clearTo() {
         bitField0_ = (bitField0_ & ~0x00000002);
-        to_ = 0;
+        to_ = org.apache.drill.common.types.TypeProtos.MinorType.LATE;
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.ConvertSupport)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.ConvertSupport)
-    private static final org.apache.drill.exec.proto.UserProtos.ConvertSupport DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.ConvertSupport();
+      defaultInstance = new ConvertSupport(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.ConvertSupport getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<ConvertSupport>
-        PARSER = new com.google.protobuf.AbstractParser<ConvertSupport>() {
-      @java.lang.Override
-      public ConvertSupport parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new ConvertSupport(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<ConvertSupport> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<ConvertSupport> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.ConvertSupport getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.ConvertSupport)
   }
 
-  public interface GetServerMetaRespOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.GetServerMetaResp)
-      com.google.protobuf.MessageOrBuilder {
+  public interface GetServerMetaRespOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.RequestStatus status = 1;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -34785,6 +31049,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus();
 
+    // optional .exec.user.ServerMeta server_meta = 2;
     /**
      * <code>optional .exec.user.ServerMeta server_meta = 2;</code>
      */
@@ -34798,6 +31063,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.ServerMetaOrBuilder getServerMetaOrBuilder();
 
+    // optional .exec.shared.DrillPBError error = 3;
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
@@ -34812,38 +31078,43 @@
     org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder();
   }
   /**
+   * Protobuf type {@code exec.user.GetServerMetaResp}
+   *
    * <pre>
+   *
    * Response message for GetServerMetaReq
    * </pre>
-   *
-   * Protobuf type {@code exec.user.GetServerMetaResp}
    */
-  public  static final class GetServerMetaResp extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.GetServerMetaResp)
-      GetServerMetaRespOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class GetServerMetaResp extends
+      com.google.protobuf.GeneratedMessage
+      implements GetServerMetaRespOrBuilder {
     // Use GetServerMetaResp.newBuilder() to construct.
-    private GetServerMetaResp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private GetServerMetaResp(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private GetServerMetaResp() {
-      status_ = 0;
+    private GetServerMetaResp(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final GetServerMetaResp defaultInstance;
+    public static GetServerMetaResp getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public GetServerMetaResp getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private GetServerMetaResp(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -34855,15 +31126,21 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.RequestStatus value = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                status_ = rawValue;
+                status_ = value;
               }
               break;
             }
@@ -34893,20 +31170,13 @@
               bitField0_ |= 0x00000004;
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         this.unknownFields = unknownFields.build();
         makeExtensionsImmutable();
@@ -34917,17 +31187,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaResp_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaResp_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.class, org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<GetServerMetaResp> PARSER =
+        new com.google.protobuf.AbstractParser<GetServerMetaResp>() {
+      public GetServerMetaResp parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new GetServerMetaResp(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<GetServerMetaResp> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.RequestStatus status = 1;
     public static final int STATUS_FIELD_NUMBER = 1;
-    private int status_;
+    private org.apache.drill.exec.proto.UserProtos.RequestStatus status_;
     /**
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
@@ -34938,11 +31223,10 @@
      * <code>optional .exec.user.RequestStatus status = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+      return status_;
     }
 
+    // optional .exec.user.ServerMeta server_meta = 2;
     public static final int SERVER_META_FIELD_NUMBER = 2;
     private org.apache.drill.exec.proto.UserProtos.ServerMeta serverMeta_;
     /**
@@ -34955,15 +31239,16 @@
      * <code>optional .exec.user.ServerMeta server_meta = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.ServerMeta getServerMeta() {
-      return serverMeta_ == null ? org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance() : serverMeta_;
+      return serverMeta_;
     }
     /**
      * <code>optional .exec.user.ServerMeta server_meta = 2;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.ServerMetaOrBuilder getServerMetaOrBuilder() {
-      return serverMeta_ == null ? org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance() : serverMeta_;
+      return serverMeta_;
     }
 
+    // optional .exec.shared.DrillPBError error = 3;
     public static final int ERROR_FIELD_NUMBER = 3;
     private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_;
     /**
@@ -34976,21 +31261,24 @@
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
     /**
      * <code>optional .exec.shared.DrillPBError error = 3;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder getErrorOrBuilder() {
-      return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+      return error_;
     }
 
+    private void initFields() {
+      status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
+      serverMeta_ = org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance();
+      error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       if (hasServerMeta()) {
         if (!getServerMeta().isInitialized()) {
@@ -35002,108 +31290,51 @@
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, status_);
+        output.writeEnum(1, status_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeMessage(2, getServerMeta());
+        output.writeMessage(2, serverMeta_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        output.writeMessage(3, getError());
+        output.writeMessage(3, error_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, status_);
+          .computeEnumSize(1, status_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(2, getServerMeta());
+          .computeMessageSize(2, serverMeta_);
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(3, getError());
+          .computeMessageSize(3, error_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.GetServerMetaResp)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.GetServerMetaResp other = (org.apache.drill.exec.proto.UserProtos.GetServerMetaResp) obj;
-
-      boolean result = true;
-      result = result && (hasStatus() == other.hasStatus());
-      if (hasStatus()) {
-        result = result && status_ == other.status_;
-      }
-      result = result && (hasServerMeta() == other.hasServerMeta());
-      if (hasServerMeta()) {
-        result = result && getServerMeta()
-            .equals(other.getServerMeta());
-      }
-      result = result && (hasError() == other.hasError());
-      if (hasError()) {
-        result = result && getError()
-            .equals(other.getError());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasStatus()) {
-        hash = (37 * hash) + STATUS_FIELD_NUMBER;
-        hash = (53 * hash) + status_;
-      }
-      if (hasServerMeta()) {
-        hash = (37 * hash) + SERVER_META_FIELD_NUMBER;
-        hash = (53 * hash) + getServerMeta().hashCode();
-      }
-      if (hasError()) {
-        hash = (37 * hash) + ERROR_FIELD_NUMBER;
-        hash = (53 * hash) + getError().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -35127,80 +31358,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.GetServerMetaResp prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.GetServerMetaResp}
+     *
      * <pre>
+     *
      * Response message for GetServerMetaReq
      * </pre>
-     *
-     * Protobuf type {@code exec.user.GetServerMetaResp}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.GetServerMetaResp)
-        org.apache.drill.exec.proto.UserProtos.GetServerMetaRespOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.GetServerMetaRespOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaResp_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaResp_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -35213,30 +31430,32 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getServerMetaFieldBuilder();
           getErrorFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         bitField0_ = (bitField0_ & ~0x00000001);
         if (serverMetaBuilder_ == null) {
-          serverMeta_ = null;
+          serverMeta_ = org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance();
         } else {
           serverMetaBuilder_.clear();
         }
         bitField0_ = (bitField0_ & ~0x00000002);
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
         } else {
           errorBuilder_.clear();
         }
@@ -35244,18 +31463,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_GetServerMetaResp_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetServerMetaResp getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.GetServerMetaResp.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetServerMetaResp build() {
         org.apache.drill.exec.proto.UserProtos.GetServerMetaResp result = buildPartial();
         if (!result.isInitialized()) {
@@ -35264,7 +31484,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.GetServerMetaResp buildPartial() {
         org.apache.drill.exec.proto.UserProtos.GetServerMetaResp result = new org.apache.drill.exec.proto.UserProtos.GetServerMetaResp(this);
         int from_bitField0_ = bitField0_;
@@ -35294,39 +31513,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.GetServerMetaResp) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.GetServerMetaResp)other);
@@ -35347,22 +31533,20 @@
         if (other.hasError()) {
           mergeError(other.getError());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         if (hasServerMeta()) {
           if (!getServerMeta().isInitialized()) {
+            
             return false;
           }
         }
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -35372,7 +31556,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.GetServerMetaResp) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -35382,7 +31566,8 @@
       }
       private int bitField0_;
 
-      private int status_ = 0;
+      // optional .exec.user.RequestStatus status = 1;
+      private org.apache.drill.exec.proto.UserProtos.RequestStatus status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
@@ -35393,9 +31578,7 @@
        * <code>optional .exec.user.RequestStatus status = 1;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.RequestStatus getStatus() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.RequestStatus result = org.apache.drill.exec.proto.UserProtos.RequestStatus.valueOf(status_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS : result;
+        return status_;
       }
       /**
        * <code>optional .exec.user.RequestStatus status = 1;</code>
@@ -35405,7 +31588,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        status_ = value.getNumber();
+        status_ = value;
         onChanged();
         return this;
       }
@@ -35414,13 +31597,14 @@
        */
       public Builder clearStatus() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        status_ = 0;
+        status_ = org.apache.drill.exec.proto.UserProtos.RequestStatus.UNKNOWN_STATUS;
         onChanged();
         return this;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.ServerMeta serverMeta_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.ServerMeta server_meta = 2;
+      private org.apache.drill.exec.proto.UserProtos.ServerMeta serverMeta_ = org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.ServerMeta, org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder, org.apache.drill.exec.proto.UserProtos.ServerMetaOrBuilder> serverMetaBuilder_;
       /**
        * <code>optional .exec.user.ServerMeta server_meta = 2;</code>
@@ -35433,7 +31617,7 @@
        */
       public org.apache.drill.exec.proto.UserProtos.ServerMeta getServerMeta() {
         if (serverMetaBuilder_ == null) {
-          return serverMeta_ == null ? org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance() : serverMeta_;
+          return serverMeta_;
         } else {
           return serverMetaBuilder_.getMessage();
         }
@@ -35474,7 +31658,6 @@
       public Builder mergeServerMeta(org.apache.drill.exec.proto.UserProtos.ServerMeta value) {
         if (serverMetaBuilder_ == null) {
           if (((bitField0_ & 0x00000002) == 0x00000002) &&
-              serverMeta_ != null &&
               serverMeta_ != org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance()) {
             serverMeta_ =
               org.apache.drill.exec.proto.UserProtos.ServerMeta.newBuilder(serverMeta_).mergeFrom(value).buildPartial();
@@ -35493,7 +31676,7 @@
        */
       public Builder clearServerMeta() {
         if (serverMetaBuilder_ == null) {
-          serverMeta_ = null;
+          serverMeta_ = org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance();
           onChanged();
         } else {
           serverMetaBuilder_.clear();
@@ -35516,20 +31699,19 @@
         if (serverMetaBuilder_ != null) {
           return serverMetaBuilder_.getMessageOrBuilder();
         } else {
-          return serverMeta_ == null ?
-              org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance() : serverMeta_;
+          return serverMeta_;
         }
       }
       /**
        * <code>optional .exec.user.ServerMeta server_meta = 2;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.ServerMeta, org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder, org.apache.drill.exec.proto.UserProtos.ServerMetaOrBuilder> 
           getServerMetaFieldBuilder() {
         if (serverMetaBuilder_ == null) {
-          serverMetaBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          serverMetaBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.ServerMeta, org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder, org.apache.drill.exec.proto.UserProtos.ServerMetaOrBuilder>(
-                  getServerMeta(),
+                  serverMeta_,
                   getParentForChildren(),
                   isClean());
           serverMeta_ = null;
@@ -35537,8 +31719,9 @@
         return serverMetaBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.shared.DrillPBError error = 3;
+      private org.apache.drill.exec.proto.UserBitShared.DrillPBError error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> errorBuilder_;
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
@@ -35551,7 +31734,7 @@
        */
       public org.apache.drill.exec.proto.UserBitShared.DrillPBError getError() {
         if (errorBuilder_ == null) {
-          return error_ == null ? org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         } else {
           return errorBuilder_.getMessage();
         }
@@ -35592,7 +31775,6 @@
       public Builder mergeError(org.apache.drill.exec.proto.UserBitShared.DrillPBError value) {
         if (errorBuilder_ == null) {
           if (((bitField0_ & 0x00000004) == 0x00000004) &&
-              error_ != null &&
               error_ != org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance()) {
             error_ =
               org.apache.drill.exec.proto.UserBitShared.DrillPBError.newBuilder(error_).mergeFrom(value).buildPartial();
@@ -35611,7 +31793,7 @@
        */
       public Builder clearError() {
         if (errorBuilder_ == null) {
-          error_ = null;
+          error_ = org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance();
           onChanged();
         } else {
           errorBuilder_.clear();
@@ -35634,1166 +31816,1173 @@
         if (errorBuilder_ != null) {
           return errorBuilder_.getMessageOrBuilder();
         } else {
-          return error_ == null ?
-              org.apache.drill.exec.proto.UserBitShared.DrillPBError.getDefaultInstance() : error_;
+          return error_;
         }
       }
       /**
        * <code>optional .exec.shared.DrillPBError error = 3;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder> 
           getErrorFieldBuilder() {
         if (errorBuilder_ == null) {
-          errorBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          errorBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserBitShared.DrillPBError, org.apache.drill.exec.proto.UserBitShared.DrillPBError.Builder, org.apache.drill.exec.proto.UserBitShared.DrillPBErrorOrBuilder>(
-                  getError(),
+                  error_,
                   getParentForChildren(),
                   isClean());
           error_ = null;
         }
         return errorBuilder_;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.GetServerMetaResp)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.GetServerMetaResp)
-    private static final org.apache.drill.exec.proto.UserProtos.GetServerMetaResp DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.GetServerMetaResp();
+      defaultInstance = new GetServerMetaResp(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.GetServerMetaResp getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<GetServerMetaResp>
-        PARSER = new com.google.protobuf.AbstractParser<GetServerMetaResp>() {
-      @java.lang.Override
-      public GetServerMetaResp parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new GetServerMetaResp(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<GetServerMetaResp> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<GetServerMetaResp> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.GetServerMetaResp getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.GetServerMetaResp)
   }
 
-  public interface ServerMetaOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.ServerMeta)
-      com.google.protobuf.MessageOrBuilder {
+  public interface ServerMetaOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional bool all_tables_selectable = 1;
     /**
+     * <code>optional bool all_tables_selectable = 1;</code>
+     *
      * <pre>
      * True if current user can use all tables returned by GetTables
      * </pre>
-     *
-     * <code>optional bool all_tables_selectable = 1;</code>
      */
     boolean hasAllTablesSelectable();
     /**
+     * <code>optional bool all_tables_selectable = 1;</code>
+     *
      * <pre>
      * True if current user can use all tables returned by GetTables
      * </pre>
-     *
-     * <code>optional bool all_tables_selectable = 1;</code>
      */
     boolean getAllTablesSelectable();
 
+    // optional bool blob_included_in_max_row_size = 2;
     /**
+     * <code>optional bool blob_included_in_max_row_size = 2;</code>
+     *
      * <pre>
      * True if BLOB are included into the max row size
      * </pre>
-     *
-     * <code>optional bool blob_included_in_max_row_size = 2;</code>
      */
     boolean hasBlobIncludedInMaxRowSize();
     /**
+     * <code>optional bool blob_included_in_max_row_size = 2;</code>
+     *
      * <pre>
      * True if BLOB are included into the max row size
      * </pre>
-     *
-     * <code>optional bool blob_included_in_max_row_size = 2;</code>
      */
     boolean getBlobIncludedInMaxRowSize();
 
+    // optional bool catalog_at_start = 3;
     /**
+     * <code>optional bool catalog_at_start = 3;</code>
+     *
      * <pre>
      * True if catalog name is at the start of a fully qualified table
      * </pre>
-     *
-     * <code>optional bool catalog_at_start = 3;</code>
      */
     boolean hasCatalogAtStart();
     /**
+     * <code>optional bool catalog_at_start = 3;</code>
+     *
      * <pre>
      * True if catalog name is at the start of a fully qualified table
      * </pre>
-     *
-     * <code>optional bool catalog_at_start = 3;</code>
      */
     boolean getCatalogAtStart();
 
+    // optional string catalog_separator = 4;
     /**
+     * <code>optional string catalog_separator = 4;</code>
+     *
      * <pre>
      * The catalog separator
      * </pre>
-     *
-     * <code>optional string catalog_separator = 4;</code>
      */
     boolean hasCatalogSeparator();
     /**
+     * <code>optional string catalog_separator = 4;</code>
+     *
      * <pre>
      * The catalog separator
      * </pre>
-     *
-     * <code>optional string catalog_separator = 4;</code>
      */
     java.lang.String getCatalogSeparator();
     /**
+     * <code>optional string catalog_separator = 4;</code>
+     *
      * <pre>
      * The catalog separator
      * </pre>
-     *
-     * <code>optional string catalog_separator = 4;</code>
      */
     com.google.protobuf.ByteString
         getCatalogSeparatorBytes();
 
+    // optional string catalog_term = 5;
     /**
+     * <code>optional string catalog_term = 5;</code>
+     *
      * <pre>
      * The term used to designate catalogs
      * </pre>
-     *
-     * <code>optional string catalog_term = 5;</code>
      */
     boolean hasCatalogTerm();
     /**
+     * <code>optional string catalog_term = 5;</code>
+     *
      * <pre>
      * The term used to designate catalogs
      * </pre>
-     *
-     * <code>optional string catalog_term = 5;</code>
      */
     java.lang.String getCatalogTerm();
     /**
+     * <code>optional string catalog_term = 5;</code>
+     *
      * <pre>
      * The term used to designate catalogs
      * </pre>
-     *
-     * <code>optional string catalog_term = 5;</code>
      */
     com.google.protobuf.ByteString
         getCatalogTermBytes();
 
+    // repeated .exec.user.CollateSupport collate_support = 6;
     /**
+     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+     *
      * <pre>
      * COLLATE support
      * </pre>
-     *
-     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
      */
     java.util.List<org.apache.drill.exec.proto.UserProtos.CollateSupport> getCollateSupportList();
     /**
+     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+     *
      * <pre>
      * COLLATE support
      * </pre>
-     *
-     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
      */
     int getCollateSupportCount();
     /**
+     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+     *
      * <pre>
      * COLLATE support
      * </pre>
-     *
-     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
      */
     org.apache.drill.exec.proto.UserProtos.CollateSupport getCollateSupport(int index);
 
+    // optional bool column_aliasing_supported = 7;
     /**
+     * <code>optional bool column_aliasing_supported = 7;</code>
+     *
      * <pre>
      * True if column aliasing is supported
      * </pre>
-     *
-     * <code>optional bool column_aliasing_supported = 7;</code>
      */
     boolean hasColumnAliasingSupported();
     /**
+     * <code>optional bool column_aliasing_supported = 7;</code>
+     *
      * <pre>
      * True if column aliasing is supported
      * </pre>
-     *
-     * <code>optional bool column_aliasing_supported = 7;</code>
      */
     boolean getColumnAliasingSupported();
 
+    // repeated .exec.user.ConvertSupport convert_support = 8;
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     java.util.List<org.apache.drill.exec.proto.UserProtos.ConvertSupport> 
         getConvertSupportList();
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     org.apache.drill.exec.proto.UserProtos.ConvertSupport getConvertSupport(int index);
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     int getConvertSupportCount();
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     java.util.List<? extends org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder> 
         getConvertSupportOrBuilderList();
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder getConvertSupportOrBuilder(
         int index);
 
+    // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
     /**
+     * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
+     *
      * <pre>
      * Correlation names support
      * </pre>
-     *
-     * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
      */
     boolean hasCorrelationNamesSupport();
     /**
+     * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
+     *
      * <pre>
      * Correlation names support
      * </pre>
-     *
-     * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
      */
     org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport getCorrelationNamesSupport();
 
+    // repeated string date_time_functions = 10;
     /**
+     * <code>repeated string date_time_functions = 10;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC Date Time scalar functions
      * </pre>
-     *
-     * <code>repeated string date_time_functions = 10;</code>
      */
     java.util.List<java.lang.String>
-        getDateTimeFunctionsList();
+    getDateTimeFunctionsList();
     /**
+     * <code>repeated string date_time_functions = 10;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC Date Time scalar functions
      * </pre>
-     *
-     * <code>repeated string date_time_functions = 10;</code>
      */
     int getDateTimeFunctionsCount();
     /**
+     * <code>repeated string date_time_functions = 10;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC Date Time scalar functions
      * </pre>
-     *
-     * <code>repeated string date_time_functions = 10;</code>
      */
     java.lang.String getDateTimeFunctions(int index);
     /**
+     * <code>repeated string date_time_functions = 10;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC Date Time scalar functions
      * </pre>
-     *
-     * <code>repeated string date_time_functions = 10;</code>
      */
     com.google.protobuf.ByteString
         getDateTimeFunctionsBytes(int index);
 
+    // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
     /**
+     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+     *
      * <pre>
      * Supported Date Time literals
      * </pre>
-     *
-     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
      */
     java.util.List<org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport> getDateTimeLiteralsSupportList();
     /**
+     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+     *
      * <pre>
      * Supported Date Time literals
      * </pre>
-     *
-     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
      */
     int getDateTimeLiteralsSupportCount();
     /**
+     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+     *
      * <pre>
      * Supported Date Time literals
      * </pre>
-     *
-     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
      */
     org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport getDateTimeLiteralsSupport(int index);
 
+    // optional .exec.user.GroupBySupport group_by_support = 12;
     /**
+     * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
+     *
      * <pre>
      * Group By support
      * </pre>
-     *
-     * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
      */
     boolean hasGroupBySupport();
     /**
+     * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
+     *
      * <pre>
      * Group By support
      * </pre>
-     *
-     * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
      */
     org.apache.drill.exec.proto.UserProtos.GroupBySupport getGroupBySupport();
 
+    // optional .exec.user.IdentifierCasing identifier_casing = 13;
     /**
+     * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
+     *
      * <pre>
      * Unquoted Identifier casing
      * </pre>
-     *
-     * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
      */
     boolean hasIdentifierCasing();
     /**
+     * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
+     *
      * <pre>
      * Unquoted Identifier casing
      * </pre>
-     *
-     * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
      */
     org.apache.drill.exec.proto.UserProtos.IdentifierCasing getIdentifierCasing();
 
+    // optional string identifier_quote_string = 14;
     /**
+     * <code>optional string identifier_quote_string = 14;</code>
+     *
      * <pre>
      * Quote string for identifiers
      * </pre>
-     *
-     * <code>optional string identifier_quote_string = 14;</code>
      */
     boolean hasIdentifierQuoteString();
     /**
+     * <code>optional string identifier_quote_string = 14;</code>
+     *
      * <pre>
      * Quote string for identifiers
      * </pre>
-     *
-     * <code>optional string identifier_quote_string = 14;</code>
      */
     java.lang.String getIdentifierQuoteString();
     /**
+     * <code>optional string identifier_quote_string = 14;</code>
+     *
      * <pre>
      * Quote string for identifiers
      * </pre>
-     *
-     * <code>optional string identifier_quote_string = 14;</code>
      */
     com.google.protobuf.ByteString
         getIdentifierQuoteStringBytes();
 
+    // optional bool like_escape_clause_supported = 15;
     /**
+     * <code>optional bool like_escape_clause_supported = 15;</code>
+     *
      * <pre>
      * True if LIKE supports an ESCAPE clause
      * </pre>
-     *
-     * <code>optional bool like_escape_clause_supported = 15;</code>
      */
     boolean hasLikeEscapeClauseSupported();
     /**
+     * <code>optional bool like_escape_clause_supported = 15;</code>
+     *
      * <pre>
      * True if LIKE supports an ESCAPE clause
      * </pre>
-     *
-     * <code>optional bool like_escape_clause_supported = 15;</code>
      */
     boolean getLikeEscapeClauseSupported();
 
+    // optional uint32 max_binary_literal_length = 16;
     /**
+     * <code>optional uint32 max_binary_literal_length = 16;</code>
+     *
      * <pre>
      * Maximum number of hexa characters for binary literals (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_binary_literal_length = 16;</code>
      */
     boolean hasMaxBinaryLiteralLength();
     /**
+     * <code>optional uint32 max_binary_literal_length = 16;</code>
+     *
      * <pre>
      * Maximum number of hexa characters for binary literals (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_binary_literal_length = 16;</code>
      */
     int getMaxBinaryLiteralLength();
 
+    // optional uint32 max_catalog_name_length = 17;
     /**
+     * <code>optional uint32 max_catalog_name_length = 17;</code>
+     *
      * <pre>
      * Maximum length of catalog names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_catalog_name_length = 17;</code>
      */
     boolean hasMaxCatalogNameLength();
     /**
+     * <code>optional uint32 max_catalog_name_length = 17;</code>
+     *
      * <pre>
      * Maximum length of catalog names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_catalog_name_length = 17;</code>
      */
     int getMaxCatalogNameLength();
 
+    // optional uint32 max_char_literal_length = 18;
     /**
+     * <code>optional uint32 max_char_literal_length = 18;</code>
+     *
      * <pre>
      * Maximum number of characters for string literals (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_char_literal_length = 18;</code>
      */
     boolean hasMaxCharLiteralLength();
     /**
+     * <code>optional uint32 max_char_literal_length = 18;</code>
+     *
      * <pre>
      * Maximum number of characters for string literals (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_char_literal_length = 18;</code>
      */
     int getMaxCharLiteralLength();
 
+    // optional uint32 max_column_name_length = 19;
     /**
+     * <code>optional uint32 max_column_name_length = 19;</code>
+     *
      * <pre>
      * Maximum length of column names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_column_name_length = 19;</code>
      */
     boolean hasMaxColumnNameLength();
     /**
+     * <code>optional uint32 max_column_name_length = 19;</code>
+     *
      * <pre>
      * Maximum length of column names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_column_name_length = 19;</code>
      */
     int getMaxColumnNameLength();
 
+    // optional uint32 max_columns_in_group_by = 20;
     /**
+     * <code>optional uint32 max_columns_in_group_by = 20;</code>
+     *
      * <pre>
      * Maximum number of columns in GROUP BY expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_group_by = 20;</code>
      */
     boolean hasMaxColumnsInGroupBy();
     /**
+     * <code>optional uint32 max_columns_in_group_by = 20;</code>
+     *
      * <pre>
      * Maximum number of columns in GROUP BY expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_group_by = 20;</code>
      */
     int getMaxColumnsInGroupBy();
 
+    // optional uint32 max_columns_in_order_by = 21;
     /**
+     * <code>optional uint32 max_columns_in_order_by = 21;</code>
+     *
      * <pre>
      * Maximum number of columns in ORDER BY expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_order_by = 21;</code>
      */
     boolean hasMaxColumnsInOrderBy();
     /**
+     * <code>optional uint32 max_columns_in_order_by = 21;</code>
+     *
      * <pre>
      * Maximum number of columns in ORDER BY expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_order_by = 21;</code>
      */
     int getMaxColumnsInOrderBy();
 
+    // optional uint32 max_columns_in_select = 22;
     /**
+     * <code>optional uint32 max_columns_in_select = 22;</code>
+     *
      * <pre>
      * Maximum number of columns in SELECT expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_select = 22;</code>
      */
     boolean hasMaxColumnsInSelect();
     /**
+     * <code>optional uint32 max_columns_in_select = 22;</code>
+     *
      * <pre>
      * Maximum number of columns in SELECT expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_select = 22;</code>
      */
     int getMaxColumnsInSelect();
 
+    // optional uint32 max_cursor_name_length = 23;
     /**
+     * <code>optional uint32 max_cursor_name_length = 23;</code>
+     *
      * <pre>
      * Maximum length of cursor names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_cursor_name_length = 23;</code>
      */
     boolean hasMaxCursorNameLength();
     /**
+     * <code>optional uint32 max_cursor_name_length = 23;</code>
+     *
      * <pre>
      * Maximum length of cursor names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_cursor_name_length = 23;</code>
      */
     int getMaxCursorNameLength();
 
+    // optional uint32 max_logical_lob_size = 24;
     /**
+     * <code>optional uint32 max_logical_lob_size = 24;</code>
+     *
      * <pre>
      * Maximum logical size for LOB types (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_logical_lob_size = 24;</code>
      */
     boolean hasMaxLogicalLobSize();
     /**
+     * <code>optional uint32 max_logical_lob_size = 24;</code>
+     *
      * <pre>
      * Maximum logical size for LOB types (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_logical_lob_size = 24;</code>
      */
     int getMaxLogicalLobSize();
 
+    // optional uint32 max_row_size = 25;
     /**
+     * <code>optional uint32 max_row_size = 25;</code>
+     *
      * <pre>
      * Maximum number of bytes for a single row (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_row_size = 25;</code>
      */
     boolean hasMaxRowSize();
     /**
+     * <code>optional uint32 max_row_size = 25;</code>
+     *
      * <pre>
      * Maximum number of bytes for a single row (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_row_size = 25;</code>
      */
     int getMaxRowSize();
 
+    // optional uint32 max_schema_name_length = 26;
     /**
+     * <code>optional uint32 max_schema_name_length = 26;</code>
+     *
      * <pre>
      * Maximum length of schema names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_schema_name_length = 26;</code>
      */
     boolean hasMaxSchemaNameLength();
     /**
+     * <code>optional uint32 max_schema_name_length = 26;</code>
+     *
      * <pre>
      * Maximum length of schema names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_schema_name_length = 26;</code>
      */
     int getMaxSchemaNameLength();
 
+    // optional uint32 max_statement_length = 27;
     /**
+     * <code>optional uint32 max_statement_length = 27;</code>
+     *
      * <pre>
      * Maximum length for statements (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_statement_length = 27;</code>
      */
     boolean hasMaxStatementLength();
     /**
+     * <code>optional uint32 max_statement_length = 27;</code>
+     *
      * <pre>
      * Maximum length for statements (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_statement_length = 27;</code>
      */
     int getMaxStatementLength();
 
+    // optional uint32 max_statements = 28;
     /**
+     * <code>optional uint32 max_statements = 28;</code>
+     *
      * <pre>
      * Maximum number of statements (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_statements = 28;</code>
      */
     boolean hasMaxStatements();
     /**
+     * <code>optional uint32 max_statements = 28;</code>
+     *
      * <pre>
      * Maximum number of statements (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_statements = 28;</code>
      */
     int getMaxStatements();
 
+    // optional uint32 max_table_name_length = 29;
     /**
+     * <code>optional uint32 max_table_name_length = 29;</code>
+     *
      * <pre>
      * Maximum length of table names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_table_name_length = 29;</code>
      */
     boolean hasMaxTableNameLength();
     /**
+     * <code>optional uint32 max_table_name_length = 29;</code>
+     *
      * <pre>
      * Maximum length of table names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_table_name_length = 29;</code>
      */
     int getMaxTableNameLength();
 
+    // optional uint32 max_tables_in_select = 30;
     /**
+     * <code>optional uint32 max_tables_in_select = 30;</code>
+     *
      * <pre>
      * Maximum number of tables in a SELECT expression (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_tables_in_select = 30;</code>
      */
     boolean hasMaxTablesInSelect();
     /**
+     * <code>optional uint32 max_tables_in_select = 30;</code>
+     *
      * <pre>
      * Maximum number of tables in a SELECT expression (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_tables_in_select = 30;</code>
      */
     int getMaxTablesInSelect();
 
+    // optional uint32 max_user_name_length = 31;
     /**
+     * <code>optional uint32 max_user_name_length = 31;</code>
+     *
      * <pre>
      * Maximum length of user names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_user_name_length = 31;</code>
      */
     boolean hasMaxUserNameLength();
     /**
+     * <code>optional uint32 max_user_name_length = 31;</code>
+     *
      * <pre>
      * Maximum length of user names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_user_name_length = 31;</code>
      */
     int getMaxUserNameLength();
 
+    // optional .exec.user.NullCollation null_collation = 32;
     /**
+     * <code>optional .exec.user.NullCollation null_collation = 32;</code>
+     *
      * <pre>
      * How NULL are sorted
      * </pre>
-     *
-     * <code>optional .exec.user.NullCollation null_collation = 32;</code>
      */
     boolean hasNullCollation();
     /**
+     * <code>optional .exec.user.NullCollation null_collation = 32;</code>
+     *
      * <pre>
      * How NULL are sorted
      * </pre>
-     *
-     * <code>optional .exec.user.NullCollation null_collation = 32;</code>
      */
     org.apache.drill.exec.proto.UserProtos.NullCollation getNullCollation();
 
+    // optional bool null_plus_non_null_equals_null = 33;
     /**
+     * <code>optional bool null_plus_non_null_equals_null = 33;</code>
+     *
      * <pre>
      * True if NULL + non NULL is NULL
      * </pre>
-     *
-     * <code>optional bool null_plus_non_null_equals_null = 33;</code>
      */
     boolean hasNullPlusNonNullEqualsNull();
     /**
+     * <code>optional bool null_plus_non_null_equals_null = 33;</code>
+     *
      * <pre>
      * True if NULL + non NULL is NULL
      * </pre>
-     *
-     * <code>optional bool null_plus_non_null_equals_null = 33;</code>
      */
     boolean getNullPlusNonNullEqualsNull();
 
+    // repeated string numeric_functions = 34;
     /**
+     * <code>repeated string numeric_functions = 34;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC numeric scalar functions
      * </pre>
-     *
-     * <code>repeated string numeric_functions = 34;</code>
      */
     java.util.List<java.lang.String>
-        getNumericFunctionsList();
+    getNumericFunctionsList();
     /**
+     * <code>repeated string numeric_functions = 34;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC numeric scalar functions
      * </pre>
-     *
-     * <code>repeated string numeric_functions = 34;</code>
      */
     int getNumericFunctionsCount();
     /**
+     * <code>repeated string numeric_functions = 34;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC numeric scalar functions
      * </pre>
-     *
-     * <code>repeated string numeric_functions = 34;</code>
      */
     java.lang.String getNumericFunctions(int index);
     /**
+     * <code>repeated string numeric_functions = 34;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC numeric scalar functions
      * </pre>
-     *
-     * <code>repeated string numeric_functions = 34;</code>
      */
     com.google.protobuf.ByteString
         getNumericFunctionsBytes(int index);
 
+    // repeated .exec.user.OrderBySupport order_by_support = 35;
     /**
+     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
      */
     java.util.List<org.apache.drill.exec.proto.UserProtos.OrderBySupport> getOrderBySupportList();
     /**
+     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
      */
     int getOrderBySupportCount();
     /**
+     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
      */
     org.apache.drill.exec.proto.UserProtos.OrderBySupport getOrderBySupport(int index);
 
+    // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
     /**
+     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
      */
     java.util.List<org.apache.drill.exec.proto.UserProtos.OuterJoinSupport> getOuterJoinSupportList();
     /**
+     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
      */
     int getOuterJoinSupportCount();
     /**
+     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
      */
     org.apache.drill.exec.proto.UserProtos.OuterJoinSupport getOuterJoinSupport(int index);
 
+    // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
     /**
+     * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
+     *
      * <pre>
      * Quoted identifier casing
      * </pre>
-     *
-     * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
      */
     boolean hasQuotedIdentifierCasing();
     /**
+     * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
+     *
      * <pre>
      * Quoted identifier casing
      * </pre>
-     *
-     * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
      */
     org.apache.drill.exec.proto.UserProtos.IdentifierCasing getQuotedIdentifierCasing();
 
+    // optional bool read_only = 38;
     /**
+     * <code>optional bool read_only = 38;</code>
+     *
      * <pre>
      * True if connection access is read only
      * </pre>
-     *
-     * <code>optional bool read_only = 38;</code>
      */
     boolean hasReadOnly();
     /**
+     * <code>optional bool read_only = 38;</code>
+     *
      * <pre>
      * True if connection access is read only
      * </pre>
-     *
-     * <code>optional bool read_only = 38;</code>
      */
     boolean getReadOnly();
 
+    // optional string schema_term = 39;
     /**
+     * <code>optional string schema_term = 39;</code>
+     *
      * <pre>
      * The term used to designate a schema
      * </pre>
-     *
-     * <code>optional string schema_term = 39;</code>
      */
     boolean hasSchemaTerm();
     /**
+     * <code>optional string schema_term = 39;</code>
+     *
      * <pre>
      * The term used to designate a schema
      * </pre>
-     *
-     * <code>optional string schema_term = 39;</code>
      */
     java.lang.String getSchemaTerm();
     /**
+     * <code>optional string schema_term = 39;</code>
+     *
      * <pre>
      * The term used to designate a schema
      * </pre>
-     *
-     * <code>optional string schema_term = 39;</code>
      */
     com.google.protobuf.ByteString
         getSchemaTermBytes();
 
+    // optional string search_escape_string = 40;
     /**
+     * <code>optional string search_escape_string = 40;</code>
+     *
      * <pre>
      * Characters used for escaping (empty if not suported)
      * </pre>
-     *
-     * <code>optional string search_escape_string = 40;</code>
      */
     boolean hasSearchEscapeString();
     /**
+     * <code>optional string search_escape_string = 40;</code>
+     *
      * <pre>
      * Characters used for escaping (empty if not suported)
      * </pre>
-     *
-     * <code>optional string search_escape_string = 40;</code>
      */
     java.lang.String getSearchEscapeString();
     /**
+     * <code>optional string search_escape_string = 40;</code>
+     *
      * <pre>
      * Characters used for escaping (empty if not suported)
      * </pre>
-     *
-     * <code>optional string search_escape_string = 40;</code>
      */
     com.google.protobuf.ByteString
         getSearchEscapeStringBytes();
 
+    // optional bool select_for_update_supported = 41;
     /**
+     * <code>optional bool select_for_update_supported = 41;</code>
+     *
      * <pre>
      * True if SELECT FOR UPDATE is supported
      * </pre>
-     *
-     * <code>optional bool select_for_update_supported = 41;</code>
      */
     boolean hasSelectForUpdateSupported();
     /**
+     * <code>optional bool select_for_update_supported = 41;</code>
+     *
      * <pre>
      * True if SELECT FOR UPDATE is supported
      * </pre>
-     *
-     * <code>optional bool select_for_update_supported = 41;</code>
      */
     boolean getSelectForUpdateSupported();
 
+    // optional string special_characters = 42;
     /**
+     * <code>optional string special_characters = 42;</code>
+     *
      * <pre>
      * List of extra characters that can be used in identifier names
      * </pre>
-     *
-     * <code>optional string special_characters = 42;</code>
      */
     boolean hasSpecialCharacters();
     /**
+     * <code>optional string special_characters = 42;</code>
+     *
      * <pre>
      * List of extra characters that can be used in identifier names
      * </pre>
-     *
-     * <code>optional string special_characters = 42;</code>
      */
     java.lang.String getSpecialCharacters();
     /**
+     * <code>optional string special_characters = 42;</code>
+     *
      * <pre>
      * List of extra characters that can be used in identifier names
      * </pre>
-     *
-     * <code>optional string special_characters = 42;</code>
      */
     com.google.protobuf.ByteString
         getSpecialCharactersBytes();
 
+    // repeated string sql_keywords = 43;
     /**
+     * <code>repeated string sql_keywords = 43;</code>
+     *
      * <pre>
      * list of SQL keywords
      * </pre>
-     *
-     * <code>repeated string sql_keywords = 43;</code>
      */
     java.util.List<java.lang.String>
-        getSqlKeywordsList();
+    getSqlKeywordsList();
     /**
+     * <code>repeated string sql_keywords = 43;</code>
+     *
      * <pre>
      * list of SQL keywords
      * </pre>
-     *
-     * <code>repeated string sql_keywords = 43;</code>
      */
     int getSqlKeywordsCount();
     /**
+     * <code>repeated string sql_keywords = 43;</code>
+     *
      * <pre>
      * list of SQL keywords
      * </pre>
-     *
-     * <code>repeated string sql_keywords = 43;</code>
      */
     java.lang.String getSqlKeywords(int index);
     /**
+     * <code>repeated string sql_keywords = 43;</code>
+     *
      * <pre>
      * list of SQL keywords
      * </pre>
-     *
-     * <code>repeated string sql_keywords = 43;</code>
      */
     com.google.protobuf.ByteString
         getSqlKeywordsBytes(int index);
 
+    // repeated string string_functions = 44;
     /**
+     * <code>repeated string string_functions = 44;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC string scalar functions
      * </pre>
-     *
-     * <code>repeated string string_functions = 44;</code>
      */
     java.util.List<java.lang.String>
-        getStringFunctionsList();
+    getStringFunctionsList();
     /**
+     * <code>repeated string string_functions = 44;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC string scalar functions
      * </pre>
-     *
-     * <code>repeated string string_functions = 44;</code>
      */
     int getStringFunctionsCount();
     /**
+     * <code>repeated string string_functions = 44;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC string scalar functions
      * </pre>
-     *
-     * <code>repeated string string_functions = 44;</code>
      */
     java.lang.String getStringFunctions(int index);
     /**
+     * <code>repeated string string_functions = 44;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC string scalar functions
      * </pre>
-     *
-     * <code>repeated string string_functions = 44;</code>
      */
     com.google.protobuf.ByteString
         getStringFunctionsBytes(int index);
 
+    // repeated .exec.user.SubQuerySupport subquery_support = 45;
     /**
+     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+     *
      * <pre>
      * Subquery support
      * </pre>
-     *
-     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
      */
     java.util.List<org.apache.drill.exec.proto.UserProtos.SubQuerySupport> getSubquerySupportList();
     /**
+     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+     *
      * <pre>
      * Subquery support
      * </pre>
-     *
-     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
      */
     int getSubquerySupportCount();
     /**
+     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+     *
      * <pre>
      * Subquery support
      * </pre>
-     *
-     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
      */
     org.apache.drill.exec.proto.UserProtos.SubQuerySupport getSubquerySupport(int index);
 
+    // repeated string system_functions = 46;
     /**
+     * <code>repeated string system_functions = 46;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC systen scalar functions
      * </pre>
-     *
-     * <code>repeated string system_functions = 46;</code>
      */
     java.util.List<java.lang.String>
-        getSystemFunctionsList();
+    getSystemFunctionsList();
     /**
+     * <code>repeated string system_functions = 46;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC systen scalar functions
      * </pre>
-     *
-     * <code>repeated string system_functions = 46;</code>
      */
     int getSystemFunctionsCount();
     /**
+     * <code>repeated string system_functions = 46;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC systen scalar functions
      * </pre>
-     *
-     * <code>repeated string system_functions = 46;</code>
      */
     java.lang.String getSystemFunctions(int index);
     /**
+     * <code>repeated string system_functions = 46;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC systen scalar functions
      * </pre>
-     *
-     * <code>repeated string system_functions = 46;</code>
      */
     com.google.protobuf.ByteString
         getSystemFunctionsBytes(int index);
 
+    // optional string table_term = 47;
     /**
+     * <code>optional string table_term = 47;</code>
+     *
      * <pre>
      * The term used to designate a table
      * </pre>
-     *
-     * <code>optional string table_term = 47;</code>
      */
     boolean hasTableTerm();
     /**
+     * <code>optional string table_term = 47;</code>
+     *
      * <pre>
      * The term used to designate a table
      * </pre>
-     *
-     * <code>optional string table_term = 47;</code>
      */
     java.lang.String getTableTerm();
     /**
+     * <code>optional string table_term = 47;</code>
+     *
      * <pre>
      * The term used to designate a table
      * </pre>
-     *
-     * <code>optional string table_term = 47;</code>
      */
     com.google.protobuf.ByteString
         getTableTermBytes();
 
+    // optional bool transaction_supported = 48;
     /**
+     * <code>optional bool transaction_supported = 48;</code>
+     *
      * <pre>
      * True if transaction is supported
      * </pre>
-     *
-     * <code>optional bool transaction_supported = 48;</code>
      */
     boolean hasTransactionSupported();
     /**
+     * <code>optional bool transaction_supported = 48;</code>
+     *
      * <pre>
      * True if transaction is supported
      * </pre>
-     *
-     * <code>optional bool transaction_supported = 48;</code>
      */
     boolean getTransactionSupported();
 
+    // repeated .exec.user.UnionSupport union_support = 49;
     /**
+     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+     *
      * <pre>
      * UNION support
      * </pre>
-     *
-     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
      */
     java.util.List<org.apache.drill.exec.proto.UserProtos.UnionSupport> getUnionSupportList();
     /**
+     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+     *
      * <pre>
      * UNION support
      * </pre>
-     *
-     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
      */
     int getUnionSupportCount();
     /**
+     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+     *
      * <pre>
      * UNION support
      * </pre>
-     *
-     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
      */
     org.apache.drill.exec.proto.UserProtos.UnionSupport getUnionSupport(int index);
 
+    // optional string current_schema = 50;
     /**
+     * <code>optional string current_schema = 50;</code>
+     *
      * <pre>
      * current schema
      * </pre>
-     *
-     * <code>optional string current_schema = 50;</code>
      */
     boolean hasCurrentSchema();
     /**
+     * <code>optional string current_schema = 50;</code>
+     *
      * <pre>
      * current schema
      * </pre>
-     *
-     * <code>optional string current_schema = 50;</code>
      */
     java.lang.String getCurrentSchema();
     /**
+     * <code>optional string current_schema = 50;</code>
+     *
      * <pre>
      * current schema
      * </pre>
-     *
-     * <code>optional string current_schema = 50;</code>
      */
     com.google.protobuf.ByteString
         getCurrentSchemaBytes();
@@ -36801,81 +32990,36 @@
   /**
    * Protobuf type {@code exec.user.ServerMeta}
    */
-  public  static final class ServerMeta extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.ServerMeta)
-      ServerMetaOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class ServerMeta extends
+      com.google.protobuf.GeneratedMessage
+      implements ServerMetaOrBuilder {
     // Use ServerMeta.newBuilder() to construct.
-    private ServerMeta(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private ServerMeta(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private ServerMeta() {
-      allTablesSelectable_ = false;
-      blobIncludedInMaxRowSize_ = false;
-      catalogAtStart_ = false;
-      catalogSeparator_ = "";
-      catalogTerm_ = "";
-      collateSupport_ = java.util.Collections.emptyList();
-      columnAliasingSupported_ = false;
-      convertSupport_ = java.util.Collections.emptyList();
-      correlationNamesSupport_ = 1;
-      dateTimeFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
-      dateTimeLiteralsSupport_ = java.util.Collections.emptyList();
-      groupBySupport_ = 1;
-      identifierCasing_ = 0;
-      identifierQuoteString_ = "";
-      likeEscapeClauseSupported_ = false;
-      maxBinaryLiteralLength_ = 0;
-      maxCatalogNameLength_ = 0;
-      maxCharLiteralLength_ = 0;
-      maxColumnNameLength_ = 0;
-      maxColumnsInGroupBy_ = 0;
-      maxColumnsInOrderBy_ = 0;
-      maxColumnsInSelect_ = 0;
-      maxCursorNameLength_ = 0;
-      maxLogicalLobSize_ = 0;
-      maxRowSize_ = 0;
-      maxSchemaNameLength_ = 0;
-      maxStatementLength_ = 0;
-      maxStatements_ = 0;
-      maxTableNameLength_ = 0;
-      maxTablesInSelect_ = 0;
-      maxUserNameLength_ = 0;
-      nullCollation_ = 0;
-      nullPlusNonNullEqualsNull_ = false;
-      numericFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
-      orderBySupport_ = java.util.Collections.emptyList();
-      outerJoinSupport_ = java.util.Collections.emptyList();
-      quotedIdentifierCasing_ = 0;
-      readOnly_ = false;
-      schemaTerm_ = "";
-      searchEscapeString_ = "";
-      selectForUpdateSupported_ = false;
-      specialCharacters_ = "";
-      sqlKeywords_ = com.google.protobuf.LazyStringArrayList.EMPTY;
-      stringFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
-      subquerySupport_ = java.util.Collections.emptyList();
-      systemFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
-      tableTerm_ = "";
-      transactionSupported_ = false;
-      unionSupport_ = java.util.Collections.emptyList();
-      currentSchema_ = "";
+    private ServerMeta(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final ServerMeta defaultInstance;
+    public static ServerMeta getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public ServerMeta getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private ServerMeta(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       int mutable_bitField1_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
@@ -36888,6 +33032,13 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               bitField0_ |= 0x00000001;
               allTablesSelectable_ = input.readBool();
@@ -36904,29 +33055,26 @@
               break;
             }
             case 34: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000008;
-              catalogSeparator_ = bs;
+              catalogSeparator_ = input.readBytes();
               break;
             }
             case 42: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000010;
-              catalogTerm_ = bs;
+              catalogTerm_ = input.readBytes();
               break;
             }
             case 48: {
               int rawValue = input.readEnum();
-              @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.CollateSupport value = org.apache.drill.exec.proto.UserProtos.CollateSupport.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(6, rawValue);
               } else {
                 if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-                  collateSupport_ = new java.util.ArrayList<java.lang.Integer>();
+                  collateSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.CollateSupport>();
                   mutable_bitField0_ |= 0x00000020;
                 }
-                collateSupport_.add(rawValue);
+                collateSupport_.add(value);
               }
               break;
             }
@@ -36935,16 +33083,15 @@
               int oldLimit = input.pushLimit(length);
               while(input.getBytesUntilLimit() > 0) {
                 int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
                 org.apache.drill.exec.proto.UserProtos.CollateSupport value = org.apache.drill.exec.proto.UserProtos.CollateSupport.valueOf(rawValue);
                 if (value == null) {
                   unknownFields.mergeVarintField(6, rawValue);
                 } else {
                   if (!((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
-                    collateSupport_ = new java.util.ArrayList<java.lang.Integer>();
+                    collateSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.CollateSupport>();
                     mutable_bitField0_ |= 0x00000020;
                   }
-                  collateSupport_.add(rawValue);
+                  collateSupport_.add(value);
                 }
               }
               input.popLimit(oldLimit);
@@ -36960,43 +33107,39 @@
                 convertSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.ConvertSupport>();
                 mutable_bitField0_ |= 0x00000080;
               }
-              convertSupport_.add(
-                  input.readMessage(org.apache.drill.exec.proto.UserProtos.ConvertSupport.PARSER, extensionRegistry));
+              convertSupport_.add(input.readMessage(org.apache.drill.exec.proto.UserProtos.ConvertSupport.PARSER, extensionRegistry));
               break;
             }
             case 72: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport value = org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(9, rawValue);
               } else {
                 bitField0_ |= 0x00000040;
-                correlationNamesSupport_ = rawValue;
+                correlationNamesSupport_ = value;
               }
               break;
             }
             case 82: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
                 dateTimeFunctions_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField0_ |= 0x00000200;
               }
-              dateTimeFunctions_.add(bs);
+              dateTimeFunctions_.add(input.readBytes());
               break;
             }
             case 88: {
               int rawValue = input.readEnum();
-              @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport value = org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(11, rawValue);
               } else {
                 if (!((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
-                  dateTimeLiteralsSupport_ = new java.util.ArrayList<java.lang.Integer>();
+                  dateTimeLiteralsSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport>();
                   mutable_bitField0_ |= 0x00000400;
                 }
-                dateTimeLiteralsSupport_.add(rawValue);
+                dateTimeLiteralsSupport_.add(value);
               }
               break;
             }
@@ -37005,16 +33148,15 @@
               int oldLimit = input.pushLimit(length);
               while(input.getBytesUntilLimit() > 0) {
                 int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
                 org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport value = org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport.valueOf(rawValue);
                 if (value == null) {
                   unknownFields.mergeVarintField(11, rawValue);
                 } else {
                   if (!((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
-                    dateTimeLiteralsSupport_ = new java.util.ArrayList<java.lang.Integer>();
+                    dateTimeLiteralsSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport>();
                     mutable_bitField0_ |= 0x00000400;
                   }
-                  dateTimeLiteralsSupport_.add(rawValue);
+                  dateTimeLiteralsSupport_.add(value);
                 }
               }
               input.popLimit(oldLimit);
@@ -37022,32 +33164,29 @@
             }
             case 96: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.GroupBySupport value = org.apache.drill.exec.proto.UserProtos.GroupBySupport.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(12, rawValue);
               } else {
                 bitField0_ |= 0x00000080;
-                groupBySupport_ = rawValue;
+                groupBySupport_ = value;
               }
               break;
             }
             case 104: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.IdentifierCasing value = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(13, rawValue);
               } else {
                 bitField0_ |= 0x00000100;
-                identifierCasing_ = rawValue;
+                identifierCasing_ = value;
               }
               break;
             }
             case 114: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000200;
-              identifierQuoteString_ = bs;
+              identifierQuoteString_ = input.readBytes();
               break;
             }
             case 120: {
@@ -37137,13 +33276,12 @@
             }
             case 256: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.NullCollation value = org.apache.drill.exec.proto.UserProtos.NullCollation.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(32, rawValue);
               } else {
                 bitField0_ |= 0x08000000;
-                nullCollation_ = rawValue;
+                nullCollation_ = value;
               }
               break;
             }
@@ -37153,26 +33291,24 @@
               break;
             }
             case 274: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField1_ & 0x00000002) == 0x00000002)) {
                 numericFunctions_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField1_ |= 0x00000002;
               }
-              numericFunctions_.add(bs);
+              numericFunctions_.add(input.readBytes());
               break;
             }
             case 280: {
               int rawValue = input.readEnum();
-              @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.OrderBySupport value = org.apache.drill.exec.proto.UserProtos.OrderBySupport.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(35, rawValue);
               } else {
                 if (!((mutable_bitField1_ & 0x00000004) == 0x00000004)) {
-                  orderBySupport_ = new java.util.ArrayList<java.lang.Integer>();
+                  orderBySupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.OrderBySupport>();
                   mutable_bitField1_ |= 0x00000004;
                 }
-                orderBySupport_.add(rawValue);
+                orderBySupport_.add(value);
               }
               break;
             }
@@ -37181,16 +33317,15 @@
               int oldLimit = input.pushLimit(length);
               while(input.getBytesUntilLimit() > 0) {
                 int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
                 org.apache.drill.exec.proto.UserProtos.OrderBySupport value = org.apache.drill.exec.proto.UserProtos.OrderBySupport.valueOf(rawValue);
                 if (value == null) {
                   unknownFields.mergeVarintField(35, rawValue);
                 } else {
                   if (!((mutable_bitField1_ & 0x00000004) == 0x00000004)) {
-                    orderBySupport_ = new java.util.ArrayList<java.lang.Integer>();
+                    orderBySupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.OrderBySupport>();
                     mutable_bitField1_ |= 0x00000004;
                   }
-                  orderBySupport_.add(rawValue);
+                  orderBySupport_.add(value);
                 }
               }
               input.popLimit(oldLimit);
@@ -37198,16 +33333,15 @@
             }
             case 288: {
               int rawValue = input.readEnum();
-              @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.OuterJoinSupport value = org.apache.drill.exec.proto.UserProtos.OuterJoinSupport.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(36, rawValue);
               } else {
                 if (!((mutable_bitField1_ & 0x00000008) == 0x00000008)) {
-                  outerJoinSupport_ = new java.util.ArrayList<java.lang.Integer>();
+                  outerJoinSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.OuterJoinSupport>();
                   mutable_bitField1_ |= 0x00000008;
                 }
-                outerJoinSupport_.add(rawValue);
+                outerJoinSupport_.add(value);
               }
               break;
             }
@@ -37216,16 +33350,15 @@
               int oldLimit = input.pushLimit(length);
               while(input.getBytesUntilLimit() > 0) {
                 int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
                 org.apache.drill.exec.proto.UserProtos.OuterJoinSupport value = org.apache.drill.exec.proto.UserProtos.OuterJoinSupport.valueOf(rawValue);
                 if (value == null) {
                   unknownFields.mergeVarintField(36, rawValue);
                 } else {
                   if (!((mutable_bitField1_ & 0x00000008) == 0x00000008)) {
-                    outerJoinSupport_ = new java.util.ArrayList<java.lang.Integer>();
+                    outerJoinSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.OuterJoinSupport>();
                     mutable_bitField1_ |= 0x00000008;
                   }
-                  outerJoinSupport_.add(rawValue);
+                  outerJoinSupport_.add(value);
                 }
               }
               input.popLimit(oldLimit);
@@ -37233,13 +33366,12 @@
             }
             case 296: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.IdentifierCasing value = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(37, rawValue);
               } else {
                 bitField0_ |= 0x20000000;
-                quotedIdentifierCasing_ = rawValue;
+                quotedIdentifierCasing_ = value;
               }
               break;
             }
@@ -37249,15 +33381,13 @@
               break;
             }
             case 314: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x80000000;
-              schemaTerm_ = bs;
+              schemaTerm_ = input.readBytes();
               break;
             }
             case 322: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField1_ |= 0x00000001;
-              searchEscapeString_ = bs;
+              searchEscapeString_ = input.readBytes();
               break;
             }
             case 328: {
@@ -37266,41 +33396,37 @@
               break;
             }
             case 338: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField1_ |= 0x00000004;
-              specialCharacters_ = bs;
+              specialCharacters_ = input.readBytes();
               break;
             }
             case 346: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField1_ & 0x00000400) == 0x00000400)) {
                 sqlKeywords_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField1_ |= 0x00000400;
               }
-              sqlKeywords_.add(bs);
+              sqlKeywords_.add(input.readBytes());
               break;
             }
             case 354: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField1_ & 0x00000800) == 0x00000800)) {
                 stringFunctions_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField1_ |= 0x00000800;
               }
-              stringFunctions_.add(bs);
+              stringFunctions_.add(input.readBytes());
               break;
             }
             case 360: {
               int rawValue = input.readEnum();
-              @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.SubQuerySupport value = org.apache.drill.exec.proto.UserProtos.SubQuerySupport.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(45, rawValue);
               } else {
                 if (!((mutable_bitField1_ & 0x00001000) == 0x00001000)) {
-                  subquerySupport_ = new java.util.ArrayList<java.lang.Integer>();
+                  subquerySupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.SubQuerySupport>();
                   mutable_bitField1_ |= 0x00001000;
                 }
-                subquerySupport_.add(rawValue);
+                subquerySupport_.add(value);
               }
               break;
             }
@@ -37309,34 +33435,31 @@
               int oldLimit = input.pushLimit(length);
               while(input.getBytesUntilLimit() > 0) {
                 int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
                 org.apache.drill.exec.proto.UserProtos.SubQuerySupport value = org.apache.drill.exec.proto.UserProtos.SubQuerySupport.valueOf(rawValue);
                 if (value == null) {
                   unknownFields.mergeVarintField(45, rawValue);
                 } else {
                   if (!((mutable_bitField1_ & 0x00001000) == 0x00001000)) {
-                    subquerySupport_ = new java.util.ArrayList<java.lang.Integer>();
+                    subquerySupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.SubQuerySupport>();
                     mutable_bitField1_ |= 0x00001000;
                   }
-                  subquerySupport_.add(rawValue);
+                  subquerySupport_.add(value);
                 }
               }
               input.popLimit(oldLimit);
               break;
             }
             case 370: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               if (!((mutable_bitField1_ & 0x00002000) == 0x00002000)) {
                 systemFunctions_ = new com.google.protobuf.LazyStringArrayList();
                 mutable_bitField1_ |= 0x00002000;
               }
-              systemFunctions_.add(bs);
+              systemFunctions_.add(input.readBytes());
               break;
             }
             case 378: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField1_ |= 0x00000008;
-              tableTerm_ = bs;
+              tableTerm_ = input.readBytes();
               break;
             }
             case 384: {
@@ -37346,16 +33469,15 @@
             }
             case 392: {
               int rawValue = input.readEnum();
-              @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.UnionSupport value = org.apache.drill.exec.proto.UserProtos.UnionSupport.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(49, rawValue);
               } else {
                 if (!((mutable_bitField1_ & 0x00010000) == 0x00010000)) {
-                  unionSupport_ = new java.util.ArrayList<java.lang.Integer>();
+                  unionSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.UnionSupport>();
                   mutable_bitField1_ |= 0x00010000;
                 }
-                unionSupport_.add(rawValue);
+                unionSupport_.add(value);
               }
               break;
             }
@@ -37364,32 +33486,23 @@
               int oldLimit = input.pushLimit(length);
               while(input.getBytesUntilLimit() > 0) {
                 int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
                 org.apache.drill.exec.proto.UserProtos.UnionSupport value = org.apache.drill.exec.proto.UserProtos.UnionSupport.valueOf(rawValue);
                 if (value == null) {
                   unknownFields.mergeVarintField(49, rawValue);
                 } else {
                   if (!((mutable_bitField1_ & 0x00010000) == 0x00010000)) {
-                    unionSupport_ = new java.util.ArrayList<java.lang.Integer>();
+                    unionSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.UnionSupport>();
                     mutable_bitField1_ |= 0x00010000;
                   }
-                  unionSupport_.add(rawValue);
+                  unionSupport_.add(value);
                 }
               }
               input.popLimit(oldLimit);
               break;
             }
             case 402: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField1_ |= 0x00000020;
-              currentSchema_ = bs;
-              break;
-            }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
+              currentSchema_ = input.readBytes();
               break;
             }
           }
@@ -37398,7 +33511,7 @@
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000020) == 0x00000020)) {
           collateSupport_ = java.util.Collections.unmodifiableList(collateSupport_);
@@ -37407,13 +33520,13 @@
           convertSupport_ = java.util.Collections.unmodifiableList(convertSupport_);
         }
         if (((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
-          dateTimeFunctions_ = dateTimeFunctions_.getUnmodifiableView();
+          dateTimeFunctions_ = new com.google.protobuf.UnmodifiableLazyStringList(dateTimeFunctions_);
         }
         if (((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
           dateTimeLiteralsSupport_ = java.util.Collections.unmodifiableList(dateTimeLiteralsSupport_);
         }
         if (((mutable_bitField1_ & 0x00000002) == 0x00000002)) {
-          numericFunctions_ = numericFunctions_.getUnmodifiableView();
+          numericFunctions_ = new com.google.protobuf.UnmodifiableLazyStringList(numericFunctions_);
         }
         if (((mutable_bitField1_ & 0x00000004) == 0x00000004)) {
           orderBySupport_ = java.util.Collections.unmodifiableList(orderBySupport_);
@@ -37422,16 +33535,16 @@
           outerJoinSupport_ = java.util.Collections.unmodifiableList(outerJoinSupport_);
         }
         if (((mutable_bitField1_ & 0x00000400) == 0x00000400)) {
-          sqlKeywords_ = sqlKeywords_.getUnmodifiableView();
+          sqlKeywords_ = new com.google.protobuf.UnmodifiableLazyStringList(sqlKeywords_);
         }
         if (((mutable_bitField1_ & 0x00000800) == 0x00000800)) {
-          stringFunctions_ = stringFunctions_.getUnmodifiableView();
+          stringFunctions_ = new com.google.protobuf.UnmodifiableLazyStringList(stringFunctions_);
         }
         if (((mutable_bitField1_ & 0x00001000) == 0x00001000)) {
           subquerySupport_ = java.util.Collections.unmodifiableList(subquerySupport_);
         }
         if (((mutable_bitField1_ & 0x00002000) == 0x00002000)) {
-          systemFunctions_ = systemFunctions_.getUnmodifiableView();
+          systemFunctions_ = new com.google.protobuf.UnmodifiableLazyStringList(systemFunctions_);
         }
         if (((mutable_bitField1_ & 0x00010000) == 0x00010000)) {
           unionSupport_ = java.util.Collections.unmodifiableList(unionSupport_);
@@ -37445,103 +33558,121 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ServerMeta_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ServerMeta_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.ServerMeta.class, org.apache.drill.exec.proto.UserProtos.ServerMeta.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<ServerMeta> PARSER =
+        new com.google.protobuf.AbstractParser<ServerMeta>() {
+      public ServerMeta parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new ServerMeta(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<ServerMeta> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
     private int bitField1_;
+    // optional bool all_tables_selectable = 1;
     public static final int ALL_TABLES_SELECTABLE_FIELD_NUMBER = 1;
     private boolean allTablesSelectable_;
     /**
+     * <code>optional bool all_tables_selectable = 1;</code>
+     *
      * <pre>
      * True if current user can use all tables returned by GetTables
      * </pre>
-     *
-     * <code>optional bool all_tables_selectable = 1;</code>
      */
     public boolean hasAllTablesSelectable() {
       return ((bitField0_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional bool all_tables_selectable = 1;</code>
+     *
      * <pre>
      * True if current user can use all tables returned by GetTables
      * </pre>
-     *
-     * <code>optional bool all_tables_selectable = 1;</code>
      */
     public boolean getAllTablesSelectable() {
       return allTablesSelectable_;
     }
 
+    // optional bool blob_included_in_max_row_size = 2;
     public static final int BLOB_INCLUDED_IN_MAX_ROW_SIZE_FIELD_NUMBER = 2;
     private boolean blobIncludedInMaxRowSize_;
     /**
+     * <code>optional bool blob_included_in_max_row_size = 2;</code>
+     *
      * <pre>
      * True if BLOB are included into the max row size
      * </pre>
-     *
-     * <code>optional bool blob_included_in_max_row_size = 2;</code>
      */
     public boolean hasBlobIncludedInMaxRowSize() {
       return ((bitField0_ & 0x00000002) == 0x00000002);
     }
     /**
+     * <code>optional bool blob_included_in_max_row_size = 2;</code>
+     *
      * <pre>
      * True if BLOB are included into the max row size
      * </pre>
-     *
-     * <code>optional bool blob_included_in_max_row_size = 2;</code>
      */
     public boolean getBlobIncludedInMaxRowSize() {
       return blobIncludedInMaxRowSize_;
     }
 
+    // optional bool catalog_at_start = 3;
     public static final int CATALOG_AT_START_FIELD_NUMBER = 3;
     private boolean catalogAtStart_;
     /**
+     * <code>optional bool catalog_at_start = 3;</code>
+     *
      * <pre>
      * True if catalog name is at the start of a fully qualified table
      * </pre>
-     *
-     * <code>optional bool catalog_at_start = 3;</code>
      */
     public boolean hasCatalogAtStart() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
+     * <code>optional bool catalog_at_start = 3;</code>
+     *
      * <pre>
      * True if catalog name is at the start of a fully qualified table
      * </pre>
-     *
-     * <code>optional bool catalog_at_start = 3;</code>
      */
     public boolean getCatalogAtStart() {
       return catalogAtStart_;
     }
 
+    // optional string catalog_separator = 4;
     public static final int CATALOG_SEPARATOR_FIELD_NUMBER = 4;
-    private volatile java.lang.Object catalogSeparator_;
+    private java.lang.Object catalogSeparator_;
     /**
+     * <code>optional string catalog_separator = 4;</code>
+     *
      * <pre>
      * The catalog separator
      * </pre>
-     *
-     * <code>optional string catalog_separator = 4;</code>
      */
     public boolean hasCatalogSeparator() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional string catalog_separator = 4;</code>
+     *
      * <pre>
      * The catalog separator
      * </pre>
-     *
-     * <code>optional string catalog_separator = 4;</code>
      */
     public java.lang.String getCatalogSeparator() {
       java.lang.Object ref = catalogSeparator_;
@@ -37558,11 +33689,11 @@
       }
     }
     /**
+     * <code>optional string catalog_separator = 4;</code>
+     *
      * <pre>
      * The catalog separator
      * </pre>
-     *
-     * <code>optional string catalog_separator = 4;</code>
      */
     public com.google.protobuf.ByteString
         getCatalogSeparatorBytes() {
@@ -37578,24 +33709,25 @@
       }
     }
 
+    // optional string catalog_term = 5;
     public static final int CATALOG_TERM_FIELD_NUMBER = 5;
-    private volatile java.lang.Object catalogTerm_;
+    private java.lang.Object catalogTerm_;
     /**
+     * <code>optional string catalog_term = 5;</code>
+     *
      * <pre>
      * The term used to designate catalogs
      * </pre>
-     *
-     * <code>optional string catalog_term = 5;</code>
      */
     public boolean hasCatalogTerm() {
       return ((bitField0_ & 0x00000010) == 0x00000010);
     }
     /**
+     * <code>optional string catalog_term = 5;</code>
+     *
      * <pre>
      * The term used to designate catalogs
      * </pre>
-     *
-     * <code>optional string catalog_term = 5;</code>
      */
     public java.lang.String getCatalogTerm() {
       java.lang.Object ref = catalogTerm_;
@@ -37612,11 +33744,11 @@
       }
     }
     /**
+     * <code>optional string catalog_term = 5;</code>
+     *
      * <pre>
      * The term used to designate catalogs
      * </pre>
-     *
-     * <code>optional string catalog_term = 5;</code>
      */
     public com.google.protobuf.ByteString
         getCatalogTermBytes() {
@@ -37632,310 +33764,291 @@
       }
     }
 
+    // repeated .exec.user.CollateSupport collate_support = 6;
     public static final int COLLATE_SUPPORT_FIELD_NUMBER = 6;
-    private java.util.List<java.lang.Integer> collateSupport_;
-    private static final com.google.protobuf.Internal.ListAdapter.Converter<
-        java.lang.Integer, org.apache.drill.exec.proto.UserProtos.CollateSupport> collateSupport_converter_ =
-            new com.google.protobuf.Internal.ListAdapter.Converter<
-                java.lang.Integer, org.apache.drill.exec.proto.UserProtos.CollateSupport>() {
-              public org.apache.drill.exec.proto.UserProtos.CollateSupport convert(java.lang.Integer from) {
-                @SuppressWarnings("deprecation")
-                org.apache.drill.exec.proto.UserProtos.CollateSupport result = org.apache.drill.exec.proto.UserProtos.CollateSupport.valueOf(from);
-                return result == null ? org.apache.drill.exec.proto.UserProtos.CollateSupport.CS_UNKNOWN : result;
-              }
-            };
+    private java.util.List<org.apache.drill.exec.proto.UserProtos.CollateSupport> collateSupport_;
     /**
+     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+     *
      * <pre>
      * COLLATE support
      * </pre>
-     *
-     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserProtos.CollateSupport> getCollateSupportList() {
-      return new com.google.protobuf.Internal.ListAdapter<
-          java.lang.Integer, org.apache.drill.exec.proto.UserProtos.CollateSupport>(collateSupport_, collateSupport_converter_);
+      return collateSupport_;
     }
     /**
+     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+     *
      * <pre>
      * COLLATE support
      * </pre>
-     *
-     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
      */
     public int getCollateSupportCount() {
       return collateSupport_.size();
     }
     /**
+     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+     *
      * <pre>
      * COLLATE support
      * </pre>
-     *
-     * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.CollateSupport getCollateSupport(int index) {
-      return collateSupport_converter_.convert(collateSupport_.get(index));
+      return collateSupport_.get(index);
     }
 
+    // optional bool column_aliasing_supported = 7;
     public static final int COLUMN_ALIASING_SUPPORTED_FIELD_NUMBER = 7;
     private boolean columnAliasingSupported_;
     /**
+     * <code>optional bool column_aliasing_supported = 7;</code>
+     *
      * <pre>
      * True if column aliasing is supported
      * </pre>
-     *
-     * <code>optional bool column_aliasing_supported = 7;</code>
      */
     public boolean hasColumnAliasingSupported() {
       return ((bitField0_ & 0x00000020) == 0x00000020);
     }
     /**
+     * <code>optional bool column_aliasing_supported = 7;</code>
+     *
      * <pre>
      * True if column aliasing is supported
      * </pre>
-     *
-     * <code>optional bool column_aliasing_supported = 7;</code>
      */
     public boolean getColumnAliasingSupported() {
       return columnAliasingSupported_;
     }
 
+    // repeated .exec.user.ConvertSupport convert_support = 8;
     public static final int CONVERT_SUPPORT_FIELD_NUMBER = 8;
     private java.util.List<org.apache.drill.exec.proto.UserProtos.ConvertSupport> convertSupport_;
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserProtos.ConvertSupport> getConvertSupportList() {
       return convertSupport_;
     }
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     public java.util.List<? extends org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder> 
         getConvertSupportOrBuilderList() {
       return convertSupport_;
     }
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     public int getConvertSupportCount() {
       return convertSupport_.size();
     }
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.ConvertSupport getConvertSupport(int index) {
       return convertSupport_.get(index);
     }
     /**
+     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+     *
      * <pre>
      * CONVERT support
      * </pre>
-     *
-     * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder getConvertSupportOrBuilder(
         int index) {
       return convertSupport_.get(index);
     }
 
+    // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
     public static final int CORRELATION_NAMES_SUPPORT_FIELD_NUMBER = 9;
-    private int correlationNamesSupport_;
+    private org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport correlationNamesSupport_;
     /**
+     * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
+     *
      * <pre>
      * Correlation names support
      * </pre>
-     *
-     * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
      */
     public boolean hasCorrelationNamesSupport() {
       return ((bitField0_ & 0x00000040) == 0x00000040);
     }
     /**
+     * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
+     *
      * <pre>
      * Correlation names support
      * </pre>
-     *
-     * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport getCorrelationNamesSupport() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport result = org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.valueOf(correlationNamesSupport_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.CN_NONE : result;
+      return correlationNamesSupport_;
     }
 
+    // repeated string date_time_functions = 10;
     public static final int DATE_TIME_FUNCTIONS_FIELD_NUMBER = 10;
     private com.google.protobuf.LazyStringList dateTimeFunctions_;
     /**
+     * <code>repeated string date_time_functions = 10;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC Date Time scalar functions
      * </pre>
-     *
-     * <code>repeated string date_time_functions = 10;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getDateTimeFunctionsList() {
       return dateTimeFunctions_;
     }
     /**
+     * <code>repeated string date_time_functions = 10;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC Date Time scalar functions
      * </pre>
-     *
-     * <code>repeated string date_time_functions = 10;</code>
      */
     public int getDateTimeFunctionsCount() {
       return dateTimeFunctions_.size();
     }
     /**
+     * <code>repeated string date_time_functions = 10;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC Date Time scalar functions
      * </pre>
-     *
-     * <code>repeated string date_time_functions = 10;</code>
      */
     public java.lang.String getDateTimeFunctions(int index) {
       return dateTimeFunctions_.get(index);
     }
     /**
+     * <code>repeated string date_time_functions = 10;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC Date Time scalar functions
      * </pre>
-     *
-     * <code>repeated string date_time_functions = 10;</code>
      */
     public com.google.protobuf.ByteString
         getDateTimeFunctionsBytes(int index) {
       return dateTimeFunctions_.getByteString(index);
     }
 
+    // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
     public static final int DATE_TIME_LITERALS_SUPPORT_FIELD_NUMBER = 11;
-    private java.util.List<java.lang.Integer> dateTimeLiteralsSupport_;
-    private static final com.google.protobuf.Internal.ListAdapter.Converter<
-        java.lang.Integer, org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport> dateTimeLiteralsSupport_converter_ =
-            new com.google.protobuf.Internal.ListAdapter.Converter<
-                java.lang.Integer, org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport>() {
-              public org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport convert(java.lang.Integer from) {
-                @SuppressWarnings("deprecation")
-                org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport result = org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport.valueOf(from);
-                return result == null ? org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport.DL_UNKNOWN : result;
-              }
-            };
+    private java.util.List<org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport> dateTimeLiteralsSupport_;
     /**
+     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+     *
      * <pre>
      * Supported Date Time literals
      * </pre>
-     *
-     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport> getDateTimeLiteralsSupportList() {
-      return new com.google.protobuf.Internal.ListAdapter<
-          java.lang.Integer, org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport>(dateTimeLiteralsSupport_, dateTimeLiteralsSupport_converter_);
+      return dateTimeLiteralsSupport_;
     }
     /**
+     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+     *
      * <pre>
      * Supported Date Time literals
      * </pre>
-     *
-     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
      */
     public int getDateTimeLiteralsSupportCount() {
       return dateTimeLiteralsSupport_.size();
     }
     /**
+     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+     *
      * <pre>
      * Supported Date Time literals
      * </pre>
-     *
-     * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport getDateTimeLiteralsSupport(int index) {
-      return dateTimeLiteralsSupport_converter_.convert(dateTimeLiteralsSupport_.get(index));
+      return dateTimeLiteralsSupport_.get(index);
     }
 
+    // optional .exec.user.GroupBySupport group_by_support = 12;
     public static final int GROUP_BY_SUPPORT_FIELD_NUMBER = 12;
-    private int groupBySupport_;
+    private org.apache.drill.exec.proto.UserProtos.GroupBySupport groupBySupport_;
     /**
+     * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
+     *
      * <pre>
      * Group By support
      * </pre>
-     *
-     * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
      */
     public boolean hasGroupBySupport() {
       return ((bitField0_ & 0x00000080) == 0x00000080);
     }
     /**
+     * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
+     *
      * <pre>
      * Group By support
      * </pre>
-     *
-     * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.GroupBySupport getGroupBySupport() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.GroupBySupport result = org.apache.drill.exec.proto.UserProtos.GroupBySupport.valueOf(groupBySupport_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.GroupBySupport.GB_NONE : result;
+      return groupBySupport_;
     }
 
+    // optional .exec.user.IdentifierCasing identifier_casing = 13;
     public static final int IDENTIFIER_CASING_FIELD_NUMBER = 13;
-    private int identifierCasing_;
+    private org.apache.drill.exec.proto.UserProtos.IdentifierCasing identifierCasing_;
     /**
+     * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
+     *
      * <pre>
      * Unquoted Identifier casing
      * </pre>
-     *
-     * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
      */
     public boolean hasIdentifierCasing() {
       return ((bitField0_ & 0x00000100) == 0x00000100);
     }
     /**
+     * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
+     *
      * <pre>
      * Unquoted Identifier casing
      * </pre>
-     *
-     * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.IdentifierCasing getIdentifierCasing() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.IdentifierCasing result = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.valueOf(identifierCasing_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN : result;
+      return identifierCasing_;
     }
 
+    // optional string identifier_quote_string = 14;
     public static final int IDENTIFIER_QUOTE_STRING_FIELD_NUMBER = 14;
-    private volatile java.lang.Object identifierQuoteString_;
+    private java.lang.Object identifierQuoteString_;
     /**
+     * <code>optional string identifier_quote_string = 14;</code>
+     *
      * <pre>
      * Quote string for identifiers
      * </pre>
-     *
-     * <code>optional string identifier_quote_string = 14;</code>
      */
     public boolean hasIdentifierQuoteString() {
       return ((bitField0_ & 0x00000200) == 0x00000200);
     }
     /**
+     * <code>optional string identifier_quote_string = 14;</code>
+     *
      * <pre>
      * Quote string for identifiers
      * </pre>
-     *
-     * <code>optional string identifier_quote_string = 14;</code>
      */
     public java.lang.String getIdentifierQuoteString() {
       java.lang.Object ref = identifierQuoteString_;
@@ -37952,11 +34065,11 @@
       }
     }
     /**
+     * <code>optional string identifier_quote_string = 14;</code>
+     *
      * <pre>
      * Quote string for identifiers
      * </pre>
-     *
-     * <code>optional string identifier_quote_string = 14;</code>
      */
     public com.google.protobuf.ByteString
         getIdentifierQuoteStringBytes() {
@@ -37972,644 +34085,643 @@
       }
     }
 
+    // optional bool like_escape_clause_supported = 15;
     public static final int LIKE_ESCAPE_CLAUSE_SUPPORTED_FIELD_NUMBER = 15;
     private boolean likeEscapeClauseSupported_;
     /**
+     * <code>optional bool like_escape_clause_supported = 15;</code>
+     *
      * <pre>
      * True if LIKE supports an ESCAPE clause
      * </pre>
-     *
-     * <code>optional bool like_escape_clause_supported = 15;</code>
      */
     public boolean hasLikeEscapeClauseSupported() {
       return ((bitField0_ & 0x00000400) == 0x00000400);
     }
     /**
+     * <code>optional bool like_escape_clause_supported = 15;</code>
+     *
      * <pre>
      * True if LIKE supports an ESCAPE clause
      * </pre>
-     *
-     * <code>optional bool like_escape_clause_supported = 15;</code>
      */
     public boolean getLikeEscapeClauseSupported() {
       return likeEscapeClauseSupported_;
     }
 
+    // optional uint32 max_binary_literal_length = 16;
     public static final int MAX_BINARY_LITERAL_LENGTH_FIELD_NUMBER = 16;
     private int maxBinaryLiteralLength_;
     /**
+     * <code>optional uint32 max_binary_literal_length = 16;</code>
+     *
      * <pre>
      * Maximum number of hexa characters for binary literals (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_binary_literal_length = 16;</code>
      */
     public boolean hasMaxBinaryLiteralLength() {
       return ((bitField0_ & 0x00000800) == 0x00000800);
     }
     /**
+     * <code>optional uint32 max_binary_literal_length = 16;</code>
+     *
      * <pre>
      * Maximum number of hexa characters for binary literals (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_binary_literal_length = 16;</code>
      */
     public int getMaxBinaryLiteralLength() {
       return maxBinaryLiteralLength_;
     }
 
+    // optional uint32 max_catalog_name_length = 17;
     public static final int MAX_CATALOG_NAME_LENGTH_FIELD_NUMBER = 17;
     private int maxCatalogNameLength_;
     /**
+     * <code>optional uint32 max_catalog_name_length = 17;</code>
+     *
      * <pre>
      * Maximum length of catalog names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_catalog_name_length = 17;</code>
      */
     public boolean hasMaxCatalogNameLength() {
       return ((bitField0_ & 0x00001000) == 0x00001000);
     }
     /**
+     * <code>optional uint32 max_catalog_name_length = 17;</code>
+     *
      * <pre>
      * Maximum length of catalog names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_catalog_name_length = 17;</code>
      */
     public int getMaxCatalogNameLength() {
       return maxCatalogNameLength_;
     }
 
+    // optional uint32 max_char_literal_length = 18;
     public static final int MAX_CHAR_LITERAL_LENGTH_FIELD_NUMBER = 18;
     private int maxCharLiteralLength_;
     /**
+     * <code>optional uint32 max_char_literal_length = 18;</code>
+     *
      * <pre>
      * Maximum number of characters for string literals (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_char_literal_length = 18;</code>
      */
     public boolean hasMaxCharLiteralLength() {
       return ((bitField0_ & 0x00002000) == 0x00002000);
     }
     /**
+     * <code>optional uint32 max_char_literal_length = 18;</code>
+     *
      * <pre>
      * Maximum number of characters for string literals (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_char_literal_length = 18;</code>
      */
     public int getMaxCharLiteralLength() {
       return maxCharLiteralLength_;
     }
 
+    // optional uint32 max_column_name_length = 19;
     public static final int MAX_COLUMN_NAME_LENGTH_FIELD_NUMBER = 19;
     private int maxColumnNameLength_;
     /**
+     * <code>optional uint32 max_column_name_length = 19;</code>
+     *
      * <pre>
      * Maximum length of column names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_column_name_length = 19;</code>
      */
     public boolean hasMaxColumnNameLength() {
       return ((bitField0_ & 0x00004000) == 0x00004000);
     }
     /**
+     * <code>optional uint32 max_column_name_length = 19;</code>
+     *
      * <pre>
      * Maximum length of column names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_column_name_length = 19;</code>
      */
     public int getMaxColumnNameLength() {
       return maxColumnNameLength_;
     }
 
+    // optional uint32 max_columns_in_group_by = 20;
     public static final int MAX_COLUMNS_IN_GROUP_BY_FIELD_NUMBER = 20;
     private int maxColumnsInGroupBy_;
     /**
+     * <code>optional uint32 max_columns_in_group_by = 20;</code>
+     *
      * <pre>
      * Maximum number of columns in GROUP BY expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_group_by = 20;</code>
      */
     public boolean hasMaxColumnsInGroupBy() {
       return ((bitField0_ & 0x00008000) == 0x00008000);
     }
     /**
+     * <code>optional uint32 max_columns_in_group_by = 20;</code>
+     *
      * <pre>
      * Maximum number of columns in GROUP BY expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_group_by = 20;</code>
      */
     public int getMaxColumnsInGroupBy() {
       return maxColumnsInGroupBy_;
     }
 
+    // optional uint32 max_columns_in_order_by = 21;
     public static final int MAX_COLUMNS_IN_ORDER_BY_FIELD_NUMBER = 21;
     private int maxColumnsInOrderBy_;
     /**
+     * <code>optional uint32 max_columns_in_order_by = 21;</code>
+     *
      * <pre>
      * Maximum number of columns in ORDER BY expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_order_by = 21;</code>
      */
     public boolean hasMaxColumnsInOrderBy() {
       return ((bitField0_ & 0x00010000) == 0x00010000);
     }
     /**
+     * <code>optional uint32 max_columns_in_order_by = 21;</code>
+     *
      * <pre>
      * Maximum number of columns in ORDER BY expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_order_by = 21;</code>
      */
     public int getMaxColumnsInOrderBy() {
       return maxColumnsInOrderBy_;
     }
 
+    // optional uint32 max_columns_in_select = 22;
     public static final int MAX_COLUMNS_IN_SELECT_FIELD_NUMBER = 22;
     private int maxColumnsInSelect_;
     /**
+     * <code>optional uint32 max_columns_in_select = 22;</code>
+     *
      * <pre>
      * Maximum number of columns in SELECT expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_select = 22;</code>
      */
     public boolean hasMaxColumnsInSelect() {
       return ((bitField0_ & 0x00020000) == 0x00020000);
     }
     /**
+     * <code>optional uint32 max_columns_in_select = 22;</code>
+     *
      * <pre>
      * Maximum number of columns in SELECT expressions (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_columns_in_select = 22;</code>
      */
     public int getMaxColumnsInSelect() {
       return maxColumnsInSelect_;
     }
 
+    // optional uint32 max_cursor_name_length = 23;
     public static final int MAX_CURSOR_NAME_LENGTH_FIELD_NUMBER = 23;
     private int maxCursorNameLength_;
     /**
+     * <code>optional uint32 max_cursor_name_length = 23;</code>
+     *
      * <pre>
      * Maximum length of cursor names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_cursor_name_length = 23;</code>
      */
     public boolean hasMaxCursorNameLength() {
       return ((bitField0_ & 0x00040000) == 0x00040000);
     }
     /**
+     * <code>optional uint32 max_cursor_name_length = 23;</code>
+     *
      * <pre>
      * Maximum length of cursor names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_cursor_name_length = 23;</code>
      */
     public int getMaxCursorNameLength() {
       return maxCursorNameLength_;
     }
 
+    // optional uint32 max_logical_lob_size = 24;
     public static final int MAX_LOGICAL_LOB_SIZE_FIELD_NUMBER = 24;
     private int maxLogicalLobSize_;
     /**
+     * <code>optional uint32 max_logical_lob_size = 24;</code>
+     *
      * <pre>
      * Maximum logical size for LOB types (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_logical_lob_size = 24;</code>
      */
     public boolean hasMaxLogicalLobSize() {
       return ((bitField0_ & 0x00080000) == 0x00080000);
     }
     /**
+     * <code>optional uint32 max_logical_lob_size = 24;</code>
+     *
      * <pre>
      * Maximum logical size for LOB types (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_logical_lob_size = 24;</code>
      */
     public int getMaxLogicalLobSize() {
       return maxLogicalLobSize_;
     }
 
+    // optional uint32 max_row_size = 25;
     public static final int MAX_ROW_SIZE_FIELD_NUMBER = 25;
     private int maxRowSize_;
     /**
+     * <code>optional uint32 max_row_size = 25;</code>
+     *
      * <pre>
      * Maximum number of bytes for a single row (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_row_size = 25;</code>
      */
     public boolean hasMaxRowSize() {
       return ((bitField0_ & 0x00100000) == 0x00100000);
     }
     /**
+     * <code>optional uint32 max_row_size = 25;</code>
+     *
      * <pre>
      * Maximum number of bytes for a single row (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_row_size = 25;</code>
      */
     public int getMaxRowSize() {
       return maxRowSize_;
     }
 
+    // optional uint32 max_schema_name_length = 26;
     public static final int MAX_SCHEMA_NAME_LENGTH_FIELD_NUMBER = 26;
     private int maxSchemaNameLength_;
     /**
+     * <code>optional uint32 max_schema_name_length = 26;</code>
+     *
      * <pre>
      * Maximum length of schema names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_schema_name_length = 26;</code>
      */
     public boolean hasMaxSchemaNameLength() {
       return ((bitField0_ & 0x00200000) == 0x00200000);
     }
     /**
+     * <code>optional uint32 max_schema_name_length = 26;</code>
+     *
      * <pre>
      * Maximum length of schema names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_schema_name_length = 26;</code>
      */
     public int getMaxSchemaNameLength() {
       return maxSchemaNameLength_;
     }
 
+    // optional uint32 max_statement_length = 27;
     public static final int MAX_STATEMENT_LENGTH_FIELD_NUMBER = 27;
     private int maxStatementLength_;
     /**
+     * <code>optional uint32 max_statement_length = 27;</code>
+     *
      * <pre>
      * Maximum length for statements (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_statement_length = 27;</code>
      */
     public boolean hasMaxStatementLength() {
       return ((bitField0_ & 0x00400000) == 0x00400000);
     }
     /**
+     * <code>optional uint32 max_statement_length = 27;</code>
+     *
      * <pre>
      * Maximum length for statements (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_statement_length = 27;</code>
      */
     public int getMaxStatementLength() {
       return maxStatementLength_;
     }
 
+    // optional uint32 max_statements = 28;
     public static final int MAX_STATEMENTS_FIELD_NUMBER = 28;
     private int maxStatements_;
     /**
+     * <code>optional uint32 max_statements = 28;</code>
+     *
      * <pre>
      * Maximum number of statements (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_statements = 28;</code>
      */
     public boolean hasMaxStatements() {
       return ((bitField0_ & 0x00800000) == 0x00800000);
     }
     /**
+     * <code>optional uint32 max_statements = 28;</code>
+     *
      * <pre>
      * Maximum number of statements (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_statements = 28;</code>
      */
     public int getMaxStatements() {
       return maxStatements_;
     }
 
+    // optional uint32 max_table_name_length = 29;
     public static final int MAX_TABLE_NAME_LENGTH_FIELD_NUMBER = 29;
     private int maxTableNameLength_;
     /**
+     * <code>optional uint32 max_table_name_length = 29;</code>
+     *
      * <pre>
      * Maximum length of table names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_table_name_length = 29;</code>
      */
     public boolean hasMaxTableNameLength() {
       return ((bitField0_ & 0x01000000) == 0x01000000);
     }
     /**
+     * <code>optional uint32 max_table_name_length = 29;</code>
+     *
      * <pre>
      * Maximum length of table names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_table_name_length = 29;</code>
      */
     public int getMaxTableNameLength() {
       return maxTableNameLength_;
     }
 
+    // optional uint32 max_tables_in_select = 30;
     public static final int MAX_TABLES_IN_SELECT_FIELD_NUMBER = 30;
     private int maxTablesInSelect_;
     /**
+     * <code>optional uint32 max_tables_in_select = 30;</code>
+     *
      * <pre>
      * Maximum number of tables in a SELECT expression (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_tables_in_select = 30;</code>
      */
     public boolean hasMaxTablesInSelect() {
       return ((bitField0_ & 0x02000000) == 0x02000000);
     }
     /**
+     * <code>optional uint32 max_tables_in_select = 30;</code>
+     *
      * <pre>
      * Maximum number of tables in a SELECT expression (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_tables_in_select = 30;</code>
      */
     public int getMaxTablesInSelect() {
       return maxTablesInSelect_;
     }
 
+    // optional uint32 max_user_name_length = 31;
     public static final int MAX_USER_NAME_LENGTH_FIELD_NUMBER = 31;
     private int maxUserNameLength_;
     /**
+     * <code>optional uint32 max_user_name_length = 31;</code>
+     *
      * <pre>
      * Maximum length of user names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_user_name_length = 31;</code>
      */
     public boolean hasMaxUserNameLength() {
       return ((bitField0_ & 0x04000000) == 0x04000000);
     }
     /**
+     * <code>optional uint32 max_user_name_length = 31;</code>
+     *
      * <pre>
      * Maximum length of user names (0 if unlimited or unknown)
      * </pre>
-     *
-     * <code>optional uint32 max_user_name_length = 31;</code>
      */
     public int getMaxUserNameLength() {
       return maxUserNameLength_;
     }
 
+    // optional .exec.user.NullCollation null_collation = 32;
     public static final int NULL_COLLATION_FIELD_NUMBER = 32;
-    private int nullCollation_;
+    private org.apache.drill.exec.proto.UserProtos.NullCollation nullCollation_;
     /**
+     * <code>optional .exec.user.NullCollation null_collation = 32;</code>
+     *
      * <pre>
      * How NULL are sorted
      * </pre>
-     *
-     * <code>optional .exec.user.NullCollation null_collation = 32;</code>
      */
     public boolean hasNullCollation() {
       return ((bitField0_ & 0x08000000) == 0x08000000);
     }
     /**
+     * <code>optional .exec.user.NullCollation null_collation = 32;</code>
+     *
      * <pre>
      * How NULL are sorted
      * </pre>
-     *
-     * <code>optional .exec.user.NullCollation null_collation = 32;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.NullCollation getNullCollation() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.NullCollation result = org.apache.drill.exec.proto.UserProtos.NullCollation.valueOf(nullCollation_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.NullCollation.NC_UNKNOWN : result;
+      return nullCollation_;
     }
 
+    // optional bool null_plus_non_null_equals_null = 33;
     public static final int NULL_PLUS_NON_NULL_EQUALS_NULL_FIELD_NUMBER = 33;
     private boolean nullPlusNonNullEqualsNull_;
     /**
+     * <code>optional bool null_plus_non_null_equals_null = 33;</code>
+     *
      * <pre>
      * True if NULL + non NULL is NULL
      * </pre>
-     *
-     * <code>optional bool null_plus_non_null_equals_null = 33;</code>
      */
     public boolean hasNullPlusNonNullEqualsNull() {
       return ((bitField0_ & 0x10000000) == 0x10000000);
     }
     /**
+     * <code>optional bool null_plus_non_null_equals_null = 33;</code>
+     *
      * <pre>
      * True if NULL + non NULL is NULL
      * </pre>
-     *
-     * <code>optional bool null_plus_non_null_equals_null = 33;</code>
      */
     public boolean getNullPlusNonNullEqualsNull() {
       return nullPlusNonNullEqualsNull_;
     }
 
+    // repeated string numeric_functions = 34;
     public static final int NUMERIC_FUNCTIONS_FIELD_NUMBER = 34;
     private com.google.protobuf.LazyStringList numericFunctions_;
     /**
+     * <code>repeated string numeric_functions = 34;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC numeric scalar functions
      * </pre>
-     *
-     * <code>repeated string numeric_functions = 34;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getNumericFunctionsList() {
       return numericFunctions_;
     }
     /**
+     * <code>repeated string numeric_functions = 34;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC numeric scalar functions
      * </pre>
-     *
-     * <code>repeated string numeric_functions = 34;</code>
      */
     public int getNumericFunctionsCount() {
       return numericFunctions_.size();
     }
     /**
+     * <code>repeated string numeric_functions = 34;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC numeric scalar functions
      * </pre>
-     *
-     * <code>repeated string numeric_functions = 34;</code>
      */
     public java.lang.String getNumericFunctions(int index) {
       return numericFunctions_.get(index);
     }
     /**
+     * <code>repeated string numeric_functions = 34;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC numeric scalar functions
      * </pre>
-     *
-     * <code>repeated string numeric_functions = 34;</code>
      */
     public com.google.protobuf.ByteString
         getNumericFunctionsBytes(int index) {
       return numericFunctions_.getByteString(index);
     }
 
+    // repeated .exec.user.OrderBySupport order_by_support = 35;
     public static final int ORDER_BY_SUPPORT_FIELD_NUMBER = 35;
-    private java.util.List<java.lang.Integer> orderBySupport_;
-    private static final com.google.protobuf.Internal.ListAdapter.Converter<
-        java.lang.Integer, org.apache.drill.exec.proto.UserProtos.OrderBySupport> orderBySupport_converter_ =
-            new com.google.protobuf.Internal.ListAdapter.Converter<
-                java.lang.Integer, org.apache.drill.exec.proto.UserProtos.OrderBySupport>() {
-              public org.apache.drill.exec.proto.UserProtos.OrderBySupport convert(java.lang.Integer from) {
-                @SuppressWarnings("deprecation")
-                org.apache.drill.exec.proto.UserProtos.OrderBySupport result = org.apache.drill.exec.proto.UserProtos.OrderBySupport.valueOf(from);
-                return result == null ? org.apache.drill.exec.proto.UserProtos.OrderBySupport.OB_UNKNOWN : result;
-              }
-            };
+    private java.util.List<org.apache.drill.exec.proto.UserProtos.OrderBySupport> orderBySupport_;
     /**
+     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserProtos.OrderBySupport> getOrderBySupportList() {
-      return new com.google.protobuf.Internal.ListAdapter<
-          java.lang.Integer, org.apache.drill.exec.proto.UserProtos.OrderBySupport>(orderBySupport_, orderBySupport_converter_);
+      return orderBySupport_;
     }
     /**
+     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
      */
     public int getOrderBySupportCount() {
       return orderBySupport_.size();
     }
     /**
+     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.OrderBySupport getOrderBySupport(int index) {
-      return orderBySupport_converter_.convert(orderBySupport_.get(index));
+      return orderBySupport_.get(index);
     }
 
+    // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
     public static final int OUTER_JOIN_SUPPORT_FIELD_NUMBER = 36;
-    private java.util.List<java.lang.Integer> outerJoinSupport_;
-    private static final com.google.protobuf.Internal.ListAdapter.Converter<
-        java.lang.Integer, org.apache.drill.exec.proto.UserProtos.OuterJoinSupport> outerJoinSupport_converter_ =
-            new com.google.protobuf.Internal.ListAdapter.Converter<
-                java.lang.Integer, org.apache.drill.exec.proto.UserProtos.OuterJoinSupport>() {
-              public org.apache.drill.exec.proto.UserProtos.OuterJoinSupport convert(java.lang.Integer from) {
-                @SuppressWarnings("deprecation")
-                org.apache.drill.exec.proto.UserProtos.OuterJoinSupport result = org.apache.drill.exec.proto.UserProtos.OuterJoinSupport.valueOf(from);
-                return result == null ? org.apache.drill.exec.proto.UserProtos.OuterJoinSupport.OJ_UNKNOWN : result;
-              }
-            };
+    private java.util.List<org.apache.drill.exec.proto.UserProtos.OuterJoinSupport> outerJoinSupport_;
     /**
+     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserProtos.OuterJoinSupport> getOuterJoinSupportList() {
-      return new com.google.protobuf.Internal.ListAdapter<
-          java.lang.Integer, org.apache.drill.exec.proto.UserProtos.OuterJoinSupport>(outerJoinSupport_, outerJoinSupport_converter_);
+      return outerJoinSupport_;
     }
     /**
+     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
      */
     public int getOuterJoinSupportCount() {
       return outerJoinSupport_.size();
     }
     /**
+     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+     *
      * <pre>
      * Outer join suport
      * </pre>
-     *
-     * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.OuterJoinSupport getOuterJoinSupport(int index) {
-      return outerJoinSupport_converter_.convert(outerJoinSupport_.get(index));
+      return outerJoinSupport_.get(index);
     }
 
+    // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
     public static final int QUOTED_IDENTIFIER_CASING_FIELD_NUMBER = 37;
-    private int quotedIdentifierCasing_;
+    private org.apache.drill.exec.proto.UserProtos.IdentifierCasing quotedIdentifierCasing_;
     /**
+     * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
+     *
      * <pre>
      * Quoted identifier casing
      * </pre>
-     *
-     * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
      */
     public boolean hasQuotedIdentifierCasing() {
       return ((bitField0_ & 0x20000000) == 0x20000000);
     }
     /**
+     * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
+     *
      * <pre>
      * Quoted identifier casing
      * </pre>
-     *
-     * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.IdentifierCasing getQuotedIdentifierCasing() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.IdentifierCasing result = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.valueOf(quotedIdentifierCasing_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN : result;
+      return quotedIdentifierCasing_;
     }
 
+    // optional bool read_only = 38;
     public static final int READ_ONLY_FIELD_NUMBER = 38;
     private boolean readOnly_;
     /**
+     * <code>optional bool read_only = 38;</code>
+     *
      * <pre>
      * True if connection access is read only
      * </pre>
-     *
-     * <code>optional bool read_only = 38;</code>
      */
     public boolean hasReadOnly() {
       return ((bitField0_ & 0x40000000) == 0x40000000);
     }
     /**
+     * <code>optional bool read_only = 38;</code>
+     *
      * <pre>
      * True if connection access is read only
      * </pre>
-     *
-     * <code>optional bool read_only = 38;</code>
      */
     public boolean getReadOnly() {
       return readOnly_;
     }
 
+    // optional string schema_term = 39;
     public static final int SCHEMA_TERM_FIELD_NUMBER = 39;
-    private volatile java.lang.Object schemaTerm_;
+    private java.lang.Object schemaTerm_;
     /**
+     * <code>optional string schema_term = 39;</code>
+     *
      * <pre>
      * The term used to designate a schema
      * </pre>
-     *
-     * <code>optional string schema_term = 39;</code>
      */
     public boolean hasSchemaTerm() {
       return ((bitField0_ & 0x80000000) == 0x80000000);
     }
     /**
+     * <code>optional string schema_term = 39;</code>
+     *
      * <pre>
      * The term used to designate a schema
      * </pre>
-     *
-     * <code>optional string schema_term = 39;</code>
      */
     public java.lang.String getSchemaTerm() {
       java.lang.Object ref = schemaTerm_;
@@ -38626,11 +34738,11 @@
       }
     }
     /**
+     * <code>optional string schema_term = 39;</code>
+     *
      * <pre>
      * The term used to designate a schema
      * </pre>
-     *
-     * <code>optional string schema_term = 39;</code>
      */
     public com.google.protobuf.ByteString
         getSchemaTermBytes() {
@@ -38646,24 +34758,25 @@
       }
     }
 
+    // optional string search_escape_string = 40;
     public static final int SEARCH_ESCAPE_STRING_FIELD_NUMBER = 40;
-    private volatile java.lang.Object searchEscapeString_;
+    private java.lang.Object searchEscapeString_;
     /**
+     * <code>optional string search_escape_string = 40;</code>
+     *
      * <pre>
      * Characters used for escaping (empty if not suported)
      * </pre>
-     *
-     * <code>optional string search_escape_string = 40;</code>
      */
     public boolean hasSearchEscapeString() {
       return ((bitField1_ & 0x00000001) == 0x00000001);
     }
     /**
+     * <code>optional string search_escape_string = 40;</code>
+     *
      * <pre>
      * Characters used for escaping (empty if not suported)
      * </pre>
-     *
-     * <code>optional string search_escape_string = 40;</code>
      */
     public java.lang.String getSearchEscapeString() {
       java.lang.Object ref = searchEscapeString_;
@@ -38680,11 +34793,11 @@
       }
     }
     /**
+     * <code>optional string search_escape_string = 40;</code>
+     *
      * <pre>
      * Characters used for escaping (empty if not suported)
      * </pre>
-     *
-     * <code>optional string search_escape_string = 40;</code>
      */
     public com.google.protobuf.ByteString
         getSearchEscapeStringBytes() {
@@ -38700,47 +34813,49 @@
       }
     }
 
+    // optional bool select_for_update_supported = 41;
     public static final int SELECT_FOR_UPDATE_SUPPORTED_FIELD_NUMBER = 41;
     private boolean selectForUpdateSupported_;
     /**
+     * <code>optional bool select_for_update_supported = 41;</code>
+     *
      * <pre>
      * True if SELECT FOR UPDATE is supported
      * </pre>
-     *
-     * <code>optional bool select_for_update_supported = 41;</code>
      */
     public boolean hasSelectForUpdateSupported() {
       return ((bitField1_ & 0x00000002) == 0x00000002);
     }
     /**
+     * <code>optional bool select_for_update_supported = 41;</code>
+     *
      * <pre>
      * True if SELECT FOR UPDATE is supported
      * </pre>
-     *
-     * <code>optional bool select_for_update_supported = 41;</code>
      */
     public boolean getSelectForUpdateSupported() {
       return selectForUpdateSupported_;
     }
 
+    // optional string special_characters = 42;
     public static final int SPECIAL_CHARACTERS_FIELD_NUMBER = 42;
-    private volatile java.lang.Object specialCharacters_;
+    private java.lang.Object specialCharacters_;
     /**
+     * <code>optional string special_characters = 42;</code>
+     *
      * <pre>
      * List of extra characters that can be used in identifier names
      * </pre>
-     *
-     * <code>optional string special_characters = 42;</code>
      */
     public boolean hasSpecialCharacters() {
       return ((bitField1_ & 0x00000004) == 0x00000004);
     }
     /**
+     * <code>optional string special_characters = 42;</code>
+     *
      * <pre>
      * List of extra characters that can be used in identifier names
      * </pre>
-     *
-     * <code>optional string special_characters = 42;</code>
      */
     public java.lang.String getSpecialCharacters() {
       java.lang.Object ref = specialCharacters_;
@@ -38757,11 +34872,11 @@
       }
     }
     /**
+     * <code>optional string special_characters = 42;</code>
+     *
      * <pre>
      * List of extra characters that can be used in identifier names
      * </pre>
-     *
-     * <code>optional string special_characters = 42;</code>
      */
     public com.google.protobuf.ByteString
         getSpecialCharactersBytes() {
@@ -38777,203 +34892,197 @@
       }
     }
 
+    // repeated string sql_keywords = 43;
     public static final int SQL_KEYWORDS_FIELD_NUMBER = 43;
     private com.google.protobuf.LazyStringList sqlKeywords_;
     /**
+     * <code>repeated string sql_keywords = 43;</code>
+     *
      * <pre>
      * list of SQL keywords
      * </pre>
-     *
-     * <code>repeated string sql_keywords = 43;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getSqlKeywordsList() {
       return sqlKeywords_;
     }
     /**
+     * <code>repeated string sql_keywords = 43;</code>
+     *
      * <pre>
      * list of SQL keywords
      * </pre>
-     *
-     * <code>repeated string sql_keywords = 43;</code>
      */
     public int getSqlKeywordsCount() {
       return sqlKeywords_.size();
     }
     /**
+     * <code>repeated string sql_keywords = 43;</code>
+     *
      * <pre>
      * list of SQL keywords
      * </pre>
-     *
-     * <code>repeated string sql_keywords = 43;</code>
      */
     public java.lang.String getSqlKeywords(int index) {
       return sqlKeywords_.get(index);
     }
     /**
+     * <code>repeated string sql_keywords = 43;</code>
+     *
      * <pre>
      * list of SQL keywords
      * </pre>
-     *
-     * <code>repeated string sql_keywords = 43;</code>
      */
     public com.google.protobuf.ByteString
         getSqlKeywordsBytes(int index) {
       return sqlKeywords_.getByteString(index);
     }
 
+    // repeated string string_functions = 44;
     public static final int STRING_FUNCTIONS_FIELD_NUMBER = 44;
     private com.google.protobuf.LazyStringList stringFunctions_;
     /**
+     * <code>repeated string string_functions = 44;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC string scalar functions
      * </pre>
-     *
-     * <code>repeated string string_functions = 44;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getStringFunctionsList() {
       return stringFunctions_;
     }
     /**
+     * <code>repeated string string_functions = 44;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC string scalar functions
      * </pre>
-     *
-     * <code>repeated string string_functions = 44;</code>
      */
     public int getStringFunctionsCount() {
       return stringFunctions_.size();
     }
     /**
+     * <code>repeated string string_functions = 44;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC string scalar functions
      * </pre>
-     *
-     * <code>repeated string string_functions = 44;</code>
      */
     public java.lang.String getStringFunctions(int index) {
       return stringFunctions_.get(index);
     }
     /**
+     * <code>repeated string string_functions = 44;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC string scalar functions
      * </pre>
-     *
-     * <code>repeated string string_functions = 44;</code>
      */
     public com.google.protobuf.ByteString
         getStringFunctionsBytes(int index) {
       return stringFunctions_.getByteString(index);
     }
 
+    // repeated .exec.user.SubQuerySupport subquery_support = 45;
     public static final int SUBQUERY_SUPPORT_FIELD_NUMBER = 45;
-    private java.util.List<java.lang.Integer> subquerySupport_;
-    private static final com.google.protobuf.Internal.ListAdapter.Converter<
-        java.lang.Integer, org.apache.drill.exec.proto.UserProtos.SubQuerySupport> subquerySupport_converter_ =
-            new com.google.protobuf.Internal.ListAdapter.Converter<
-                java.lang.Integer, org.apache.drill.exec.proto.UserProtos.SubQuerySupport>() {
-              public org.apache.drill.exec.proto.UserProtos.SubQuerySupport convert(java.lang.Integer from) {
-                @SuppressWarnings("deprecation")
-                org.apache.drill.exec.proto.UserProtos.SubQuerySupport result = org.apache.drill.exec.proto.UserProtos.SubQuerySupport.valueOf(from);
-                return result == null ? org.apache.drill.exec.proto.UserProtos.SubQuerySupport.SQ_UNKNOWN : result;
-              }
-            };
+    private java.util.List<org.apache.drill.exec.proto.UserProtos.SubQuerySupport> subquerySupport_;
     /**
+     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+     *
      * <pre>
      * Subquery support
      * </pre>
-     *
-     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserProtos.SubQuerySupport> getSubquerySupportList() {
-      return new com.google.protobuf.Internal.ListAdapter<
-          java.lang.Integer, org.apache.drill.exec.proto.UserProtos.SubQuerySupport>(subquerySupport_, subquerySupport_converter_);
+      return subquerySupport_;
     }
     /**
+     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+     *
      * <pre>
      * Subquery support
      * </pre>
-     *
-     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
      */
     public int getSubquerySupportCount() {
       return subquerySupport_.size();
     }
     /**
+     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+     *
      * <pre>
      * Subquery support
      * </pre>
-     *
-     * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.SubQuerySupport getSubquerySupport(int index) {
-      return subquerySupport_converter_.convert(subquerySupport_.get(index));
+      return subquerySupport_.get(index);
     }
 
+    // repeated string system_functions = 46;
     public static final int SYSTEM_FUNCTIONS_FIELD_NUMBER = 46;
     private com.google.protobuf.LazyStringList systemFunctions_;
     /**
+     * <code>repeated string system_functions = 46;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC systen scalar functions
      * </pre>
-     *
-     * <code>repeated string system_functions = 46;</code>
      */
-    public com.google.protobuf.ProtocolStringList
+    public java.util.List<java.lang.String>
         getSystemFunctionsList() {
       return systemFunctions_;
     }
     /**
+     * <code>repeated string system_functions = 46;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC systen scalar functions
      * </pre>
-     *
-     * <code>repeated string system_functions = 46;</code>
      */
     public int getSystemFunctionsCount() {
       return systemFunctions_.size();
     }
     /**
+     * <code>repeated string system_functions = 46;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC systen scalar functions
      * </pre>
-     *
-     * <code>repeated string system_functions = 46;</code>
      */
     public java.lang.String getSystemFunctions(int index) {
       return systemFunctions_.get(index);
     }
     /**
+     * <code>repeated string system_functions = 46;</code>
+     *
      * <pre>
      * Supported ODBC/JDBC systen scalar functions
      * </pre>
-     *
-     * <code>repeated string system_functions = 46;</code>
      */
     public com.google.protobuf.ByteString
         getSystemFunctionsBytes(int index) {
       return systemFunctions_.getByteString(index);
     }
 
+    // optional string table_term = 47;
     public static final int TABLE_TERM_FIELD_NUMBER = 47;
-    private volatile java.lang.Object tableTerm_;
+    private java.lang.Object tableTerm_;
     /**
+     * <code>optional string table_term = 47;</code>
+     *
      * <pre>
      * The term used to designate a table
      * </pre>
-     *
-     * <code>optional string table_term = 47;</code>
      */
     public boolean hasTableTerm() {
       return ((bitField1_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional string table_term = 47;</code>
+     *
      * <pre>
      * The term used to designate a table
      * </pre>
-     *
-     * <code>optional string table_term = 47;</code>
      */
     public java.lang.String getTableTerm() {
       java.lang.Object ref = tableTerm_;
@@ -38990,11 +35099,11 @@
       }
     }
     /**
+     * <code>optional string table_term = 47;</code>
+     *
      * <pre>
      * The term used to designate a table
      * </pre>
-     *
-     * <code>optional string table_term = 47;</code>
      */
     public com.google.protobuf.ByteString
         getTableTermBytes() {
@@ -39010,91 +35119,83 @@
       }
     }
 
+    // optional bool transaction_supported = 48;
     public static final int TRANSACTION_SUPPORTED_FIELD_NUMBER = 48;
     private boolean transactionSupported_;
     /**
+     * <code>optional bool transaction_supported = 48;</code>
+     *
      * <pre>
      * True if transaction is supported
      * </pre>
-     *
-     * <code>optional bool transaction_supported = 48;</code>
      */
     public boolean hasTransactionSupported() {
       return ((bitField1_ & 0x00000010) == 0x00000010);
     }
     /**
+     * <code>optional bool transaction_supported = 48;</code>
+     *
      * <pre>
      * True if transaction is supported
      * </pre>
-     *
-     * <code>optional bool transaction_supported = 48;</code>
      */
     public boolean getTransactionSupported() {
       return transactionSupported_;
     }
 
+    // repeated .exec.user.UnionSupport union_support = 49;
     public static final int UNION_SUPPORT_FIELD_NUMBER = 49;
-    private java.util.List<java.lang.Integer> unionSupport_;
-    private static final com.google.protobuf.Internal.ListAdapter.Converter<
-        java.lang.Integer, org.apache.drill.exec.proto.UserProtos.UnionSupport> unionSupport_converter_ =
-            new com.google.protobuf.Internal.ListAdapter.Converter<
-                java.lang.Integer, org.apache.drill.exec.proto.UserProtos.UnionSupport>() {
-              public org.apache.drill.exec.proto.UserProtos.UnionSupport convert(java.lang.Integer from) {
-                @SuppressWarnings("deprecation")
-                org.apache.drill.exec.proto.UserProtos.UnionSupport result = org.apache.drill.exec.proto.UserProtos.UnionSupport.valueOf(from);
-                return result == null ? org.apache.drill.exec.proto.UserProtos.UnionSupport.U_UNKNOWN : result;
-              }
-            };
+    private java.util.List<org.apache.drill.exec.proto.UserProtos.UnionSupport> unionSupport_;
     /**
+     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+     *
      * <pre>
      * UNION support
      * </pre>
-     *
-     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.UserProtos.UnionSupport> getUnionSupportList() {
-      return new com.google.protobuf.Internal.ListAdapter<
-          java.lang.Integer, org.apache.drill.exec.proto.UserProtos.UnionSupport>(unionSupport_, unionSupport_converter_);
+      return unionSupport_;
     }
     /**
+     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+     *
      * <pre>
      * UNION support
      * </pre>
-     *
-     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
      */
     public int getUnionSupportCount() {
       return unionSupport_.size();
     }
     /**
+     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+     *
      * <pre>
      * UNION support
      * </pre>
-     *
-     * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.UnionSupport getUnionSupport(int index) {
-      return unionSupport_converter_.convert(unionSupport_.get(index));
+      return unionSupport_.get(index);
     }
 
+    // optional string current_schema = 50;
     public static final int CURRENT_SCHEMA_FIELD_NUMBER = 50;
-    private volatile java.lang.Object currentSchema_;
+    private java.lang.Object currentSchema_;
     /**
+     * <code>optional string current_schema = 50;</code>
+     *
      * <pre>
      * current schema
      * </pre>
-     *
-     * <code>optional string current_schema = 50;</code>
      */
     public boolean hasCurrentSchema() {
       return ((bitField1_ & 0x00000020) == 0x00000020);
     }
     /**
+     * <code>optional string current_schema = 50;</code>
+     *
      * <pre>
      * current schema
      * </pre>
-     *
-     * <code>optional string current_schema = 50;</code>
      */
     public java.lang.String getCurrentSchema() {
       java.lang.Object ref = currentSchema_;
@@ -39111,11 +35212,11 @@
       }
     }
     /**
+     * <code>optional string current_schema = 50;</code>
+     *
      * <pre>
      * current schema
      * </pre>
-     *
-     * <code>optional string current_schema = 50;</code>
      */
     public com.google.protobuf.ByteString
         getCurrentSchemaBytes() {
@@ -39131,12 +35232,62 @@
       }
     }
 
+    private void initFields() {
+      allTablesSelectable_ = false;
+      blobIncludedInMaxRowSize_ = false;
+      catalogAtStart_ = false;
+      catalogSeparator_ = "";
+      catalogTerm_ = "";
+      collateSupport_ = java.util.Collections.emptyList();
+      columnAliasingSupported_ = false;
+      convertSupport_ = java.util.Collections.emptyList();
+      correlationNamesSupport_ = org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.CN_NONE;
+      dateTimeFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+      dateTimeLiteralsSupport_ = java.util.Collections.emptyList();
+      groupBySupport_ = org.apache.drill.exec.proto.UserProtos.GroupBySupport.GB_NONE;
+      identifierCasing_ = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN;
+      identifierQuoteString_ = "";
+      likeEscapeClauseSupported_ = false;
+      maxBinaryLiteralLength_ = 0;
+      maxCatalogNameLength_ = 0;
+      maxCharLiteralLength_ = 0;
+      maxColumnNameLength_ = 0;
+      maxColumnsInGroupBy_ = 0;
+      maxColumnsInOrderBy_ = 0;
+      maxColumnsInSelect_ = 0;
+      maxCursorNameLength_ = 0;
+      maxLogicalLobSize_ = 0;
+      maxRowSize_ = 0;
+      maxSchemaNameLength_ = 0;
+      maxStatementLength_ = 0;
+      maxStatements_ = 0;
+      maxTableNameLength_ = 0;
+      maxTablesInSelect_ = 0;
+      maxUserNameLength_ = 0;
+      nullCollation_ = org.apache.drill.exec.proto.UserProtos.NullCollation.NC_UNKNOWN;
+      nullPlusNonNullEqualsNull_ = false;
+      numericFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+      orderBySupport_ = java.util.Collections.emptyList();
+      outerJoinSupport_ = java.util.Collections.emptyList();
+      quotedIdentifierCasing_ = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN;
+      readOnly_ = false;
+      schemaTerm_ = "";
+      searchEscapeString_ = "";
+      selectForUpdateSupported_ = false;
+      specialCharacters_ = "";
+      sqlKeywords_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+      stringFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+      subquerySupport_ = java.util.Collections.emptyList();
+      systemFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
+      tableTerm_ = "";
+      transactionSupported_ = false;
+      unionSupport_ = java.util.Collections.emptyList();
+      currentSchema_ = "";
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       for (int i = 0; i < getConvertSupportCount(); i++) {
         if (!getConvertSupport(i).isInitialized()) {
@@ -39148,9 +35299,9 @@
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         output.writeBool(1, allTablesSelectable_);
       }
@@ -39161,13 +35312,13 @@
         output.writeBool(3, catalogAtStart_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 4, catalogSeparator_);
+        output.writeBytes(4, getCatalogSeparatorBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, catalogTerm_);
+        output.writeBytes(5, getCatalogTermBytes());
       }
       for (int i = 0; i < collateSupport_.size(); i++) {
-        output.writeEnum(6, collateSupport_.get(i));
+        output.writeEnum(6, collateSupport_.get(i).getNumber());
       }
       if (((bitField0_ & 0x00000020) == 0x00000020)) {
         output.writeBool(7, columnAliasingSupported_);
@@ -39176,22 +35327,22 @@
         output.writeMessage(8, convertSupport_.get(i));
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
-        output.writeEnum(9, correlationNamesSupport_);
+        output.writeEnum(9, correlationNamesSupport_.getNumber());
       }
       for (int i = 0; i < dateTimeFunctions_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 10, dateTimeFunctions_.getRaw(i));
+        output.writeBytes(10, dateTimeFunctions_.getByteString(i));
       }
       for (int i = 0; i < dateTimeLiteralsSupport_.size(); i++) {
-        output.writeEnum(11, dateTimeLiteralsSupport_.get(i));
+        output.writeEnum(11, dateTimeLiteralsSupport_.get(i).getNumber());
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
-        output.writeEnum(12, groupBySupport_);
+        output.writeEnum(12, groupBySupport_.getNumber());
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
-        output.writeEnum(13, identifierCasing_);
+        output.writeEnum(13, identifierCasing_.getNumber());
       }
       if (((bitField0_ & 0x00000200) == 0x00000200)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 14, identifierQuoteString_);
+        output.writeBytes(14, getIdentifierQuoteStringBytes());
       }
       if (((bitField0_ & 0x00000400) == 0x00000400)) {
         output.writeBool(15, likeEscapeClauseSupported_);
@@ -39245,68 +35396,68 @@
         output.writeUInt32(31, maxUserNameLength_);
       }
       if (((bitField0_ & 0x08000000) == 0x08000000)) {
-        output.writeEnum(32, nullCollation_);
+        output.writeEnum(32, nullCollation_.getNumber());
       }
       if (((bitField0_ & 0x10000000) == 0x10000000)) {
         output.writeBool(33, nullPlusNonNullEqualsNull_);
       }
       for (int i = 0; i < numericFunctions_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 34, numericFunctions_.getRaw(i));
+        output.writeBytes(34, numericFunctions_.getByteString(i));
       }
       for (int i = 0; i < orderBySupport_.size(); i++) {
-        output.writeEnum(35, orderBySupport_.get(i));
+        output.writeEnum(35, orderBySupport_.get(i).getNumber());
       }
       for (int i = 0; i < outerJoinSupport_.size(); i++) {
-        output.writeEnum(36, outerJoinSupport_.get(i));
+        output.writeEnum(36, outerJoinSupport_.get(i).getNumber());
       }
       if (((bitField0_ & 0x20000000) == 0x20000000)) {
-        output.writeEnum(37, quotedIdentifierCasing_);
+        output.writeEnum(37, quotedIdentifierCasing_.getNumber());
       }
       if (((bitField0_ & 0x40000000) == 0x40000000)) {
         output.writeBool(38, readOnly_);
       }
       if (((bitField0_ & 0x80000000) == 0x80000000)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 39, schemaTerm_);
+        output.writeBytes(39, getSchemaTermBytes());
       }
       if (((bitField1_ & 0x00000001) == 0x00000001)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 40, searchEscapeString_);
+        output.writeBytes(40, getSearchEscapeStringBytes());
       }
       if (((bitField1_ & 0x00000002) == 0x00000002)) {
         output.writeBool(41, selectForUpdateSupported_);
       }
       if (((bitField1_ & 0x00000004) == 0x00000004)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 42, specialCharacters_);
+        output.writeBytes(42, getSpecialCharactersBytes());
       }
       for (int i = 0; i < sqlKeywords_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 43, sqlKeywords_.getRaw(i));
+        output.writeBytes(43, sqlKeywords_.getByteString(i));
       }
       for (int i = 0; i < stringFunctions_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 44, stringFunctions_.getRaw(i));
+        output.writeBytes(44, stringFunctions_.getByteString(i));
       }
       for (int i = 0; i < subquerySupport_.size(); i++) {
-        output.writeEnum(45, subquerySupport_.get(i));
+        output.writeEnum(45, subquerySupport_.get(i).getNumber());
       }
       for (int i = 0; i < systemFunctions_.size(); i++) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 46, systemFunctions_.getRaw(i));
+        output.writeBytes(46, systemFunctions_.getByteString(i));
       }
       if (((bitField1_ & 0x00000008) == 0x00000008)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 47, tableTerm_);
+        output.writeBytes(47, getTableTermBytes());
       }
       if (((bitField1_ & 0x00000010) == 0x00000010)) {
         output.writeBool(48, transactionSupported_);
       }
       for (int i = 0; i < unionSupport_.size(); i++) {
-        output.writeEnum(49, unionSupport_.get(i));
+        output.writeEnum(49, unionSupport_.get(i).getNumber());
       }
       if (((bitField1_ & 0x00000020) == 0x00000020)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 50, currentSchema_);
+        output.writeBytes(50, getCurrentSchemaBytes());
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
@@ -39323,16 +35474,18 @@
           .computeBoolSize(3, catalogAtStart_);
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, catalogSeparator_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(4, getCatalogSeparatorBytes());
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, catalogTerm_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(5, getCatalogTermBytes());
       }
       {
         int dataSize = 0;
         for (int i = 0; i < collateSupport_.size(); i++) {
           dataSize += com.google.protobuf.CodedOutputStream
-            .computeEnumSizeNoTag(collateSupport_.get(i));
+            .computeEnumSizeNoTag(collateSupport_.get(i).getNumber());
         }
         size += dataSize;
         size += 1 * collateSupport_.size();
@@ -39347,12 +35500,13 @@
       }
       if (((bitField0_ & 0x00000040) == 0x00000040)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(9, correlationNamesSupport_);
+          .computeEnumSize(9, correlationNamesSupport_.getNumber());
       }
       {
         int dataSize = 0;
         for (int i = 0; i < dateTimeFunctions_.size(); i++) {
-          dataSize += computeStringSizeNoTag(dateTimeFunctions_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(dateTimeFunctions_.getByteString(i));
         }
         size += dataSize;
         size += 1 * getDateTimeFunctionsList().size();
@@ -39361,21 +35515,22 @@
         int dataSize = 0;
         for (int i = 0; i < dateTimeLiteralsSupport_.size(); i++) {
           dataSize += com.google.protobuf.CodedOutputStream
-            .computeEnumSizeNoTag(dateTimeLiteralsSupport_.get(i));
+            .computeEnumSizeNoTag(dateTimeLiteralsSupport_.get(i).getNumber());
         }
         size += dataSize;
         size += 1 * dateTimeLiteralsSupport_.size();
       }
       if (((bitField0_ & 0x00000080) == 0x00000080)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(12, groupBySupport_);
+          .computeEnumSize(12, groupBySupport_.getNumber());
       }
       if (((bitField0_ & 0x00000100) == 0x00000100)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(13, identifierCasing_);
+          .computeEnumSize(13, identifierCasing_.getNumber());
       }
       if (((bitField0_ & 0x00000200) == 0x00000200)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, identifierQuoteString_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(14, getIdentifierQuoteStringBytes());
       }
       if (((bitField0_ & 0x00000400) == 0x00000400)) {
         size += com.google.protobuf.CodedOutputStream
@@ -39447,7 +35602,7 @@
       }
       if (((bitField0_ & 0x08000000) == 0x08000000)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(32, nullCollation_);
+          .computeEnumSize(32, nullCollation_.getNumber());
       }
       if (((bitField0_ & 0x10000000) == 0x10000000)) {
         size += com.google.protobuf.CodedOutputStream
@@ -39456,7 +35611,8 @@
       {
         int dataSize = 0;
         for (int i = 0; i < numericFunctions_.size(); i++) {
-          dataSize += computeStringSizeNoTag(numericFunctions_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(numericFunctions_.getByteString(i));
         }
         size += dataSize;
         size += 2 * getNumericFunctionsList().size();
@@ -39465,7 +35621,7 @@
         int dataSize = 0;
         for (int i = 0; i < orderBySupport_.size(); i++) {
           dataSize += com.google.protobuf.CodedOutputStream
-            .computeEnumSizeNoTag(orderBySupport_.get(i));
+            .computeEnumSizeNoTag(orderBySupport_.get(i).getNumber());
         }
         size += dataSize;
         size += 2 * orderBySupport_.size();
@@ -39474,36 +35630,40 @@
         int dataSize = 0;
         for (int i = 0; i < outerJoinSupport_.size(); i++) {
           dataSize += com.google.protobuf.CodedOutputStream
-            .computeEnumSizeNoTag(outerJoinSupport_.get(i));
+            .computeEnumSizeNoTag(outerJoinSupport_.get(i).getNumber());
         }
         size += dataSize;
         size += 2 * outerJoinSupport_.size();
       }
       if (((bitField0_ & 0x20000000) == 0x20000000)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(37, quotedIdentifierCasing_);
+          .computeEnumSize(37, quotedIdentifierCasing_.getNumber());
       }
       if (((bitField0_ & 0x40000000) == 0x40000000)) {
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(38, readOnly_);
       }
       if (((bitField0_ & 0x80000000) == 0x80000000)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(39, schemaTerm_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(39, getSchemaTermBytes());
       }
       if (((bitField1_ & 0x00000001) == 0x00000001)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(40, searchEscapeString_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(40, getSearchEscapeStringBytes());
       }
       if (((bitField1_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
           .computeBoolSize(41, selectForUpdateSupported_);
       }
       if (((bitField1_ & 0x00000004) == 0x00000004)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(42, specialCharacters_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(42, getSpecialCharactersBytes());
       }
       {
         int dataSize = 0;
         for (int i = 0; i < sqlKeywords_.size(); i++) {
-          dataSize += computeStringSizeNoTag(sqlKeywords_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(sqlKeywords_.getByteString(i));
         }
         size += dataSize;
         size += 2 * getSqlKeywordsList().size();
@@ -39511,7 +35671,8 @@
       {
         int dataSize = 0;
         for (int i = 0; i < stringFunctions_.size(); i++) {
-          dataSize += computeStringSizeNoTag(stringFunctions_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(stringFunctions_.getByteString(i));
         }
         size += dataSize;
         size += 2 * getStringFunctionsList().size();
@@ -39520,7 +35681,7 @@
         int dataSize = 0;
         for (int i = 0; i < subquerySupport_.size(); i++) {
           dataSize += com.google.protobuf.CodedOutputStream
-            .computeEnumSizeNoTag(subquerySupport_.get(i));
+            .computeEnumSizeNoTag(subquerySupport_.get(i).getNumber());
         }
         size += dataSize;
         size += 2 * subquerySupport_.size();
@@ -39528,13 +35689,15 @@
       {
         int dataSize = 0;
         for (int i = 0; i < systemFunctions_.size(); i++) {
-          dataSize += computeStringSizeNoTag(systemFunctions_.getRaw(i));
+          dataSize += com.google.protobuf.CodedOutputStream
+            .computeBytesSizeNoTag(systemFunctions_.getByteString(i));
         }
         size += dataSize;
         size += 2 * getSystemFunctionsList().size();
       }
       if (((bitField1_ & 0x00000008) == 0x00000008)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(47, tableTerm_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(47, getTableTermBytes());
       }
       if (((bitField1_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
@@ -39544,469 +35707,27 @@
         int dataSize = 0;
         for (int i = 0; i < unionSupport_.size(); i++) {
           dataSize += com.google.protobuf.CodedOutputStream
-            .computeEnumSizeNoTag(unionSupport_.get(i));
+            .computeEnumSizeNoTag(unionSupport_.get(i).getNumber());
         }
         size += dataSize;
         size += 2 * unionSupport_.size();
       }
       if (((bitField1_ & 0x00000020) == 0x00000020)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(50, currentSchema_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(50, getCurrentSchemaBytes());
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.ServerMeta)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.ServerMeta other = (org.apache.drill.exec.proto.UserProtos.ServerMeta) obj;
-
-      boolean result = true;
-      result = result && (hasAllTablesSelectable() == other.hasAllTablesSelectable());
-      if (hasAllTablesSelectable()) {
-        result = result && (getAllTablesSelectable()
-            == other.getAllTablesSelectable());
-      }
-      result = result && (hasBlobIncludedInMaxRowSize() == other.hasBlobIncludedInMaxRowSize());
-      if (hasBlobIncludedInMaxRowSize()) {
-        result = result && (getBlobIncludedInMaxRowSize()
-            == other.getBlobIncludedInMaxRowSize());
-      }
-      result = result && (hasCatalogAtStart() == other.hasCatalogAtStart());
-      if (hasCatalogAtStart()) {
-        result = result && (getCatalogAtStart()
-            == other.getCatalogAtStart());
-      }
-      result = result && (hasCatalogSeparator() == other.hasCatalogSeparator());
-      if (hasCatalogSeparator()) {
-        result = result && getCatalogSeparator()
-            .equals(other.getCatalogSeparator());
-      }
-      result = result && (hasCatalogTerm() == other.hasCatalogTerm());
-      if (hasCatalogTerm()) {
-        result = result && getCatalogTerm()
-            .equals(other.getCatalogTerm());
-      }
-      result = result && collateSupport_.equals(other.collateSupport_);
-      result = result && (hasColumnAliasingSupported() == other.hasColumnAliasingSupported());
-      if (hasColumnAliasingSupported()) {
-        result = result && (getColumnAliasingSupported()
-            == other.getColumnAliasingSupported());
-      }
-      result = result && getConvertSupportList()
-          .equals(other.getConvertSupportList());
-      result = result && (hasCorrelationNamesSupport() == other.hasCorrelationNamesSupport());
-      if (hasCorrelationNamesSupport()) {
-        result = result && correlationNamesSupport_ == other.correlationNamesSupport_;
-      }
-      result = result && getDateTimeFunctionsList()
-          .equals(other.getDateTimeFunctionsList());
-      result = result && dateTimeLiteralsSupport_.equals(other.dateTimeLiteralsSupport_);
-      result = result && (hasGroupBySupport() == other.hasGroupBySupport());
-      if (hasGroupBySupport()) {
-        result = result && groupBySupport_ == other.groupBySupport_;
-      }
-      result = result && (hasIdentifierCasing() == other.hasIdentifierCasing());
-      if (hasIdentifierCasing()) {
-        result = result && identifierCasing_ == other.identifierCasing_;
-      }
-      result = result && (hasIdentifierQuoteString() == other.hasIdentifierQuoteString());
-      if (hasIdentifierQuoteString()) {
-        result = result && getIdentifierQuoteString()
-            .equals(other.getIdentifierQuoteString());
-      }
-      result = result && (hasLikeEscapeClauseSupported() == other.hasLikeEscapeClauseSupported());
-      if (hasLikeEscapeClauseSupported()) {
-        result = result && (getLikeEscapeClauseSupported()
-            == other.getLikeEscapeClauseSupported());
-      }
-      result = result && (hasMaxBinaryLiteralLength() == other.hasMaxBinaryLiteralLength());
-      if (hasMaxBinaryLiteralLength()) {
-        result = result && (getMaxBinaryLiteralLength()
-            == other.getMaxBinaryLiteralLength());
-      }
-      result = result && (hasMaxCatalogNameLength() == other.hasMaxCatalogNameLength());
-      if (hasMaxCatalogNameLength()) {
-        result = result && (getMaxCatalogNameLength()
-            == other.getMaxCatalogNameLength());
-      }
-      result = result && (hasMaxCharLiteralLength() == other.hasMaxCharLiteralLength());
-      if (hasMaxCharLiteralLength()) {
-        result = result && (getMaxCharLiteralLength()
-            == other.getMaxCharLiteralLength());
-      }
-      result = result && (hasMaxColumnNameLength() == other.hasMaxColumnNameLength());
-      if (hasMaxColumnNameLength()) {
-        result = result && (getMaxColumnNameLength()
-            == other.getMaxColumnNameLength());
-      }
-      result = result && (hasMaxColumnsInGroupBy() == other.hasMaxColumnsInGroupBy());
-      if (hasMaxColumnsInGroupBy()) {
-        result = result && (getMaxColumnsInGroupBy()
-            == other.getMaxColumnsInGroupBy());
-      }
-      result = result && (hasMaxColumnsInOrderBy() == other.hasMaxColumnsInOrderBy());
-      if (hasMaxColumnsInOrderBy()) {
-        result = result && (getMaxColumnsInOrderBy()
-            == other.getMaxColumnsInOrderBy());
-      }
-      result = result && (hasMaxColumnsInSelect() == other.hasMaxColumnsInSelect());
-      if (hasMaxColumnsInSelect()) {
-        result = result && (getMaxColumnsInSelect()
-            == other.getMaxColumnsInSelect());
-      }
-      result = result && (hasMaxCursorNameLength() == other.hasMaxCursorNameLength());
-      if (hasMaxCursorNameLength()) {
-        result = result && (getMaxCursorNameLength()
-            == other.getMaxCursorNameLength());
-      }
-      result = result && (hasMaxLogicalLobSize() == other.hasMaxLogicalLobSize());
-      if (hasMaxLogicalLobSize()) {
-        result = result && (getMaxLogicalLobSize()
-            == other.getMaxLogicalLobSize());
-      }
-      result = result && (hasMaxRowSize() == other.hasMaxRowSize());
-      if (hasMaxRowSize()) {
-        result = result && (getMaxRowSize()
-            == other.getMaxRowSize());
-      }
-      result = result && (hasMaxSchemaNameLength() == other.hasMaxSchemaNameLength());
-      if (hasMaxSchemaNameLength()) {
-        result = result && (getMaxSchemaNameLength()
-            == other.getMaxSchemaNameLength());
-      }
-      result = result && (hasMaxStatementLength() == other.hasMaxStatementLength());
-      if (hasMaxStatementLength()) {
-        result = result && (getMaxStatementLength()
-            == other.getMaxStatementLength());
-      }
-      result = result && (hasMaxStatements() == other.hasMaxStatements());
-      if (hasMaxStatements()) {
-        result = result && (getMaxStatements()
-            == other.getMaxStatements());
-      }
-      result = result && (hasMaxTableNameLength() == other.hasMaxTableNameLength());
-      if (hasMaxTableNameLength()) {
-        result = result && (getMaxTableNameLength()
-            == other.getMaxTableNameLength());
-      }
-      result = result && (hasMaxTablesInSelect() == other.hasMaxTablesInSelect());
-      if (hasMaxTablesInSelect()) {
-        result = result && (getMaxTablesInSelect()
-            == other.getMaxTablesInSelect());
-      }
-      result = result && (hasMaxUserNameLength() == other.hasMaxUserNameLength());
-      if (hasMaxUserNameLength()) {
-        result = result && (getMaxUserNameLength()
-            == other.getMaxUserNameLength());
-      }
-      result = result && (hasNullCollation() == other.hasNullCollation());
-      if (hasNullCollation()) {
-        result = result && nullCollation_ == other.nullCollation_;
-      }
-      result = result && (hasNullPlusNonNullEqualsNull() == other.hasNullPlusNonNullEqualsNull());
-      if (hasNullPlusNonNullEqualsNull()) {
-        result = result && (getNullPlusNonNullEqualsNull()
-            == other.getNullPlusNonNullEqualsNull());
-      }
-      result = result && getNumericFunctionsList()
-          .equals(other.getNumericFunctionsList());
-      result = result && orderBySupport_.equals(other.orderBySupport_);
-      result = result && outerJoinSupport_.equals(other.outerJoinSupport_);
-      result = result && (hasQuotedIdentifierCasing() == other.hasQuotedIdentifierCasing());
-      if (hasQuotedIdentifierCasing()) {
-        result = result && quotedIdentifierCasing_ == other.quotedIdentifierCasing_;
-      }
-      result = result && (hasReadOnly() == other.hasReadOnly());
-      if (hasReadOnly()) {
-        result = result && (getReadOnly()
-            == other.getReadOnly());
-      }
-      result = result && (hasSchemaTerm() == other.hasSchemaTerm());
-      if (hasSchemaTerm()) {
-        result = result && getSchemaTerm()
-            .equals(other.getSchemaTerm());
-      }
-      result = result && (hasSearchEscapeString() == other.hasSearchEscapeString());
-      if (hasSearchEscapeString()) {
-        result = result && getSearchEscapeString()
-            .equals(other.getSearchEscapeString());
-      }
-      result = result && (hasSelectForUpdateSupported() == other.hasSelectForUpdateSupported());
-      if (hasSelectForUpdateSupported()) {
-        result = result && (getSelectForUpdateSupported()
-            == other.getSelectForUpdateSupported());
-      }
-      result = result && (hasSpecialCharacters() == other.hasSpecialCharacters());
-      if (hasSpecialCharacters()) {
-        result = result && getSpecialCharacters()
-            .equals(other.getSpecialCharacters());
-      }
-      result = result && getSqlKeywordsList()
-          .equals(other.getSqlKeywordsList());
-      result = result && getStringFunctionsList()
-          .equals(other.getStringFunctionsList());
-      result = result && subquerySupport_.equals(other.subquerySupport_);
-      result = result && getSystemFunctionsList()
-          .equals(other.getSystemFunctionsList());
-      result = result && (hasTableTerm() == other.hasTableTerm());
-      if (hasTableTerm()) {
-        result = result && getTableTerm()
-            .equals(other.getTableTerm());
-      }
-      result = result && (hasTransactionSupported() == other.hasTransactionSupported());
-      if (hasTransactionSupported()) {
-        result = result && (getTransactionSupported()
-            == other.getTransactionSupported());
-      }
-      result = result && unionSupport_.equals(other.unionSupport_);
-      result = result && (hasCurrentSchema() == other.hasCurrentSchema());
-      if (hasCurrentSchema()) {
-        result = result && getCurrentSchema()
-            .equals(other.getCurrentSchema());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasAllTablesSelectable()) {
-        hash = (37 * hash) + ALL_TABLES_SELECTABLE_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getAllTablesSelectable());
-      }
-      if (hasBlobIncludedInMaxRowSize()) {
-        hash = (37 * hash) + BLOB_INCLUDED_IN_MAX_ROW_SIZE_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getBlobIncludedInMaxRowSize());
-      }
-      if (hasCatalogAtStart()) {
-        hash = (37 * hash) + CATALOG_AT_START_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getCatalogAtStart());
-      }
-      if (hasCatalogSeparator()) {
-        hash = (37 * hash) + CATALOG_SEPARATOR_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogSeparator().hashCode();
-      }
-      if (hasCatalogTerm()) {
-        hash = (37 * hash) + CATALOG_TERM_FIELD_NUMBER;
-        hash = (53 * hash) + getCatalogTerm().hashCode();
-      }
-      if (getCollateSupportCount() > 0) {
-        hash = (37 * hash) + COLLATE_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + collateSupport_.hashCode();
-      }
-      if (hasColumnAliasingSupported()) {
-        hash = (37 * hash) + COLUMN_ALIASING_SUPPORTED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getColumnAliasingSupported());
-      }
-      if (getConvertSupportCount() > 0) {
-        hash = (37 * hash) + CONVERT_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + getConvertSupportList().hashCode();
-      }
-      if (hasCorrelationNamesSupport()) {
-        hash = (37 * hash) + CORRELATION_NAMES_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + correlationNamesSupport_;
-      }
-      if (getDateTimeFunctionsCount() > 0) {
-        hash = (37 * hash) + DATE_TIME_FUNCTIONS_FIELD_NUMBER;
-        hash = (53 * hash) + getDateTimeFunctionsList().hashCode();
-      }
-      if (getDateTimeLiteralsSupportCount() > 0) {
-        hash = (37 * hash) + DATE_TIME_LITERALS_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + dateTimeLiteralsSupport_.hashCode();
-      }
-      if (hasGroupBySupport()) {
-        hash = (37 * hash) + GROUP_BY_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + groupBySupport_;
-      }
-      if (hasIdentifierCasing()) {
-        hash = (37 * hash) + IDENTIFIER_CASING_FIELD_NUMBER;
-        hash = (53 * hash) + identifierCasing_;
-      }
-      if (hasIdentifierQuoteString()) {
-        hash = (37 * hash) + IDENTIFIER_QUOTE_STRING_FIELD_NUMBER;
-        hash = (53 * hash) + getIdentifierQuoteString().hashCode();
-      }
-      if (hasLikeEscapeClauseSupported()) {
-        hash = (37 * hash) + LIKE_ESCAPE_CLAUSE_SUPPORTED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getLikeEscapeClauseSupported());
-      }
-      if (hasMaxBinaryLiteralLength()) {
-        hash = (37 * hash) + MAX_BINARY_LITERAL_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxBinaryLiteralLength();
-      }
-      if (hasMaxCatalogNameLength()) {
-        hash = (37 * hash) + MAX_CATALOG_NAME_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxCatalogNameLength();
-      }
-      if (hasMaxCharLiteralLength()) {
-        hash = (37 * hash) + MAX_CHAR_LITERAL_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxCharLiteralLength();
-      }
-      if (hasMaxColumnNameLength()) {
-        hash = (37 * hash) + MAX_COLUMN_NAME_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxColumnNameLength();
-      }
-      if (hasMaxColumnsInGroupBy()) {
-        hash = (37 * hash) + MAX_COLUMNS_IN_GROUP_BY_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxColumnsInGroupBy();
-      }
-      if (hasMaxColumnsInOrderBy()) {
-        hash = (37 * hash) + MAX_COLUMNS_IN_ORDER_BY_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxColumnsInOrderBy();
-      }
-      if (hasMaxColumnsInSelect()) {
-        hash = (37 * hash) + MAX_COLUMNS_IN_SELECT_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxColumnsInSelect();
-      }
-      if (hasMaxCursorNameLength()) {
-        hash = (37 * hash) + MAX_CURSOR_NAME_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxCursorNameLength();
-      }
-      if (hasMaxLogicalLobSize()) {
-        hash = (37 * hash) + MAX_LOGICAL_LOB_SIZE_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxLogicalLobSize();
-      }
-      if (hasMaxRowSize()) {
-        hash = (37 * hash) + MAX_ROW_SIZE_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxRowSize();
-      }
-      if (hasMaxSchemaNameLength()) {
-        hash = (37 * hash) + MAX_SCHEMA_NAME_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxSchemaNameLength();
-      }
-      if (hasMaxStatementLength()) {
-        hash = (37 * hash) + MAX_STATEMENT_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxStatementLength();
-      }
-      if (hasMaxStatements()) {
-        hash = (37 * hash) + MAX_STATEMENTS_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxStatements();
-      }
-      if (hasMaxTableNameLength()) {
-        hash = (37 * hash) + MAX_TABLE_NAME_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxTableNameLength();
-      }
-      if (hasMaxTablesInSelect()) {
-        hash = (37 * hash) + MAX_TABLES_IN_SELECT_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxTablesInSelect();
-      }
-      if (hasMaxUserNameLength()) {
-        hash = (37 * hash) + MAX_USER_NAME_LENGTH_FIELD_NUMBER;
-        hash = (53 * hash) + getMaxUserNameLength();
-      }
-      if (hasNullCollation()) {
-        hash = (37 * hash) + NULL_COLLATION_FIELD_NUMBER;
-        hash = (53 * hash) + nullCollation_;
-      }
-      if (hasNullPlusNonNullEqualsNull()) {
-        hash = (37 * hash) + NULL_PLUS_NON_NULL_EQUALS_NULL_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getNullPlusNonNullEqualsNull());
-      }
-      if (getNumericFunctionsCount() > 0) {
-        hash = (37 * hash) + NUMERIC_FUNCTIONS_FIELD_NUMBER;
-        hash = (53 * hash) + getNumericFunctionsList().hashCode();
-      }
-      if (getOrderBySupportCount() > 0) {
-        hash = (37 * hash) + ORDER_BY_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + orderBySupport_.hashCode();
-      }
-      if (getOuterJoinSupportCount() > 0) {
-        hash = (37 * hash) + OUTER_JOIN_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + outerJoinSupport_.hashCode();
-      }
-      if (hasQuotedIdentifierCasing()) {
-        hash = (37 * hash) + QUOTED_IDENTIFIER_CASING_FIELD_NUMBER;
-        hash = (53 * hash) + quotedIdentifierCasing_;
-      }
-      if (hasReadOnly()) {
-        hash = (37 * hash) + READ_ONLY_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getReadOnly());
-      }
-      if (hasSchemaTerm()) {
-        hash = (37 * hash) + SCHEMA_TERM_FIELD_NUMBER;
-        hash = (53 * hash) + getSchemaTerm().hashCode();
-      }
-      if (hasSearchEscapeString()) {
-        hash = (37 * hash) + SEARCH_ESCAPE_STRING_FIELD_NUMBER;
-        hash = (53 * hash) + getSearchEscapeString().hashCode();
-      }
-      if (hasSelectForUpdateSupported()) {
-        hash = (37 * hash) + SELECT_FOR_UPDATE_SUPPORTED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getSelectForUpdateSupported());
-      }
-      if (hasSpecialCharacters()) {
-        hash = (37 * hash) + SPECIAL_CHARACTERS_FIELD_NUMBER;
-        hash = (53 * hash) + getSpecialCharacters().hashCode();
-      }
-      if (getSqlKeywordsCount() > 0) {
-        hash = (37 * hash) + SQL_KEYWORDS_FIELD_NUMBER;
-        hash = (53 * hash) + getSqlKeywordsList().hashCode();
-      }
-      if (getStringFunctionsCount() > 0) {
-        hash = (37 * hash) + STRING_FUNCTIONS_FIELD_NUMBER;
-        hash = (53 * hash) + getStringFunctionsList().hashCode();
-      }
-      if (getSubquerySupportCount() > 0) {
-        hash = (37 * hash) + SUBQUERY_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + subquerySupport_.hashCode();
-      }
-      if (getSystemFunctionsCount() > 0) {
-        hash = (37 * hash) + SYSTEM_FUNCTIONS_FIELD_NUMBER;
-        hash = (53 * hash) + getSystemFunctionsList().hashCode();
-      }
-      if (hasTableTerm()) {
-        hash = (37 * hash) + TABLE_TERM_FIELD_NUMBER;
-        hash = (53 * hash) + getTableTerm().hashCode();
-      }
-      if (hasTransactionSupported()) {
-        hash = (37 * hash) + TRANSACTION_SUPPORTED_FIELD_NUMBER;
-        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
-            getTransactionSupported());
-      }
-      if (getUnionSupportCount() > 0) {
-        hash = (37 * hash) + UNION_SUPPORT_FIELD_NUMBER;
-        hash = (53 * hash) + unionSupport_.hashCode();
-      }
-      if (hasCurrentSchema()) {
-        hash = (37 * hash) + CURRENT_SCHEMA_FIELD_NUMBER;
-        hash = (53 * hash) + getCurrentSchema().hashCode();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.ServerMeta parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.ServerMeta parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.ServerMeta parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -40030,59 +35751,46 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.ServerMeta parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ServerMeta parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.ServerMeta parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ServerMeta parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.ServerMeta parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.ServerMeta parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.ServerMeta prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
@@ -40090,16 +35798,14 @@
      * Protobuf type {@code exec.user.ServerMeta}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.ServerMeta)
-        org.apache.drill.exec.proto.UserProtos.ServerMetaOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.ServerMetaOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ServerMeta_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ServerMeta_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -40112,17 +35818,19 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getConvertSupportFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
         allTablesSelectable_ = false;
@@ -40145,15 +35853,15 @@
         } else {
           convertSupportBuilder_.clear();
         }
-        correlationNamesSupport_ = 1;
+        correlationNamesSupport_ = org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.CN_NONE;
         bitField0_ = (bitField0_ & ~0x00000100);
         dateTimeFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
         bitField0_ = (bitField0_ & ~0x00000200);
         dateTimeLiteralsSupport_ = java.util.Collections.emptyList();
         bitField0_ = (bitField0_ & ~0x00000400);
-        groupBySupport_ = 1;
+        groupBySupport_ = org.apache.drill.exec.proto.UserProtos.GroupBySupport.GB_NONE;
         bitField0_ = (bitField0_ & ~0x00000800);
-        identifierCasing_ = 0;
+        identifierCasing_ = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN;
         bitField0_ = (bitField0_ & ~0x00001000);
         identifierQuoteString_ = "";
         bitField0_ = (bitField0_ & ~0x00002000);
@@ -40191,7 +35899,7 @@
         bitField0_ = (bitField0_ & ~0x20000000);
         maxUserNameLength_ = 0;
         bitField0_ = (bitField0_ & ~0x40000000);
-        nullCollation_ = 0;
+        nullCollation_ = org.apache.drill.exec.proto.UserProtos.NullCollation.NC_UNKNOWN;
         bitField0_ = (bitField0_ & ~0x80000000);
         nullPlusNonNullEqualsNull_ = false;
         bitField1_ = (bitField1_ & ~0x00000001);
@@ -40201,7 +35909,7 @@
         bitField1_ = (bitField1_ & ~0x00000004);
         outerJoinSupport_ = java.util.Collections.emptyList();
         bitField1_ = (bitField1_ & ~0x00000008);
-        quotedIdentifierCasing_ = 0;
+        quotedIdentifierCasing_ = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN;
         bitField1_ = (bitField1_ & ~0x00000010);
         readOnly_ = false;
         bitField1_ = (bitField1_ & ~0x00000020);
@@ -40232,18 +35940,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_ServerMeta_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ServerMeta getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.ServerMeta.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ServerMeta build() {
         org.apache.drill.exec.proto.UserProtos.ServerMeta result = buildPartial();
         if (!result.isInitialized()) {
@@ -40252,7 +35961,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.ServerMeta buildPartial() {
         org.apache.drill.exec.proto.UserProtos.ServerMeta result = new org.apache.drill.exec.proto.UserProtos.ServerMeta(this);
         int from_bitField0_ = bitField0_;
@@ -40302,7 +36010,8 @@
         }
         result.correlationNamesSupport_ = correlationNamesSupport_;
         if (((bitField0_ & 0x00000200) == 0x00000200)) {
-          dateTimeFunctions_ = dateTimeFunctions_.getUnmodifiableView();
+          dateTimeFunctions_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              dateTimeFunctions_);
           bitField0_ = (bitField0_ & ~0x00000200);
         }
         result.dateTimeFunctions_ = dateTimeFunctions_;
@@ -40400,7 +36109,8 @@
         }
         result.nullPlusNonNullEqualsNull_ = nullPlusNonNullEqualsNull_;
         if (((bitField1_ & 0x00000002) == 0x00000002)) {
-          numericFunctions_ = numericFunctions_.getUnmodifiableView();
+          numericFunctions_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              numericFunctions_);
           bitField1_ = (bitField1_ & ~0x00000002);
         }
         result.numericFunctions_ = numericFunctions_;
@@ -40439,12 +36149,14 @@
         }
         result.specialCharacters_ = specialCharacters_;
         if (((bitField1_ & 0x00000400) == 0x00000400)) {
-          sqlKeywords_ = sqlKeywords_.getUnmodifiableView();
+          sqlKeywords_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              sqlKeywords_);
           bitField1_ = (bitField1_ & ~0x00000400);
         }
         result.sqlKeywords_ = sqlKeywords_;
         if (((bitField1_ & 0x00000800) == 0x00000800)) {
-          stringFunctions_ = stringFunctions_.getUnmodifiableView();
+          stringFunctions_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              stringFunctions_);
           bitField1_ = (bitField1_ & ~0x00000800);
         }
         result.stringFunctions_ = stringFunctions_;
@@ -40454,7 +36166,8 @@
         }
         result.subquerySupport_ = subquerySupport_;
         if (((bitField1_ & 0x00002000) == 0x00002000)) {
-          systemFunctions_ = systemFunctions_.getUnmodifiableView();
+          systemFunctions_ = new com.google.protobuf.UnmodifiableLazyStringList(
+              systemFunctions_);
           bitField1_ = (bitField1_ & ~0x00002000);
         }
         result.systemFunctions_ = systemFunctions_;
@@ -40481,39 +36194,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.ServerMeta) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.ServerMeta)other);
@@ -40576,7 +36256,7 @@
               convertSupport_ = other.convertSupport_;
               bitField0_ = (bitField0_ & ~0x00000080);
               convertSupportBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getConvertSupportFieldBuilder() : null;
             } else {
               convertSupportBuilder_.addAllMessages(other.convertSupport_);
@@ -40791,22 +36471,20 @@
           currentSchema_ = other.currentSchema_;
           onChanged();
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         for (int i = 0; i < getConvertSupportCount(); i++) {
           if (!getConvertSupport(i).isInitialized()) {
+            
             return false;
           }
         }
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -40816,7 +36494,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.ServerMeta) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -40827,33 +36505,34 @@
       private int bitField0_;
       private int bitField1_;
 
+      // optional bool all_tables_selectable = 1;
       private boolean allTablesSelectable_ ;
       /**
+       * <code>optional bool all_tables_selectable = 1;</code>
+       *
        * <pre>
        * True if current user can use all tables returned by GetTables
        * </pre>
-       *
-       * <code>optional bool all_tables_selectable = 1;</code>
        */
       public boolean hasAllTablesSelectable() {
         return ((bitField0_ & 0x00000001) == 0x00000001);
       }
       /**
+       * <code>optional bool all_tables_selectable = 1;</code>
+       *
        * <pre>
        * True if current user can use all tables returned by GetTables
        * </pre>
-       *
-       * <code>optional bool all_tables_selectable = 1;</code>
        */
       public boolean getAllTablesSelectable() {
         return allTablesSelectable_;
       }
       /**
+       * <code>optional bool all_tables_selectable = 1;</code>
+       *
        * <pre>
        * True if current user can use all tables returned by GetTables
        * </pre>
-       *
-       * <code>optional bool all_tables_selectable = 1;</code>
        */
       public Builder setAllTablesSelectable(boolean value) {
         bitField0_ |= 0x00000001;
@@ -40862,11 +36541,11 @@
         return this;
       }
       /**
+       * <code>optional bool all_tables_selectable = 1;</code>
+       *
        * <pre>
        * True if current user can use all tables returned by GetTables
        * </pre>
-       *
-       * <code>optional bool all_tables_selectable = 1;</code>
        */
       public Builder clearAllTablesSelectable() {
         bitField0_ = (bitField0_ & ~0x00000001);
@@ -40875,33 +36554,34 @@
         return this;
       }
 
+      // optional bool blob_included_in_max_row_size = 2;
       private boolean blobIncludedInMaxRowSize_ ;
       /**
+       * <code>optional bool blob_included_in_max_row_size = 2;</code>
+       *
        * <pre>
        * True if BLOB are included into the max row size
        * </pre>
-       *
-       * <code>optional bool blob_included_in_max_row_size = 2;</code>
        */
       public boolean hasBlobIncludedInMaxRowSize() {
         return ((bitField0_ & 0x00000002) == 0x00000002);
       }
       /**
+       * <code>optional bool blob_included_in_max_row_size = 2;</code>
+       *
        * <pre>
        * True if BLOB are included into the max row size
        * </pre>
-       *
-       * <code>optional bool blob_included_in_max_row_size = 2;</code>
        */
       public boolean getBlobIncludedInMaxRowSize() {
         return blobIncludedInMaxRowSize_;
       }
       /**
+       * <code>optional bool blob_included_in_max_row_size = 2;</code>
+       *
        * <pre>
        * True if BLOB are included into the max row size
        * </pre>
-       *
-       * <code>optional bool blob_included_in_max_row_size = 2;</code>
        */
       public Builder setBlobIncludedInMaxRowSize(boolean value) {
         bitField0_ |= 0x00000002;
@@ -40910,11 +36590,11 @@
         return this;
       }
       /**
+       * <code>optional bool blob_included_in_max_row_size = 2;</code>
+       *
        * <pre>
        * True if BLOB are included into the max row size
        * </pre>
-       *
-       * <code>optional bool blob_included_in_max_row_size = 2;</code>
        */
       public Builder clearBlobIncludedInMaxRowSize() {
         bitField0_ = (bitField0_ & ~0x00000002);
@@ -40923,33 +36603,34 @@
         return this;
       }
 
+      // optional bool catalog_at_start = 3;
       private boolean catalogAtStart_ ;
       /**
+       * <code>optional bool catalog_at_start = 3;</code>
+       *
        * <pre>
        * True if catalog name is at the start of a fully qualified table
        * </pre>
-       *
-       * <code>optional bool catalog_at_start = 3;</code>
        */
       public boolean hasCatalogAtStart() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
+       * <code>optional bool catalog_at_start = 3;</code>
+       *
        * <pre>
        * True if catalog name is at the start of a fully qualified table
        * </pre>
-       *
-       * <code>optional bool catalog_at_start = 3;</code>
        */
       public boolean getCatalogAtStart() {
         return catalogAtStart_;
       }
       /**
+       * <code>optional bool catalog_at_start = 3;</code>
+       *
        * <pre>
        * True if catalog name is at the start of a fully qualified table
        * </pre>
-       *
-       * <code>optional bool catalog_at_start = 3;</code>
        */
       public Builder setCatalogAtStart(boolean value) {
         bitField0_ |= 0x00000004;
@@ -40958,11 +36639,11 @@
         return this;
       }
       /**
+       * <code>optional bool catalog_at_start = 3;</code>
+       *
        * <pre>
        * True if catalog name is at the start of a fully qualified table
        * </pre>
-       *
-       * <code>optional bool catalog_at_start = 3;</code>
        */
       public Builder clearCatalogAtStart() {
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -40971,44 +36652,42 @@
         return this;
       }
 
+      // optional string catalog_separator = 4;
       private java.lang.Object catalogSeparator_ = "";
       /**
+       * <code>optional string catalog_separator = 4;</code>
+       *
        * <pre>
        * The catalog separator
        * </pre>
-       *
-       * <code>optional string catalog_separator = 4;</code>
        */
       public boolean hasCatalogSeparator() {
         return ((bitField0_ & 0x00000008) == 0x00000008);
       }
       /**
+       * <code>optional string catalog_separator = 4;</code>
+       *
        * <pre>
        * The catalog separator
        * </pre>
-       *
-       * <code>optional string catalog_separator = 4;</code>
        */
       public java.lang.String getCatalogSeparator() {
         java.lang.Object ref = catalogSeparator_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            catalogSeparator_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          catalogSeparator_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string catalog_separator = 4;</code>
+       *
        * <pre>
        * The catalog separator
        * </pre>
-       *
-       * <code>optional string catalog_separator = 4;</code>
        */
       public com.google.protobuf.ByteString
           getCatalogSeparatorBytes() {
@@ -41024,11 +36703,11 @@
         }
       }
       /**
+       * <code>optional string catalog_separator = 4;</code>
+       *
        * <pre>
        * The catalog separator
        * </pre>
-       *
-       * <code>optional string catalog_separator = 4;</code>
        */
       public Builder setCatalogSeparator(
           java.lang.String value) {
@@ -41041,11 +36720,11 @@
         return this;
       }
       /**
+       * <code>optional string catalog_separator = 4;</code>
+       *
        * <pre>
        * The catalog separator
        * </pre>
-       *
-       * <code>optional string catalog_separator = 4;</code>
        */
       public Builder clearCatalogSeparator() {
         bitField0_ = (bitField0_ & ~0x00000008);
@@ -41054,11 +36733,11 @@
         return this;
       }
       /**
+       * <code>optional string catalog_separator = 4;</code>
+       *
        * <pre>
        * The catalog separator
        * </pre>
-       *
-       * <code>optional string catalog_separator = 4;</code>
        */
       public Builder setCatalogSeparatorBytes(
           com.google.protobuf.ByteString value) {
@@ -41071,44 +36750,42 @@
         return this;
       }
 
+      // optional string catalog_term = 5;
       private java.lang.Object catalogTerm_ = "";
       /**
+       * <code>optional string catalog_term = 5;</code>
+       *
        * <pre>
        * The term used to designate catalogs
        * </pre>
-       *
-       * <code>optional string catalog_term = 5;</code>
        */
       public boolean hasCatalogTerm() {
         return ((bitField0_ & 0x00000010) == 0x00000010);
       }
       /**
+       * <code>optional string catalog_term = 5;</code>
+       *
        * <pre>
        * The term used to designate catalogs
        * </pre>
-       *
-       * <code>optional string catalog_term = 5;</code>
        */
       public java.lang.String getCatalogTerm() {
         java.lang.Object ref = catalogTerm_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            catalogTerm_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          catalogTerm_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string catalog_term = 5;</code>
+       *
        * <pre>
        * The term used to designate catalogs
        * </pre>
-       *
-       * <code>optional string catalog_term = 5;</code>
        */
       public com.google.protobuf.ByteString
           getCatalogTermBytes() {
@@ -41124,11 +36801,11 @@
         }
       }
       /**
+       * <code>optional string catalog_term = 5;</code>
+       *
        * <pre>
        * The term used to designate catalogs
        * </pre>
-       *
-       * <code>optional string catalog_term = 5;</code>
        */
       public Builder setCatalogTerm(
           java.lang.String value) {
@@ -41141,11 +36818,11 @@
         return this;
       }
       /**
+       * <code>optional string catalog_term = 5;</code>
+       *
        * <pre>
        * The term used to designate catalogs
        * </pre>
-       *
-       * <code>optional string catalog_term = 5;</code>
        */
       public Builder clearCatalogTerm() {
         bitField0_ = (bitField0_ & ~0x00000010);
@@ -41154,11 +36831,11 @@
         return this;
       }
       /**
+       * <code>optional string catalog_term = 5;</code>
+       *
        * <pre>
        * The term used to designate catalogs
        * </pre>
-       *
-       * <code>optional string catalog_term = 5;</code>
        */
       public Builder setCatalogTermBytes(
           com.google.protobuf.ByteString value) {
@@ -41171,51 +36848,51 @@
         return this;
       }
 
-      private java.util.List<java.lang.Integer> collateSupport_ =
+      // repeated .exec.user.CollateSupport collate_support = 6;
+      private java.util.List<org.apache.drill.exec.proto.UserProtos.CollateSupport> collateSupport_ =
         java.util.Collections.emptyList();
       private void ensureCollateSupportIsMutable() {
         if (!((bitField0_ & 0x00000020) == 0x00000020)) {
-          collateSupport_ = new java.util.ArrayList<java.lang.Integer>(collateSupport_);
+          collateSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.CollateSupport>(collateSupport_);
           bitField0_ |= 0x00000020;
         }
       }
       /**
+       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+       *
        * <pre>
        * COLLATE support
        * </pre>
-       *
-       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserProtos.CollateSupport> getCollateSupportList() {
-        return new com.google.protobuf.Internal.ListAdapter<
-            java.lang.Integer, org.apache.drill.exec.proto.UserProtos.CollateSupport>(collateSupport_, collateSupport_converter_);
+        return java.util.Collections.unmodifiableList(collateSupport_);
       }
       /**
+       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+       *
        * <pre>
        * COLLATE support
        * </pre>
-       *
-       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
        */
       public int getCollateSupportCount() {
         return collateSupport_.size();
       }
       /**
+       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+       *
        * <pre>
        * COLLATE support
        * </pre>
-       *
-       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.CollateSupport getCollateSupport(int index) {
-        return collateSupport_converter_.convert(collateSupport_.get(index));
+        return collateSupport_.get(index);
       }
       /**
+       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+       *
        * <pre>
        * COLLATE support
        * </pre>
-       *
-       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
        */
       public Builder setCollateSupport(
           int index, org.apache.drill.exec.proto.UserProtos.CollateSupport value) {
@@ -41223,48 +36900,46 @@
           throw new NullPointerException();
         }
         ensureCollateSupportIsMutable();
-        collateSupport_.set(index, value.getNumber());
+        collateSupport_.set(index, value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+       *
        * <pre>
        * COLLATE support
        * </pre>
-       *
-       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
        */
       public Builder addCollateSupport(org.apache.drill.exec.proto.UserProtos.CollateSupport value) {
         if (value == null) {
           throw new NullPointerException();
         }
         ensureCollateSupportIsMutable();
-        collateSupport_.add(value.getNumber());
+        collateSupport_.add(value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+       *
        * <pre>
        * COLLATE support
        * </pre>
-       *
-       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
        */
       public Builder addAllCollateSupport(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.CollateSupport> values) {
         ensureCollateSupportIsMutable();
-        for (org.apache.drill.exec.proto.UserProtos.CollateSupport value : values) {
-          collateSupport_.add(value.getNumber());
-        }
+        super.addAll(values, collateSupport_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
+       *
        * <pre>
        * COLLATE support
        * </pre>
-       *
-       * <code>repeated .exec.user.CollateSupport collate_support = 6;</code>
        */
       public Builder clearCollateSupport() {
         collateSupport_ = java.util.Collections.emptyList();
@@ -41273,33 +36948,34 @@
         return this;
       }
 
+      // optional bool column_aliasing_supported = 7;
       private boolean columnAliasingSupported_ ;
       /**
+       * <code>optional bool column_aliasing_supported = 7;</code>
+       *
        * <pre>
        * True if column aliasing is supported
        * </pre>
-       *
-       * <code>optional bool column_aliasing_supported = 7;</code>
        */
       public boolean hasColumnAliasingSupported() {
         return ((bitField0_ & 0x00000040) == 0x00000040);
       }
       /**
+       * <code>optional bool column_aliasing_supported = 7;</code>
+       *
        * <pre>
        * True if column aliasing is supported
        * </pre>
-       *
-       * <code>optional bool column_aliasing_supported = 7;</code>
        */
       public boolean getColumnAliasingSupported() {
         return columnAliasingSupported_;
       }
       /**
+       * <code>optional bool column_aliasing_supported = 7;</code>
+       *
        * <pre>
        * True if column aliasing is supported
        * </pre>
-       *
-       * <code>optional bool column_aliasing_supported = 7;</code>
        */
       public Builder setColumnAliasingSupported(boolean value) {
         bitField0_ |= 0x00000040;
@@ -41308,11 +36984,11 @@
         return this;
       }
       /**
+       * <code>optional bool column_aliasing_supported = 7;</code>
+       *
        * <pre>
        * True if column aliasing is supported
        * </pre>
-       *
-       * <code>optional bool column_aliasing_supported = 7;</code>
        */
       public Builder clearColumnAliasingSupported() {
         bitField0_ = (bitField0_ & ~0x00000040);
@@ -41321,6 +36997,7 @@
         return this;
       }
 
+      // repeated .exec.user.ConvertSupport convert_support = 8;
       private java.util.List<org.apache.drill.exec.proto.UserProtos.ConvertSupport> convertSupport_ =
         java.util.Collections.emptyList();
       private void ensureConvertSupportIsMutable() {
@@ -41330,15 +37007,15 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.ConvertSupport, org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder, org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder> convertSupportBuilder_;
 
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserProtos.ConvertSupport> getConvertSupportList() {
         if (convertSupportBuilder_ == null) {
@@ -41348,11 +37025,11 @@
         }
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public int getConvertSupportCount() {
         if (convertSupportBuilder_ == null) {
@@ -41362,11 +37039,11 @@
         }
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.ConvertSupport getConvertSupport(int index) {
         if (convertSupportBuilder_ == null) {
@@ -41376,11 +37053,11 @@
         }
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public Builder setConvertSupport(
           int index, org.apache.drill.exec.proto.UserProtos.ConvertSupport value) {
@@ -41397,11 +37074,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public Builder setConvertSupport(
           int index, org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder builderForValue) {
@@ -41415,11 +37092,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public Builder addConvertSupport(org.apache.drill.exec.proto.UserProtos.ConvertSupport value) {
         if (convertSupportBuilder_ == null) {
@@ -41435,11 +37112,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public Builder addConvertSupport(
           int index, org.apache.drill.exec.proto.UserProtos.ConvertSupport value) {
@@ -41456,11 +37133,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public Builder addConvertSupport(
           org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder builderForValue) {
@@ -41474,11 +37151,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public Builder addConvertSupport(
           int index, org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder builderForValue) {
@@ -41492,18 +37169,17 @@
         return this;
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public Builder addAllConvertSupport(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.ConvertSupport> values) {
         if (convertSupportBuilder_ == null) {
           ensureConvertSupportIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, convertSupport_);
+          super.addAll(values, convertSupport_);
           onChanged();
         } else {
           convertSupportBuilder_.addAllMessages(values);
@@ -41511,11 +37187,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public Builder clearConvertSupport() {
         if (convertSupportBuilder_ == null) {
@@ -41528,11 +37204,11 @@
         return this;
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public Builder removeConvertSupport(int index) {
         if (convertSupportBuilder_ == null) {
@@ -41545,22 +37221,22 @@
         return this;
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder getConvertSupportBuilder(
           int index) {
         return getConvertSupportFieldBuilder().getBuilder(index);
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder getConvertSupportOrBuilder(
           int index) {
@@ -41570,11 +37246,11 @@
         }
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public java.util.List<? extends org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder> 
            getConvertSupportOrBuilderList() {
@@ -41585,22 +37261,22 @@
         }
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder addConvertSupportBuilder() {
         return getConvertSupportFieldBuilder().addBuilder(
             org.apache.drill.exec.proto.UserProtos.ConvertSupport.getDefaultInstance());
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder addConvertSupportBuilder(
           int index) {
@@ -41608,21 +37284,21 @@
             index, org.apache.drill.exec.proto.UserProtos.ConvertSupport.getDefaultInstance());
       }
       /**
+       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
+       *
        * <pre>
        * CONVERT support
        * </pre>
-       *
-       * <code>repeated .exec.user.ConvertSupport convert_support = 8;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder> 
            getConvertSupportBuilderList() {
         return getConvertSupportFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.ConvertSupport, org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder, org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder> 
           getConvertSupportFieldBuilder() {
         if (convertSupportBuilder_ == null) {
-          convertSupportBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          convertSupportBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.ConvertSupport, org.apache.drill.exec.proto.UserProtos.ConvertSupport.Builder, org.apache.drill.exec.proto.UserProtos.ConvertSupportOrBuilder>(
                   convertSupport_,
                   ((bitField0_ & 0x00000080) == 0x00000080),
@@ -41633,59 +37309,59 @@
         return convertSupportBuilder_;
       }
 
-      private int correlationNamesSupport_ = 1;
+      // optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;
+      private org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport correlationNamesSupport_ = org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.CN_NONE;
       /**
+       * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
+       *
        * <pre>
        * Correlation names support
        * </pre>
-       *
-       * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
        */
       public boolean hasCorrelationNamesSupport() {
         return ((bitField0_ & 0x00000100) == 0x00000100);
       }
       /**
+       * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
+       *
        * <pre>
        * Correlation names support
        * </pre>
-       *
-       * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport getCorrelationNamesSupport() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport result = org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.valueOf(correlationNamesSupport_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.CN_NONE : result;
+        return correlationNamesSupport_;
       }
       /**
+       * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
+       *
        * <pre>
        * Correlation names support
        * </pre>
-       *
-       * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
        */
       public Builder setCorrelationNamesSupport(org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport value) {
         if (value == null) {
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000100;
-        correlationNamesSupport_ = value.getNumber();
+        correlationNamesSupport_ = value;
         onChanged();
         return this;
       }
       /**
+       * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
+       *
        * <pre>
        * Correlation names support
        * </pre>
-       *
-       * <code>optional .exec.user.CorrelationNamesSupport correlation_names_support = 9;</code>
        */
       public Builder clearCorrelationNamesSupport() {
         bitField0_ = (bitField0_ & ~0x00000100);
-        correlationNamesSupport_ = 1;
+        correlationNamesSupport_ = org.apache.drill.exec.proto.UserProtos.CorrelationNamesSupport.CN_NONE;
         onChanged();
         return this;
       }
 
+      // repeated string date_time_functions = 10;
       private com.google.protobuf.LazyStringList dateTimeFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureDateTimeFunctionsIsMutable() {
         if (!((bitField0_ & 0x00000200) == 0x00000200)) {
@@ -41694,53 +37370,53 @@
          }
       }
       /**
+       * <code>repeated string date_time_functions = 10;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC Date Time scalar functions
        * </pre>
-       *
-       * <code>repeated string date_time_functions = 10;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getDateTimeFunctionsList() {
-        return dateTimeFunctions_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(dateTimeFunctions_);
       }
       /**
+       * <code>repeated string date_time_functions = 10;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC Date Time scalar functions
        * </pre>
-       *
-       * <code>repeated string date_time_functions = 10;</code>
        */
       public int getDateTimeFunctionsCount() {
         return dateTimeFunctions_.size();
       }
       /**
+       * <code>repeated string date_time_functions = 10;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC Date Time scalar functions
        * </pre>
-       *
-       * <code>repeated string date_time_functions = 10;</code>
        */
       public java.lang.String getDateTimeFunctions(int index) {
         return dateTimeFunctions_.get(index);
       }
       /**
+       * <code>repeated string date_time_functions = 10;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC Date Time scalar functions
        * </pre>
-       *
-       * <code>repeated string date_time_functions = 10;</code>
        */
       public com.google.protobuf.ByteString
           getDateTimeFunctionsBytes(int index) {
         return dateTimeFunctions_.getByteString(index);
       }
       /**
+       * <code>repeated string date_time_functions = 10;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC Date Time scalar functions
        * </pre>
-       *
-       * <code>repeated string date_time_functions = 10;</code>
        */
       public Builder setDateTimeFunctions(
           int index, java.lang.String value) {
@@ -41753,11 +37429,11 @@
         return this;
       }
       /**
+       * <code>repeated string date_time_functions = 10;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC Date Time scalar functions
        * </pre>
-       *
-       * <code>repeated string date_time_functions = 10;</code>
        */
       public Builder addDateTimeFunctions(
           java.lang.String value) {
@@ -41770,26 +37446,25 @@
         return this;
       }
       /**
+       * <code>repeated string date_time_functions = 10;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC Date Time scalar functions
        * </pre>
-       *
-       * <code>repeated string date_time_functions = 10;</code>
        */
       public Builder addAllDateTimeFunctions(
           java.lang.Iterable<java.lang.String> values) {
         ensureDateTimeFunctionsIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, dateTimeFunctions_);
+        super.addAll(values, dateTimeFunctions_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated string date_time_functions = 10;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC Date Time scalar functions
        * </pre>
-       *
-       * <code>repeated string date_time_functions = 10;</code>
        */
       public Builder clearDateTimeFunctions() {
         dateTimeFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
@@ -41798,11 +37473,11 @@
         return this;
       }
       /**
+       * <code>repeated string date_time_functions = 10;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC Date Time scalar functions
        * </pre>
-       *
-       * <code>repeated string date_time_functions = 10;</code>
        */
       public Builder addDateTimeFunctionsBytes(
           com.google.protobuf.ByteString value) {
@@ -41815,51 +37490,51 @@
         return this;
       }
 
-      private java.util.List<java.lang.Integer> dateTimeLiteralsSupport_ =
+      // repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;
+      private java.util.List<org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport> dateTimeLiteralsSupport_ =
         java.util.Collections.emptyList();
       private void ensureDateTimeLiteralsSupportIsMutable() {
         if (!((bitField0_ & 0x00000400) == 0x00000400)) {
-          dateTimeLiteralsSupport_ = new java.util.ArrayList<java.lang.Integer>(dateTimeLiteralsSupport_);
+          dateTimeLiteralsSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport>(dateTimeLiteralsSupport_);
           bitField0_ |= 0x00000400;
         }
       }
       /**
+       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+       *
        * <pre>
        * Supported Date Time literals
        * </pre>
-       *
-       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport> getDateTimeLiteralsSupportList() {
-        return new com.google.protobuf.Internal.ListAdapter<
-            java.lang.Integer, org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport>(dateTimeLiteralsSupport_, dateTimeLiteralsSupport_converter_);
+        return java.util.Collections.unmodifiableList(dateTimeLiteralsSupport_);
       }
       /**
+       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+       *
        * <pre>
        * Supported Date Time literals
        * </pre>
-       *
-       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
        */
       public int getDateTimeLiteralsSupportCount() {
         return dateTimeLiteralsSupport_.size();
       }
       /**
+       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+       *
        * <pre>
        * Supported Date Time literals
        * </pre>
-       *
-       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport getDateTimeLiteralsSupport(int index) {
-        return dateTimeLiteralsSupport_converter_.convert(dateTimeLiteralsSupport_.get(index));
+        return dateTimeLiteralsSupport_.get(index);
       }
       /**
+       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+       *
        * <pre>
        * Supported Date Time literals
        * </pre>
-       *
-       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
        */
       public Builder setDateTimeLiteralsSupport(
           int index, org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport value) {
@@ -41867,48 +37542,46 @@
           throw new NullPointerException();
         }
         ensureDateTimeLiteralsSupportIsMutable();
-        dateTimeLiteralsSupport_.set(index, value.getNumber());
+        dateTimeLiteralsSupport_.set(index, value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+       *
        * <pre>
        * Supported Date Time literals
        * </pre>
-       *
-       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
        */
       public Builder addDateTimeLiteralsSupport(org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport value) {
         if (value == null) {
           throw new NullPointerException();
         }
         ensureDateTimeLiteralsSupportIsMutable();
-        dateTimeLiteralsSupport_.add(value.getNumber());
+        dateTimeLiteralsSupport_.add(value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+       *
        * <pre>
        * Supported Date Time literals
        * </pre>
-       *
-       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
        */
       public Builder addAllDateTimeLiteralsSupport(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport> values) {
         ensureDateTimeLiteralsSupportIsMutable();
-        for (org.apache.drill.exec.proto.UserProtos.DateTimeLiteralsSupport value : values) {
-          dateTimeLiteralsSupport_.add(value.getNumber());
-        }
+        super.addAll(values, dateTimeLiteralsSupport_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
+       *
        * <pre>
        * Supported Date Time literals
        * </pre>
-       *
-       * <code>repeated .exec.user.DateTimeLiteralsSupport date_time_literals_support = 11;</code>
        */
       public Builder clearDateTimeLiteralsSupport() {
         dateTimeLiteralsSupport_ = java.util.Collections.emptyList();
@@ -41917,150 +37590,146 @@
         return this;
       }
 
-      private int groupBySupport_ = 1;
+      // optional .exec.user.GroupBySupport group_by_support = 12;
+      private org.apache.drill.exec.proto.UserProtos.GroupBySupport groupBySupport_ = org.apache.drill.exec.proto.UserProtos.GroupBySupport.GB_NONE;
       /**
+       * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
+       *
        * <pre>
        * Group By support
        * </pre>
-       *
-       * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
        */
       public boolean hasGroupBySupport() {
         return ((bitField0_ & 0x00000800) == 0x00000800);
       }
       /**
+       * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
+       *
        * <pre>
        * Group By support
        * </pre>
-       *
-       * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.GroupBySupport getGroupBySupport() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.GroupBySupport result = org.apache.drill.exec.proto.UserProtos.GroupBySupport.valueOf(groupBySupport_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.GroupBySupport.GB_NONE : result;
+        return groupBySupport_;
       }
       /**
+       * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
+       *
        * <pre>
        * Group By support
        * </pre>
-       *
-       * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
        */
       public Builder setGroupBySupport(org.apache.drill.exec.proto.UserProtos.GroupBySupport value) {
         if (value == null) {
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000800;
-        groupBySupport_ = value.getNumber();
+        groupBySupport_ = value;
         onChanged();
         return this;
       }
       /**
+       * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
+       *
        * <pre>
        * Group By support
        * </pre>
-       *
-       * <code>optional .exec.user.GroupBySupport group_by_support = 12;</code>
        */
       public Builder clearGroupBySupport() {
         bitField0_ = (bitField0_ & ~0x00000800);
-        groupBySupport_ = 1;
+        groupBySupport_ = org.apache.drill.exec.proto.UserProtos.GroupBySupport.GB_NONE;
         onChanged();
         return this;
       }
 
-      private int identifierCasing_ = 0;
+      // optional .exec.user.IdentifierCasing identifier_casing = 13;
+      private org.apache.drill.exec.proto.UserProtos.IdentifierCasing identifierCasing_ = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN;
       /**
+       * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
+       *
        * <pre>
        * Unquoted Identifier casing
        * </pre>
-       *
-       * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
        */
       public boolean hasIdentifierCasing() {
         return ((bitField0_ & 0x00001000) == 0x00001000);
       }
       /**
+       * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
+       *
        * <pre>
        * Unquoted Identifier casing
        * </pre>
-       *
-       * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.IdentifierCasing getIdentifierCasing() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.IdentifierCasing result = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.valueOf(identifierCasing_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN : result;
+        return identifierCasing_;
       }
       /**
+       * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
+       *
        * <pre>
        * Unquoted Identifier casing
        * </pre>
-       *
-       * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
        */
       public Builder setIdentifierCasing(org.apache.drill.exec.proto.UserProtos.IdentifierCasing value) {
         if (value == null) {
           throw new NullPointerException();
         }
         bitField0_ |= 0x00001000;
-        identifierCasing_ = value.getNumber();
+        identifierCasing_ = value;
         onChanged();
         return this;
       }
       /**
+       * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
+       *
        * <pre>
        * Unquoted Identifier casing
        * </pre>
-       *
-       * <code>optional .exec.user.IdentifierCasing identifier_casing = 13;</code>
        */
       public Builder clearIdentifierCasing() {
         bitField0_ = (bitField0_ & ~0x00001000);
-        identifierCasing_ = 0;
+        identifierCasing_ = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN;
         onChanged();
         return this;
       }
 
+      // optional string identifier_quote_string = 14;
       private java.lang.Object identifierQuoteString_ = "";
       /**
+       * <code>optional string identifier_quote_string = 14;</code>
+       *
        * <pre>
        * Quote string for identifiers
        * </pre>
-       *
-       * <code>optional string identifier_quote_string = 14;</code>
        */
       public boolean hasIdentifierQuoteString() {
         return ((bitField0_ & 0x00002000) == 0x00002000);
       }
       /**
+       * <code>optional string identifier_quote_string = 14;</code>
+       *
        * <pre>
        * Quote string for identifiers
        * </pre>
-       *
-       * <code>optional string identifier_quote_string = 14;</code>
        */
       public java.lang.String getIdentifierQuoteString() {
         java.lang.Object ref = identifierQuoteString_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            identifierQuoteString_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          identifierQuoteString_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string identifier_quote_string = 14;</code>
+       *
        * <pre>
        * Quote string for identifiers
        * </pre>
-       *
-       * <code>optional string identifier_quote_string = 14;</code>
        */
       public com.google.protobuf.ByteString
           getIdentifierQuoteStringBytes() {
@@ -42076,11 +37745,11 @@
         }
       }
       /**
+       * <code>optional string identifier_quote_string = 14;</code>
+       *
        * <pre>
        * Quote string for identifiers
        * </pre>
-       *
-       * <code>optional string identifier_quote_string = 14;</code>
        */
       public Builder setIdentifierQuoteString(
           java.lang.String value) {
@@ -42093,11 +37762,11 @@
         return this;
       }
       /**
+       * <code>optional string identifier_quote_string = 14;</code>
+       *
        * <pre>
        * Quote string for identifiers
        * </pre>
-       *
-       * <code>optional string identifier_quote_string = 14;</code>
        */
       public Builder clearIdentifierQuoteString() {
         bitField0_ = (bitField0_ & ~0x00002000);
@@ -42106,11 +37775,11 @@
         return this;
       }
       /**
+       * <code>optional string identifier_quote_string = 14;</code>
+       *
        * <pre>
        * Quote string for identifiers
        * </pre>
-       *
-       * <code>optional string identifier_quote_string = 14;</code>
        */
       public Builder setIdentifierQuoteStringBytes(
           com.google.protobuf.ByteString value) {
@@ -42123,33 +37792,34 @@
         return this;
       }
 
+      // optional bool like_escape_clause_supported = 15;
       private boolean likeEscapeClauseSupported_ ;
       /**
+       * <code>optional bool like_escape_clause_supported = 15;</code>
+       *
        * <pre>
        * True if LIKE supports an ESCAPE clause
        * </pre>
-       *
-       * <code>optional bool like_escape_clause_supported = 15;</code>
        */
       public boolean hasLikeEscapeClauseSupported() {
         return ((bitField0_ & 0x00004000) == 0x00004000);
       }
       /**
+       * <code>optional bool like_escape_clause_supported = 15;</code>
+       *
        * <pre>
        * True if LIKE supports an ESCAPE clause
        * </pre>
-       *
-       * <code>optional bool like_escape_clause_supported = 15;</code>
        */
       public boolean getLikeEscapeClauseSupported() {
         return likeEscapeClauseSupported_;
       }
       /**
+       * <code>optional bool like_escape_clause_supported = 15;</code>
+       *
        * <pre>
        * True if LIKE supports an ESCAPE clause
        * </pre>
-       *
-       * <code>optional bool like_escape_clause_supported = 15;</code>
        */
       public Builder setLikeEscapeClauseSupported(boolean value) {
         bitField0_ |= 0x00004000;
@@ -42158,11 +37828,11 @@
         return this;
       }
       /**
+       * <code>optional bool like_escape_clause_supported = 15;</code>
+       *
        * <pre>
        * True if LIKE supports an ESCAPE clause
        * </pre>
-       *
-       * <code>optional bool like_escape_clause_supported = 15;</code>
        */
       public Builder clearLikeEscapeClauseSupported() {
         bitField0_ = (bitField0_ & ~0x00004000);
@@ -42171,33 +37841,34 @@
         return this;
       }
 
+      // optional uint32 max_binary_literal_length = 16;
       private int maxBinaryLiteralLength_ ;
       /**
+       * <code>optional uint32 max_binary_literal_length = 16;</code>
+       *
        * <pre>
        * Maximum number of hexa characters for binary literals (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_binary_literal_length = 16;</code>
        */
       public boolean hasMaxBinaryLiteralLength() {
         return ((bitField0_ & 0x00008000) == 0x00008000);
       }
       /**
+       * <code>optional uint32 max_binary_literal_length = 16;</code>
+       *
        * <pre>
        * Maximum number of hexa characters for binary literals (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_binary_literal_length = 16;</code>
        */
       public int getMaxBinaryLiteralLength() {
         return maxBinaryLiteralLength_;
       }
       /**
+       * <code>optional uint32 max_binary_literal_length = 16;</code>
+       *
        * <pre>
        * Maximum number of hexa characters for binary literals (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_binary_literal_length = 16;</code>
        */
       public Builder setMaxBinaryLiteralLength(int value) {
         bitField0_ |= 0x00008000;
@@ -42206,11 +37877,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_binary_literal_length = 16;</code>
+       *
        * <pre>
        * Maximum number of hexa characters for binary literals (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_binary_literal_length = 16;</code>
        */
       public Builder clearMaxBinaryLiteralLength() {
         bitField0_ = (bitField0_ & ~0x00008000);
@@ -42219,33 +37890,34 @@
         return this;
       }
 
+      // optional uint32 max_catalog_name_length = 17;
       private int maxCatalogNameLength_ ;
       /**
+       * <code>optional uint32 max_catalog_name_length = 17;</code>
+       *
        * <pre>
        * Maximum length of catalog names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_catalog_name_length = 17;</code>
        */
       public boolean hasMaxCatalogNameLength() {
         return ((bitField0_ & 0x00010000) == 0x00010000);
       }
       /**
+       * <code>optional uint32 max_catalog_name_length = 17;</code>
+       *
        * <pre>
        * Maximum length of catalog names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_catalog_name_length = 17;</code>
        */
       public int getMaxCatalogNameLength() {
         return maxCatalogNameLength_;
       }
       /**
+       * <code>optional uint32 max_catalog_name_length = 17;</code>
+       *
        * <pre>
        * Maximum length of catalog names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_catalog_name_length = 17;</code>
        */
       public Builder setMaxCatalogNameLength(int value) {
         bitField0_ |= 0x00010000;
@@ -42254,11 +37926,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_catalog_name_length = 17;</code>
+       *
        * <pre>
        * Maximum length of catalog names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_catalog_name_length = 17;</code>
        */
       public Builder clearMaxCatalogNameLength() {
         bitField0_ = (bitField0_ & ~0x00010000);
@@ -42267,33 +37939,34 @@
         return this;
       }
 
+      // optional uint32 max_char_literal_length = 18;
       private int maxCharLiteralLength_ ;
       /**
+       * <code>optional uint32 max_char_literal_length = 18;</code>
+       *
        * <pre>
        * Maximum number of characters for string literals (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_char_literal_length = 18;</code>
        */
       public boolean hasMaxCharLiteralLength() {
         return ((bitField0_ & 0x00020000) == 0x00020000);
       }
       /**
+       * <code>optional uint32 max_char_literal_length = 18;</code>
+       *
        * <pre>
        * Maximum number of characters for string literals (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_char_literal_length = 18;</code>
        */
       public int getMaxCharLiteralLength() {
         return maxCharLiteralLength_;
       }
       /**
+       * <code>optional uint32 max_char_literal_length = 18;</code>
+       *
        * <pre>
        * Maximum number of characters for string literals (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_char_literal_length = 18;</code>
        */
       public Builder setMaxCharLiteralLength(int value) {
         bitField0_ |= 0x00020000;
@@ -42302,11 +37975,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_char_literal_length = 18;</code>
+       *
        * <pre>
        * Maximum number of characters for string literals (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_char_literal_length = 18;</code>
        */
       public Builder clearMaxCharLiteralLength() {
         bitField0_ = (bitField0_ & ~0x00020000);
@@ -42315,33 +37988,34 @@
         return this;
       }
 
+      // optional uint32 max_column_name_length = 19;
       private int maxColumnNameLength_ ;
       /**
+       * <code>optional uint32 max_column_name_length = 19;</code>
+       *
        * <pre>
        * Maximum length of column names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_column_name_length = 19;</code>
        */
       public boolean hasMaxColumnNameLength() {
         return ((bitField0_ & 0x00040000) == 0x00040000);
       }
       /**
+       * <code>optional uint32 max_column_name_length = 19;</code>
+       *
        * <pre>
        * Maximum length of column names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_column_name_length = 19;</code>
        */
       public int getMaxColumnNameLength() {
         return maxColumnNameLength_;
       }
       /**
+       * <code>optional uint32 max_column_name_length = 19;</code>
+       *
        * <pre>
        * Maximum length of column names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_column_name_length = 19;</code>
        */
       public Builder setMaxColumnNameLength(int value) {
         bitField0_ |= 0x00040000;
@@ -42350,11 +38024,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_column_name_length = 19;</code>
+       *
        * <pre>
        * Maximum length of column names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_column_name_length = 19;</code>
        */
       public Builder clearMaxColumnNameLength() {
         bitField0_ = (bitField0_ & ~0x00040000);
@@ -42363,33 +38037,34 @@
         return this;
       }
 
+      // optional uint32 max_columns_in_group_by = 20;
       private int maxColumnsInGroupBy_ ;
       /**
+       * <code>optional uint32 max_columns_in_group_by = 20;</code>
+       *
        * <pre>
        * Maximum number of columns in GROUP BY expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_group_by = 20;</code>
        */
       public boolean hasMaxColumnsInGroupBy() {
         return ((bitField0_ & 0x00080000) == 0x00080000);
       }
       /**
+       * <code>optional uint32 max_columns_in_group_by = 20;</code>
+       *
        * <pre>
        * Maximum number of columns in GROUP BY expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_group_by = 20;</code>
        */
       public int getMaxColumnsInGroupBy() {
         return maxColumnsInGroupBy_;
       }
       /**
+       * <code>optional uint32 max_columns_in_group_by = 20;</code>
+       *
        * <pre>
        * Maximum number of columns in GROUP BY expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_group_by = 20;</code>
        */
       public Builder setMaxColumnsInGroupBy(int value) {
         bitField0_ |= 0x00080000;
@@ -42398,11 +38073,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_columns_in_group_by = 20;</code>
+       *
        * <pre>
        * Maximum number of columns in GROUP BY expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_group_by = 20;</code>
        */
       public Builder clearMaxColumnsInGroupBy() {
         bitField0_ = (bitField0_ & ~0x00080000);
@@ -42411,33 +38086,34 @@
         return this;
       }
 
+      // optional uint32 max_columns_in_order_by = 21;
       private int maxColumnsInOrderBy_ ;
       /**
+       * <code>optional uint32 max_columns_in_order_by = 21;</code>
+       *
        * <pre>
        * Maximum number of columns in ORDER BY expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_order_by = 21;</code>
        */
       public boolean hasMaxColumnsInOrderBy() {
         return ((bitField0_ & 0x00100000) == 0x00100000);
       }
       /**
+       * <code>optional uint32 max_columns_in_order_by = 21;</code>
+       *
        * <pre>
        * Maximum number of columns in ORDER BY expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_order_by = 21;</code>
        */
       public int getMaxColumnsInOrderBy() {
         return maxColumnsInOrderBy_;
       }
       /**
+       * <code>optional uint32 max_columns_in_order_by = 21;</code>
+       *
        * <pre>
        * Maximum number of columns in ORDER BY expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_order_by = 21;</code>
        */
       public Builder setMaxColumnsInOrderBy(int value) {
         bitField0_ |= 0x00100000;
@@ -42446,11 +38122,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_columns_in_order_by = 21;</code>
+       *
        * <pre>
        * Maximum number of columns in ORDER BY expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_order_by = 21;</code>
        */
       public Builder clearMaxColumnsInOrderBy() {
         bitField0_ = (bitField0_ & ~0x00100000);
@@ -42459,33 +38135,34 @@
         return this;
       }
 
+      // optional uint32 max_columns_in_select = 22;
       private int maxColumnsInSelect_ ;
       /**
+       * <code>optional uint32 max_columns_in_select = 22;</code>
+       *
        * <pre>
        * Maximum number of columns in SELECT expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_select = 22;</code>
        */
       public boolean hasMaxColumnsInSelect() {
         return ((bitField0_ & 0x00200000) == 0x00200000);
       }
       /**
+       * <code>optional uint32 max_columns_in_select = 22;</code>
+       *
        * <pre>
        * Maximum number of columns in SELECT expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_select = 22;</code>
        */
       public int getMaxColumnsInSelect() {
         return maxColumnsInSelect_;
       }
       /**
+       * <code>optional uint32 max_columns_in_select = 22;</code>
+       *
        * <pre>
        * Maximum number of columns in SELECT expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_select = 22;</code>
        */
       public Builder setMaxColumnsInSelect(int value) {
         bitField0_ |= 0x00200000;
@@ -42494,11 +38171,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_columns_in_select = 22;</code>
+       *
        * <pre>
        * Maximum number of columns in SELECT expressions (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_columns_in_select = 22;</code>
        */
       public Builder clearMaxColumnsInSelect() {
         bitField0_ = (bitField0_ & ~0x00200000);
@@ -42507,33 +38184,34 @@
         return this;
       }
 
+      // optional uint32 max_cursor_name_length = 23;
       private int maxCursorNameLength_ ;
       /**
+       * <code>optional uint32 max_cursor_name_length = 23;</code>
+       *
        * <pre>
        * Maximum length of cursor names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_cursor_name_length = 23;</code>
        */
       public boolean hasMaxCursorNameLength() {
         return ((bitField0_ & 0x00400000) == 0x00400000);
       }
       /**
+       * <code>optional uint32 max_cursor_name_length = 23;</code>
+       *
        * <pre>
        * Maximum length of cursor names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_cursor_name_length = 23;</code>
        */
       public int getMaxCursorNameLength() {
         return maxCursorNameLength_;
       }
       /**
+       * <code>optional uint32 max_cursor_name_length = 23;</code>
+       *
        * <pre>
        * Maximum length of cursor names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_cursor_name_length = 23;</code>
        */
       public Builder setMaxCursorNameLength(int value) {
         bitField0_ |= 0x00400000;
@@ -42542,11 +38220,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_cursor_name_length = 23;</code>
+       *
        * <pre>
        * Maximum length of cursor names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_cursor_name_length = 23;</code>
        */
       public Builder clearMaxCursorNameLength() {
         bitField0_ = (bitField0_ & ~0x00400000);
@@ -42555,33 +38233,34 @@
         return this;
       }
 
+      // optional uint32 max_logical_lob_size = 24;
       private int maxLogicalLobSize_ ;
       /**
+       * <code>optional uint32 max_logical_lob_size = 24;</code>
+       *
        * <pre>
        * Maximum logical size for LOB types (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_logical_lob_size = 24;</code>
        */
       public boolean hasMaxLogicalLobSize() {
         return ((bitField0_ & 0x00800000) == 0x00800000);
       }
       /**
+       * <code>optional uint32 max_logical_lob_size = 24;</code>
+       *
        * <pre>
        * Maximum logical size for LOB types (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_logical_lob_size = 24;</code>
        */
       public int getMaxLogicalLobSize() {
         return maxLogicalLobSize_;
       }
       /**
+       * <code>optional uint32 max_logical_lob_size = 24;</code>
+       *
        * <pre>
        * Maximum logical size for LOB types (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_logical_lob_size = 24;</code>
        */
       public Builder setMaxLogicalLobSize(int value) {
         bitField0_ |= 0x00800000;
@@ -42590,11 +38269,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_logical_lob_size = 24;</code>
+       *
        * <pre>
        * Maximum logical size for LOB types (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_logical_lob_size = 24;</code>
        */
       public Builder clearMaxLogicalLobSize() {
         bitField0_ = (bitField0_ & ~0x00800000);
@@ -42603,33 +38282,34 @@
         return this;
       }
 
+      // optional uint32 max_row_size = 25;
       private int maxRowSize_ ;
       /**
+       * <code>optional uint32 max_row_size = 25;</code>
+       *
        * <pre>
        * Maximum number of bytes for a single row (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_row_size = 25;</code>
        */
       public boolean hasMaxRowSize() {
         return ((bitField0_ & 0x01000000) == 0x01000000);
       }
       /**
+       * <code>optional uint32 max_row_size = 25;</code>
+       *
        * <pre>
        * Maximum number of bytes for a single row (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_row_size = 25;</code>
        */
       public int getMaxRowSize() {
         return maxRowSize_;
       }
       /**
+       * <code>optional uint32 max_row_size = 25;</code>
+       *
        * <pre>
        * Maximum number of bytes for a single row (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_row_size = 25;</code>
        */
       public Builder setMaxRowSize(int value) {
         bitField0_ |= 0x01000000;
@@ -42638,11 +38318,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_row_size = 25;</code>
+       *
        * <pre>
        * Maximum number of bytes for a single row (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_row_size = 25;</code>
        */
       public Builder clearMaxRowSize() {
         bitField0_ = (bitField0_ & ~0x01000000);
@@ -42651,33 +38331,34 @@
         return this;
       }
 
+      // optional uint32 max_schema_name_length = 26;
       private int maxSchemaNameLength_ ;
       /**
+       * <code>optional uint32 max_schema_name_length = 26;</code>
+       *
        * <pre>
        * Maximum length of schema names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_schema_name_length = 26;</code>
        */
       public boolean hasMaxSchemaNameLength() {
         return ((bitField0_ & 0x02000000) == 0x02000000);
       }
       /**
+       * <code>optional uint32 max_schema_name_length = 26;</code>
+       *
        * <pre>
        * Maximum length of schema names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_schema_name_length = 26;</code>
        */
       public int getMaxSchemaNameLength() {
         return maxSchemaNameLength_;
       }
       /**
+       * <code>optional uint32 max_schema_name_length = 26;</code>
+       *
        * <pre>
        * Maximum length of schema names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_schema_name_length = 26;</code>
        */
       public Builder setMaxSchemaNameLength(int value) {
         bitField0_ |= 0x02000000;
@@ -42686,11 +38367,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_schema_name_length = 26;</code>
+       *
        * <pre>
        * Maximum length of schema names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_schema_name_length = 26;</code>
        */
       public Builder clearMaxSchemaNameLength() {
         bitField0_ = (bitField0_ & ~0x02000000);
@@ -42699,33 +38380,34 @@
         return this;
       }
 
+      // optional uint32 max_statement_length = 27;
       private int maxStatementLength_ ;
       /**
+       * <code>optional uint32 max_statement_length = 27;</code>
+       *
        * <pre>
        * Maximum length for statements (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_statement_length = 27;</code>
        */
       public boolean hasMaxStatementLength() {
         return ((bitField0_ & 0x04000000) == 0x04000000);
       }
       /**
+       * <code>optional uint32 max_statement_length = 27;</code>
+       *
        * <pre>
        * Maximum length for statements (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_statement_length = 27;</code>
        */
       public int getMaxStatementLength() {
         return maxStatementLength_;
       }
       /**
+       * <code>optional uint32 max_statement_length = 27;</code>
+       *
        * <pre>
        * Maximum length for statements (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_statement_length = 27;</code>
        */
       public Builder setMaxStatementLength(int value) {
         bitField0_ |= 0x04000000;
@@ -42734,11 +38416,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_statement_length = 27;</code>
+       *
        * <pre>
        * Maximum length for statements (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_statement_length = 27;</code>
        */
       public Builder clearMaxStatementLength() {
         bitField0_ = (bitField0_ & ~0x04000000);
@@ -42747,33 +38429,34 @@
         return this;
       }
 
+      // optional uint32 max_statements = 28;
       private int maxStatements_ ;
       /**
+       * <code>optional uint32 max_statements = 28;</code>
+       *
        * <pre>
        * Maximum number of statements (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_statements = 28;</code>
        */
       public boolean hasMaxStatements() {
         return ((bitField0_ & 0x08000000) == 0x08000000);
       }
       /**
+       * <code>optional uint32 max_statements = 28;</code>
+       *
        * <pre>
        * Maximum number of statements (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_statements = 28;</code>
        */
       public int getMaxStatements() {
         return maxStatements_;
       }
       /**
+       * <code>optional uint32 max_statements = 28;</code>
+       *
        * <pre>
        * Maximum number of statements (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_statements = 28;</code>
        */
       public Builder setMaxStatements(int value) {
         bitField0_ |= 0x08000000;
@@ -42782,11 +38465,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_statements = 28;</code>
+       *
        * <pre>
        * Maximum number of statements (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_statements = 28;</code>
        */
       public Builder clearMaxStatements() {
         bitField0_ = (bitField0_ & ~0x08000000);
@@ -42795,33 +38478,34 @@
         return this;
       }
 
+      // optional uint32 max_table_name_length = 29;
       private int maxTableNameLength_ ;
       /**
+       * <code>optional uint32 max_table_name_length = 29;</code>
+       *
        * <pre>
        * Maximum length of table names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_table_name_length = 29;</code>
        */
       public boolean hasMaxTableNameLength() {
         return ((bitField0_ & 0x10000000) == 0x10000000);
       }
       /**
+       * <code>optional uint32 max_table_name_length = 29;</code>
+       *
        * <pre>
        * Maximum length of table names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_table_name_length = 29;</code>
        */
       public int getMaxTableNameLength() {
         return maxTableNameLength_;
       }
       /**
+       * <code>optional uint32 max_table_name_length = 29;</code>
+       *
        * <pre>
        * Maximum length of table names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_table_name_length = 29;</code>
        */
       public Builder setMaxTableNameLength(int value) {
         bitField0_ |= 0x10000000;
@@ -42830,11 +38514,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_table_name_length = 29;</code>
+       *
        * <pre>
        * Maximum length of table names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_table_name_length = 29;</code>
        */
       public Builder clearMaxTableNameLength() {
         bitField0_ = (bitField0_ & ~0x10000000);
@@ -42843,33 +38527,34 @@
         return this;
       }
 
+      // optional uint32 max_tables_in_select = 30;
       private int maxTablesInSelect_ ;
       /**
+       * <code>optional uint32 max_tables_in_select = 30;</code>
+       *
        * <pre>
        * Maximum number of tables in a SELECT expression (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_tables_in_select = 30;</code>
        */
       public boolean hasMaxTablesInSelect() {
         return ((bitField0_ & 0x20000000) == 0x20000000);
       }
       /**
+       * <code>optional uint32 max_tables_in_select = 30;</code>
+       *
        * <pre>
        * Maximum number of tables in a SELECT expression (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_tables_in_select = 30;</code>
        */
       public int getMaxTablesInSelect() {
         return maxTablesInSelect_;
       }
       /**
+       * <code>optional uint32 max_tables_in_select = 30;</code>
+       *
        * <pre>
        * Maximum number of tables in a SELECT expression (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_tables_in_select = 30;</code>
        */
       public Builder setMaxTablesInSelect(int value) {
         bitField0_ |= 0x20000000;
@@ -42878,11 +38563,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_tables_in_select = 30;</code>
+       *
        * <pre>
        * Maximum number of tables in a SELECT expression (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_tables_in_select = 30;</code>
        */
       public Builder clearMaxTablesInSelect() {
         bitField0_ = (bitField0_ & ~0x20000000);
@@ -42891,33 +38576,34 @@
         return this;
       }
 
+      // optional uint32 max_user_name_length = 31;
       private int maxUserNameLength_ ;
       /**
+       * <code>optional uint32 max_user_name_length = 31;</code>
+       *
        * <pre>
        * Maximum length of user names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_user_name_length = 31;</code>
        */
       public boolean hasMaxUserNameLength() {
         return ((bitField0_ & 0x40000000) == 0x40000000);
       }
       /**
+       * <code>optional uint32 max_user_name_length = 31;</code>
+       *
        * <pre>
        * Maximum length of user names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_user_name_length = 31;</code>
        */
       public int getMaxUserNameLength() {
         return maxUserNameLength_;
       }
       /**
+       * <code>optional uint32 max_user_name_length = 31;</code>
+       *
        * <pre>
        * Maximum length of user names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_user_name_length = 31;</code>
        */
       public Builder setMaxUserNameLength(int value) {
         bitField0_ |= 0x40000000;
@@ -42926,11 +38612,11 @@
         return this;
       }
       /**
+       * <code>optional uint32 max_user_name_length = 31;</code>
+       *
        * <pre>
        * Maximum length of user names (0 if unlimited or unknown)
        * </pre>
-       *
-       * <code>optional uint32 max_user_name_length = 31;</code>
        */
       public Builder clearMaxUserNameLength() {
         bitField0_ = (bitField0_ & ~0x40000000);
@@ -42939,86 +38625,86 @@
         return this;
       }
 
-      private int nullCollation_ = 0;
+      // optional .exec.user.NullCollation null_collation = 32;
+      private org.apache.drill.exec.proto.UserProtos.NullCollation nullCollation_ = org.apache.drill.exec.proto.UserProtos.NullCollation.NC_UNKNOWN;
       /**
+       * <code>optional .exec.user.NullCollation null_collation = 32;</code>
+       *
        * <pre>
        * How NULL are sorted
        * </pre>
-       *
-       * <code>optional .exec.user.NullCollation null_collation = 32;</code>
        */
       public boolean hasNullCollation() {
         return ((bitField0_ & 0x80000000) == 0x80000000);
       }
       /**
+       * <code>optional .exec.user.NullCollation null_collation = 32;</code>
+       *
        * <pre>
        * How NULL are sorted
        * </pre>
-       *
-       * <code>optional .exec.user.NullCollation null_collation = 32;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.NullCollation getNullCollation() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.NullCollation result = org.apache.drill.exec.proto.UserProtos.NullCollation.valueOf(nullCollation_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.NullCollation.NC_UNKNOWN : result;
+        return nullCollation_;
       }
       /**
+       * <code>optional .exec.user.NullCollation null_collation = 32;</code>
+       *
        * <pre>
        * How NULL are sorted
        * </pre>
-       *
-       * <code>optional .exec.user.NullCollation null_collation = 32;</code>
        */
       public Builder setNullCollation(org.apache.drill.exec.proto.UserProtos.NullCollation value) {
         if (value == null) {
           throw new NullPointerException();
         }
         bitField0_ |= 0x80000000;
-        nullCollation_ = value.getNumber();
+        nullCollation_ = value;
         onChanged();
         return this;
       }
       /**
+       * <code>optional .exec.user.NullCollation null_collation = 32;</code>
+       *
        * <pre>
        * How NULL are sorted
        * </pre>
-       *
-       * <code>optional .exec.user.NullCollation null_collation = 32;</code>
        */
       public Builder clearNullCollation() {
         bitField0_ = (bitField0_ & ~0x80000000);
-        nullCollation_ = 0;
+        nullCollation_ = org.apache.drill.exec.proto.UserProtos.NullCollation.NC_UNKNOWN;
         onChanged();
         return this;
       }
 
+      // optional bool null_plus_non_null_equals_null = 33;
       private boolean nullPlusNonNullEqualsNull_ ;
       /**
+       * <code>optional bool null_plus_non_null_equals_null = 33;</code>
+       *
        * <pre>
        * True if NULL + non NULL is NULL
        * </pre>
-       *
-       * <code>optional bool null_plus_non_null_equals_null = 33;</code>
        */
       public boolean hasNullPlusNonNullEqualsNull() {
         return ((bitField1_ & 0x00000001) == 0x00000001);
       }
       /**
+       * <code>optional bool null_plus_non_null_equals_null = 33;</code>
+       *
        * <pre>
        * True if NULL + non NULL is NULL
        * </pre>
-       *
-       * <code>optional bool null_plus_non_null_equals_null = 33;</code>
        */
       public boolean getNullPlusNonNullEqualsNull() {
         return nullPlusNonNullEqualsNull_;
       }
       /**
+       * <code>optional bool null_plus_non_null_equals_null = 33;</code>
+       *
        * <pre>
        * True if NULL + non NULL is NULL
        * </pre>
-       *
-       * <code>optional bool null_plus_non_null_equals_null = 33;</code>
        */
       public Builder setNullPlusNonNullEqualsNull(boolean value) {
         bitField1_ |= 0x00000001;
@@ -43027,11 +38713,11 @@
         return this;
       }
       /**
+       * <code>optional bool null_plus_non_null_equals_null = 33;</code>
+       *
        * <pre>
        * True if NULL + non NULL is NULL
        * </pre>
-       *
-       * <code>optional bool null_plus_non_null_equals_null = 33;</code>
        */
       public Builder clearNullPlusNonNullEqualsNull() {
         bitField1_ = (bitField1_ & ~0x00000001);
@@ -43040,6 +38726,7 @@
         return this;
       }
 
+      // repeated string numeric_functions = 34;
       private com.google.protobuf.LazyStringList numericFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureNumericFunctionsIsMutable() {
         if (!((bitField1_ & 0x00000002) == 0x00000002)) {
@@ -43048,53 +38735,53 @@
          }
       }
       /**
+       * <code>repeated string numeric_functions = 34;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC numeric scalar functions
        * </pre>
-       *
-       * <code>repeated string numeric_functions = 34;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getNumericFunctionsList() {
-        return numericFunctions_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(numericFunctions_);
       }
       /**
+       * <code>repeated string numeric_functions = 34;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC numeric scalar functions
        * </pre>
-       *
-       * <code>repeated string numeric_functions = 34;</code>
        */
       public int getNumericFunctionsCount() {
         return numericFunctions_.size();
       }
       /**
+       * <code>repeated string numeric_functions = 34;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC numeric scalar functions
        * </pre>
-       *
-       * <code>repeated string numeric_functions = 34;</code>
        */
       public java.lang.String getNumericFunctions(int index) {
         return numericFunctions_.get(index);
       }
       /**
+       * <code>repeated string numeric_functions = 34;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC numeric scalar functions
        * </pre>
-       *
-       * <code>repeated string numeric_functions = 34;</code>
        */
       public com.google.protobuf.ByteString
           getNumericFunctionsBytes(int index) {
         return numericFunctions_.getByteString(index);
       }
       /**
+       * <code>repeated string numeric_functions = 34;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC numeric scalar functions
        * </pre>
-       *
-       * <code>repeated string numeric_functions = 34;</code>
        */
       public Builder setNumericFunctions(
           int index, java.lang.String value) {
@@ -43107,11 +38794,11 @@
         return this;
       }
       /**
+       * <code>repeated string numeric_functions = 34;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC numeric scalar functions
        * </pre>
-       *
-       * <code>repeated string numeric_functions = 34;</code>
        */
       public Builder addNumericFunctions(
           java.lang.String value) {
@@ -43124,26 +38811,25 @@
         return this;
       }
       /**
+       * <code>repeated string numeric_functions = 34;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC numeric scalar functions
        * </pre>
-       *
-       * <code>repeated string numeric_functions = 34;</code>
        */
       public Builder addAllNumericFunctions(
           java.lang.Iterable<java.lang.String> values) {
         ensureNumericFunctionsIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, numericFunctions_);
+        super.addAll(values, numericFunctions_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated string numeric_functions = 34;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC numeric scalar functions
        * </pre>
-       *
-       * <code>repeated string numeric_functions = 34;</code>
        */
       public Builder clearNumericFunctions() {
         numericFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
@@ -43152,11 +38838,11 @@
         return this;
       }
       /**
+       * <code>repeated string numeric_functions = 34;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC numeric scalar functions
        * </pre>
-       *
-       * <code>repeated string numeric_functions = 34;</code>
        */
       public Builder addNumericFunctionsBytes(
           com.google.protobuf.ByteString value) {
@@ -43169,51 +38855,51 @@
         return this;
       }
 
-      private java.util.List<java.lang.Integer> orderBySupport_ =
+      // repeated .exec.user.OrderBySupport order_by_support = 35;
+      private java.util.List<org.apache.drill.exec.proto.UserProtos.OrderBySupport> orderBySupport_ =
         java.util.Collections.emptyList();
       private void ensureOrderBySupportIsMutable() {
         if (!((bitField1_ & 0x00000004) == 0x00000004)) {
-          orderBySupport_ = new java.util.ArrayList<java.lang.Integer>(orderBySupport_);
+          orderBySupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.OrderBySupport>(orderBySupport_);
           bitField1_ |= 0x00000004;
         }
       }
       /**
+       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserProtos.OrderBySupport> getOrderBySupportList() {
-        return new com.google.protobuf.Internal.ListAdapter<
-            java.lang.Integer, org.apache.drill.exec.proto.UserProtos.OrderBySupport>(orderBySupport_, orderBySupport_converter_);
+        return java.util.Collections.unmodifiableList(orderBySupport_);
       }
       /**
+       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
        */
       public int getOrderBySupportCount() {
         return orderBySupport_.size();
       }
       /**
+       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.OrderBySupport getOrderBySupport(int index) {
-        return orderBySupport_converter_.convert(orderBySupport_.get(index));
+        return orderBySupport_.get(index);
       }
       /**
+       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
        */
       public Builder setOrderBySupport(
           int index, org.apache.drill.exec.proto.UserProtos.OrderBySupport value) {
@@ -43221,48 +38907,46 @@
           throw new NullPointerException();
         }
         ensureOrderBySupportIsMutable();
-        orderBySupport_.set(index, value.getNumber());
+        orderBySupport_.set(index, value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
        */
       public Builder addOrderBySupport(org.apache.drill.exec.proto.UserProtos.OrderBySupport value) {
         if (value == null) {
           throw new NullPointerException();
         }
         ensureOrderBySupportIsMutable();
-        orderBySupport_.add(value.getNumber());
+        orderBySupport_.add(value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
        */
       public Builder addAllOrderBySupport(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.OrderBySupport> values) {
         ensureOrderBySupportIsMutable();
-        for (org.apache.drill.exec.proto.UserProtos.OrderBySupport value : values) {
-          orderBySupport_.add(value.getNumber());
-        }
+        super.addAll(values, orderBySupport_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OrderBySupport order_by_support = 35;</code>
        */
       public Builder clearOrderBySupport() {
         orderBySupport_ = java.util.Collections.emptyList();
@@ -43271,51 +38955,51 @@
         return this;
       }
 
-      private java.util.List<java.lang.Integer> outerJoinSupport_ =
+      // repeated .exec.user.OuterJoinSupport outer_join_support = 36;
+      private java.util.List<org.apache.drill.exec.proto.UserProtos.OuterJoinSupport> outerJoinSupport_ =
         java.util.Collections.emptyList();
       private void ensureOuterJoinSupportIsMutable() {
         if (!((bitField1_ & 0x00000008) == 0x00000008)) {
-          outerJoinSupport_ = new java.util.ArrayList<java.lang.Integer>(outerJoinSupport_);
+          outerJoinSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.OuterJoinSupport>(outerJoinSupport_);
           bitField1_ |= 0x00000008;
         }
       }
       /**
+       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserProtos.OuterJoinSupport> getOuterJoinSupportList() {
-        return new com.google.protobuf.Internal.ListAdapter<
-            java.lang.Integer, org.apache.drill.exec.proto.UserProtos.OuterJoinSupport>(outerJoinSupport_, outerJoinSupport_converter_);
+        return java.util.Collections.unmodifiableList(outerJoinSupport_);
       }
       /**
+       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
        */
       public int getOuterJoinSupportCount() {
         return outerJoinSupport_.size();
       }
       /**
+       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.OuterJoinSupport getOuterJoinSupport(int index) {
-        return outerJoinSupport_converter_.convert(outerJoinSupport_.get(index));
+        return outerJoinSupport_.get(index);
       }
       /**
+       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
        */
       public Builder setOuterJoinSupport(
           int index, org.apache.drill.exec.proto.UserProtos.OuterJoinSupport value) {
@@ -43323,48 +39007,46 @@
           throw new NullPointerException();
         }
         ensureOuterJoinSupportIsMutable();
-        outerJoinSupport_.set(index, value.getNumber());
+        outerJoinSupport_.set(index, value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
        */
       public Builder addOuterJoinSupport(org.apache.drill.exec.proto.UserProtos.OuterJoinSupport value) {
         if (value == null) {
           throw new NullPointerException();
         }
         ensureOuterJoinSupportIsMutable();
-        outerJoinSupport_.add(value.getNumber());
+        outerJoinSupport_.add(value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
        */
       public Builder addAllOuterJoinSupport(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.OuterJoinSupport> values) {
         ensureOuterJoinSupportIsMutable();
-        for (org.apache.drill.exec.proto.UserProtos.OuterJoinSupport value : values) {
-          outerJoinSupport_.add(value.getNumber());
-        }
+        super.addAll(values, outerJoinSupport_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
+       *
        * <pre>
        * Outer join suport
        * </pre>
-       *
-       * <code>repeated .exec.user.OuterJoinSupport outer_join_support = 36;</code>
        */
       public Builder clearOuterJoinSupport() {
         outerJoinSupport_ = java.util.Collections.emptyList();
@@ -43373,86 +39055,86 @@
         return this;
       }
 
-      private int quotedIdentifierCasing_ = 0;
+      // optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;
+      private org.apache.drill.exec.proto.UserProtos.IdentifierCasing quotedIdentifierCasing_ = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN;
       /**
+       * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
+       *
        * <pre>
        * Quoted identifier casing
        * </pre>
-       *
-       * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
        */
       public boolean hasQuotedIdentifierCasing() {
         return ((bitField1_ & 0x00000010) == 0x00000010);
       }
       /**
+       * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
+       *
        * <pre>
        * Quoted identifier casing
        * </pre>
-       *
-       * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.IdentifierCasing getQuotedIdentifierCasing() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.IdentifierCasing result = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.valueOf(quotedIdentifierCasing_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN : result;
+        return quotedIdentifierCasing_;
       }
       /**
+       * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
+       *
        * <pre>
        * Quoted identifier casing
        * </pre>
-       *
-       * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
        */
       public Builder setQuotedIdentifierCasing(org.apache.drill.exec.proto.UserProtos.IdentifierCasing value) {
         if (value == null) {
           throw new NullPointerException();
         }
         bitField1_ |= 0x00000010;
-        quotedIdentifierCasing_ = value.getNumber();
+        quotedIdentifierCasing_ = value;
         onChanged();
         return this;
       }
       /**
+       * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
+       *
        * <pre>
        * Quoted identifier casing
        * </pre>
-       *
-       * <code>optional .exec.user.IdentifierCasing quoted_identifier_casing = 37;</code>
        */
       public Builder clearQuotedIdentifierCasing() {
         bitField1_ = (bitField1_ & ~0x00000010);
-        quotedIdentifierCasing_ = 0;
+        quotedIdentifierCasing_ = org.apache.drill.exec.proto.UserProtos.IdentifierCasing.IC_UNKNOWN;
         onChanged();
         return this;
       }
 
+      // optional bool read_only = 38;
       private boolean readOnly_ ;
       /**
+       * <code>optional bool read_only = 38;</code>
+       *
        * <pre>
        * True if connection access is read only
        * </pre>
-       *
-       * <code>optional bool read_only = 38;</code>
        */
       public boolean hasReadOnly() {
         return ((bitField1_ & 0x00000020) == 0x00000020);
       }
       /**
+       * <code>optional bool read_only = 38;</code>
+       *
        * <pre>
        * True if connection access is read only
        * </pre>
-       *
-       * <code>optional bool read_only = 38;</code>
        */
       public boolean getReadOnly() {
         return readOnly_;
       }
       /**
+       * <code>optional bool read_only = 38;</code>
+       *
        * <pre>
        * True if connection access is read only
        * </pre>
-       *
-       * <code>optional bool read_only = 38;</code>
        */
       public Builder setReadOnly(boolean value) {
         bitField1_ |= 0x00000020;
@@ -43461,11 +39143,11 @@
         return this;
       }
       /**
+       * <code>optional bool read_only = 38;</code>
+       *
        * <pre>
        * True if connection access is read only
        * </pre>
-       *
-       * <code>optional bool read_only = 38;</code>
        */
       public Builder clearReadOnly() {
         bitField1_ = (bitField1_ & ~0x00000020);
@@ -43474,44 +39156,42 @@
         return this;
       }
 
+      // optional string schema_term = 39;
       private java.lang.Object schemaTerm_ = "";
       /**
+       * <code>optional string schema_term = 39;</code>
+       *
        * <pre>
        * The term used to designate a schema
        * </pre>
-       *
-       * <code>optional string schema_term = 39;</code>
        */
       public boolean hasSchemaTerm() {
         return ((bitField1_ & 0x00000040) == 0x00000040);
       }
       /**
+       * <code>optional string schema_term = 39;</code>
+       *
        * <pre>
        * The term used to designate a schema
        * </pre>
-       *
-       * <code>optional string schema_term = 39;</code>
        */
       public java.lang.String getSchemaTerm() {
         java.lang.Object ref = schemaTerm_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            schemaTerm_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          schemaTerm_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string schema_term = 39;</code>
+       *
        * <pre>
        * The term used to designate a schema
        * </pre>
-       *
-       * <code>optional string schema_term = 39;</code>
        */
       public com.google.protobuf.ByteString
           getSchemaTermBytes() {
@@ -43527,11 +39207,11 @@
         }
       }
       /**
+       * <code>optional string schema_term = 39;</code>
+       *
        * <pre>
        * The term used to designate a schema
        * </pre>
-       *
-       * <code>optional string schema_term = 39;</code>
        */
       public Builder setSchemaTerm(
           java.lang.String value) {
@@ -43544,11 +39224,11 @@
         return this;
       }
       /**
+       * <code>optional string schema_term = 39;</code>
+       *
        * <pre>
        * The term used to designate a schema
        * </pre>
-       *
-       * <code>optional string schema_term = 39;</code>
        */
       public Builder clearSchemaTerm() {
         bitField1_ = (bitField1_ & ~0x00000040);
@@ -43557,11 +39237,11 @@
         return this;
       }
       /**
+       * <code>optional string schema_term = 39;</code>
+       *
        * <pre>
        * The term used to designate a schema
        * </pre>
-       *
-       * <code>optional string schema_term = 39;</code>
        */
       public Builder setSchemaTermBytes(
           com.google.protobuf.ByteString value) {
@@ -43574,44 +39254,42 @@
         return this;
       }
 
+      // optional string search_escape_string = 40;
       private java.lang.Object searchEscapeString_ = "";
       /**
+       * <code>optional string search_escape_string = 40;</code>
+       *
        * <pre>
        * Characters used for escaping (empty if not suported)
        * </pre>
-       *
-       * <code>optional string search_escape_string = 40;</code>
        */
       public boolean hasSearchEscapeString() {
         return ((bitField1_ & 0x00000080) == 0x00000080);
       }
       /**
+       * <code>optional string search_escape_string = 40;</code>
+       *
        * <pre>
        * Characters used for escaping (empty if not suported)
        * </pre>
-       *
-       * <code>optional string search_escape_string = 40;</code>
        */
       public java.lang.String getSearchEscapeString() {
         java.lang.Object ref = searchEscapeString_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            searchEscapeString_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          searchEscapeString_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string search_escape_string = 40;</code>
+       *
        * <pre>
        * Characters used for escaping (empty if not suported)
        * </pre>
-       *
-       * <code>optional string search_escape_string = 40;</code>
        */
       public com.google.protobuf.ByteString
           getSearchEscapeStringBytes() {
@@ -43627,11 +39305,11 @@
         }
       }
       /**
+       * <code>optional string search_escape_string = 40;</code>
+       *
        * <pre>
        * Characters used for escaping (empty if not suported)
        * </pre>
-       *
-       * <code>optional string search_escape_string = 40;</code>
        */
       public Builder setSearchEscapeString(
           java.lang.String value) {
@@ -43644,11 +39322,11 @@
         return this;
       }
       /**
+       * <code>optional string search_escape_string = 40;</code>
+       *
        * <pre>
        * Characters used for escaping (empty if not suported)
        * </pre>
-       *
-       * <code>optional string search_escape_string = 40;</code>
        */
       public Builder clearSearchEscapeString() {
         bitField1_ = (bitField1_ & ~0x00000080);
@@ -43657,11 +39335,11 @@
         return this;
       }
       /**
+       * <code>optional string search_escape_string = 40;</code>
+       *
        * <pre>
        * Characters used for escaping (empty if not suported)
        * </pre>
-       *
-       * <code>optional string search_escape_string = 40;</code>
        */
       public Builder setSearchEscapeStringBytes(
           com.google.protobuf.ByteString value) {
@@ -43674,33 +39352,34 @@
         return this;
       }
 
+      // optional bool select_for_update_supported = 41;
       private boolean selectForUpdateSupported_ ;
       /**
+       * <code>optional bool select_for_update_supported = 41;</code>
+       *
        * <pre>
        * True if SELECT FOR UPDATE is supported
        * </pre>
-       *
-       * <code>optional bool select_for_update_supported = 41;</code>
        */
       public boolean hasSelectForUpdateSupported() {
         return ((bitField1_ & 0x00000100) == 0x00000100);
       }
       /**
+       * <code>optional bool select_for_update_supported = 41;</code>
+       *
        * <pre>
        * True if SELECT FOR UPDATE is supported
        * </pre>
-       *
-       * <code>optional bool select_for_update_supported = 41;</code>
        */
       public boolean getSelectForUpdateSupported() {
         return selectForUpdateSupported_;
       }
       /**
+       * <code>optional bool select_for_update_supported = 41;</code>
+       *
        * <pre>
        * True if SELECT FOR UPDATE is supported
        * </pre>
-       *
-       * <code>optional bool select_for_update_supported = 41;</code>
        */
       public Builder setSelectForUpdateSupported(boolean value) {
         bitField1_ |= 0x00000100;
@@ -43709,11 +39388,11 @@
         return this;
       }
       /**
+       * <code>optional bool select_for_update_supported = 41;</code>
+       *
        * <pre>
        * True if SELECT FOR UPDATE is supported
        * </pre>
-       *
-       * <code>optional bool select_for_update_supported = 41;</code>
        */
       public Builder clearSelectForUpdateSupported() {
         bitField1_ = (bitField1_ & ~0x00000100);
@@ -43722,44 +39401,42 @@
         return this;
       }
 
+      // optional string special_characters = 42;
       private java.lang.Object specialCharacters_ = "";
       /**
+       * <code>optional string special_characters = 42;</code>
+       *
        * <pre>
        * List of extra characters that can be used in identifier names
        * </pre>
-       *
-       * <code>optional string special_characters = 42;</code>
        */
       public boolean hasSpecialCharacters() {
         return ((bitField1_ & 0x00000200) == 0x00000200);
       }
       /**
+       * <code>optional string special_characters = 42;</code>
+       *
        * <pre>
        * List of extra characters that can be used in identifier names
        * </pre>
-       *
-       * <code>optional string special_characters = 42;</code>
        */
       public java.lang.String getSpecialCharacters() {
         java.lang.Object ref = specialCharacters_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            specialCharacters_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          specialCharacters_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string special_characters = 42;</code>
+       *
        * <pre>
        * List of extra characters that can be used in identifier names
        * </pre>
-       *
-       * <code>optional string special_characters = 42;</code>
        */
       public com.google.protobuf.ByteString
           getSpecialCharactersBytes() {
@@ -43775,11 +39452,11 @@
         }
       }
       /**
+       * <code>optional string special_characters = 42;</code>
+       *
        * <pre>
        * List of extra characters that can be used in identifier names
        * </pre>
-       *
-       * <code>optional string special_characters = 42;</code>
        */
       public Builder setSpecialCharacters(
           java.lang.String value) {
@@ -43792,11 +39469,11 @@
         return this;
       }
       /**
+       * <code>optional string special_characters = 42;</code>
+       *
        * <pre>
        * List of extra characters that can be used in identifier names
        * </pre>
-       *
-       * <code>optional string special_characters = 42;</code>
        */
       public Builder clearSpecialCharacters() {
         bitField1_ = (bitField1_ & ~0x00000200);
@@ -43805,11 +39482,11 @@
         return this;
       }
       /**
+       * <code>optional string special_characters = 42;</code>
+       *
        * <pre>
        * List of extra characters that can be used in identifier names
        * </pre>
-       *
-       * <code>optional string special_characters = 42;</code>
        */
       public Builder setSpecialCharactersBytes(
           com.google.protobuf.ByteString value) {
@@ -43822,6 +39499,7 @@
         return this;
       }
 
+      // repeated string sql_keywords = 43;
       private com.google.protobuf.LazyStringList sqlKeywords_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureSqlKeywordsIsMutable() {
         if (!((bitField1_ & 0x00000400) == 0x00000400)) {
@@ -43830,53 +39508,53 @@
          }
       }
       /**
+       * <code>repeated string sql_keywords = 43;</code>
+       *
        * <pre>
        * list of SQL keywords
        * </pre>
-       *
-       * <code>repeated string sql_keywords = 43;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getSqlKeywordsList() {
-        return sqlKeywords_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(sqlKeywords_);
       }
       /**
+       * <code>repeated string sql_keywords = 43;</code>
+       *
        * <pre>
        * list of SQL keywords
        * </pre>
-       *
-       * <code>repeated string sql_keywords = 43;</code>
        */
       public int getSqlKeywordsCount() {
         return sqlKeywords_.size();
       }
       /**
+       * <code>repeated string sql_keywords = 43;</code>
+       *
        * <pre>
        * list of SQL keywords
        * </pre>
-       *
-       * <code>repeated string sql_keywords = 43;</code>
        */
       public java.lang.String getSqlKeywords(int index) {
         return sqlKeywords_.get(index);
       }
       /**
+       * <code>repeated string sql_keywords = 43;</code>
+       *
        * <pre>
        * list of SQL keywords
        * </pre>
-       *
-       * <code>repeated string sql_keywords = 43;</code>
        */
       public com.google.protobuf.ByteString
           getSqlKeywordsBytes(int index) {
         return sqlKeywords_.getByteString(index);
       }
       /**
+       * <code>repeated string sql_keywords = 43;</code>
+       *
        * <pre>
        * list of SQL keywords
        * </pre>
-       *
-       * <code>repeated string sql_keywords = 43;</code>
        */
       public Builder setSqlKeywords(
           int index, java.lang.String value) {
@@ -43889,11 +39567,11 @@
         return this;
       }
       /**
+       * <code>repeated string sql_keywords = 43;</code>
+       *
        * <pre>
        * list of SQL keywords
        * </pre>
-       *
-       * <code>repeated string sql_keywords = 43;</code>
        */
       public Builder addSqlKeywords(
           java.lang.String value) {
@@ -43906,26 +39584,25 @@
         return this;
       }
       /**
+       * <code>repeated string sql_keywords = 43;</code>
+       *
        * <pre>
        * list of SQL keywords
        * </pre>
-       *
-       * <code>repeated string sql_keywords = 43;</code>
        */
       public Builder addAllSqlKeywords(
           java.lang.Iterable<java.lang.String> values) {
         ensureSqlKeywordsIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, sqlKeywords_);
+        super.addAll(values, sqlKeywords_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated string sql_keywords = 43;</code>
+       *
        * <pre>
        * list of SQL keywords
        * </pre>
-       *
-       * <code>repeated string sql_keywords = 43;</code>
        */
       public Builder clearSqlKeywords() {
         sqlKeywords_ = com.google.protobuf.LazyStringArrayList.EMPTY;
@@ -43934,11 +39611,11 @@
         return this;
       }
       /**
+       * <code>repeated string sql_keywords = 43;</code>
+       *
        * <pre>
        * list of SQL keywords
        * </pre>
-       *
-       * <code>repeated string sql_keywords = 43;</code>
        */
       public Builder addSqlKeywordsBytes(
           com.google.protobuf.ByteString value) {
@@ -43951,6 +39628,7 @@
         return this;
       }
 
+      // repeated string string_functions = 44;
       private com.google.protobuf.LazyStringList stringFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureStringFunctionsIsMutable() {
         if (!((bitField1_ & 0x00000800) == 0x00000800)) {
@@ -43959,53 +39637,53 @@
          }
       }
       /**
+       * <code>repeated string string_functions = 44;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC string scalar functions
        * </pre>
-       *
-       * <code>repeated string string_functions = 44;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getStringFunctionsList() {
-        return stringFunctions_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(stringFunctions_);
       }
       /**
+       * <code>repeated string string_functions = 44;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC string scalar functions
        * </pre>
-       *
-       * <code>repeated string string_functions = 44;</code>
        */
       public int getStringFunctionsCount() {
         return stringFunctions_.size();
       }
       /**
+       * <code>repeated string string_functions = 44;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC string scalar functions
        * </pre>
-       *
-       * <code>repeated string string_functions = 44;</code>
        */
       public java.lang.String getStringFunctions(int index) {
         return stringFunctions_.get(index);
       }
       /**
+       * <code>repeated string string_functions = 44;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC string scalar functions
        * </pre>
-       *
-       * <code>repeated string string_functions = 44;</code>
        */
       public com.google.protobuf.ByteString
           getStringFunctionsBytes(int index) {
         return stringFunctions_.getByteString(index);
       }
       /**
+       * <code>repeated string string_functions = 44;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC string scalar functions
        * </pre>
-       *
-       * <code>repeated string string_functions = 44;</code>
        */
       public Builder setStringFunctions(
           int index, java.lang.String value) {
@@ -44018,11 +39696,11 @@
         return this;
       }
       /**
+       * <code>repeated string string_functions = 44;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC string scalar functions
        * </pre>
-       *
-       * <code>repeated string string_functions = 44;</code>
        */
       public Builder addStringFunctions(
           java.lang.String value) {
@@ -44035,26 +39713,25 @@
         return this;
       }
       /**
+       * <code>repeated string string_functions = 44;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC string scalar functions
        * </pre>
-       *
-       * <code>repeated string string_functions = 44;</code>
        */
       public Builder addAllStringFunctions(
           java.lang.Iterable<java.lang.String> values) {
         ensureStringFunctionsIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, stringFunctions_);
+        super.addAll(values, stringFunctions_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated string string_functions = 44;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC string scalar functions
        * </pre>
-       *
-       * <code>repeated string string_functions = 44;</code>
        */
       public Builder clearStringFunctions() {
         stringFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
@@ -44063,11 +39740,11 @@
         return this;
       }
       /**
+       * <code>repeated string string_functions = 44;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC string scalar functions
        * </pre>
-       *
-       * <code>repeated string string_functions = 44;</code>
        */
       public Builder addStringFunctionsBytes(
           com.google.protobuf.ByteString value) {
@@ -44080,51 +39757,51 @@
         return this;
       }
 
-      private java.util.List<java.lang.Integer> subquerySupport_ =
+      // repeated .exec.user.SubQuerySupport subquery_support = 45;
+      private java.util.List<org.apache.drill.exec.proto.UserProtos.SubQuerySupport> subquerySupport_ =
         java.util.Collections.emptyList();
       private void ensureSubquerySupportIsMutable() {
         if (!((bitField1_ & 0x00001000) == 0x00001000)) {
-          subquerySupport_ = new java.util.ArrayList<java.lang.Integer>(subquerySupport_);
+          subquerySupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.SubQuerySupport>(subquerySupport_);
           bitField1_ |= 0x00001000;
         }
       }
       /**
+       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+       *
        * <pre>
        * Subquery support
        * </pre>
-       *
-       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserProtos.SubQuerySupport> getSubquerySupportList() {
-        return new com.google.protobuf.Internal.ListAdapter<
-            java.lang.Integer, org.apache.drill.exec.proto.UserProtos.SubQuerySupport>(subquerySupport_, subquerySupport_converter_);
+        return java.util.Collections.unmodifiableList(subquerySupport_);
       }
       /**
+       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+       *
        * <pre>
        * Subquery support
        * </pre>
-       *
-       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
        */
       public int getSubquerySupportCount() {
         return subquerySupport_.size();
       }
       /**
+       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+       *
        * <pre>
        * Subquery support
        * </pre>
-       *
-       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.SubQuerySupport getSubquerySupport(int index) {
-        return subquerySupport_converter_.convert(subquerySupport_.get(index));
+        return subquerySupport_.get(index);
       }
       /**
+       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+       *
        * <pre>
        * Subquery support
        * </pre>
-       *
-       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
        */
       public Builder setSubquerySupport(
           int index, org.apache.drill.exec.proto.UserProtos.SubQuerySupport value) {
@@ -44132,48 +39809,46 @@
           throw new NullPointerException();
         }
         ensureSubquerySupportIsMutable();
-        subquerySupport_.set(index, value.getNumber());
+        subquerySupport_.set(index, value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+       *
        * <pre>
        * Subquery support
        * </pre>
-       *
-       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
        */
       public Builder addSubquerySupport(org.apache.drill.exec.proto.UserProtos.SubQuerySupport value) {
         if (value == null) {
           throw new NullPointerException();
         }
         ensureSubquerySupportIsMutable();
-        subquerySupport_.add(value.getNumber());
+        subquerySupport_.add(value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+       *
        * <pre>
        * Subquery support
        * </pre>
-       *
-       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
        */
       public Builder addAllSubquerySupport(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.SubQuerySupport> values) {
         ensureSubquerySupportIsMutable();
-        for (org.apache.drill.exec.proto.UserProtos.SubQuerySupport value : values) {
-          subquerySupport_.add(value.getNumber());
-        }
+        super.addAll(values, subquerySupport_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
+       *
        * <pre>
        * Subquery support
        * </pre>
-       *
-       * <code>repeated .exec.user.SubQuerySupport subquery_support = 45;</code>
        */
       public Builder clearSubquerySupport() {
         subquerySupport_ = java.util.Collections.emptyList();
@@ -44182,6 +39857,7 @@
         return this;
       }
 
+      // repeated string system_functions = 46;
       private com.google.protobuf.LazyStringList systemFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
       private void ensureSystemFunctionsIsMutable() {
         if (!((bitField1_ & 0x00002000) == 0x00002000)) {
@@ -44190,53 +39866,53 @@
          }
       }
       /**
+       * <code>repeated string system_functions = 46;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC systen scalar functions
        * </pre>
-       *
-       * <code>repeated string system_functions = 46;</code>
        */
-      public com.google.protobuf.ProtocolStringList
+      public java.util.List<java.lang.String>
           getSystemFunctionsList() {
-        return systemFunctions_.getUnmodifiableView();
+        return java.util.Collections.unmodifiableList(systemFunctions_);
       }
       /**
+       * <code>repeated string system_functions = 46;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC systen scalar functions
        * </pre>
-       *
-       * <code>repeated string system_functions = 46;</code>
        */
       public int getSystemFunctionsCount() {
         return systemFunctions_.size();
       }
       /**
+       * <code>repeated string system_functions = 46;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC systen scalar functions
        * </pre>
-       *
-       * <code>repeated string system_functions = 46;</code>
        */
       public java.lang.String getSystemFunctions(int index) {
         return systemFunctions_.get(index);
       }
       /**
+       * <code>repeated string system_functions = 46;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC systen scalar functions
        * </pre>
-       *
-       * <code>repeated string system_functions = 46;</code>
        */
       public com.google.protobuf.ByteString
           getSystemFunctionsBytes(int index) {
         return systemFunctions_.getByteString(index);
       }
       /**
+       * <code>repeated string system_functions = 46;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC systen scalar functions
        * </pre>
-       *
-       * <code>repeated string system_functions = 46;</code>
        */
       public Builder setSystemFunctions(
           int index, java.lang.String value) {
@@ -44249,11 +39925,11 @@
         return this;
       }
       /**
+       * <code>repeated string system_functions = 46;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC systen scalar functions
        * </pre>
-       *
-       * <code>repeated string system_functions = 46;</code>
        */
       public Builder addSystemFunctions(
           java.lang.String value) {
@@ -44266,26 +39942,25 @@
         return this;
       }
       /**
+       * <code>repeated string system_functions = 46;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC systen scalar functions
        * </pre>
-       *
-       * <code>repeated string system_functions = 46;</code>
        */
       public Builder addAllSystemFunctions(
           java.lang.Iterable<java.lang.String> values) {
         ensureSystemFunctionsIsMutable();
-        com.google.protobuf.AbstractMessageLite.Builder.addAll(
-            values, systemFunctions_);
+        super.addAll(values, systemFunctions_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated string system_functions = 46;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC systen scalar functions
        * </pre>
-       *
-       * <code>repeated string system_functions = 46;</code>
        */
       public Builder clearSystemFunctions() {
         systemFunctions_ = com.google.protobuf.LazyStringArrayList.EMPTY;
@@ -44294,11 +39969,11 @@
         return this;
       }
       /**
+       * <code>repeated string system_functions = 46;</code>
+       *
        * <pre>
        * Supported ODBC/JDBC systen scalar functions
        * </pre>
-       *
-       * <code>repeated string system_functions = 46;</code>
        */
       public Builder addSystemFunctionsBytes(
           com.google.protobuf.ByteString value) {
@@ -44311,44 +39986,42 @@
         return this;
       }
 
+      // optional string table_term = 47;
       private java.lang.Object tableTerm_ = "";
       /**
+       * <code>optional string table_term = 47;</code>
+       *
        * <pre>
        * The term used to designate a table
        * </pre>
-       *
-       * <code>optional string table_term = 47;</code>
        */
       public boolean hasTableTerm() {
         return ((bitField1_ & 0x00004000) == 0x00004000);
       }
       /**
+       * <code>optional string table_term = 47;</code>
+       *
        * <pre>
        * The term used to designate a table
        * </pre>
-       *
-       * <code>optional string table_term = 47;</code>
        */
       public java.lang.String getTableTerm() {
         java.lang.Object ref = tableTerm_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            tableTerm_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          tableTerm_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string table_term = 47;</code>
+       *
        * <pre>
        * The term used to designate a table
        * </pre>
-       *
-       * <code>optional string table_term = 47;</code>
        */
       public com.google.protobuf.ByteString
           getTableTermBytes() {
@@ -44364,11 +40037,11 @@
         }
       }
       /**
+       * <code>optional string table_term = 47;</code>
+       *
        * <pre>
        * The term used to designate a table
        * </pre>
-       *
-       * <code>optional string table_term = 47;</code>
        */
       public Builder setTableTerm(
           java.lang.String value) {
@@ -44381,11 +40054,11 @@
         return this;
       }
       /**
+       * <code>optional string table_term = 47;</code>
+       *
        * <pre>
        * The term used to designate a table
        * </pre>
-       *
-       * <code>optional string table_term = 47;</code>
        */
       public Builder clearTableTerm() {
         bitField1_ = (bitField1_ & ~0x00004000);
@@ -44394,11 +40067,11 @@
         return this;
       }
       /**
+       * <code>optional string table_term = 47;</code>
+       *
        * <pre>
        * The term used to designate a table
        * </pre>
-       *
-       * <code>optional string table_term = 47;</code>
        */
       public Builder setTableTermBytes(
           com.google.protobuf.ByteString value) {
@@ -44411,33 +40084,34 @@
         return this;
       }
 
+      // optional bool transaction_supported = 48;
       private boolean transactionSupported_ ;
       /**
+       * <code>optional bool transaction_supported = 48;</code>
+       *
        * <pre>
        * True if transaction is supported
        * </pre>
-       *
-       * <code>optional bool transaction_supported = 48;</code>
        */
       public boolean hasTransactionSupported() {
         return ((bitField1_ & 0x00008000) == 0x00008000);
       }
       /**
+       * <code>optional bool transaction_supported = 48;</code>
+       *
        * <pre>
        * True if transaction is supported
        * </pre>
-       *
-       * <code>optional bool transaction_supported = 48;</code>
        */
       public boolean getTransactionSupported() {
         return transactionSupported_;
       }
       /**
+       * <code>optional bool transaction_supported = 48;</code>
+       *
        * <pre>
        * True if transaction is supported
        * </pre>
-       *
-       * <code>optional bool transaction_supported = 48;</code>
        */
       public Builder setTransactionSupported(boolean value) {
         bitField1_ |= 0x00008000;
@@ -44446,11 +40120,11 @@
         return this;
       }
       /**
+       * <code>optional bool transaction_supported = 48;</code>
+       *
        * <pre>
        * True if transaction is supported
        * </pre>
-       *
-       * <code>optional bool transaction_supported = 48;</code>
        */
       public Builder clearTransactionSupported() {
         bitField1_ = (bitField1_ & ~0x00008000);
@@ -44459,51 +40133,51 @@
         return this;
       }
 
-      private java.util.List<java.lang.Integer> unionSupport_ =
+      // repeated .exec.user.UnionSupport union_support = 49;
+      private java.util.List<org.apache.drill.exec.proto.UserProtos.UnionSupport> unionSupport_ =
         java.util.Collections.emptyList();
       private void ensureUnionSupportIsMutable() {
         if (!((bitField1_ & 0x00010000) == 0x00010000)) {
-          unionSupport_ = new java.util.ArrayList<java.lang.Integer>(unionSupport_);
+          unionSupport_ = new java.util.ArrayList<org.apache.drill.exec.proto.UserProtos.UnionSupport>(unionSupport_);
           bitField1_ |= 0x00010000;
         }
       }
       /**
+       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+       *
        * <pre>
        * UNION support
        * </pre>
-       *
-       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.UserProtos.UnionSupport> getUnionSupportList() {
-        return new com.google.protobuf.Internal.ListAdapter<
-            java.lang.Integer, org.apache.drill.exec.proto.UserProtos.UnionSupport>(unionSupport_, unionSupport_converter_);
+        return java.util.Collections.unmodifiableList(unionSupport_);
       }
       /**
+       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+       *
        * <pre>
        * UNION support
        * </pre>
-       *
-       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
        */
       public int getUnionSupportCount() {
         return unionSupport_.size();
       }
       /**
+       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+       *
        * <pre>
        * UNION support
        * </pre>
-       *
-       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.UnionSupport getUnionSupport(int index) {
-        return unionSupport_converter_.convert(unionSupport_.get(index));
+        return unionSupport_.get(index);
       }
       /**
+       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+       *
        * <pre>
        * UNION support
        * </pre>
-       *
-       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
        */
       public Builder setUnionSupport(
           int index, org.apache.drill.exec.proto.UserProtos.UnionSupport value) {
@@ -44511,48 +40185,46 @@
           throw new NullPointerException();
         }
         ensureUnionSupportIsMutable();
-        unionSupport_.set(index, value.getNumber());
+        unionSupport_.set(index, value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+       *
        * <pre>
        * UNION support
        * </pre>
-       *
-       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
        */
       public Builder addUnionSupport(org.apache.drill.exec.proto.UserProtos.UnionSupport value) {
         if (value == null) {
           throw new NullPointerException();
         }
         ensureUnionSupportIsMutable();
-        unionSupport_.add(value.getNumber());
+        unionSupport_.add(value);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+       *
        * <pre>
        * UNION support
        * </pre>
-       *
-       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
        */
       public Builder addAllUnionSupport(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.UserProtos.UnionSupport> values) {
         ensureUnionSupportIsMutable();
-        for (org.apache.drill.exec.proto.UserProtos.UnionSupport value : values) {
-          unionSupport_.add(value.getNumber());
-        }
+        super.addAll(values, unionSupport_);
         onChanged();
         return this;
       }
       /**
+       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
+       *
        * <pre>
        * UNION support
        * </pre>
-       *
-       * <code>repeated .exec.user.UnionSupport union_support = 49;</code>
        */
       public Builder clearUnionSupport() {
         unionSupport_ = java.util.Collections.emptyList();
@@ -44561,44 +40233,42 @@
         return this;
       }
 
+      // optional string current_schema = 50;
       private java.lang.Object currentSchema_ = "";
       /**
+       * <code>optional string current_schema = 50;</code>
+       *
        * <pre>
        * current schema
        * </pre>
-       *
-       * <code>optional string current_schema = 50;</code>
        */
       public boolean hasCurrentSchema() {
         return ((bitField1_ & 0x00020000) == 0x00020000);
       }
       /**
+       * <code>optional string current_schema = 50;</code>
+       *
        * <pre>
        * current schema
        * </pre>
-       *
-       * <code>optional string current_schema = 50;</code>
        */
       public java.lang.String getCurrentSchema() {
         java.lang.Object ref = currentSchema_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            currentSchema_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          currentSchema_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string current_schema = 50;</code>
+       *
        * <pre>
        * current schema
        * </pre>
-       *
-       * <code>optional string current_schema = 50;</code>
        */
       public com.google.protobuf.ByteString
           getCurrentSchemaBytes() {
@@ -44614,11 +40284,11 @@
         }
       }
       /**
+       * <code>optional string current_schema = 50;</code>
+       *
        * <pre>
        * current schema
        * </pre>
-       *
-       * <code>optional string current_schema = 50;</code>
        */
       public Builder setCurrentSchema(
           java.lang.String value) {
@@ -44631,11 +40301,11 @@
         return this;
       }
       /**
+       * <code>optional string current_schema = 50;</code>
+       *
        * <pre>
        * current schema
        * </pre>
-       *
-       * <code>optional string current_schema = 50;</code>
        */
       public Builder clearCurrentSchema() {
         bitField1_ = (bitField1_ & ~0x00020000);
@@ -44644,11 +40314,11 @@
         return this;
       }
       /**
+       * <code>optional string current_schema = 50;</code>
+       *
        * <pre>
        * current schema
        * </pre>
-       *
-       * <code>optional string current_schema = 50;</code>
        */
       public Builder setCurrentSchemaBytes(
           com.google.protobuf.ByteString value) {
@@ -44660,63 +40330,22 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.ServerMeta)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.ServerMeta)
-    private static final org.apache.drill.exec.proto.UserProtos.ServerMeta DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.ServerMeta();
+      defaultInstance = new ServerMeta(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.ServerMeta getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<ServerMeta>
-        PARSER = new com.google.protobuf.AbstractParser<ServerMeta>() {
-      @java.lang.Override
-      public ServerMeta parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new ServerMeta(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<ServerMeta> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<ServerMeta> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.ServerMeta getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.ServerMeta)
   }
 
-  public interface RunQueryOrBuilder extends
-      // @@protoc_insertion_point(interface_extends:exec.user.RunQuery)
-      com.google.protobuf.MessageOrBuilder {
+  public interface RunQueryOrBuilder
+      extends com.google.protobuf.MessageOrBuilder {
 
+    // optional .exec.user.QueryResultsMode results_mode = 1;
     /**
      * <code>optional .exec.user.QueryResultsMode results_mode = 1;</code>
      */
@@ -44726,6 +40355,7 @@
      */
     org.apache.drill.exec.proto.UserProtos.QueryResultsMode getResultsMode();
 
+    // optional .exec.shared.QueryType type = 2;
     /**
      * <code>optional .exec.shared.QueryType type = 2;</code>
      */
@@ -44735,158 +40365,176 @@
      */
     org.apache.drill.exec.proto.UserBitShared.QueryType getType();
 
+    // optional string plan = 3;
     /**
+     * <code>optional string plan = 3;</code>
+     *
      * <pre>
+     *
      * Input for query type LOGICAL, PHYSICAL or SQL.
      * </pre>
-     *
-     * <code>optional string plan = 3;</code>
      */
     boolean hasPlan();
     /**
+     * <code>optional string plan = 3;</code>
+     *
      * <pre>
+     *
      * Input for query type LOGICAL, PHYSICAL or SQL.
      * </pre>
-     *
-     * <code>optional string plan = 3;</code>
      */
     java.lang.String getPlan();
     /**
+     * <code>optional string plan = 3;</code>
+     *
      * <pre>
+     *
      * Input for query type LOGICAL, PHYSICAL or SQL.
      * </pre>
-     *
-     * <code>optional string plan = 3;</code>
      */
     com.google.protobuf.ByteString
         getPlanBytes();
 
+    // repeated .exec.bit.control.PlanFragment fragments = 4;
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment> 
         getFragmentsList();
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     org.apache.drill.exec.proto.BitControl.PlanFragment getFragments(int index);
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     int getFragmentsCount();
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     java.util.List<? extends org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder> 
         getFragmentsOrBuilderList();
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder getFragmentsOrBuilder(
         int index);
 
+    // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
     /**
+     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+     *
      * <pre>
+     *
      * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
      * to state on server side which is returned in response to CreatePreparedStatementReq.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
      */
     boolean hasPreparedStatementHandle();
     /**
+     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+     *
      * <pre>
+     *
      * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
      * to state on server side which is returned in response to CreatePreparedStatementReq.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
      */
     org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle getPreparedStatementHandle();
     /**
+     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+     *
      * <pre>
+     *
      * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
      * to state on server side which is returned in response to CreatePreparedStatementReq.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
      */
     org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder getPreparedStatementHandleOrBuilder();
 
+    // optional int32 autolimit_rowcount = 6;
     /**
+     * <code>optional int32 autolimit_rowcount = 6;</code>
+     *
      * <pre>
+     *
      * Input for indicating the limit on a query's result set.
      * </pre>
-     *
-     * <code>optional int32 autolimit_rowcount = 6;</code>
      */
     boolean hasAutolimitRowcount();
     /**
+     * <code>optional int32 autolimit_rowcount = 6;</code>
+     *
      * <pre>
+     *
      * Input for indicating the limit on a query's result set.
      * </pre>
-     *
-     * <code>optional int32 autolimit_rowcount = 6;</code>
      */
     int getAutolimitRowcount();
   }
   /**
+   * Protobuf type {@code exec.user.RunQuery}
+   *
    * <pre>
+   *
    * Request message for running a query.
    * </pre>
-   *
-   * Protobuf type {@code exec.user.RunQuery}
    */
-  public  static final class RunQuery extends
-      com.google.protobuf.GeneratedMessageV3 implements
-      // @@protoc_insertion_point(message_implements:exec.user.RunQuery)
-      RunQueryOrBuilder {
-  private static final long serialVersionUID = 0L;
+  public static final class RunQuery extends
+      com.google.protobuf.GeneratedMessage
+      implements RunQueryOrBuilder {
     // Use RunQuery.newBuilder() to construct.
-    private RunQuery(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
+    private RunQuery(com.google.protobuf.GeneratedMessage.Builder<?> builder) {
       super(builder);
+      this.unknownFields = builder.getUnknownFields();
     }
-    private RunQuery() {
-      resultsMode_ = 1;
-      type_ = 1;
-      plan_ = "";
-      fragments_ = java.util.Collections.emptyList();
-      autolimitRowcount_ = 0;
+    private RunQuery(boolean noInit) { this.unknownFields = com.google.protobuf.UnknownFieldSet.getDefaultInstance(); }
+
+    private static final RunQuery defaultInstance;
+    public static RunQuery getDefaultInstance() {
+      return defaultInstance;
     }
 
+    public RunQuery getDefaultInstanceForType() {
+      return defaultInstance;
+    }
+
+    private final com.google.protobuf.UnknownFieldSet unknownFields;
     @java.lang.Override
     public final com.google.protobuf.UnknownFieldSet
-    getUnknownFields() {
+        getUnknownFields() {
       return this.unknownFields;
     }
     private RunQuery(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws com.google.protobuf.InvalidProtocolBufferException {
-      this();
-      if (extensionRegistry == null) {
-        throw new java.lang.NullPointerException();
-      }
+      initFields();
       int mutable_bitField0_ = 0;
       com.google.protobuf.UnknownFieldSet.Builder unknownFields =
           com.google.protobuf.UnknownFieldSet.newBuilder();
@@ -44898,34 +40546,38 @@
             case 0:
               done = true;
               break;
+            default: {
+              if (!parseUnknownField(input, unknownFields,
+                                     extensionRegistry, tag)) {
+                done = true;
+              }
+              break;
+            }
             case 8: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserProtos.QueryResultsMode value = org.apache.drill.exec.proto.UserProtos.QueryResultsMode.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(1, rawValue);
               } else {
                 bitField0_ |= 0x00000001;
-                resultsMode_ = rawValue;
+                resultsMode_ = value;
               }
               break;
             }
             case 16: {
               int rawValue = input.readEnum();
-                @SuppressWarnings("deprecation")
               org.apache.drill.exec.proto.UserBitShared.QueryType value = org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(rawValue);
               if (value == null) {
                 unknownFields.mergeVarintField(2, rawValue);
               } else {
                 bitField0_ |= 0x00000002;
-                type_ = rawValue;
+                type_ = value;
               }
               break;
             }
             case 26: {
-              com.google.protobuf.ByteString bs = input.readBytes();
               bitField0_ |= 0x00000004;
-              plan_ = bs;
+              plan_ = input.readBytes();
               break;
             }
             case 34: {
@@ -44933,8 +40585,7 @@
                 fragments_ = new java.util.ArrayList<org.apache.drill.exec.proto.BitControl.PlanFragment>();
                 mutable_bitField0_ |= 0x00000008;
               }
-              fragments_.add(
-                  input.readMessage(org.apache.drill.exec.proto.BitControl.PlanFragment.PARSER, extensionRegistry));
+              fragments_.add(input.readMessage(org.apache.drill.exec.proto.BitControl.PlanFragment.PARSER, extensionRegistry));
               break;
             }
             case 42: {
@@ -44955,20 +40606,13 @@
               autolimitRowcount_ = input.readInt32();
               break;
             }
-            default: {
-              if (!parseUnknownField(
-                  input, unknownFields, extensionRegistry, tag)) {
-                done = true;
-              }
-              break;
-            }
           }
         }
       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
         throw e.setUnfinishedMessage(this);
       } catch (java.io.IOException e) {
         throw new com.google.protobuf.InvalidProtocolBufferException(
-            e).setUnfinishedMessage(this);
+            e.getMessage()).setUnfinishedMessage(this);
       } finally {
         if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
           fragments_ = java.util.Collections.unmodifiableList(fragments_);
@@ -44982,17 +40626,32 @@
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RunQuery_descriptor;
     }
 
-    @java.lang.Override
-    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
         internalGetFieldAccessorTable() {
       return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RunQuery_fieldAccessorTable
           .ensureFieldAccessorsInitialized(
               org.apache.drill.exec.proto.UserProtos.RunQuery.class, org.apache.drill.exec.proto.UserProtos.RunQuery.Builder.class);
     }
 
+    public static com.google.protobuf.Parser<RunQuery> PARSER =
+        new com.google.protobuf.AbstractParser<RunQuery>() {
+      public RunQuery parsePartialFrom(
+          com.google.protobuf.CodedInputStream input,
+          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+          throws com.google.protobuf.InvalidProtocolBufferException {
+        return new RunQuery(input, extensionRegistry);
+      }
+    };
+
+    @java.lang.Override
+    public com.google.protobuf.Parser<RunQuery> getParserForType() {
+      return PARSER;
+    }
+
     private int bitField0_;
+    // optional .exec.user.QueryResultsMode results_mode = 1;
     public static final int RESULTS_MODE_FIELD_NUMBER = 1;
-    private int resultsMode_;
+    private org.apache.drill.exec.proto.UserProtos.QueryResultsMode resultsMode_;
     /**
      * <code>optional .exec.user.QueryResultsMode results_mode = 1;</code>
      */
@@ -45003,13 +40662,12 @@
      * <code>optional .exec.user.QueryResultsMode results_mode = 1;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.QueryResultsMode getResultsMode() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserProtos.QueryResultsMode result = org.apache.drill.exec.proto.UserProtos.QueryResultsMode.valueOf(resultsMode_);
-      return result == null ? org.apache.drill.exec.proto.UserProtos.QueryResultsMode.STREAM_FULL : result;
+      return resultsMode_;
     }
 
+    // optional .exec.shared.QueryType type = 2;
     public static final int TYPE_FIELD_NUMBER = 2;
-    private int type_;
+    private org.apache.drill.exec.proto.UserBitShared.QueryType type_;
     /**
      * <code>optional .exec.shared.QueryType type = 2;</code>
      */
@@ -45020,29 +40678,30 @@
      * <code>optional .exec.shared.QueryType type = 2;</code>
      */
     public org.apache.drill.exec.proto.UserBitShared.QueryType getType() {
-      @SuppressWarnings("deprecation")
-      org.apache.drill.exec.proto.UserBitShared.QueryType result = org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(type_);
-      return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryType.SQL : result;
+      return type_;
     }
 
+    // optional string plan = 3;
     public static final int PLAN_FIELD_NUMBER = 3;
-    private volatile java.lang.Object plan_;
+    private java.lang.Object plan_;
     /**
+     * <code>optional string plan = 3;</code>
+     *
      * <pre>
+     *
      * Input for query type LOGICAL, PHYSICAL or SQL.
      * </pre>
-     *
-     * <code>optional string plan = 3;</code>
      */
     public boolean hasPlan() {
       return ((bitField0_ & 0x00000004) == 0x00000004);
     }
     /**
+     * <code>optional string plan = 3;</code>
+     *
      * <pre>
+     *
      * Input for query type LOGICAL, PHYSICAL or SQL.
      * </pre>
-     *
-     * <code>optional string plan = 3;</code>
      */
     public java.lang.String getPlan() {
       java.lang.Object ref = plan_;
@@ -45059,11 +40718,12 @@
       }
     }
     /**
+     * <code>optional string plan = 3;</code>
+     *
      * <pre>
+     *
      * Input for query type LOGICAL, PHYSICAL or SQL.
      * </pre>
-     *
-     * <code>optional string plan = 3;</code>
      */
     public com.google.protobuf.ByteString
         getPlanBytes() {
@@ -45079,171 +40739,191 @@
       }
     }
 
+    // repeated .exec.bit.control.PlanFragment fragments = 4;
     public static final int FRAGMENTS_FIELD_NUMBER = 4;
     private java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment> fragments_;
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     public java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment> getFragmentsList() {
       return fragments_;
     }
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     public java.util.List<? extends org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder> 
         getFragmentsOrBuilderList() {
       return fragments_;
     }
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     public int getFragmentsCount() {
       return fragments_.size();
     }
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     public org.apache.drill.exec.proto.BitControl.PlanFragment getFragments(int index) {
       return fragments_.get(index);
     }
     /**
+     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+     *
      * <pre>
+     *
      * Input for query type EXECUTION. Input is a set of executable fragments.
      * </pre>
-     *
-     * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
      */
     public org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder getFragmentsOrBuilder(
         int index) {
       return fragments_.get(index);
     }
 
+    // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
     public static final int PREPARED_STATEMENT_HANDLE_FIELD_NUMBER = 5;
     private org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle preparedStatementHandle_;
     /**
+     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+     *
      * <pre>
+     *
      * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
      * to state on server side which is returned in response to CreatePreparedStatementReq.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
      */
     public boolean hasPreparedStatementHandle() {
       return ((bitField0_ & 0x00000008) == 0x00000008);
     }
     /**
+     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+     *
      * <pre>
+     *
      * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
      * to state on server side which is returned in response to CreatePreparedStatementReq.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle getPreparedStatementHandle() {
-      return preparedStatementHandle_ == null ? org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance() : preparedStatementHandle_;
+      return preparedStatementHandle_;
     }
     /**
+     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+     *
      * <pre>
+     *
      * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
      * to state on server side which is returned in response to CreatePreparedStatementReq.
      * </pre>
-     *
-     * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
      */
     public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder getPreparedStatementHandleOrBuilder() {
-      return preparedStatementHandle_ == null ? org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance() : preparedStatementHandle_;
+      return preparedStatementHandle_;
     }
 
+    // optional int32 autolimit_rowcount = 6;
     public static final int AUTOLIMIT_ROWCOUNT_FIELD_NUMBER = 6;
     private int autolimitRowcount_;
     /**
+     * <code>optional int32 autolimit_rowcount = 6;</code>
+     *
      * <pre>
+     *
      * Input for indicating the limit on a query's result set.
      * </pre>
-     *
-     * <code>optional int32 autolimit_rowcount = 6;</code>
      */
     public boolean hasAutolimitRowcount() {
       return ((bitField0_ & 0x00000010) == 0x00000010);
     }
     /**
+     * <code>optional int32 autolimit_rowcount = 6;</code>
+     *
      * <pre>
+     *
      * Input for indicating the limit on a query's result set.
      * </pre>
-     *
-     * <code>optional int32 autolimit_rowcount = 6;</code>
      */
     public int getAutolimitRowcount() {
       return autolimitRowcount_;
     }
 
+    private void initFields() {
+      resultsMode_ = org.apache.drill.exec.proto.UserProtos.QueryResultsMode.STREAM_FULL;
+      type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
+      plan_ = "";
+      fragments_ = java.util.Collections.emptyList();
+      preparedStatementHandle_ = org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance();
+      autolimitRowcount_ = 0;
+    }
     private byte memoizedIsInitialized = -1;
-    @java.lang.Override
     public final boolean isInitialized() {
       byte isInitialized = memoizedIsInitialized;
-      if (isInitialized == 1) return true;
-      if (isInitialized == 0) return false;
+      if (isInitialized != -1) return isInitialized == 1;
 
       memoizedIsInitialized = 1;
       return true;
     }
 
-    @java.lang.Override
     public void writeTo(com.google.protobuf.CodedOutputStream output)
                         throws java.io.IOException {
+      getSerializedSize();
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
-        output.writeEnum(1, resultsMode_);
+        output.writeEnum(1, resultsMode_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
-        output.writeEnum(2, type_);
+        output.writeEnum(2, type_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, plan_);
+        output.writeBytes(3, getPlanBytes());
       }
       for (int i = 0; i < fragments_.size(); i++) {
         output.writeMessage(4, fragments_.get(i));
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
-        output.writeMessage(5, getPreparedStatementHandle());
+        output.writeMessage(5, preparedStatementHandle_);
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         output.writeInt32(6, autolimitRowcount_);
       }
-      unknownFields.writeTo(output);
+      getUnknownFields().writeTo(output);
     }
 
-    @java.lang.Override
+    private int memoizedSerializedSize = -1;
     public int getSerializedSize() {
-      int size = memoizedSize;
+      int size = memoizedSerializedSize;
       if (size != -1) return size;
 
       size = 0;
       if (((bitField0_ & 0x00000001) == 0x00000001)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(1, resultsMode_);
+          .computeEnumSize(1, resultsMode_.getNumber());
       }
       if (((bitField0_ & 0x00000002) == 0x00000002)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeEnumSize(2, type_);
+          .computeEnumSize(2, type_.getNumber());
       }
       if (((bitField0_ & 0x00000004) == 0x00000004)) {
-        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, plan_);
+        size += com.google.protobuf.CodedOutputStream
+          .computeBytesSize(3, getPlanBytes());
       }
       for (int i = 0; i < fragments_.size(); i++) {
         size += com.google.protobuf.CodedOutputStream
@@ -45251,104 +40931,24 @@
       }
       if (((bitField0_ & 0x00000008) == 0x00000008)) {
         size += com.google.protobuf.CodedOutputStream
-          .computeMessageSize(5, getPreparedStatementHandle());
+          .computeMessageSize(5, preparedStatementHandle_);
       }
       if (((bitField0_ & 0x00000010) == 0x00000010)) {
         size += com.google.protobuf.CodedOutputStream
           .computeInt32Size(6, autolimitRowcount_);
       }
-      size += unknownFields.getSerializedSize();
-      memoizedSize = size;
+      size += getUnknownFields().getSerializedSize();
+      memoizedSerializedSize = size;
       return size;
     }
 
+    private static final long serialVersionUID = 0L;
     @java.lang.Override
-    public boolean equals(final java.lang.Object obj) {
-      if (obj == this) {
-       return true;
-      }
-      if (!(obj instanceof org.apache.drill.exec.proto.UserProtos.RunQuery)) {
-        return super.equals(obj);
-      }
-      org.apache.drill.exec.proto.UserProtos.RunQuery other = (org.apache.drill.exec.proto.UserProtos.RunQuery) obj;
-
-      boolean result = true;
-      result = result && (hasResultsMode() == other.hasResultsMode());
-      if (hasResultsMode()) {
-        result = result && resultsMode_ == other.resultsMode_;
-      }
-      result = result && (hasType() == other.hasType());
-      if (hasType()) {
-        result = result && type_ == other.type_;
-      }
-      result = result && (hasPlan() == other.hasPlan());
-      if (hasPlan()) {
-        result = result && getPlan()
-            .equals(other.getPlan());
-      }
-      result = result && getFragmentsList()
-          .equals(other.getFragmentsList());
-      result = result && (hasPreparedStatementHandle() == other.hasPreparedStatementHandle());
-      if (hasPreparedStatementHandle()) {
-        result = result && getPreparedStatementHandle()
-            .equals(other.getPreparedStatementHandle());
-      }
-      result = result && (hasAutolimitRowcount() == other.hasAutolimitRowcount());
-      if (hasAutolimitRowcount()) {
-        result = result && (getAutolimitRowcount()
-            == other.getAutolimitRowcount());
-      }
-      result = result && unknownFields.equals(other.unknownFields);
-      return result;
+    protected java.lang.Object writeReplace()
+        throws java.io.ObjectStreamException {
+      return super.writeReplace();
     }
 
-    @java.lang.Override
-    public int hashCode() {
-      if (memoizedHashCode != 0) {
-        return memoizedHashCode;
-      }
-      int hash = 41;
-      hash = (19 * hash) + getDescriptor().hashCode();
-      if (hasResultsMode()) {
-        hash = (37 * hash) + RESULTS_MODE_FIELD_NUMBER;
-        hash = (53 * hash) + resultsMode_;
-      }
-      if (hasType()) {
-        hash = (37 * hash) + TYPE_FIELD_NUMBER;
-        hash = (53 * hash) + type_;
-      }
-      if (hasPlan()) {
-        hash = (37 * hash) + PLAN_FIELD_NUMBER;
-        hash = (53 * hash) + getPlan().hashCode();
-      }
-      if (getFragmentsCount() > 0) {
-        hash = (37 * hash) + FRAGMENTS_FIELD_NUMBER;
-        hash = (53 * hash) + getFragmentsList().hashCode();
-      }
-      if (hasPreparedStatementHandle()) {
-        hash = (37 * hash) + PREPARED_STATEMENT_HANDLE_FIELD_NUMBER;
-        hash = (53 * hash) + getPreparedStatementHandle().hashCode();
-      }
-      if (hasAutolimitRowcount()) {
-        hash = (37 * hash) + AUTOLIMIT_ROWCOUNT_FIELD_NUMBER;
-        hash = (53 * hash) + getAutolimitRowcount();
-      }
-      hash = (29 * hash) + unknownFields.hashCode();
-      memoizedHashCode = hash;
-      return hash;
-    }
-
-    public static org.apache.drill.exec.proto.UserProtos.RunQuery parseFrom(
-        java.nio.ByteBuffer data)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data);
-    }
-    public static org.apache.drill.exec.proto.UserProtos.RunQuery parseFrom(
-        java.nio.ByteBuffer data,
-        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-        throws com.google.protobuf.InvalidProtocolBufferException {
-      return PARSER.parseFrom(data, extensionRegistry);
-    }
     public static org.apache.drill.exec.proto.UserProtos.RunQuery parseFrom(
         com.google.protobuf.ByteString data)
         throws com.google.protobuf.InvalidProtocolBufferException {
@@ -45372,80 +40972,66 @@
     }
     public static org.apache.drill.exec.proto.UserProtos.RunQuery parseFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.RunQuery parseFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.RunQuery parseDelimitedFrom(java.io.InputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input);
+      return PARSER.parseDelimitedFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.RunQuery parseDelimitedFrom(
         java.io.InputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseDelimitedFrom(input, extensionRegistry);
     }
     public static org.apache.drill.exec.proto.UserProtos.RunQuery parseFrom(
         com.google.protobuf.CodedInputStream input)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input);
+      return PARSER.parseFrom(input);
     }
     public static org.apache.drill.exec.proto.UserProtos.RunQuery parseFrom(
         com.google.protobuf.CodedInputStream input,
         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
         throws java.io.IOException {
-      return com.google.protobuf.GeneratedMessageV3
-          .parseWithIOException(PARSER, input, extensionRegistry);
+      return PARSER.parseFrom(input, extensionRegistry);
     }
 
-    @java.lang.Override
+    public static Builder newBuilder() { return Builder.create(); }
     public Builder newBuilderForType() { return newBuilder(); }
-    public static Builder newBuilder() {
-      return DEFAULT_INSTANCE.toBuilder();
-    }
     public static Builder newBuilder(org.apache.drill.exec.proto.UserProtos.RunQuery prototype) {
-      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+      return newBuilder().mergeFrom(prototype);
     }
-    @java.lang.Override
-    public Builder toBuilder() {
-      return this == DEFAULT_INSTANCE
-          ? new Builder() : new Builder().mergeFrom(this);
-    }
+    public Builder toBuilder() { return newBuilder(this); }
 
     @java.lang.Override
     protected Builder newBuilderForType(
-        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+        com.google.protobuf.GeneratedMessage.BuilderParent parent) {
       Builder builder = new Builder(parent);
       return builder;
     }
     /**
+     * Protobuf type {@code exec.user.RunQuery}
+     *
      * <pre>
+     *
      * Request message for running a query.
      * </pre>
-     *
-     * Protobuf type {@code exec.user.RunQuery}
      */
     public static final class Builder extends
-        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
-        // @@protoc_insertion_point(builder_implements:exec.user.RunQuery)
-        org.apache.drill.exec.proto.UserProtos.RunQueryOrBuilder {
+        com.google.protobuf.GeneratedMessage.Builder<Builder>
+       implements org.apache.drill.exec.proto.UserProtos.RunQueryOrBuilder {
       public static final com.google.protobuf.Descriptors.Descriptor
           getDescriptor() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RunQuery_descriptor;
       }
 
-      @java.lang.Override
-      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
           internalGetFieldAccessorTable() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RunQuery_fieldAccessorTable
             .ensureFieldAccessorsInitialized(
@@ -45458,23 +41044,25 @@
       }
 
       private Builder(
-          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+          com.google.protobuf.GeneratedMessage.BuilderParent parent) {
         super(parent);
         maybeForceBuilderInitialization();
       }
       private void maybeForceBuilderInitialization() {
-        if (com.google.protobuf.GeneratedMessageV3
-                .alwaysUseFieldBuilders) {
+        if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
           getFragmentsFieldBuilder();
           getPreparedStatementHandleFieldBuilder();
         }
       }
-      @java.lang.Override
+      private static Builder create() {
+        return new Builder();
+      }
+
       public Builder clear() {
         super.clear();
-        resultsMode_ = 1;
+        resultsMode_ = org.apache.drill.exec.proto.UserProtos.QueryResultsMode.STREAM_FULL;
         bitField0_ = (bitField0_ & ~0x00000001);
-        type_ = 1;
+        type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
         bitField0_ = (bitField0_ & ~0x00000002);
         plan_ = "";
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -45485,7 +41073,7 @@
           fragmentsBuilder_.clear();
         }
         if (preparedStatementHandleBuilder_ == null) {
-          preparedStatementHandle_ = null;
+          preparedStatementHandle_ = org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance();
         } else {
           preparedStatementHandleBuilder_.clear();
         }
@@ -45495,18 +41083,19 @@
         return this;
       }
 
-      @java.lang.Override
+      public Builder clone() {
+        return create().mergeFrom(buildPartial());
+      }
+
       public com.google.protobuf.Descriptors.Descriptor
           getDescriptorForType() {
         return org.apache.drill.exec.proto.UserProtos.internal_static_exec_user_RunQuery_descriptor;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.RunQuery getDefaultInstanceForType() {
         return org.apache.drill.exec.proto.UserProtos.RunQuery.getDefaultInstance();
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.RunQuery build() {
         org.apache.drill.exec.proto.UserProtos.RunQuery result = buildPartial();
         if (!result.isInitialized()) {
@@ -45515,7 +41104,6 @@
         return result;
       }
 
-      @java.lang.Override
       public org.apache.drill.exec.proto.UserProtos.RunQuery buildPartial() {
         org.apache.drill.exec.proto.UserProtos.RunQuery result = new org.apache.drill.exec.proto.UserProtos.RunQuery(this);
         int from_bitField0_ = bitField0_;
@@ -45558,39 +41146,6 @@
         return result;
       }
 
-      @java.lang.Override
-      public Builder clone() {
-        return (Builder) super.clone();
-      }
-      @java.lang.Override
-      public Builder setField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.setField(field, value);
-      }
-      @java.lang.Override
-      public Builder clearField(
-          com.google.protobuf.Descriptors.FieldDescriptor field) {
-        return (Builder) super.clearField(field);
-      }
-      @java.lang.Override
-      public Builder clearOneof(
-          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
-        return (Builder) super.clearOneof(oneof);
-      }
-      @java.lang.Override
-      public Builder setRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          int index, java.lang.Object value) {
-        return (Builder) super.setRepeatedField(field, index, value);
-      }
-      @java.lang.Override
-      public Builder addRepeatedField(
-          com.google.protobuf.Descriptors.FieldDescriptor field,
-          java.lang.Object value) {
-        return (Builder) super.addRepeatedField(field, value);
-      }
-      @java.lang.Override
       public Builder mergeFrom(com.google.protobuf.Message other) {
         if (other instanceof org.apache.drill.exec.proto.UserProtos.RunQuery) {
           return mergeFrom((org.apache.drill.exec.proto.UserProtos.RunQuery)other);
@@ -45632,7 +41187,7 @@
               fragments_ = other.fragments_;
               bitField0_ = (bitField0_ & ~0x00000008);
               fragmentsBuilder_ = 
-                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
+                com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders ?
                    getFragmentsFieldBuilder() : null;
             } else {
               fragmentsBuilder_.addAllMessages(other.fragments_);
@@ -45645,17 +41200,14 @@
         if (other.hasAutolimitRowcount()) {
           setAutolimitRowcount(other.getAutolimitRowcount());
         }
-        this.mergeUnknownFields(other.unknownFields);
-        onChanged();
+        this.mergeUnknownFields(other.getUnknownFields());
         return this;
       }
 
-      @java.lang.Override
       public final boolean isInitialized() {
         return true;
       }
 
-      @java.lang.Override
       public Builder mergeFrom(
           com.google.protobuf.CodedInputStream input,
           com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@@ -45665,7 +41217,7 @@
           parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
         } catch (com.google.protobuf.InvalidProtocolBufferException e) {
           parsedMessage = (org.apache.drill.exec.proto.UserProtos.RunQuery) e.getUnfinishedMessage();
-          throw e.unwrapIOException();
+          throw e;
         } finally {
           if (parsedMessage != null) {
             mergeFrom(parsedMessage);
@@ -45675,7 +41227,8 @@
       }
       private int bitField0_;
 
-      private int resultsMode_ = 1;
+      // optional .exec.user.QueryResultsMode results_mode = 1;
+      private org.apache.drill.exec.proto.UserProtos.QueryResultsMode resultsMode_ = org.apache.drill.exec.proto.UserProtos.QueryResultsMode.STREAM_FULL;
       /**
        * <code>optional .exec.user.QueryResultsMode results_mode = 1;</code>
        */
@@ -45686,9 +41239,7 @@
        * <code>optional .exec.user.QueryResultsMode results_mode = 1;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.QueryResultsMode getResultsMode() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserProtos.QueryResultsMode result = org.apache.drill.exec.proto.UserProtos.QueryResultsMode.valueOf(resultsMode_);
-        return result == null ? org.apache.drill.exec.proto.UserProtos.QueryResultsMode.STREAM_FULL : result;
+        return resultsMode_;
       }
       /**
        * <code>optional .exec.user.QueryResultsMode results_mode = 1;</code>
@@ -45698,7 +41249,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000001;
-        resultsMode_ = value.getNumber();
+        resultsMode_ = value;
         onChanged();
         return this;
       }
@@ -45707,12 +41258,13 @@
        */
       public Builder clearResultsMode() {
         bitField0_ = (bitField0_ & ~0x00000001);
-        resultsMode_ = 1;
+        resultsMode_ = org.apache.drill.exec.proto.UserProtos.QueryResultsMode.STREAM_FULL;
         onChanged();
         return this;
       }
 
-      private int type_ = 1;
+      // optional .exec.shared.QueryType type = 2;
+      private org.apache.drill.exec.proto.UserBitShared.QueryType type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
       /**
        * <code>optional .exec.shared.QueryType type = 2;</code>
        */
@@ -45723,9 +41275,7 @@
        * <code>optional .exec.shared.QueryType type = 2;</code>
        */
       public org.apache.drill.exec.proto.UserBitShared.QueryType getType() {
-        @SuppressWarnings("deprecation")
-        org.apache.drill.exec.proto.UserBitShared.QueryType result = org.apache.drill.exec.proto.UserBitShared.QueryType.valueOf(type_);
-        return result == null ? org.apache.drill.exec.proto.UserBitShared.QueryType.SQL : result;
+        return type_;
       }
       /**
        * <code>optional .exec.shared.QueryType type = 2;</code>
@@ -45735,7 +41285,7 @@
           throw new NullPointerException();
         }
         bitField0_ |= 0x00000002;
-        type_ = value.getNumber();
+        type_ = value;
         onChanged();
         return this;
       }
@@ -45744,49 +41294,50 @@
        */
       public Builder clearType() {
         bitField0_ = (bitField0_ & ~0x00000002);
-        type_ = 1;
+        type_ = org.apache.drill.exec.proto.UserBitShared.QueryType.SQL;
         onChanged();
         return this;
       }
 
+      // optional string plan = 3;
       private java.lang.Object plan_ = "";
       /**
+       * <code>optional string plan = 3;</code>
+       *
        * <pre>
+       *
        * Input for query type LOGICAL, PHYSICAL or SQL.
        * </pre>
-       *
-       * <code>optional string plan = 3;</code>
        */
       public boolean hasPlan() {
         return ((bitField0_ & 0x00000004) == 0x00000004);
       }
       /**
+       * <code>optional string plan = 3;</code>
+       *
        * <pre>
+       *
        * Input for query type LOGICAL, PHYSICAL or SQL.
        * </pre>
-       *
-       * <code>optional string plan = 3;</code>
        */
       public java.lang.String getPlan() {
         java.lang.Object ref = plan_;
         if (!(ref instanceof java.lang.String)) {
-          com.google.protobuf.ByteString bs =
-              (com.google.protobuf.ByteString) ref;
-          java.lang.String s = bs.toStringUtf8();
-          if (bs.isValidUtf8()) {
-            plan_ = s;
-          }
+          java.lang.String s = ((com.google.protobuf.ByteString) ref)
+              .toStringUtf8();
+          plan_ = s;
           return s;
         } else {
           return (java.lang.String) ref;
         }
       }
       /**
+       * <code>optional string plan = 3;</code>
+       *
        * <pre>
+       *
        * Input for query type LOGICAL, PHYSICAL or SQL.
        * </pre>
-       *
-       * <code>optional string plan = 3;</code>
        */
       public com.google.protobuf.ByteString
           getPlanBytes() {
@@ -45802,11 +41353,12 @@
         }
       }
       /**
+       * <code>optional string plan = 3;</code>
+       *
        * <pre>
+       *
        * Input for query type LOGICAL, PHYSICAL or SQL.
        * </pre>
-       *
-       * <code>optional string plan = 3;</code>
        */
       public Builder setPlan(
           java.lang.String value) {
@@ -45819,11 +41371,12 @@
         return this;
       }
       /**
+       * <code>optional string plan = 3;</code>
+       *
        * <pre>
+       *
        * Input for query type LOGICAL, PHYSICAL or SQL.
        * </pre>
-       *
-       * <code>optional string plan = 3;</code>
        */
       public Builder clearPlan() {
         bitField0_ = (bitField0_ & ~0x00000004);
@@ -45832,11 +41385,12 @@
         return this;
       }
       /**
+       * <code>optional string plan = 3;</code>
+       *
        * <pre>
+       *
        * Input for query type LOGICAL, PHYSICAL or SQL.
        * </pre>
-       *
-       * <code>optional string plan = 3;</code>
        */
       public Builder setPlanBytes(
           com.google.protobuf.ByteString value) {
@@ -45849,6 +41403,7 @@
         return this;
       }
 
+      // repeated .exec.bit.control.PlanFragment fragments = 4;
       private java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment> fragments_ =
         java.util.Collections.emptyList();
       private void ensureFragmentsIsMutable() {
@@ -45858,15 +41413,16 @@
          }
       }
 
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.PlanFragment, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder, org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder> fragmentsBuilder_;
 
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment> getFragmentsList() {
         if (fragmentsBuilder_ == null) {
@@ -45876,11 +41432,12 @@
         }
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public int getFragmentsCount() {
         if (fragmentsBuilder_ == null) {
@@ -45890,11 +41447,12 @@
         }
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public org.apache.drill.exec.proto.BitControl.PlanFragment getFragments(int index) {
         if (fragmentsBuilder_ == null) {
@@ -45904,11 +41462,12 @@
         }
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public Builder setFragments(
           int index, org.apache.drill.exec.proto.BitControl.PlanFragment value) {
@@ -45925,11 +41484,12 @@
         return this;
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public Builder setFragments(
           int index, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder builderForValue) {
@@ -45943,11 +41503,12 @@
         return this;
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public Builder addFragments(org.apache.drill.exec.proto.BitControl.PlanFragment value) {
         if (fragmentsBuilder_ == null) {
@@ -45963,11 +41524,12 @@
         return this;
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public Builder addFragments(
           int index, org.apache.drill.exec.proto.BitControl.PlanFragment value) {
@@ -45984,11 +41546,12 @@
         return this;
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public Builder addFragments(
           org.apache.drill.exec.proto.BitControl.PlanFragment.Builder builderForValue) {
@@ -46002,11 +41565,12 @@
         return this;
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public Builder addFragments(
           int index, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder builderForValue) {
@@ -46020,18 +41584,18 @@
         return this;
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public Builder addAllFragments(
           java.lang.Iterable<? extends org.apache.drill.exec.proto.BitControl.PlanFragment> values) {
         if (fragmentsBuilder_ == null) {
           ensureFragmentsIsMutable();
-          com.google.protobuf.AbstractMessageLite.Builder.addAll(
-              values, fragments_);
+          super.addAll(values, fragments_);
           onChanged();
         } else {
           fragmentsBuilder_.addAllMessages(values);
@@ -46039,11 +41603,12 @@
         return this;
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public Builder clearFragments() {
         if (fragmentsBuilder_ == null) {
@@ -46056,11 +41621,12 @@
         return this;
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public Builder removeFragments(int index) {
         if (fragmentsBuilder_ == null) {
@@ -46073,22 +41639,24 @@
         return this;
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public org.apache.drill.exec.proto.BitControl.PlanFragment.Builder getFragmentsBuilder(
           int index) {
         return getFragmentsFieldBuilder().getBuilder(index);
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder getFragmentsOrBuilder(
           int index) {
@@ -46098,11 +41666,12 @@
         }
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public java.util.List<? extends org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder> 
            getFragmentsOrBuilderList() {
@@ -46113,22 +41682,24 @@
         }
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public org.apache.drill.exec.proto.BitControl.PlanFragment.Builder addFragmentsBuilder() {
         return getFragmentsFieldBuilder().addBuilder(
             org.apache.drill.exec.proto.BitControl.PlanFragment.getDefaultInstance());
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public org.apache.drill.exec.proto.BitControl.PlanFragment.Builder addFragmentsBuilder(
           int index) {
@@ -46136,21 +41707,22 @@
             index, org.apache.drill.exec.proto.BitControl.PlanFragment.getDefaultInstance());
       }
       /**
+       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
+       *
        * <pre>
+       *
        * Input for query type EXECUTION. Input is a set of executable fragments.
        * </pre>
-       *
-       * <code>repeated .exec.bit.control.PlanFragment fragments = 4;</code>
        */
       public java.util.List<org.apache.drill.exec.proto.BitControl.PlanFragment.Builder> 
            getFragmentsBuilderList() {
         return getFragmentsFieldBuilder().getBuilderList();
       }
-      private com.google.protobuf.RepeatedFieldBuilderV3<
+      private com.google.protobuf.RepeatedFieldBuilder<
           org.apache.drill.exec.proto.BitControl.PlanFragment, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder, org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder> 
           getFragmentsFieldBuilder() {
         if (fragmentsBuilder_ == null) {
-          fragmentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
+          fragmentsBuilder_ = new com.google.protobuf.RepeatedFieldBuilder<
               org.apache.drill.exec.proto.BitControl.PlanFragment, org.apache.drill.exec.proto.BitControl.PlanFragment.Builder, org.apache.drill.exec.proto.BitControl.PlanFragmentOrBuilder>(
                   fragments_,
                   ((bitField0_ & 0x00000008) == 0x00000008),
@@ -46161,42 +41733,46 @@
         return fragmentsBuilder_;
       }
 
-      private org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle preparedStatementHandle_ = null;
-      private com.google.protobuf.SingleFieldBuilderV3<
+      // optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;
+      private org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle preparedStatementHandle_ = org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance();
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder> preparedStatementHandleBuilder_;
       /**
+       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+       *
        * <pre>
+       *
        * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
        * to state on server side which is returned in response to CreatePreparedStatementReq.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
        */
       public boolean hasPreparedStatementHandle() {
         return ((bitField0_ & 0x00000010) == 0x00000010);
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+       *
        * <pre>
+       *
        * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
        * to state on server side which is returned in response to CreatePreparedStatementReq.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle getPreparedStatementHandle() {
         if (preparedStatementHandleBuilder_ == null) {
-          return preparedStatementHandle_ == null ? org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance() : preparedStatementHandle_;
+          return preparedStatementHandle_;
         } else {
           return preparedStatementHandleBuilder_.getMessage();
         }
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+       *
        * <pre>
+       *
        * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
        * to state on server side which is returned in response to CreatePreparedStatementReq.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
        */
       public Builder setPreparedStatementHandle(org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle value) {
         if (preparedStatementHandleBuilder_ == null) {
@@ -46212,12 +41788,13 @@
         return this;
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+       *
        * <pre>
+       *
        * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
        * to state on server side which is returned in response to CreatePreparedStatementReq.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
        */
       public Builder setPreparedStatementHandle(
           org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder builderForValue) {
@@ -46231,17 +41808,17 @@
         return this;
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+       *
        * <pre>
+       *
        * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
        * to state on server side which is returned in response to CreatePreparedStatementReq.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
        */
       public Builder mergePreparedStatementHandle(org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle value) {
         if (preparedStatementHandleBuilder_ == null) {
           if (((bitField0_ & 0x00000010) == 0x00000010) &&
-              preparedStatementHandle_ != null &&
               preparedStatementHandle_ != org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance()) {
             preparedStatementHandle_ =
               org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.newBuilder(preparedStatementHandle_).mergeFrom(value).buildPartial();
@@ -46256,16 +41833,17 @@
         return this;
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+       *
        * <pre>
+       *
        * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
        * to state on server side which is returned in response to CreatePreparedStatementReq.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
        */
       public Builder clearPreparedStatementHandle() {
         if (preparedStatementHandleBuilder_ == null) {
-          preparedStatementHandle_ = null;
+          preparedStatementHandle_ = org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance();
           onChanged();
         } else {
           preparedStatementHandleBuilder_.clear();
@@ -46274,12 +41852,13 @@
         return this;
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+       *
        * <pre>
+       *
        * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
        * to state on server side which is returned in response to CreatePreparedStatementReq.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder getPreparedStatementHandleBuilder() {
         bitField0_ |= 0x00000010;
@@ -46287,36 +41866,37 @@
         return getPreparedStatementHandleFieldBuilder().getBuilder();
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+       *
        * <pre>
+       *
        * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
        * to state on server side which is returned in response to CreatePreparedStatementReq.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
        */
       public org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder getPreparedStatementHandleOrBuilder() {
         if (preparedStatementHandleBuilder_ != null) {
           return preparedStatementHandleBuilder_.getMessageOrBuilder();
         } else {
-          return preparedStatementHandle_ == null ?
-              org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.getDefaultInstance() : preparedStatementHandle_;
+          return preparedStatementHandle_;
         }
       }
       /**
+       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
+       *
        * <pre>
+       *
        * Input for query type PREPARED_STATEMENT. Input is a prepared statement handle
        * to state on server side which is returned in response to CreatePreparedStatementReq.
        * </pre>
-       *
-       * <code>optional .exec.user.PreparedStatementHandle prepared_statement_handle = 5;</code>
        */
-      private com.google.protobuf.SingleFieldBuilderV3<
+      private com.google.protobuf.SingleFieldBuilder<
           org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder> 
           getPreparedStatementHandleFieldBuilder() {
         if (preparedStatementHandleBuilder_ == null) {
-          preparedStatementHandleBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+          preparedStatementHandleBuilder_ = new com.google.protobuf.SingleFieldBuilder<
               org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandle.Builder, org.apache.drill.exec.proto.UserProtos.PreparedStatementHandleOrBuilder>(
-                  getPreparedStatementHandle(),
+                  preparedStatementHandle_,
                   getParentForChildren(),
                   isClean());
           preparedStatementHandle_ = null;
@@ -46324,33 +41904,37 @@
         return preparedStatementHandleBuilder_;
       }
 
+      // optional int32 autolimit_rowcount = 6;
       private int autolimitRowcount_ ;
       /**
+       * <code>optional int32 autolimit_rowcount = 6;</code>
+       *
        * <pre>
+       *
        * Input for indicating the limit on a query's result set.
        * </pre>
-       *
-       * <code>optional int32 autolimit_rowcount = 6;</code>
        */
       public boolean hasAutolimitRowcount() {
         return ((bitField0_ & 0x00000020) == 0x00000020);
       }
       /**
+       * <code>optional int32 autolimit_rowcount = 6;</code>
+       *
        * <pre>
+       *
        * Input for indicating the limit on a query's result set.
        * </pre>
-       *
-       * <code>optional int32 autolimit_rowcount = 6;</code>
        */
       public int getAutolimitRowcount() {
         return autolimitRowcount_;
       }
       /**
+       * <code>optional int32 autolimit_rowcount = 6;</code>
+       *
        * <pre>
+       *
        * Input for indicating the limit on a query's result set.
        * </pre>
-       *
-       * <code>optional int32 autolimit_rowcount = 6;</code>
        */
       public Builder setAutolimitRowcount(int value) {
         bitField0_ |= 0x00000020;
@@ -46359,11 +41943,12 @@
         return this;
       }
       /**
+       * <code>optional int32 autolimit_rowcount = 6;</code>
+       *
        * <pre>
+       *
        * Input for indicating the limit on a query's result set.
        * </pre>
-       *
-       * <code>optional int32 autolimit_rowcount = 6;</code>
        */
       public Builder clearAutolimitRowcount() {
         bitField0_ = (bitField0_ & ~0x00000020);
@@ -46371,220 +41956,179 @@
         onChanged();
         return this;
       }
-      @java.lang.Override
-      public final Builder setUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.setUnknownFields(unknownFields);
-      }
-
-      @java.lang.Override
-      public final Builder mergeUnknownFields(
-          final com.google.protobuf.UnknownFieldSet unknownFields) {
-        return super.mergeUnknownFields(unknownFields);
-      }
-
 
       // @@protoc_insertion_point(builder_scope:exec.user.RunQuery)
     }
 
-    // @@protoc_insertion_point(class_scope:exec.user.RunQuery)
-    private static final org.apache.drill.exec.proto.UserProtos.RunQuery DEFAULT_INSTANCE;
     static {
-      DEFAULT_INSTANCE = new org.apache.drill.exec.proto.UserProtos.RunQuery();
+      defaultInstance = new RunQuery(true);
+      defaultInstance.initFields();
     }
 
-    public static org.apache.drill.exec.proto.UserProtos.RunQuery getDefaultInstance() {
-      return DEFAULT_INSTANCE;
-    }
-
-    @java.lang.Deprecated public static final com.google.protobuf.Parser<RunQuery>
-        PARSER = new com.google.protobuf.AbstractParser<RunQuery>() {
-      @java.lang.Override
-      public RunQuery parsePartialFrom(
-          com.google.protobuf.CodedInputStream input,
-          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
-          throws com.google.protobuf.InvalidProtocolBufferException {
-        return new RunQuery(input, extensionRegistry);
-      }
-    };
-
-    public static com.google.protobuf.Parser<RunQuery> parser() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public com.google.protobuf.Parser<RunQuery> getParserForType() {
-      return PARSER;
-    }
-
-    @java.lang.Override
-    public org.apache.drill.exec.proto.UserProtos.RunQuery getDefaultInstanceForType() {
-      return DEFAULT_INSTANCE;
-    }
-
+    // @@protoc_insertion_point(class_scope:exec.user.RunQuery)
   }
 
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_Property_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_Property_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_UserProperties_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_UserProperties_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_RpcEndpointInfos_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_RpcEndpointInfos_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_UserToBitHandshake_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_UserToBitHandshake_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_RequestResults_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_RequestResults_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetQueryPlanFragments_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetQueryPlanFragments_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_QueryPlanFragments_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_QueryPlanFragments_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_BitToUserHandshake_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_BitToUserHandshake_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_LikeFilter_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_LikeFilter_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetCatalogsReq_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetCatalogsReq_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_CatalogMetadata_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_CatalogMetadata_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetCatalogsResp_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetCatalogsResp_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetSchemasReq_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetSchemasReq_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_SchemaMetadata_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_SchemaMetadata_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetSchemasResp_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetSchemasResp_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetTablesReq_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetTablesReq_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_TableMetadata_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_TableMetadata_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetTablesResp_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetTablesResp_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetColumnsReq_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetColumnsReq_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_ColumnMetadata_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_ColumnMetadata_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetColumnsResp_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetColumnsResp_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_CreatePreparedStatementReq_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_CreatePreparedStatementReq_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_ResultColumnMetadata_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_ResultColumnMetadata_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_PreparedStatementHandle_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_PreparedStatementHandle_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_PreparedStatement_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_PreparedStatement_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_CreatePreparedStatementResp_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_CreatePreparedStatementResp_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetServerMetaReq_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetServerMetaReq_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_ConvertSupport_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_ConvertSupport_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_GetServerMetaResp_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_GetServerMetaResp_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_ServerMeta_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_ServerMeta_fieldAccessorTable;
-  private static final com.google.protobuf.Descriptors.Descriptor
+  private static com.google.protobuf.Descriptors.Descriptor
     internal_static_exec_user_RunQuery_descriptor;
-  private static final 
-    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+  private static
+    com.google.protobuf.GeneratedMessage.FieldAccessorTable
       internal_static_exec_user_RunQuery_fieldAccessorTable;
 
   public static com.google.protobuf.Descriptors.FileDescriptor
       getDescriptor() {
     return descriptor;
   }
-  private static  com.google.protobuf.Descriptors.FileDescriptor
+  private static com.google.protobuf.Descriptors.FileDescriptor
       descriptor;
   static {
     java.lang.String[] descriptorData = {
@@ -46597,7 +42141,7 @@
       "pointInfos\022\014\n\004name\030\001 \001(\t\022\017\n\007version\030\002 \001(" +
       "\t\022\024\n\014majorVersion\030\003 \001(\r\022\024\n\014minorVersion\030" +
       "\004 \001(\r\022\024\n\014patchVersion\030\005 \001(\r\022\023\n\013applicati" +
-      "on\030\006 \001(\t\022\023\n\013buildNumber\030\007 \001(\r\022\030\n\020version" +
+      "on\030\006 \001(\t\022\023\n\013buildNumber\030\007 \001(\r\022\030\n\020version",
       "Qualifier\030\010 \001(\t\"\375\002\n\022UserToBitHandshake\022." +
       "\n\007channel\030\001 \001(\0162\027.exec.shared.RpcChannel" +
       ":\004USER\022\031\n\021support_listening\030\002 \001(\010\022\023\n\013rpc" +
@@ -46607,7 +42151,7 @@
       "ort_complex_types\030\006 \001(\010:\005false\022\036\n\017suppor" +
       "t_timeout\030\007 \001(\010:\005false\0221\n\014client_infos\030\010" +
       " \001(\0132\033.exec.user.RpcEndpointInfos\022,\n\014sas" +
-      "l_support\030\t \001(\0162\026.exec.user.SaslSupport\"" +
+      "l_support\030\t \001(\0162\026.exec.user.SaslSupport\"",
       "S\n\016RequestResults\022&\n\010query_id\030\001 \001(\0132\024.ex" +
       "ec.shared.QueryId\022\031\n\021maximum_responses\030\002" +
       " \001(\005\"g\n\025GetQueryPlanFragments\022\r\n\005query\030\001" +
@@ -46617,7 +42161,7 @@
       "ed.QueryResult.QueryState\022&\n\010query_id\030\002 " +
       "\001(\0132\024.exec.shared.QueryId\0221\n\tfragments\030\003" +
       " \003(\0132\036.exec.bit.control.PlanFragment\022(\n\005" +
-      "error\030\004 \001(\0132\031.exec.shared.DrillPBError\"\253" +
+      "error\030\004 \001(\0132\031.exec.shared.DrillPBError\"\253",
       "\002\n\022BitToUserHandshake\022\023\n\013rpc_version\030\002 \001" +
       "(\005\022*\n\006status\030\003 \001(\0162\032.exec.user.Handshake" +
       "Status\022\017\n\007errorId\030\004 \001(\t\022\024\n\014errorMessage\030" +
@@ -46627,7 +42171,7 @@
       "exec.user.RpcType\022\021\n\tencrypted\030\t \001(\010\022\026\n\016" +
       "maxWrappedSize\030\n \001(\005\"-\n\nLikeFilter\022\017\n\007pa" +
       "ttern\030\001 \001(\t\022\016\n\006escape\030\002 \001(\t\"D\n\016GetCatalo" +
-      "gsReq\0222\n\023catalog_name_filter\030\001 \001(\0132\025.exe" +
+      "gsReq\0222\n\023catalog_name_filter\030\001 \001(\0132\025.exe",
       "c.user.LikeFilter\"M\n\017CatalogMetadata\022\024\n\014" +
       "catalog_name\030\001 \001(\t\022\023\n\013description\030\002 \001(\t\022" +
       "\017\n\007connect\030\003 \001(\t\"\223\001\n\017GetCatalogsResp\022(\n\006" +
@@ -46637,7 +42181,7 @@
       "BError\"v\n\rGetSchemasReq\0222\n\023catalog_name_" +
       "filter\030\001 \001(\0132\025.exec.user.LikeFilter\0221\n\022s" +
       "chema_name_filter\030\002 \001(\0132\025.exec.user.Like" +
-      "Filter\"i\n\016SchemaMetadata\022\024\n\014catalog_name" +
+      "Filter\"i\n\016SchemaMetadata\022\024\n\014catalog_name",
       "\030\001 \001(\t\022\023\n\013schema_name\030\002 \001(\t\022\r\n\005owner\030\003 \001" +
       "(\t\022\014\n\004type\030\004 \001(\t\022\017\n\007mutable\030\005 \001(\t\"\220\001\n\016Ge" +
       "tSchemasResp\022(\n\006status\030\001 \001(\0162\030.exec.user" +
@@ -46647,7 +42191,7 @@
       "\023catalog_name_filter\030\001 \001(\0132\025.exec.user.L" +
       "ikeFilter\0221\n\022schema_name_filter\030\002 \001(\0132\025." +
       "exec.user.LikeFilter\0220\n\021table_name_filte" +
-      "r\030\003 \001(\0132\025.exec.user.LikeFilter\022\031\n\021table_" +
+      "r\030\003 \001(\0132\025.exec.user.LikeFilter\022\031\n\021table_",
       "type_filter\030\004 \003(\t\"\\\n\rTableMetadata\022\024\n\014ca" +
       "talog_name\030\001 \001(\t\022\023\n\013schema_name\030\002 \001(\t\022\022\n" +
       "\ntable_name\030\003 \001(\t\022\014\n\004type\030\004 \001(\t\"\215\001\n\rGetT" +
@@ -46657,7 +42201,7 @@
       "ed.DrillPBError\"\333\001\n\rGetColumnsReq\0222\n\023cat" +
       "alog_name_filter\030\001 \001(\0132\025.exec.user.LikeF" +
       "ilter\0221\n\022schema_name_filter\030\002 \001(\0132\025.exec" +
-      ".user.LikeFilter\0220\n\021table_name_filter\030\003 " +
+      ".user.LikeFilter\0220\n\021table_name_filter\030\003 ",
       "\001(\0132\025.exec.user.LikeFilter\0221\n\022column_nam" +
       "e_filter\030\004 \001(\0132\025.exec.user.LikeFilter\"\251\003" +
       "\n\016ColumnMetadata\022\024\n\014catalog_name\030\001 \001(\t\022\023" +
@@ -46667,7 +42211,7 @@
       "able\030\007 \001(\010\022\021\n\tdata_type\030\010 \001(\t\022\027\n\017char_ma" +
       "x_length\030\t \001(\005\022\031\n\021char_octet_length\030\n \001(" +
       "\005\022\031\n\021numeric_precision\030\013 \001(\005\022\037\n\027numeric_" +
-      "precision_radix\030\014 \001(\005\022\025\n\rnumeric_scale\030\r" +
+      "precision_radix\030\014 \001(\005\022\025\n\rnumeric_scale\030\r",
       " \001(\005\022\033\n\023date_time_precision\030\016 \001(\005\022\025\n\rint" +
       "erval_type\030\017 \001(\t\022\032\n\022interval_precision\030\020" +
       " \001(\005\022\023\n\013column_size\030\021 \001(\005\"\220\001\n\016GetColumns" +
@@ -46677,7 +42221,7 @@
       "DrillPBError\"/\n\032CreatePreparedStatementR" +
       "eq\022\021\n\tsql_query\030\001 \001(\t\"\326\003\n\024ResultColumnMe" +
       "tadata\022\024\n\014catalog_name\030\001 \001(\t\022\023\n\013schema_n" +
-      "ame\030\002 \001(\t\022\022\n\ntable_name\030\003 \001(\t\022\023\n\013column_" +
+      "ame\030\002 \001(\t\022\022\n\ntable_name\030\003 \001(\t\022\023\n\013column_",
       "name\030\004 \001(\t\022\r\n\005label\030\005 \001(\t\022\021\n\tdata_type\030\006" +
       " \001(\t\022\023\n\013is_nullable\030\007 \001(\010\022\021\n\tprecision\030\010" +
       " \001(\005\022\r\n\005scale\030\t \001(\005\022\016\n\006signed\030\n \001(\010\022\024\n\014d" +
@@ -46687,7 +42231,7 @@
       "c.user.ColumnUpdatability\022\026\n\016auto_increm" +
       "ent\030\017 \001(\010\022\030\n\020case_sensitivity\030\020 \001(\010\022\020\n\010s" +
       "ortable\030\021 \001(\010\022\022\n\nclass_name\030\022 \001(\t\022\023\n\013is_" +
-      "currency\030\024 \001(\010\".\n\027PreparedStatementHandl" +
+      "currency\030\024 \001(\010\".\n\027PreparedStatementHandl",
       "e\022\023\n\013server_info\030\001 \001(\014\"\200\001\n\021PreparedState" +
       "ment\0220\n\007columns\030\001 \003(\0132\037.exec.user.Result" +
       "ColumnMetadata\0229\n\rserver_handle\030\002 \001(\0132\"." +
@@ -46697,7 +42241,7 @@
       "statement\030\002 \001(\0132\034.exec.user.PreparedStat" +
       "ement\022(\n\005error\030\003 \001(\0132\031.exec.shared.Drill" +
       "PBError\"\022\n\020GetServerMetaReq\"P\n\016ConvertSu" +
-      "pport\022\037\n\004from\030\001 \002(\0162\021.common.MinorType\022\035" +
+      "pport\022\037\n\004from\030\001 \002(\0162\021.common.MinorType\022\035",
       "\n\002to\030\002 \002(\0162\021.common.MinorType\"\223\001\n\021GetSer" +
       "verMetaResp\022(\n\006status\030\001 \001(\0162\030.exec.user." +
       "RequestStatus\022*\n\013server_meta\030\002 \001(\0132\025.exe" +
@@ -46707,7 +42251,7 @@
       "ed_in_max_row_size\030\002 \001(\010\022\030\n\020catalog_at_s" +
       "tart\030\003 \001(\010\022\031\n\021catalog_separator\030\004 \001(\t\022\024\n" +
       "\014catalog_term\030\005 \001(\t\0222\n\017collate_support\030\006" +
-      " \003(\0162\031.exec.user.CollateSupport\022!\n\031colum" +
+      " \003(\0162\031.exec.user.CollateSupport\022!\n\031colum",
       "n_aliasing_supported\030\007 \001(\010\0222\n\017convert_su" +
       "pport\030\010 \003(\0132\031.exec.user.ConvertSupport\022E" +
       "\n\031correlation_names_support\030\t \001(\0162\".exec" +
@@ -46717,7 +42261,7 @@
       "alsSupport\0223\n\020group_by_support\030\014 \001(\0162\031.e" +
       "xec.user.GroupBySupport\0226\n\021identifier_ca" +
       "sing\030\r \001(\0162\033.exec.user.IdentifierCasing\022" +
-      "\037\n\027identifier_quote_string\030\016 \001(\t\022$\n\034like" +
+      "\037\n\027identifier_quote_string\030\016 \001(\t\022$\n\034like",
       "_escape_clause_supported\030\017 \001(\010\022!\n\031max_bi" +
       "nary_literal_length\030\020 \001(\r\022\037\n\027max_catalog" +
       "_name_length\030\021 \001(\r\022\037\n\027max_char_literal_l" +
@@ -46727,7 +42271,7 @@
       "umns_in_select\030\026 \001(\r\022\036\n\026max_cursor_name_" +
       "length\030\027 \001(\r\022\034\n\024max_logical_lob_size\030\030 \001" +
       "(\r\022\024\n\014max_row_size\030\031 \001(\r\022\036\n\026max_schema_n" +
-      "ame_length\030\032 \001(\r\022\034\n\024max_statement_length" +
+      "ame_length\030\032 \001(\r\022\034\n\024max_statement_length",
       "\030\033 \001(\r\022\026\n\016max_statements\030\034 \001(\r\022\035\n\025max_ta" +
       "ble_name_length\030\035 \001(\r\022\034\n\024max_tables_in_s" +
       "elect\030\036 \001(\r\022\034\n\024max_user_name_length\030\037 \001(" +
@@ -46737,7 +42281,7 @@
       "\n\020order_by_support\030# \003(\0162\031.exec.user.Ord" +
       "erBySupport\0227\n\022outer_join_support\030$ \003(\0162" +
       "\033.exec.user.OuterJoinSupport\022=\n\030quoted_i" +
-      "dentifier_casing\030% \001(\0162\033.exec.user.Ident" +
+      "dentifier_casing\030% \001(\0162\033.exec.user.Ident",
       "ifierCasing\022\021\n\tread_only\030& \001(\010\022\023\n\013schema" +
       "_term\030\' \001(\t\022\034\n\024search_escape_string\030( \001(" +
       "\t\022#\n\033select_for_update_supported\030) \001(\010\022\032" +
@@ -46747,7 +42291,7 @@
       "ySupport\022\030\n\020system_functions\030. \003(\t\022\022\n\nta" +
       "ble_term\030/ \001(\t\022\035\n\025transaction_supported\030" +
       "0 \001(\010\022.\n\runion_support\0301 \003(\0162\027.exec.user" +
-      ".UnionSupport\022\026\n\016current_schema\0302 \001(\t\"\207\002" +
+      ".UnionSupport\022\026\n\016current_schema\0302 \001(\t\"\207\002",
       "\n\010RunQuery\0221\n\014results_mode\030\001 \001(\0162\033.exec." +
       "user.QueryResultsMode\022$\n\004type\030\002 \001(\0162\026.ex" +
       "ec.shared.QueryType\022\014\n\004plan\030\003 \001(\t\0221\n\tfra" +
@@ -46757,7 +42301,7 @@
       "utolimit_rowcount\030\006 \001(\005*\320\003\n\007RpcType\022\r\n\tH" +
       "ANDSHAKE\020\000\022\007\n\003ACK\020\001\022\013\n\007GOODBYE\020\002\022\r\n\tRUN_" +
       "QUERY\020\003\022\020\n\014CANCEL_QUERY\020\004\022\023\n\017REQUEST_RES" +
-      "ULTS\020\005\022\027\n\023RESUME_PAUSED_QUERY\020\013\022\034\n\030GET_Q" +
+      "ULTS\020\005\022\027\n\023RESUME_PAUSED_QUERY\020\013\022\034\n\030GET_Q",
       "UERY_PLAN_FRAGMENTS\020\014\022\020\n\014GET_CATALOGS\020\016\022" +
       "\017\n\013GET_SCHEMAS\020\017\022\016\n\nGET_TABLES\020\020\022\017\n\013GET_" +
       "COLUMNS\020\021\022\035\n\031CREATE_PREPARED_STATEMENT\020\026" +
@@ -46767,7 +42311,7 @@
       "\022\013\n\007COLUMNS\020\025\022\026\n\022PREPARED_STATEMENT\020\027\022\017\n" +
       "\013SERVER_META\020\t\022\020\n\014QUERY_RESULT\020\n\022\020\n\014SASL" +
       "_MESSAGE\020\030*H\n\013SaslSupport\022\030\n\024UNKNOWN_SAS" +
-      "L_SUPPORT\020\000\022\r\n\tSASL_AUTH\020\001\022\020\n\014SASL_PRIVA" +
+      "L_SUPPORT\020\000\022\r\n\tSASL_AUTH\020\001\022\020\n\014SASL_PRIVA",
       "CY\020\002*#\n\020QueryResultsMode\022\017\n\013STREAM_FULL\020" +
       "\001*q\n\017HandshakeStatus\022\013\n\007SUCCESS\020\001\022\030\n\024RPC" +
       "_VERSION_MISMATCH\020\002\022\017\n\013AUTH_FAILED\020\003\022\023\n\017" +
@@ -46777,7 +42321,7 @@
       "chability\022\031\n\025UNKNOWN_SEARCHABILITY\020\000\022\010\n\004" +
       "NONE\020\001\022\010\n\004CHAR\020\002\022\n\n\006NUMBER\020\003\022\007\n\003ALL\020\004*K\n" +
       "\022ColumnUpdatability\022\030\n\024UNKNOWN_UPDATABIL" +
-      "ITY\020\000\022\r\n\tREAD_ONLY\020\001\022\014\n\010WRITABLE\020\002*1\n\016Co" +
+      "ITY\020\000\022\r\n\tREAD_ONLY\020\001\022\014\n\010WRITABLE\020\002*1\n\016Co",
       "llateSupport\022\016\n\nCS_UNKNOWN\020\000\022\017\n\013CS_GROUP" +
       "_BY\020\001*J\n\027CorrelationNamesSupport\022\013\n\007CN_N" +
       "ONE\020\001\022\026\n\022CN_DIFFERENT_NAMES\020\002\022\n\n\006CN_ANY\020" +
@@ -46787,7 +42331,7 @@
       "TERVAL_MONTH\020\005\022\023\n\017DL_INTERVAL_DAY\020\006\022\024\n\020D" +
       "L_INTERVAL_HOUR\020\007\022\026\n\022DL_INTERVAL_MINUTE\020" +
       "\010\022\026\n\022DL_INTERVAL_SECOND\020\t\022\035\n\031DL_INTERVAL" +
-      "_YEAR_TO_MONTH\020\n\022\033\n\027DL_INTERVAL_DAY_TO_H" +
+      "_YEAR_TO_MONTH\020\n\022\033\n\027DL_INTERVAL_DAY_TO_H",
       "OUR\020\013\022\035\n\031DL_INTERVAL_DAY_TO_MINUTE\020\014\022\035\n\031" +
       "DL_INTERVAL_DAY_TO_SECOND\020\r\022\036\n\032DL_INTERV" +
       "AL_HOUR_TO_MINUTE\020\016\022\036\n\032DL_INTERVAL_HOUR_" +
@@ -46797,7 +42341,7 @@
       "\n\014GB_UNRELATED\020\004*x\n\020IdentifierCasing\022\016\n\n" +
       "IC_UNKNOWN\020\000\022\023\n\017IC_STORES_LOWER\020\001\022\023\n\017IC_" +
       "STORES_MIXED\020\002\022\023\n\017IC_STORES_UPPER\020\003\022\025\n\021I" +
-      "C_SUPPORTS_MIXED\020\004*X\n\rNullCollation\022\016\n\nN" +
+      "C_SUPPORTS_MIXED\020\004*X\n\rNullCollation\022\016\n\nN",
       "C_UNKNOWN\020\000\022\017\n\013NC_AT_START\020\001\022\r\n\tNC_AT_EN" +
       "D\020\002\022\013\n\007NC_HIGH\020\003\022\n\n\006NC_LOW\020\004*E\n\016OrderByS" +
       "upport\022\016\n\nOB_UNKNOWN\020\000\022\020\n\014OB_UNRELATED\020\001" +
@@ -46807,20 +42351,206 @@
       "T_ORDERED\020\005\022\014\n\010OJ_INNER\020\006\022\031\n\025OJ_ALL_COMP" +
       "ARISON_OPS\020\007*\204\001\n\017SubQuerySupport\022\016\n\nSQ_U" +
       "NKNOWN\020\000\022\021\n\rSQ_CORRELATED\020\001\022\024\n\020SQ_IN_COM" +
-      "PARISON\020\002\022\020\n\014SQ_IN_EXISTS\020\003\022\020\n\014SQ_IN_INS" +
+      "PARISON\020\002\022\020\n\014SQ_IN_EXISTS\020\003\022\020\n\014SQ_IN_INS",
       "ERT\020\004\022\024\n\020SQ_IN_QUANTIFIED\020\005*;\n\014UnionSupp" +
       "ort\022\r\n\tU_UNKNOWN\020\000\022\013\n\007U_UNION\020\001\022\017\n\013U_UNI" +
       "ON_ALL\020\002B+\n\033org.apache.drill.exec.protoB" +
       "\nUserProtosH\001"
     };
     com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
-        new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
-          public com.google.protobuf.ExtensionRegistry assignDescriptors(
-              com.google.protobuf.Descriptors.FileDescriptor root) {
-            descriptor = root;
-            return null;
-          }
-        };
+      new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() {
+        public com.google.protobuf.ExtensionRegistry assignDescriptors(
+            com.google.protobuf.Descriptors.FileDescriptor root) {
+          descriptor = root;
+          internal_static_exec_user_Property_descriptor =
+            getDescriptor().getMessageTypes().get(0);
+          internal_static_exec_user_Property_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_Property_descriptor,
+              new java.lang.String[] { "Key", "Value", });
+          internal_static_exec_user_UserProperties_descriptor =
+            getDescriptor().getMessageTypes().get(1);
+          internal_static_exec_user_UserProperties_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_UserProperties_descriptor,
+              new java.lang.String[] { "Properties", });
+          internal_static_exec_user_RpcEndpointInfos_descriptor =
+            getDescriptor().getMessageTypes().get(2);
+          internal_static_exec_user_RpcEndpointInfos_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_RpcEndpointInfos_descriptor,
+              new java.lang.String[] { "Name", "Version", "MajorVersion", "MinorVersion", "PatchVersion", "Application", "BuildNumber", "VersionQualifier", });
+          internal_static_exec_user_UserToBitHandshake_descriptor =
+            getDescriptor().getMessageTypes().get(3);
+          internal_static_exec_user_UserToBitHandshake_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_UserToBitHandshake_descriptor,
+              new java.lang.String[] { "Channel", "SupportListening", "RpcVersion", "Credentials", "Properties", "SupportComplexTypes", "SupportTimeout", "ClientInfos", "SaslSupport", });
+          internal_static_exec_user_RequestResults_descriptor =
+            getDescriptor().getMessageTypes().get(4);
+          internal_static_exec_user_RequestResults_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_RequestResults_descriptor,
+              new java.lang.String[] { "QueryId", "MaximumResponses", });
+          internal_static_exec_user_GetQueryPlanFragments_descriptor =
+            getDescriptor().getMessageTypes().get(5);
+          internal_static_exec_user_GetQueryPlanFragments_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetQueryPlanFragments_descriptor,
+              new java.lang.String[] { "Query", "Type", "SplitPlan", });
+          internal_static_exec_user_QueryPlanFragments_descriptor =
+            getDescriptor().getMessageTypes().get(6);
+          internal_static_exec_user_QueryPlanFragments_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_QueryPlanFragments_descriptor,
+              new java.lang.String[] { "Status", "QueryId", "Fragments", "Error", });
+          internal_static_exec_user_BitToUserHandshake_descriptor =
+            getDescriptor().getMessageTypes().get(7);
+          internal_static_exec_user_BitToUserHandshake_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_BitToUserHandshake_descriptor,
+              new java.lang.String[] { "RpcVersion", "Status", "ErrorId", "ErrorMessage", "ServerInfos", "AuthenticationMechanisms", "SupportedMethods", "Encrypted", "MaxWrappedSize", });
+          internal_static_exec_user_LikeFilter_descriptor =
+            getDescriptor().getMessageTypes().get(8);
+          internal_static_exec_user_LikeFilter_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_LikeFilter_descriptor,
+              new java.lang.String[] { "Pattern", "Escape", });
+          internal_static_exec_user_GetCatalogsReq_descriptor =
+            getDescriptor().getMessageTypes().get(9);
+          internal_static_exec_user_GetCatalogsReq_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetCatalogsReq_descriptor,
+              new java.lang.String[] { "CatalogNameFilter", });
+          internal_static_exec_user_CatalogMetadata_descriptor =
+            getDescriptor().getMessageTypes().get(10);
+          internal_static_exec_user_CatalogMetadata_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_CatalogMetadata_descriptor,
+              new java.lang.String[] { "CatalogName", "Description", "Connect", });
+          internal_static_exec_user_GetCatalogsResp_descriptor =
+            getDescriptor().getMessageTypes().get(11);
+          internal_static_exec_user_GetCatalogsResp_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetCatalogsResp_descriptor,
+              new java.lang.String[] { "Status", "Catalogs", "Error", });
+          internal_static_exec_user_GetSchemasReq_descriptor =
+            getDescriptor().getMessageTypes().get(12);
+          internal_static_exec_user_GetSchemasReq_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetSchemasReq_descriptor,
+              new java.lang.String[] { "CatalogNameFilter", "SchemaNameFilter", });
+          internal_static_exec_user_SchemaMetadata_descriptor =
+            getDescriptor().getMessageTypes().get(13);
+          internal_static_exec_user_SchemaMetadata_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_SchemaMetadata_descriptor,
+              new java.lang.String[] { "CatalogName", "SchemaName", "Owner", "Type", "Mutable", });
+          internal_static_exec_user_GetSchemasResp_descriptor =
+            getDescriptor().getMessageTypes().get(14);
+          internal_static_exec_user_GetSchemasResp_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetSchemasResp_descriptor,
+              new java.lang.String[] { "Status", "Schemas", "Error", });
+          internal_static_exec_user_GetTablesReq_descriptor =
+            getDescriptor().getMessageTypes().get(15);
+          internal_static_exec_user_GetTablesReq_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetTablesReq_descriptor,
+              new java.lang.String[] { "CatalogNameFilter", "SchemaNameFilter", "TableNameFilter", "TableTypeFilter", });
+          internal_static_exec_user_TableMetadata_descriptor =
+            getDescriptor().getMessageTypes().get(16);
+          internal_static_exec_user_TableMetadata_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_TableMetadata_descriptor,
+              new java.lang.String[] { "CatalogName", "SchemaName", "TableName", "Type", });
+          internal_static_exec_user_GetTablesResp_descriptor =
+            getDescriptor().getMessageTypes().get(17);
+          internal_static_exec_user_GetTablesResp_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetTablesResp_descriptor,
+              new java.lang.String[] { "Status", "Tables", "Error", });
+          internal_static_exec_user_GetColumnsReq_descriptor =
+            getDescriptor().getMessageTypes().get(18);
+          internal_static_exec_user_GetColumnsReq_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetColumnsReq_descriptor,
+              new java.lang.String[] { "CatalogNameFilter", "SchemaNameFilter", "TableNameFilter", "ColumnNameFilter", });
+          internal_static_exec_user_ColumnMetadata_descriptor =
+            getDescriptor().getMessageTypes().get(19);
+          internal_static_exec_user_ColumnMetadata_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_ColumnMetadata_descriptor,
+              new java.lang.String[] { "CatalogName", "SchemaName", "TableName", "ColumnName", "OrdinalPosition", "DefaultValue", "IsNullable", "DataType", "CharMaxLength", "CharOctetLength", "NumericPrecision", "NumericPrecisionRadix", "NumericScale", "DateTimePrecision", "IntervalType", "IntervalPrecision", "ColumnSize", });
+          internal_static_exec_user_GetColumnsResp_descriptor =
+            getDescriptor().getMessageTypes().get(20);
+          internal_static_exec_user_GetColumnsResp_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetColumnsResp_descriptor,
+              new java.lang.String[] { "Status", "Columns", "Error", });
+          internal_static_exec_user_CreatePreparedStatementReq_descriptor =
+            getDescriptor().getMessageTypes().get(21);
+          internal_static_exec_user_CreatePreparedStatementReq_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_CreatePreparedStatementReq_descriptor,
+              new java.lang.String[] { "SqlQuery", });
+          internal_static_exec_user_ResultColumnMetadata_descriptor =
+            getDescriptor().getMessageTypes().get(22);
+          internal_static_exec_user_ResultColumnMetadata_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_ResultColumnMetadata_descriptor,
+              new java.lang.String[] { "CatalogName", "SchemaName", "TableName", "ColumnName", "Label", "DataType", "IsNullable", "Precision", "Scale", "Signed", "DisplaySize", "IsAliased", "Searchability", "Updatability", "AutoIncrement", "CaseSensitivity", "Sortable", "ClassName", "IsCurrency", });
+          internal_static_exec_user_PreparedStatementHandle_descriptor =
+            getDescriptor().getMessageTypes().get(23);
+          internal_static_exec_user_PreparedStatementHandle_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_PreparedStatementHandle_descriptor,
+              new java.lang.String[] { "ServerInfo", });
+          internal_static_exec_user_PreparedStatement_descriptor =
+            getDescriptor().getMessageTypes().get(24);
+          internal_static_exec_user_PreparedStatement_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_PreparedStatement_descriptor,
+              new java.lang.String[] { "Columns", "ServerHandle", });
+          internal_static_exec_user_CreatePreparedStatementResp_descriptor =
+            getDescriptor().getMessageTypes().get(25);
+          internal_static_exec_user_CreatePreparedStatementResp_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_CreatePreparedStatementResp_descriptor,
+              new java.lang.String[] { "Status", "PreparedStatement", "Error", });
+          internal_static_exec_user_GetServerMetaReq_descriptor =
+            getDescriptor().getMessageTypes().get(26);
+          internal_static_exec_user_GetServerMetaReq_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetServerMetaReq_descriptor,
+              new java.lang.String[] { });
+          internal_static_exec_user_ConvertSupport_descriptor =
+            getDescriptor().getMessageTypes().get(27);
+          internal_static_exec_user_ConvertSupport_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_ConvertSupport_descriptor,
+              new java.lang.String[] { "From", "To", });
+          internal_static_exec_user_GetServerMetaResp_descriptor =
+            getDescriptor().getMessageTypes().get(28);
+          internal_static_exec_user_GetServerMetaResp_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_GetServerMetaResp_descriptor,
+              new java.lang.String[] { "Status", "ServerMeta", "Error", });
+          internal_static_exec_user_ServerMeta_descriptor =
+            getDescriptor().getMessageTypes().get(29);
+          internal_static_exec_user_ServerMeta_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_ServerMeta_descriptor,
+              new java.lang.String[] { "AllTablesSelectable", "BlobIncludedInMaxRowSize", "CatalogAtStart", "CatalogSeparator", "CatalogTerm", "CollateSupport", "ColumnAliasingSupported", "ConvertSupport", "CorrelationNamesSupport", "DateTimeFunctions", "DateTimeLiteralsSupport", "GroupBySupport", "IdentifierCasing", "IdentifierQuoteString", "LikeEscapeClauseSupported", "MaxBinaryLiteralLength", "MaxCatalogNameLength", "MaxCharLiteralLength", "MaxColumnNameLength", "MaxColumnsInGroupBy", "MaxColumnsInOrderBy", "MaxColumnsInSelect", "MaxCursorNameLength", "MaxLogicalLobSize", "MaxRowSize", "MaxSchemaNameLength", "MaxStatementLength", "MaxStatements", "MaxTableNameLength", "MaxTablesInSelect", "MaxUserNameLength", "NullCollation", "NullPlusNonNullEqualsNull", "NumericFunctions", "OrderBySupport", "OuterJoinSupport", "QuotedIdentifierCasing", "ReadOnly", "SchemaTerm", "SearchEscapeString", "SelectForUpdateSupported", "SpecialCharacters", "SqlKeywords", "StringFunctions", "SubquerySupport", "SystemFunctions", "TableTerm", "TransactionSupported", "UnionSupport", "CurrentSchema", });
+          internal_static_exec_user_RunQuery_descriptor =
+            getDescriptor().getMessageTypes().get(30);
+          internal_static_exec_user_RunQuery_fieldAccessorTable = new
+            com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+              internal_static_exec_user_RunQuery_descriptor,
+              new java.lang.String[] { "ResultsMode", "Type", "Plan", "Fragments", "PreparedStatementHandle", "AutolimitRowcount", });
+          return null;
+        }
+      };
     com.google.protobuf.Descriptors.FileDescriptor
       .internalBuildGeneratedFileFrom(descriptorData,
         new com.google.protobuf.Descriptors.FileDescriptor[] {
@@ -46831,198 +42561,6 @@
           org.apache.drill.exec.proto.BitControl.getDescriptor(),
           org.apache.drill.exec.proto.ExecProtos.getDescriptor(),
         }, assigner);
-    internal_static_exec_user_Property_descriptor =
-      getDescriptor().getMessageTypes().get(0);
-    internal_static_exec_user_Property_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_Property_descriptor,
-        new java.lang.String[] { "Key", "Value", });
-    internal_static_exec_user_UserProperties_descriptor =
-      getDescriptor().getMessageTypes().get(1);
-    internal_static_exec_user_UserProperties_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_UserProperties_descriptor,
-        new java.lang.String[] { "Properties", });
-    internal_static_exec_user_RpcEndpointInfos_descriptor =
-      getDescriptor().getMessageTypes().get(2);
-    internal_static_exec_user_RpcEndpointInfos_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_RpcEndpointInfos_descriptor,
-        new java.lang.String[] { "Name", "Version", "MajorVersion", "MinorVersion", "PatchVersion", "Application", "BuildNumber", "VersionQualifier", });
-    internal_static_exec_user_UserToBitHandshake_descriptor =
-      getDescriptor().getMessageTypes().get(3);
-    internal_static_exec_user_UserToBitHandshake_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_UserToBitHandshake_descriptor,
-        new java.lang.String[] { "Channel", "SupportListening", "RpcVersion", "Credentials", "Properties", "SupportComplexTypes", "SupportTimeout", "ClientInfos", "SaslSupport", });
-    internal_static_exec_user_RequestResults_descriptor =
-      getDescriptor().getMessageTypes().get(4);
-    internal_static_exec_user_RequestResults_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_RequestResults_descriptor,
-        new java.lang.String[] { "QueryId", "MaximumResponses", });
-    internal_static_exec_user_GetQueryPlanFragments_descriptor =
-      getDescriptor().getMessageTypes().get(5);
-    internal_static_exec_user_GetQueryPlanFragments_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetQueryPlanFragments_descriptor,
-        new java.lang.String[] { "Query", "Type", "SplitPlan", });
-    internal_static_exec_user_QueryPlanFragments_descriptor =
-      getDescriptor().getMessageTypes().get(6);
-    internal_static_exec_user_QueryPlanFragments_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_QueryPlanFragments_descriptor,
-        new java.lang.String[] { "Status", "QueryId", "Fragments", "Error", });
-    internal_static_exec_user_BitToUserHandshake_descriptor =
-      getDescriptor().getMessageTypes().get(7);
-    internal_static_exec_user_BitToUserHandshake_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_BitToUserHandshake_descriptor,
-        new java.lang.String[] { "RpcVersion", "Status", "ErrorId", "ErrorMessage", "ServerInfos", "AuthenticationMechanisms", "SupportedMethods", "Encrypted", "MaxWrappedSize", });
-    internal_static_exec_user_LikeFilter_descriptor =
-      getDescriptor().getMessageTypes().get(8);
-    internal_static_exec_user_LikeFilter_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_LikeFilter_descriptor,
-        new java.lang.String[] { "Pattern", "Escape", });
-    internal_static_exec_user_GetCatalogsReq_descriptor =
-      getDescriptor().getMessageTypes().get(9);
-    internal_static_exec_user_GetCatalogsReq_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetCatalogsReq_descriptor,
-        new java.lang.String[] { "CatalogNameFilter", });
-    internal_static_exec_user_CatalogMetadata_descriptor =
-      getDescriptor().getMessageTypes().get(10);
-    internal_static_exec_user_CatalogMetadata_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_CatalogMetadata_descriptor,
-        new java.lang.String[] { "CatalogName", "Description", "Connect", });
-    internal_static_exec_user_GetCatalogsResp_descriptor =
-      getDescriptor().getMessageTypes().get(11);
-    internal_static_exec_user_GetCatalogsResp_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetCatalogsResp_descriptor,
-        new java.lang.String[] { "Status", "Catalogs", "Error", });
-    internal_static_exec_user_GetSchemasReq_descriptor =
-      getDescriptor().getMessageTypes().get(12);
-    internal_static_exec_user_GetSchemasReq_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetSchemasReq_descriptor,
-        new java.lang.String[] { "CatalogNameFilter", "SchemaNameFilter", });
-    internal_static_exec_user_SchemaMetadata_descriptor =
-      getDescriptor().getMessageTypes().get(13);
-    internal_static_exec_user_SchemaMetadata_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_SchemaMetadata_descriptor,
-        new java.lang.String[] { "CatalogName", "SchemaName", "Owner", "Type", "Mutable", });
-    internal_static_exec_user_GetSchemasResp_descriptor =
-      getDescriptor().getMessageTypes().get(14);
-    internal_static_exec_user_GetSchemasResp_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetSchemasResp_descriptor,
-        new java.lang.String[] { "Status", "Schemas", "Error", });
-    internal_static_exec_user_GetTablesReq_descriptor =
-      getDescriptor().getMessageTypes().get(15);
-    internal_static_exec_user_GetTablesReq_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetTablesReq_descriptor,
-        new java.lang.String[] { "CatalogNameFilter", "SchemaNameFilter", "TableNameFilter", "TableTypeFilter", });
-    internal_static_exec_user_TableMetadata_descriptor =
-      getDescriptor().getMessageTypes().get(16);
-    internal_static_exec_user_TableMetadata_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_TableMetadata_descriptor,
-        new java.lang.String[] { "CatalogName", "SchemaName", "TableName", "Type", });
-    internal_static_exec_user_GetTablesResp_descriptor =
-      getDescriptor().getMessageTypes().get(17);
-    internal_static_exec_user_GetTablesResp_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetTablesResp_descriptor,
-        new java.lang.String[] { "Status", "Tables", "Error", });
-    internal_static_exec_user_GetColumnsReq_descriptor =
-      getDescriptor().getMessageTypes().get(18);
-    internal_static_exec_user_GetColumnsReq_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetColumnsReq_descriptor,
-        new java.lang.String[] { "CatalogNameFilter", "SchemaNameFilter", "TableNameFilter", "ColumnNameFilter", });
-    internal_static_exec_user_ColumnMetadata_descriptor =
-      getDescriptor().getMessageTypes().get(19);
-    internal_static_exec_user_ColumnMetadata_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_ColumnMetadata_descriptor,
-        new java.lang.String[] { "CatalogName", "SchemaName", "TableName", "ColumnName", "OrdinalPosition", "DefaultValue", "IsNullable", "DataType", "CharMaxLength", "CharOctetLength", "NumericPrecision", "NumericPrecisionRadix", "NumericScale", "DateTimePrecision", "IntervalType", "IntervalPrecision", "ColumnSize", });
-    internal_static_exec_user_GetColumnsResp_descriptor =
-      getDescriptor().getMessageTypes().get(20);
-    internal_static_exec_user_GetColumnsResp_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetColumnsResp_descriptor,
-        new java.lang.String[] { "Status", "Columns", "Error", });
-    internal_static_exec_user_CreatePreparedStatementReq_descriptor =
-      getDescriptor().getMessageTypes().get(21);
-    internal_static_exec_user_CreatePreparedStatementReq_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_CreatePreparedStatementReq_descriptor,
-        new java.lang.String[] { "SqlQuery", });
-    internal_static_exec_user_ResultColumnMetadata_descriptor =
-      getDescriptor().getMessageTypes().get(22);
-    internal_static_exec_user_ResultColumnMetadata_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_ResultColumnMetadata_descriptor,
-        new java.lang.String[] { "CatalogName", "SchemaName", "TableName", "ColumnName", "Label", "DataType", "IsNullable", "Precision", "Scale", "Signed", "DisplaySize", "IsAliased", "Searchability", "Updatability", "AutoIncrement", "CaseSensitivity", "Sortable", "ClassName", "IsCurrency", });
-    internal_static_exec_user_PreparedStatementHandle_descriptor =
-      getDescriptor().getMessageTypes().get(23);
-    internal_static_exec_user_PreparedStatementHandle_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_PreparedStatementHandle_descriptor,
-        new java.lang.String[] { "ServerInfo", });
-    internal_static_exec_user_PreparedStatement_descriptor =
-      getDescriptor().getMessageTypes().get(24);
-    internal_static_exec_user_PreparedStatement_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_PreparedStatement_descriptor,
-        new java.lang.String[] { "Columns", "ServerHandle", });
-    internal_static_exec_user_CreatePreparedStatementResp_descriptor =
-      getDescriptor().getMessageTypes().get(25);
-    internal_static_exec_user_CreatePreparedStatementResp_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_CreatePreparedStatementResp_descriptor,
-        new java.lang.String[] { "Status", "PreparedStatement", "Error", });
-    internal_static_exec_user_GetServerMetaReq_descriptor =
-      getDescriptor().getMessageTypes().get(26);
-    internal_static_exec_user_GetServerMetaReq_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetServerMetaReq_descriptor,
-        new java.lang.String[] { });
-    internal_static_exec_user_ConvertSupport_descriptor =
-      getDescriptor().getMessageTypes().get(27);
-    internal_static_exec_user_ConvertSupport_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_ConvertSupport_descriptor,
-        new java.lang.String[] { "From", "To", });
-    internal_static_exec_user_GetServerMetaResp_descriptor =
-      getDescriptor().getMessageTypes().get(28);
-    internal_static_exec_user_GetServerMetaResp_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_GetServerMetaResp_descriptor,
-        new java.lang.String[] { "Status", "ServerMeta", "Error", });
-    internal_static_exec_user_ServerMeta_descriptor =
-      getDescriptor().getMessageTypes().get(29);
-    internal_static_exec_user_ServerMeta_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_ServerMeta_descriptor,
-        new java.lang.String[] { "AllTablesSelectable", "BlobIncludedInMaxRowSize", "CatalogAtStart", "CatalogSeparator", "CatalogTerm", "CollateSupport", "ColumnAliasingSupported", "ConvertSupport", "CorrelationNamesSupport", "DateTimeFunctions", "DateTimeLiteralsSupport", "GroupBySupport", "IdentifierCasing", "IdentifierQuoteString", "LikeEscapeClauseSupported", "MaxBinaryLiteralLength", "MaxCatalogNameLength", "MaxCharLiteralLength", "MaxColumnNameLength", "MaxColumnsInGroupBy", "MaxColumnsInOrderBy", "MaxColumnsInSelect", "MaxCursorNameLength", "MaxLogicalLobSize", "MaxRowSize", "MaxSchemaNameLength", "MaxStatementLength", "MaxStatements", "MaxTableNameLength", "MaxTablesInSelect", "MaxUserNameLength", "NullCollation", "NullPlusNonNullEqualsNull", "NumericFunctions", "OrderBySupport", "OuterJoinSupport", "QuotedIdentifierCasing", "ReadOnly", "SchemaTerm", "SearchEscapeString", "SelectForUpdateSupported", "SpecialCharacters", "SqlKeywords", "StringFunctions", "SubquerySupport", "SystemFunctions", "TableTerm", "TransactionSupported", "UnionSupport", "CurrentSchema", });
-    internal_static_exec_user_RunQuery_descriptor =
-      getDescriptor().getMessageTypes().get(30);
-    internal_static_exec_user_RunQuery_fieldAccessorTable = new
-      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
-        internal_static_exec_user_RunQuery_descriptor,
-        new java.lang.String[] { "ResultsMode", "Type", "Plan", "Fragments", "PreparedStatementHandle", "AutolimitRowcount", });
-    org.apache.drill.exec.proto.SchemaDefProtos.getDescriptor();
-    org.apache.drill.common.types.TypeProtos.getDescriptor();
-    org.apache.drill.exec.proto.UserBitShared.getDescriptor();
-    org.apache.drill.exec.proto.BitData.getDescriptor();
-    org.apache.drill.exec.proto.BitControl.getDescriptor();
-    org.apache.drill.exec.proto.ExecProtos.getDescriptor();
   }
 
   // @@protoc_insertion_point(outer_class_scope)