You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by am...@apache.org on 2015/12/21 09:45:56 UTC

[06/23] hive git commit: HIVE-11487 : Adds getNumPartitionsByFilter api in metastore api

http://git-wip-us.apache.org/repos/asf/hive/blob/ccb30e3e/service/src/gen/thrift/gen-cpp/TCLIService_types.cpp
----------------------------------------------------------------------
diff --git a/service/src/gen/thrift/gen-cpp/TCLIService_types.cpp b/service/src/gen/thrift/gen-cpp/TCLIService_types.cpp
index b852379..742cfdc 100644
--- a/service/src/gen/thrift/gen-cpp/TCLIService_types.cpp
+++ b/service/src/gen/thrift/gen-cpp/TCLIService_types.cpp
@@ -1,5 +1,5 @@
 /**
- * Autogenerated by Thrift Compiler (0.9.3)
+ * Autogenerated by Thrift Compiler (0.9.2)
  *
  * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
  *  @generated
@@ -280,9 +280,11 @@ void TTypeQualifierValue::__set_stringValue(const std::string& val) {
 __isset.stringValue = true;
 }
 
+const char* TTypeQualifierValue::ascii_fingerprint = "A7801670116150C65ACA43E6F679BA79";
+const uint8_t TTypeQualifierValue::binary_fingerprint[16] = {0xA7,0x80,0x16,0x70,0x11,0x61,0x50,0xC6,0x5A,0xCA,0x43,0xE6,0xF6,0x79,0xBA,0x79};
+
 uint32_t TTypeQualifierValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -331,7 +333,7 @@ uint32_t TTypeQualifierValue::read(::apache::thrift::protocol::TProtocol* iprot)
 
 uint32_t TTypeQualifierValue::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TTypeQualifierValue");
 
   if (this->__isset.i32Value) {
@@ -346,6 +348,7 @@ uint32_t TTypeQualifierValue::write(::apache::thrift::protocol::TProtocol* oprot
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -367,12 +370,13 @@ TTypeQualifierValue& TTypeQualifierValue::operator=(const TTypeQualifierValue& o
   __isset = other1.__isset;
   return *this;
 }
-void TTypeQualifierValue::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TTypeQualifierValue& obj) {
+  using apache::thrift::to_string;
   out << "TTypeQualifierValue(";
-  out << "i32Value="; (__isset.i32Value ? (out << to_string(i32Value)) : (out << "<null>"));
-  out << ", " << "stringValue="; (__isset.stringValue ? (out << to_string(stringValue)) : (out << "<null>"));
+  out << "i32Value="; (obj.__isset.i32Value ? (out << to_string(obj.i32Value)) : (out << "<null>"));
+  out << ", " << "stringValue="; (obj.__isset.stringValue ? (out << to_string(obj.stringValue)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -384,9 +388,11 @@ void TTypeQualifiers::__set_qualifiers(const std::map<std::string, TTypeQualifie
   this->qualifiers = val;
 }
 
+const char* TTypeQualifiers::ascii_fingerprint = "6C72981CFA989214285648FA8C196C47";
+const uint8_t TTypeQualifiers::binary_fingerprint[16] = {0x6C,0x72,0x98,0x1C,0xFA,0x98,0x92,0x14,0x28,0x56,0x48,0xFA,0x8C,0x19,0x6C,0x47};
+
 uint32_t TTypeQualifiers::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -445,7 +451,7 @@ uint32_t TTypeQualifiers::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TTypeQualifiers::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TTypeQualifiers");
 
   xfer += oprot->writeFieldBegin("qualifiers", ::apache::thrift::protocol::T_MAP, 1);
@@ -463,6 +469,7 @@ uint32_t TTypeQualifiers::write(::apache::thrift::protocol::TProtocol* oprot) co
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -478,11 +485,12 @@ TTypeQualifiers& TTypeQualifiers::operator=(const TTypeQualifiers& other11) {
   qualifiers = other11.qualifiers;
   return *this;
 }
-void TTypeQualifiers::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TTypeQualifiers& obj) {
+  using apache::thrift::to_string;
   out << "TTypeQualifiers(";
-  out << "qualifiers=" << to_string(qualifiers);
+  out << "qualifiers=" << to_string(obj.qualifiers);
   out << ")";
+  return out;
 }
 
 
@@ -499,9 +507,11 @@ void TPrimitiveTypeEntry::__set_typeQualifiers(const TTypeQualifiers& val) {
 __isset.typeQualifiers = true;
 }
 
+const char* TPrimitiveTypeEntry::ascii_fingerprint = "755674F6A5C8EB47868686AE386FBC1C";
+const uint8_t TPrimitiveTypeEntry::binary_fingerprint[16] = {0x75,0x56,0x74,0xF6,0xA5,0xC8,0xEB,0x47,0x86,0x86,0x86,0xAE,0x38,0x6F,0xBC,0x1C};
+
 uint32_t TPrimitiveTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -555,7 +565,7 @@ uint32_t TPrimitiveTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot)
 
 uint32_t TPrimitiveTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TPrimitiveTypeEntry");
 
   xfer += oprot->writeFieldBegin("type", ::apache::thrift::protocol::T_I32, 1);
@@ -569,6 +579,7 @@ uint32_t TPrimitiveTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -590,12 +601,13 @@ TPrimitiveTypeEntry& TPrimitiveTypeEntry::operator=(const TPrimitiveTypeEntry& o
   __isset = other14.__isset;
   return *this;
 }
-void TPrimitiveTypeEntry::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TPrimitiveTypeEntry& obj) {
+  using apache::thrift::to_string;
   out << "TPrimitiveTypeEntry(";
-  out << "type=" << to_string(type);
-  out << ", " << "typeQualifiers="; (__isset.typeQualifiers ? (out << to_string(typeQualifiers)) : (out << "<null>"));
+  out << "type=" << to_string(obj.type);
+  out << ", " << "typeQualifiers="; (obj.__isset.typeQualifiers ? (out << to_string(obj.typeQualifiers)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -607,9 +619,11 @@ void TArrayTypeEntry::__set_objectTypePtr(const TTypeEntryPtr val) {
   this->objectTypePtr = val;
 }
 
+const char* TArrayTypeEntry::ascii_fingerprint = "E86CACEB22240450EDCBEFC3A83970E4";
+const uint8_t TArrayTypeEntry::binary_fingerprint[16] = {0xE8,0x6C,0xAC,0xEB,0x22,0x24,0x04,0x50,0xED,0xCB,0xEF,0xC3,0xA8,0x39,0x70,0xE4};
+
 uint32_t TArrayTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -653,7 +667,7 @@ uint32_t TArrayTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TArrayTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TArrayTypeEntry");
 
   xfer += oprot->writeFieldBegin("objectTypePtr", ::apache::thrift::protocol::T_I32, 1);
@@ -662,6 +676,7 @@ uint32_t TArrayTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) co
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -677,11 +692,12 @@ TArrayTypeEntry& TArrayTypeEntry::operator=(const TArrayTypeEntry& other16) {
   objectTypePtr = other16.objectTypePtr;
   return *this;
 }
-void TArrayTypeEntry::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TArrayTypeEntry& obj) {
+  using apache::thrift::to_string;
   out << "TArrayTypeEntry(";
-  out << "objectTypePtr=" << to_string(objectTypePtr);
+  out << "objectTypePtr=" << to_string(obj.objectTypePtr);
   out << ")";
+  return out;
 }
 
 
@@ -697,9 +713,11 @@ void TMapTypeEntry::__set_valueTypePtr(const TTypeEntryPtr val) {
   this->valueTypePtr = val;
 }
 
+const char* TMapTypeEntry::ascii_fingerprint = "989D1F1AE8D148D5E2119FFEC4BBBEE3";
+const uint8_t TMapTypeEntry::binary_fingerprint[16] = {0x98,0x9D,0x1F,0x1A,0xE8,0xD1,0x48,0xD5,0xE2,0x11,0x9F,0xFE,0xC4,0xBB,0xBE,0xE3};
+
 uint32_t TMapTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -754,7 +772,7 @@ uint32_t TMapTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TMapTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TMapTypeEntry");
 
   xfer += oprot->writeFieldBegin("keyTypePtr", ::apache::thrift::protocol::T_I32, 1);
@@ -767,6 +785,7 @@ uint32_t TMapTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) cons
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -785,12 +804,13 @@ TMapTypeEntry& TMapTypeEntry::operator=(const TMapTypeEntry& other18) {
   valueTypePtr = other18.valueTypePtr;
   return *this;
 }
-void TMapTypeEntry::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TMapTypeEntry& obj) {
+  using apache::thrift::to_string;
   out << "TMapTypeEntry(";
-  out << "keyTypePtr=" << to_string(keyTypePtr);
-  out << ", " << "valueTypePtr=" << to_string(valueTypePtr);
+  out << "keyTypePtr=" << to_string(obj.keyTypePtr);
+  out << ", " << "valueTypePtr=" << to_string(obj.valueTypePtr);
   out << ")";
+  return out;
 }
 
 
@@ -802,9 +822,11 @@ void TStructTypeEntry::__set_nameToTypePtr(const std::map<std::string, TTypeEntr
   this->nameToTypePtr = val;
 }
 
+const char* TStructTypeEntry::ascii_fingerprint = "91F548CA159B4AB4291F5741AC161402";
+const uint8_t TStructTypeEntry::binary_fingerprint[16] = {0x91,0xF5,0x48,0xCA,0x15,0x9B,0x4A,0xB4,0x29,0x1F,0x57,0x41,0xAC,0x16,0x14,0x02};
+
 uint32_t TStructTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -863,7 +885,7 @@ uint32_t TStructTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TStructTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TStructTypeEntry");
 
   xfer += oprot->writeFieldBegin("nameToTypePtr", ::apache::thrift::protocol::T_MAP, 1);
@@ -881,6 +903,7 @@ uint32_t TStructTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) c
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -896,11 +919,12 @@ TStructTypeEntry& TStructTypeEntry::operator=(const TStructTypeEntry& other28) {
   nameToTypePtr = other28.nameToTypePtr;
   return *this;
 }
-void TStructTypeEntry::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TStructTypeEntry& obj) {
+  using apache::thrift::to_string;
   out << "TStructTypeEntry(";
-  out << "nameToTypePtr=" << to_string(nameToTypePtr);
+  out << "nameToTypePtr=" << to_string(obj.nameToTypePtr);
   out << ")";
+  return out;
 }
 
 
@@ -912,9 +936,11 @@ void TUnionTypeEntry::__set_nameToTypePtr(const std::map<std::string, TTypeEntry
   this->nameToTypePtr = val;
 }
 
+const char* TUnionTypeEntry::ascii_fingerprint = "91F548CA159B4AB4291F5741AC161402";
+const uint8_t TUnionTypeEntry::binary_fingerprint[16] = {0x91,0xF5,0x48,0xCA,0x15,0x9B,0x4A,0xB4,0x29,0x1F,0x57,0x41,0xAC,0x16,0x14,0x02};
+
 uint32_t TUnionTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -973,7 +999,7 @@ uint32_t TUnionTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TUnionTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TUnionTypeEntry");
 
   xfer += oprot->writeFieldBegin("nameToTypePtr", ::apache::thrift::protocol::T_MAP, 1);
@@ -991,6 +1017,7 @@ uint32_t TUnionTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) co
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1006,11 +1033,12 @@ TUnionTypeEntry& TUnionTypeEntry::operator=(const TUnionTypeEntry& other38) {
   nameToTypePtr = other38.nameToTypePtr;
   return *this;
 }
-void TUnionTypeEntry::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TUnionTypeEntry& obj) {
+  using apache::thrift::to_string;
   out << "TUnionTypeEntry(";
-  out << "nameToTypePtr=" << to_string(nameToTypePtr);
+  out << "nameToTypePtr=" << to_string(obj.nameToTypePtr);
   out << ")";
+  return out;
 }
 
 
@@ -1022,9 +1050,11 @@ void TUserDefinedTypeEntry::__set_typeClassName(const std::string& val) {
   this->typeClassName = val;
 }
 
+const char* TUserDefinedTypeEntry::ascii_fingerprint = "EFB929595D312AC8F305D5A794CFEDA1";
+const uint8_t TUserDefinedTypeEntry::binary_fingerprint[16] = {0xEF,0xB9,0x29,0x59,0x5D,0x31,0x2A,0xC8,0xF3,0x05,0xD5,0xA7,0x94,0xCF,0xED,0xA1};
+
 uint32_t TUserDefinedTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -1068,7 +1098,7 @@ uint32_t TUserDefinedTypeEntry::read(::apache::thrift::protocol::TProtocol* ipro
 
 uint32_t TUserDefinedTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TUserDefinedTypeEntry");
 
   xfer += oprot->writeFieldBegin("typeClassName", ::apache::thrift::protocol::T_STRING, 1);
@@ -1077,6 +1107,7 @@ uint32_t TUserDefinedTypeEntry::write(::apache::thrift::protocol::TProtocol* opr
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1092,11 +1123,12 @@ TUserDefinedTypeEntry& TUserDefinedTypeEntry::operator=(const TUserDefinedTypeEn
   typeClassName = other40.typeClassName;
   return *this;
 }
-void TUserDefinedTypeEntry::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TUserDefinedTypeEntry& obj) {
+  using apache::thrift::to_string;
   out << "TUserDefinedTypeEntry(";
-  out << "typeClassName=" << to_string(typeClassName);
+  out << "typeClassName=" << to_string(obj.typeClassName);
   out << ")";
+  return out;
 }
 
 
@@ -1128,9 +1160,11 @@ void TTypeEntry::__set_userDefinedTypeEntry(const TUserDefinedTypeEntry& val) {
   this->userDefinedTypeEntry = val;
 }
 
+const char* TTypeEntry::ascii_fingerprint = "2FE56D9097E325DAA7E933738C6D325F";
+const uint8_t TTypeEntry::binary_fingerprint[16] = {0x2F,0xE5,0x6D,0x90,0x97,0xE3,0x25,0xDA,0xA7,0xE9,0x33,0x73,0x8C,0x6D,0x32,0x5F};
+
 uint32_t TTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -1211,7 +1245,7 @@ uint32_t TTypeEntry::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TTypeEntry");
 
   xfer += oprot->writeFieldBegin("primitiveEntry", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -1240,6 +1274,7 @@ uint32_t TTypeEntry::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1273,16 +1308,17 @@ TTypeEntry& TTypeEntry::operator=(const TTypeEntry& other42) {
   __isset = other42.__isset;
   return *this;
 }
-void TTypeEntry::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TTypeEntry& obj) {
+  using apache::thrift::to_string;
   out << "TTypeEntry(";
-  out << "primitiveEntry=" << to_string(primitiveEntry);
-  out << ", " << "arrayEntry=" << to_string(arrayEntry);
-  out << ", " << "mapEntry=" << to_string(mapEntry);
-  out << ", " << "structEntry=" << to_string(structEntry);
-  out << ", " << "unionEntry=" << to_string(unionEntry);
-  out << ", " << "userDefinedTypeEntry=" << to_string(userDefinedTypeEntry);
+  out << "primitiveEntry=" << to_string(obj.primitiveEntry);
+  out << ", " << "arrayEntry=" << to_string(obj.arrayEntry);
+  out << ", " << "mapEntry=" << to_string(obj.mapEntry);
+  out << ", " << "structEntry=" << to_string(obj.structEntry);
+  out << ", " << "unionEntry=" << to_string(obj.unionEntry);
+  out << ", " << "userDefinedTypeEntry=" << to_string(obj.userDefinedTypeEntry);
   out << ")";
+  return out;
 }
 
 
@@ -1294,9 +1330,11 @@ void TTypeDesc::__set_types(const std::vector<TTypeEntry> & val) {
   this->types = val;
 }
 
+const char* TTypeDesc::ascii_fingerprint = "90B3C5A0B73419A84E85E0E48C452AA5";
+const uint8_t TTypeDesc::binary_fingerprint[16] = {0x90,0xB3,0xC5,0xA0,0xB7,0x34,0x19,0xA8,0x4E,0x85,0xE0,0xE4,0x8C,0x45,0x2A,0xA5};
+
 uint32_t TTypeDesc::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -1352,7 +1390,7 @@ uint32_t TTypeDesc::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TTypeDesc::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TTypeDesc");
 
   xfer += oprot->writeFieldBegin("types", ::apache::thrift::protocol::T_LIST, 1);
@@ -1369,6 +1407,7 @@ uint32_t TTypeDesc::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1384,11 +1423,12 @@ TTypeDesc& TTypeDesc::operator=(const TTypeDesc& other50) {
   types = other50.types;
   return *this;
 }
-void TTypeDesc::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TTypeDesc& obj) {
+  using apache::thrift::to_string;
   out << "TTypeDesc(";
-  out << "types=" << to_string(types);
+  out << "types=" << to_string(obj.types);
   out << ")";
+  return out;
 }
 
 
@@ -1413,9 +1453,11 @@ void TColumnDesc::__set_comment(const std::string& val) {
 __isset.comment = true;
 }
 
+const char* TColumnDesc::ascii_fingerprint = "EABED9009D5FCABFCA65612069F2A849";
+const uint8_t TColumnDesc::binary_fingerprint[16] = {0xEA,0xBE,0xD9,0x00,0x9D,0x5F,0xCA,0xBF,0xCA,0x65,0x61,0x20,0x69,0xF2,0xA8,0x49};
+
 uint32_t TColumnDesc::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -1489,7 +1531,7 @@ uint32_t TColumnDesc::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TColumnDesc::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TColumnDesc");
 
   xfer += oprot->writeFieldBegin("columnName", ::apache::thrift::protocol::T_STRING, 1);
@@ -1511,6 +1553,7 @@ uint32_t TColumnDesc::write(::apache::thrift::protocol::TProtocol* oprot) const
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1538,14 +1581,15 @@ TColumnDesc& TColumnDesc::operator=(const TColumnDesc& other52) {
   __isset = other52.__isset;
   return *this;
 }
-void TColumnDesc::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TColumnDesc& obj) {
+  using apache::thrift::to_string;
   out << "TColumnDesc(";
-  out << "columnName=" << to_string(columnName);
-  out << ", " << "typeDesc=" << to_string(typeDesc);
-  out << ", " << "position=" << to_string(position);
-  out << ", " << "comment="; (__isset.comment ? (out << to_string(comment)) : (out << "<null>"));
+  out << "columnName=" << to_string(obj.columnName);
+  out << ", " << "typeDesc=" << to_string(obj.typeDesc);
+  out << ", " << "position=" << to_string(obj.position);
+  out << ", " << "comment="; (obj.__isset.comment ? (out << to_string(obj.comment)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -1557,9 +1601,11 @@ void TTableSchema::__set_columns(const std::vector<TColumnDesc> & val) {
   this->columns = val;
 }
 
+const char* TTableSchema::ascii_fingerprint = "7A1811E49313E5977107FC667B20E39D";
+const uint8_t TTableSchema::binary_fingerprint[16] = {0x7A,0x18,0x11,0xE4,0x93,0x13,0xE5,0x97,0x71,0x07,0xFC,0x66,0x7B,0x20,0xE3,0x9D};
+
 uint32_t TTableSchema::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -1615,7 +1661,7 @@ uint32_t TTableSchema::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TTableSchema::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TTableSchema");
 
   xfer += oprot->writeFieldBegin("columns", ::apache::thrift::protocol::T_LIST, 1);
@@ -1632,6 +1678,7 @@ uint32_t TTableSchema::write(::apache::thrift::protocol::TProtocol* oprot) const
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1647,11 +1694,12 @@ TTableSchema& TTableSchema::operator=(const TTableSchema& other60) {
   columns = other60.columns;
   return *this;
 }
-void TTableSchema::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TTableSchema& obj) {
+  using apache::thrift::to_string;
   out << "TTableSchema(";
-  out << "columns=" << to_string(columns);
+  out << "columns=" << to_string(obj.columns);
   out << ")";
+  return out;
 }
 
 
@@ -1664,9 +1712,11 @@ void TBoolValue::__set_value(const bool val) {
 __isset.value = true;
 }
 
+const char* TBoolValue::ascii_fingerprint = "BF054652DEF86253C2BEE7D947F167DD";
+const uint8_t TBoolValue::binary_fingerprint[16] = {0xBF,0x05,0x46,0x52,0xDE,0xF8,0x62,0x53,0xC2,0xBE,0xE7,0xD9,0x47,0xF1,0x67,0xDD};
+
 uint32_t TBoolValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -1707,7 +1757,7 @@ uint32_t TBoolValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TBoolValue::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TBoolValue");
 
   if (this->__isset.value) {
@@ -1717,6 +1767,7 @@ uint32_t TBoolValue::write(::apache::thrift::protocol::TProtocol* oprot) const {
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1735,11 +1786,12 @@ TBoolValue& TBoolValue::operator=(const TBoolValue& other62) {
   __isset = other62.__isset;
   return *this;
 }
-void TBoolValue::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TBoolValue& obj) {
+  using apache::thrift::to_string;
   out << "TBoolValue(";
-  out << "value="; (__isset.value ? (out << to_string(value)) : (out << "<null>"));
+  out << "value="; (obj.__isset.value ? (out << to_string(obj.value)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -1752,9 +1804,11 @@ void TByteValue::__set_value(const int8_t val) {
 __isset.value = true;
 }
 
+const char* TByteValue::ascii_fingerprint = "9C15298ACB5D04AEA9B52D5DDE6F9208";
+const uint8_t TByteValue::binary_fingerprint[16] = {0x9C,0x15,0x29,0x8A,0xCB,0x5D,0x04,0xAE,0xA9,0xB5,0x2D,0x5D,0xDE,0x6F,0x92,0x08};
+
 uint32_t TByteValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -1795,7 +1849,7 @@ uint32_t TByteValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TByteValue::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TByteValue");
 
   if (this->__isset.value) {
@@ -1805,6 +1859,7 @@ uint32_t TByteValue::write(::apache::thrift::protocol::TProtocol* oprot) const {
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1823,11 +1878,12 @@ TByteValue& TByteValue::operator=(const TByteValue& other64) {
   __isset = other64.__isset;
   return *this;
 }
-void TByteValue::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TByteValue& obj) {
+  using apache::thrift::to_string;
   out << "TByteValue(";
-  out << "value="; (__isset.value ? (out << to_string(value)) : (out << "<null>"));
+  out << "value="; (obj.__isset.value ? (out << to_string(obj.value)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -1840,9 +1896,11 @@ void TI16Value::__set_value(const int16_t val) {
 __isset.value = true;
 }
 
+const char* TI16Value::ascii_fingerprint = "5DAC9C51C7E1106BF936FC71860BE9D5";
+const uint8_t TI16Value::binary_fingerprint[16] = {0x5D,0xAC,0x9C,0x51,0xC7,0xE1,0x10,0x6B,0xF9,0x36,0xFC,0x71,0x86,0x0B,0xE9,0xD5};
+
 uint32_t TI16Value::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -1883,7 +1941,7 @@ uint32_t TI16Value::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TI16Value::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TI16Value");
 
   if (this->__isset.value) {
@@ -1893,6 +1951,7 @@ uint32_t TI16Value::write(::apache::thrift::protocol::TProtocol* oprot) const {
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1911,11 +1970,12 @@ TI16Value& TI16Value::operator=(const TI16Value& other66) {
   __isset = other66.__isset;
   return *this;
 }
-void TI16Value::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TI16Value& obj) {
+  using apache::thrift::to_string;
   out << "TI16Value(";
-  out << "value="; (__isset.value ? (out << to_string(value)) : (out << "<null>"));
+  out << "value="; (obj.__isset.value ? (out << to_string(obj.value)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -1928,9 +1988,11 @@ void TI32Value::__set_value(const int32_t val) {
 __isset.value = true;
 }
 
+const char* TI32Value::ascii_fingerprint = "E7A96B151330359E84C0A3AC91BCBACD";
+const uint8_t TI32Value::binary_fingerprint[16] = {0xE7,0xA9,0x6B,0x15,0x13,0x30,0x35,0x9E,0x84,0xC0,0xA3,0xAC,0x91,0xBC,0xBA,0xCD};
+
 uint32_t TI32Value::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -1971,7 +2033,7 @@ uint32_t TI32Value::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TI32Value::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TI32Value");
 
   if (this->__isset.value) {
@@ -1981,6 +2043,7 @@ uint32_t TI32Value::write(::apache::thrift::protocol::TProtocol* oprot) const {
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -1999,11 +2062,12 @@ TI32Value& TI32Value::operator=(const TI32Value& other68) {
   __isset = other68.__isset;
   return *this;
 }
-void TI32Value::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TI32Value& obj) {
+  using apache::thrift::to_string;
   out << "TI32Value(";
-  out << "value="; (__isset.value ? (out << to_string(value)) : (out << "<null>"));
+  out << "value="; (obj.__isset.value ? (out << to_string(obj.value)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -2016,9 +2080,11 @@ void TI64Value::__set_value(const int64_t val) {
 __isset.value = true;
 }
 
+const char* TI64Value::ascii_fingerprint = "148F3AAAC1D9859963D5E800D187BF26";
+const uint8_t TI64Value::binary_fingerprint[16] = {0x14,0x8F,0x3A,0xAA,0xC1,0xD9,0x85,0x99,0x63,0xD5,0xE8,0x00,0xD1,0x87,0xBF,0x26};
+
 uint32_t TI64Value::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -2059,7 +2125,7 @@ uint32_t TI64Value::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TI64Value::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TI64Value");
 
   if (this->__isset.value) {
@@ -2069,6 +2135,7 @@ uint32_t TI64Value::write(::apache::thrift::protocol::TProtocol* oprot) const {
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -2087,11 +2154,12 @@ TI64Value& TI64Value::operator=(const TI64Value& other70) {
   __isset = other70.__isset;
   return *this;
 }
-void TI64Value::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TI64Value& obj) {
+  using apache::thrift::to_string;
   out << "TI64Value(";
-  out << "value="; (__isset.value ? (out << to_string(value)) : (out << "<null>"));
+  out << "value="; (obj.__isset.value ? (out << to_string(obj.value)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -2104,9 +2172,11 @@ void TDoubleValue::__set_value(const double val) {
 __isset.value = true;
 }
 
+const char* TDoubleValue::ascii_fingerprint = "3586E570A474C4A8603B4FF74903B3A6";
+const uint8_t TDoubleValue::binary_fingerprint[16] = {0x35,0x86,0xE5,0x70,0xA4,0x74,0xC4,0xA8,0x60,0x3B,0x4F,0xF7,0x49,0x03,0xB3,0xA6};
+
 uint32_t TDoubleValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -2147,7 +2217,7 @@ uint32_t TDoubleValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TDoubleValue::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TDoubleValue");
 
   if (this->__isset.value) {
@@ -2157,6 +2227,7 @@ uint32_t TDoubleValue::write(::apache::thrift::protocol::TProtocol* oprot) const
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -2175,11 +2246,12 @@ TDoubleValue& TDoubleValue::operator=(const TDoubleValue& other72) {
   __isset = other72.__isset;
   return *this;
 }
-void TDoubleValue::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TDoubleValue& obj) {
+  using apache::thrift::to_string;
   out << "TDoubleValue(";
-  out << "value="; (__isset.value ? (out << to_string(value)) : (out << "<null>"));
+  out << "value="; (obj.__isset.value ? (out << to_string(obj.value)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -2192,9 +2264,11 @@ void TStringValue::__set_value(const std::string& val) {
 __isset.value = true;
 }
 
+const char* TStringValue::ascii_fingerprint = "66E694018C17E5B65A59AE8F55CCA3CD";
+const uint8_t TStringValue::binary_fingerprint[16] = {0x66,0xE6,0x94,0x01,0x8C,0x17,0xE5,0xB6,0x5A,0x59,0xAE,0x8F,0x55,0xCC,0xA3,0xCD};
+
 uint32_t TStringValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -2235,7 +2309,7 @@ uint32_t TStringValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TStringValue::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TStringValue");
 
   if (this->__isset.value) {
@@ -2245,6 +2319,7 @@ uint32_t TStringValue::write(::apache::thrift::protocol::TProtocol* oprot) const
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -2263,11 +2338,12 @@ TStringValue& TStringValue::operator=(const TStringValue& other74) {
   __isset = other74.__isset;
   return *this;
 }
-void TStringValue::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TStringValue& obj) {
+  using apache::thrift::to_string;
   out << "TStringValue(";
-  out << "value="; (__isset.value ? (out << to_string(value)) : (out << "<null>"));
+  out << "value="; (obj.__isset.value ? (out << to_string(obj.value)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -2303,9 +2379,11 @@ void TColumnValue::__set_stringVal(const TStringValue& val) {
   this->stringVal = val;
 }
 
+const char* TColumnValue::ascii_fingerprint = "C2DDD988447EA7999A8285AA38AAE9AD";
+const uint8_t TColumnValue::binary_fingerprint[16] = {0xC2,0xDD,0xD9,0x88,0x44,0x7E,0xA7,0x99,0x9A,0x82,0x85,0xAA,0x38,0xAA,0xE9,0xAD};
+
 uint32_t TColumnValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -2394,7 +2472,7 @@ uint32_t TColumnValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TColumnValue::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TColumnValue");
 
   xfer += oprot->writeFieldBegin("boolVal", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -2427,6 +2505,7 @@ uint32_t TColumnValue::write(::apache::thrift::protocol::TProtocol* oprot) const
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -2463,17 +2542,18 @@ TColumnValue& TColumnValue::operator=(const TColumnValue& other76) {
   __isset = other76.__isset;
   return *this;
 }
-void TColumnValue::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TColumnValue& obj) {
+  using apache::thrift::to_string;
   out << "TColumnValue(";
-  out << "boolVal=" << to_string(boolVal);
-  out << ", " << "byteVal=" << to_string(byteVal);
-  out << ", " << "i16Val=" << to_string(i16Val);
-  out << ", " << "i32Val=" << to_string(i32Val);
-  out << ", " << "i64Val=" << to_string(i64Val);
-  out << ", " << "doubleVal=" << to_string(doubleVal);
-  out << ", " << "stringVal=" << to_string(stringVal);
+  out << "boolVal=" << to_string(obj.boolVal);
+  out << ", " << "byteVal=" << to_string(obj.byteVal);
+  out << ", " << "i16Val=" << to_string(obj.i16Val);
+  out << ", " << "i32Val=" << to_string(obj.i32Val);
+  out << ", " << "i64Val=" << to_string(obj.i64Val);
+  out << ", " << "doubleVal=" << to_string(obj.doubleVal);
+  out << ", " << "stringVal=" << to_string(obj.stringVal);
   out << ")";
+  return out;
 }
 
 
@@ -2485,9 +2565,11 @@ void TRow::__set_colVals(const std::vector<TColumnValue> & val) {
   this->colVals = val;
 }
 
+const char* TRow::ascii_fingerprint = "E73FD1FCA0CA58A669FC3E02FB68D534";
+const uint8_t TRow::binary_fingerprint[16] = {0xE7,0x3F,0xD1,0xFC,0xA0,0xCA,0x58,0xA6,0x69,0xFC,0x3E,0x02,0xFB,0x68,0xD5,0x34};
+
 uint32_t TRow::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -2543,7 +2625,7 @@ uint32_t TRow::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TRow::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TRow");
 
   xfer += oprot->writeFieldBegin("colVals", ::apache::thrift::protocol::T_LIST, 1);
@@ -2560,6 +2642,7 @@ uint32_t TRow::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -2575,11 +2658,12 @@ TRow& TRow::operator=(const TRow& other84) {
   colVals = other84.colVals;
   return *this;
 }
-void TRow::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TRow& obj) {
+  using apache::thrift::to_string;
   out << "TRow(";
-  out << "colVals=" << to_string(colVals);
+  out << "colVals=" << to_string(obj.colVals);
   out << ")";
+  return out;
 }
 
 
@@ -2595,9 +2679,11 @@ void TBoolColumn::__set_nulls(const std::string& val) {
   this->nulls = val;
 }
 
+const char* TBoolColumn::ascii_fingerprint = "F9058324D96DB7F974D8ACDC01C54219";
+const uint8_t TBoolColumn::binary_fingerprint[16] = {0xF9,0x05,0x83,0x24,0xD9,0x6D,0xB7,0xF9,0x74,0xD8,0xAC,0xDC,0x01,0xC5,0x42,0x19};
+
 uint32_t TBoolColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -2664,7 +2750,7 @@ uint32_t TBoolColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TBoolColumn::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TBoolColumn");
 
   xfer += oprot->writeFieldBegin("values", ::apache::thrift::protocol::T_LIST, 1);
@@ -2685,6 +2771,7 @@ uint32_t TBoolColumn::write(::apache::thrift::protocol::TProtocol* oprot) const
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -2703,12 +2790,13 @@ TBoolColumn& TBoolColumn::operator=(const TBoolColumn& other92) {
   nulls = other92.nulls;
   return *this;
 }
-void TBoolColumn::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TBoolColumn& obj) {
+  using apache::thrift::to_string;
   out << "TBoolColumn(";
-  out << "values=" << to_string(values);
-  out << ", " << "nulls=" << to_string(nulls);
+  out << "values=" << to_string(obj.values);
+  out << ", " << "nulls=" << to_string(obj.nulls);
   out << ")";
+  return out;
 }
 
 
@@ -2724,9 +2812,11 @@ void TByteColumn::__set_nulls(const std::string& val) {
   this->nulls = val;
 }
 
+const char* TByteColumn::ascii_fingerprint = "1CB300106BAA463A70BB2A2395900F48";
+const uint8_t TByteColumn::binary_fingerprint[16] = {0x1C,0xB3,0x00,0x10,0x6B,0xAA,0x46,0x3A,0x70,0xBB,0x2A,0x23,0x95,0x90,0x0F,0x48};
+
 uint32_t TByteColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -2793,7 +2883,7 @@ uint32_t TByteColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TByteColumn::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TByteColumn");
 
   xfer += oprot->writeFieldBegin("values", ::apache::thrift::protocol::T_LIST, 1);
@@ -2814,6 +2904,7 @@ uint32_t TByteColumn::write(::apache::thrift::protocol::TProtocol* oprot) const
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -2832,12 +2923,13 @@ TByteColumn& TByteColumn::operator=(const TByteColumn& other100) {
   nulls = other100.nulls;
   return *this;
 }
-void TByteColumn::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TByteColumn& obj) {
+  using apache::thrift::to_string;
   out << "TByteColumn(";
-  out << "values=" << to_string(values);
-  out << ", " << "nulls=" << to_string(nulls);
+  out << "values=" << to_string(obj.values);
+  out << ", " << "nulls=" << to_string(obj.nulls);
   out << ")";
+  return out;
 }
 
 
@@ -2853,9 +2945,11 @@ void TI16Column::__set_nulls(const std::string& val) {
   this->nulls = val;
 }
 
+const char* TI16Column::ascii_fingerprint = "6574CDB1F121C8DB47FB257A3F104BDB";
+const uint8_t TI16Column::binary_fingerprint[16] = {0x65,0x74,0xCD,0xB1,0xF1,0x21,0xC8,0xDB,0x47,0xFB,0x25,0x7A,0x3F,0x10,0x4B,0xDB};
+
 uint32_t TI16Column::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -2922,7 +3016,7 @@ uint32_t TI16Column::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TI16Column::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TI16Column");
 
   xfer += oprot->writeFieldBegin("values", ::apache::thrift::protocol::T_LIST, 1);
@@ -2943,6 +3037,7 @@ uint32_t TI16Column::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -2961,12 +3056,13 @@ TI16Column& TI16Column::operator=(const TI16Column& other108) {
   nulls = other108.nulls;
   return *this;
 }
-void TI16Column::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TI16Column& obj) {
+  using apache::thrift::to_string;
   out << "TI16Column(";
-  out << "values=" << to_string(values);
-  out << ", " << "nulls=" << to_string(nulls);
+  out << "values=" << to_string(obj.values);
+  out << ", " << "nulls=" << to_string(obj.nulls);
   out << ")";
+  return out;
 }
 
 
@@ -2982,9 +3078,11 @@ void TI32Column::__set_nulls(const std::string& val) {
   this->nulls = val;
 }
 
+const char* TI32Column::ascii_fingerprint = "CCCCE89C7E9DA10280F5663700677313";
+const uint8_t TI32Column::binary_fingerprint[16] = {0xCC,0xCC,0xE8,0x9C,0x7E,0x9D,0xA1,0x02,0x80,0xF5,0x66,0x37,0x00,0x67,0x73,0x13};
+
 uint32_t TI32Column::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -3051,7 +3149,7 @@ uint32_t TI32Column::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TI32Column::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TI32Column");
 
   xfer += oprot->writeFieldBegin("values", ::apache::thrift::protocol::T_LIST, 1);
@@ -3072,6 +3170,7 @@ uint32_t TI32Column::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -3090,12 +3189,13 @@ TI32Column& TI32Column::operator=(const TI32Column& other116) {
   nulls = other116.nulls;
   return *this;
 }
-void TI32Column::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TI32Column& obj) {
+  using apache::thrift::to_string;
   out << "TI32Column(";
-  out << "values=" << to_string(values);
-  out << ", " << "nulls=" << to_string(nulls);
+  out << "values=" << to_string(obj.values);
+  out << ", " << "nulls=" << to_string(obj.nulls);
   out << ")";
+  return out;
 }
 
 
@@ -3111,9 +3211,11 @@ void TI64Column::__set_nulls(const std::string& val) {
   this->nulls = val;
 }
 
+const char* TI64Column::ascii_fingerprint = "925353917FC0AF87976A2338011F5A31";
+const uint8_t TI64Column::binary_fingerprint[16] = {0x92,0x53,0x53,0x91,0x7F,0xC0,0xAF,0x87,0x97,0x6A,0x23,0x38,0x01,0x1F,0x5A,0x31};
+
 uint32_t TI64Column::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -3180,7 +3282,7 @@ uint32_t TI64Column::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TI64Column::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TI64Column");
 
   xfer += oprot->writeFieldBegin("values", ::apache::thrift::protocol::T_LIST, 1);
@@ -3201,6 +3303,7 @@ uint32_t TI64Column::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -3219,12 +3322,13 @@ TI64Column& TI64Column::operator=(const TI64Column& other124) {
   nulls = other124.nulls;
   return *this;
 }
-void TI64Column::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TI64Column& obj) {
+  using apache::thrift::to_string;
   out << "TI64Column(";
-  out << "values=" << to_string(values);
-  out << ", " << "nulls=" << to_string(nulls);
+  out << "values=" << to_string(obj.values);
+  out << ", " << "nulls=" << to_string(obj.nulls);
   out << ")";
+  return out;
 }
 
 
@@ -3240,9 +3344,11 @@ void TDoubleColumn::__set_nulls(const std::string& val) {
   this->nulls = val;
 }
 
+const char* TDoubleColumn::ascii_fingerprint = "8FF1C050A8D7FD247AEB23CD71539C09";
+const uint8_t TDoubleColumn::binary_fingerprint[16] = {0x8F,0xF1,0xC0,0x50,0xA8,0xD7,0xFD,0x24,0x7A,0xEB,0x23,0xCD,0x71,0x53,0x9C,0x09};
+
 uint32_t TDoubleColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -3309,7 +3415,7 @@ uint32_t TDoubleColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TDoubleColumn::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TDoubleColumn");
 
   xfer += oprot->writeFieldBegin("values", ::apache::thrift::protocol::T_LIST, 1);
@@ -3330,6 +3436,7 @@ uint32_t TDoubleColumn::write(::apache::thrift::protocol::TProtocol* oprot) cons
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -3348,12 +3455,13 @@ TDoubleColumn& TDoubleColumn::operator=(const TDoubleColumn& other132) {
   nulls = other132.nulls;
   return *this;
 }
-void TDoubleColumn::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TDoubleColumn& obj) {
+  using apache::thrift::to_string;
   out << "TDoubleColumn(";
-  out << "values=" << to_string(values);
-  out << ", " << "nulls=" << to_string(nulls);
+  out << "values=" << to_string(obj.values);
+  out << ", " << "nulls=" << to_string(obj.nulls);
   out << ")";
+  return out;
 }
 
 
@@ -3369,9 +3477,11 @@ void TStringColumn::__set_nulls(const std::string& val) {
   this->nulls = val;
 }
 
+const char* TStringColumn::ascii_fingerprint = "BE556BF7091B2DABBA1863D5E458B15F";
+const uint8_t TStringColumn::binary_fingerprint[16] = {0xBE,0x55,0x6B,0xF7,0x09,0x1B,0x2D,0xAB,0xBA,0x18,0x63,0xD5,0xE4,0x58,0xB1,0x5F};
+
 uint32_t TStringColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -3438,7 +3548,7 @@ uint32_t TStringColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TStringColumn::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TStringColumn");
 
   xfer += oprot->writeFieldBegin("values", ::apache::thrift::protocol::T_LIST, 1);
@@ -3459,6 +3569,7 @@ uint32_t TStringColumn::write(::apache::thrift::protocol::TProtocol* oprot) cons
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -3477,12 +3588,13 @@ TStringColumn& TStringColumn::operator=(const TStringColumn& other140) {
   nulls = other140.nulls;
   return *this;
 }
-void TStringColumn::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TStringColumn& obj) {
+  using apache::thrift::to_string;
   out << "TStringColumn(";
-  out << "values=" << to_string(values);
-  out << ", " << "nulls=" << to_string(nulls);
+  out << "values=" << to_string(obj.values);
+  out << ", " << "nulls=" << to_string(obj.nulls);
   out << ")";
+  return out;
 }
 
 
@@ -3498,9 +3610,11 @@ void TBinaryColumn::__set_nulls(const std::string& val) {
   this->nulls = val;
 }
 
+const char* TBinaryColumn::ascii_fingerprint = "BE556BF7091B2DABBA1863D5E458B15F";
+const uint8_t TBinaryColumn::binary_fingerprint[16] = {0xBE,0x55,0x6B,0xF7,0x09,0x1B,0x2D,0xAB,0xBA,0x18,0x63,0xD5,0xE4,0x58,0xB1,0x5F};
+
 uint32_t TBinaryColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -3567,7 +3681,7 @@ uint32_t TBinaryColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TBinaryColumn::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TBinaryColumn");
 
   xfer += oprot->writeFieldBegin("values", ::apache::thrift::protocol::T_LIST, 1);
@@ -3588,6 +3702,7 @@ uint32_t TBinaryColumn::write(::apache::thrift::protocol::TProtocol* oprot) cons
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -3606,12 +3721,13 @@ TBinaryColumn& TBinaryColumn::operator=(const TBinaryColumn& other148) {
   nulls = other148.nulls;
   return *this;
 }
-void TBinaryColumn::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TBinaryColumn& obj) {
+  using apache::thrift::to_string;
   out << "TBinaryColumn(";
-  out << "values=" << to_string(values);
-  out << ", " << "nulls=" << to_string(nulls);
+  out << "values=" << to_string(obj.values);
+  out << ", " << "nulls=" << to_string(obj.nulls);
   out << ")";
+  return out;
 }
 
 
@@ -3651,9 +3767,11 @@ void TColumn::__set_binaryVal(const TBinaryColumn& val) {
   this->binaryVal = val;
 }
 
+const char* TColumn::ascii_fingerprint = "E6ADD10B4CDDE61A19E8878CC7039A17";
+const uint8_t TColumn::binary_fingerprint[16] = {0xE6,0xAD,0xD1,0x0B,0x4C,0xDD,0xE6,0x1A,0x19,0xE8,0x87,0x8C,0xC7,0x03,0x9A,0x17};
+
 uint32_t TColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -3750,7 +3868,7 @@ uint32_t TColumn::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TColumn::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TColumn");
 
   xfer += oprot->writeFieldBegin("boolVal", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -3787,6 +3905,7 @@ uint32_t TColumn::write(::apache::thrift::protocol::TProtocol* oprot) const {
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -3826,18 +3945,19 @@ TColumn& TColumn::operator=(const TColumn& other150) {
   __isset = other150.__isset;
   return *this;
 }
-void TColumn::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TColumn& obj) {
+  using apache::thrift::to_string;
   out << "TColumn(";
-  out << "boolVal=" << to_string(boolVal);
-  out << ", " << "byteVal=" << to_string(byteVal);
-  out << ", " << "i16Val=" << to_string(i16Val);
-  out << ", " << "i32Val=" << to_string(i32Val);
-  out << ", " << "i64Val=" << to_string(i64Val);
-  out << ", " << "doubleVal=" << to_string(doubleVal);
-  out << ", " << "stringVal=" << to_string(stringVal);
-  out << ", " << "binaryVal=" << to_string(binaryVal);
+  out << "boolVal=" << to_string(obj.boolVal);
+  out << ", " << "byteVal=" << to_string(obj.byteVal);
+  out << ", " << "i16Val=" << to_string(obj.i16Val);
+  out << ", " << "i32Val=" << to_string(obj.i32Val);
+  out << ", " << "i64Val=" << to_string(obj.i64Val);
+  out << ", " << "doubleVal=" << to_string(obj.doubleVal);
+  out << ", " << "stringVal=" << to_string(obj.stringVal);
+  out << ", " << "binaryVal=" << to_string(obj.binaryVal);
   out << ")";
+  return out;
 }
 
 
@@ -3858,9 +3978,11 @@ void TRowSet::__set_columns(const std::vector<TColumn> & val) {
 __isset.columns = true;
 }
 
+const char* TRowSet::ascii_fingerprint = "46DA30A870489C7A58105AE0080DAEBF";
+const uint8_t TRowSet::binary_fingerprint[16] = {0x46,0xDA,0x30,0xA8,0x70,0x48,0x9C,0x7A,0x58,0x10,0x5A,0xE0,0x08,0x0D,0xAE,0xBF};
+
 uint32_t TRowSet::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -3947,7 +4069,7 @@ uint32_t TRowSet::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TRowSet::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TRowSet");
 
   xfer += oprot->writeFieldBegin("startRowOffset", ::apache::thrift::protocol::T_I64, 1);
@@ -3981,6 +4103,7 @@ uint32_t TRowSet::write(::apache::thrift::protocol::TProtocol* oprot) const {
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -4005,13 +4128,14 @@ TRowSet& TRowSet::operator=(const TRowSet& other164) {
   __isset = other164.__isset;
   return *this;
 }
-void TRowSet::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TRowSet& obj) {
+  using apache::thrift::to_string;
   out << "TRowSet(";
-  out << "startRowOffset=" << to_string(startRowOffset);
-  out << ", " << "rows=" << to_string(rows);
-  out << ", " << "columns="; (__isset.columns ? (out << to_string(columns)) : (out << "<null>"));
+  out << "startRowOffset=" << to_string(obj.startRowOffset);
+  out << ", " << "rows=" << to_string(obj.rows);
+  out << ", " << "columns="; (obj.__isset.columns ? (out << to_string(obj.columns)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -4043,9 +4167,11 @@ void TStatus::__set_errorMessage(const std::string& val) {
 __isset.errorMessage = true;
 }
 
+const char* TStatus::ascii_fingerprint = "D5DEF49634A59C615C1B3A6F7D0DADB5";
+const uint8_t TStatus::binary_fingerprint[16] = {0xD5,0xDE,0xF4,0x96,0x34,0xA5,0x9C,0x61,0x5C,0x1B,0x3A,0x6F,0x7D,0x0D,0xAD,0xB5};
+
 uint32_t TStatus::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -4135,7 +4261,7 @@ uint32_t TStatus::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TStatus::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TStatus");
 
   xfer += oprot->writeFieldBegin("statusCode", ::apache::thrift::protocol::T_I32, 1);
@@ -4172,6 +4298,7 @@ uint32_t TStatus::write(::apache::thrift::protocol::TProtocol* oprot) const {
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -4202,15 +4329,16 @@ TStatus& TStatus::operator=(const TStatus& other173) {
   __isset = other173.__isset;
   return *this;
 }
-void TStatus::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TStatus& obj) {
+  using apache::thrift::to_string;
   out << "TStatus(";
-  out << "statusCode=" << to_string(statusCode);
-  out << ", " << "infoMessages="; (__isset.infoMessages ? (out << to_string(infoMessages)) : (out << "<null>"));
-  out << ", " << "sqlState="; (__isset.sqlState ? (out << to_string(sqlState)) : (out << "<null>"));
-  out << ", " << "errorCode="; (__isset.errorCode ? (out << to_string(errorCode)) : (out << "<null>"));
-  out << ", " << "errorMessage="; (__isset.errorMessage ? (out << to_string(errorMessage)) : (out << "<null>"));
+  out << "statusCode=" << to_string(obj.statusCode);
+  out << ", " << "infoMessages="; (obj.__isset.infoMessages ? (out << to_string(obj.infoMessages)) : (out << "<null>"));
+  out << ", " << "sqlState="; (obj.__isset.sqlState ? (out << to_string(obj.sqlState)) : (out << "<null>"));
+  out << ", " << "errorCode="; (obj.__isset.errorCode ? (out << to_string(obj.errorCode)) : (out << "<null>"));
+  out << ", " << "errorMessage="; (obj.__isset.errorMessage ? (out << to_string(obj.errorMessage)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -4226,9 +4354,11 @@ void THandleIdentifier::__set_secret(const std::string& val) {
   this->secret = val;
 }
 
+const char* THandleIdentifier::ascii_fingerprint = "07A9615F837F7D0A952B595DD3020972";
+const uint8_t THandleIdentifier::binary_fingerprint[16] = {0x07,0xA9,0x61,0x5F,0x83,0x7F,0x7D,0x0A,0x95,0x2B,0x59,0x5D,0xD3,0x02,0x09,0x72};
+
 uint32_t THandleIdentifier::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -4283,7 +4413,7 @@ uint32_t THandleIdentifier::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t THandleIdentifier::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("THandleIdentifier");
 
   xfer += oprot->writeFieldBegin("guid", ::apache::thrift::protocol::T_STRING, 1);
@@ -4296,6 +4426,7 @@ uint32_t THandleIdentifier::write(::apache::thrift::protocol::TProtocol* oprot)
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -4314,12 +4445,13 @@ THandleIdentifier& THandleIdentifier::operator=(const THandleIdentifier& other17
   secret = other175.secret;
   return *this;
 }
-void THandleIdentifier::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const THandleIdentifier& obj) {
+  using apache::thrift::to_string;
   out << "THandleIdentifier(";
-  out << "guid=" << to_string(guid);
-  out << ", " << "secret=" << to_string(secret);
+  out << "guid=" << to_string(obj.guid);
+  out << ", " << "secret=" << to_string(obj.secret);
   out << ")";
+  return out;
 }
 
 
@@ -4331,9 +4463,11 @@ void TSessionHandle::__set_sessionId(const THandleIdentifier& val) {
   this->sessionId = val;
 }
 
+const char* TSessionHandle::ascii_fingerprint = "A756D3DBE614FB13F70BF7F7B6EB3D73";
+const uint8_t TSessionHandle::binary_fingerprint[16] = {0xA7,0x56,0xD3,0xDB,0xE6,0x14,0xFB,0x13,0xF7,0x0B,0xF7,0xF7,0xB6,0xEB,0x3D,0x73};
+
 uint32_t TSessionHandle::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -4377,7 +4511,7 @@ uint32_t TSessionHandle::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TSessionHandle::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TSessionHandle");
 
   xfer += oprot->writeFieldBegin("sessionId", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -4386,6 +4520,7 @@ uint32_t TSessionHandle::write(::apache::thrift::protocol::TProtocol* oprot) con
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -4401,11 +4536,12 @@ TSessionHandle& TSessionHandle::operator=(const TSessionHandle& other177) {
   sessionId = other177.sessionId;
   return *this;
 }
-void TSessionHandle::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TSessionHandle& obj) {
+  using apache::thrift::to_string;
   out << "TSessionHandle(";
-  out << "sessionId=" << to_string(sessionId);
+  out << "sessionId=" << to_string(obj.sessionId);
   out << ")";
+  return out;
 }
 
 
@@ -4430,9 +4566,11 @@ void TOperationHandle::__set_modifiedRowCount(const double val) {
 __isset.modifiedRowCount = true;
 }
 
+const char* TOperationHandle::ascii_fingerprint = "29FD80F4F96804A30FCC59C23D2E5349";
+const uint8_t TOperationHandle::binary_fingerprint[16] = {0x29,0xFD,0x80,0xF4,0xF9,0x68,0x04,0xA3,0x0F,0xCC,0x59,0xC2,0x3D,0x2E,0x53,0x49};
+
 uint32_t TOperationHandle::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -4508,7 +4646,7 @@ uint32_t TOperationHandle::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TOperationHandle::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TOperationHandle");
 
   xfer += oprot->writeFieldBegin("operationId", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -4530,6 +4668,7 @@ uint32_t TOperationHandle::write(::apache::thrift::protocol::TProtocol* oprot) c
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -4557,14 +4696,15 @@ TOperationHandle& TOperationHandle::operator=(const TOperationHandle& other180)
   __isset = other180.__isset;
   return *this;
 }
-void TOperationHandle::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TOperationHandle& obj) {
+  using apache::thrift::to_string;
   out << "TOperationHandle(";
-  out << "operationId=" << to_string(operationId);
-  out << ", " << "operationType=" << to_string(operationType);
-  out << ", " << "hasResultSet=" << to_string(hasResultSet);
-  out << ", " << "modifiedRowCount="; (__isset.modifiedRowCount ? (out << to_string(modifiedRowCount)) : (out << "<null>"));
+  out << "operationId=" << to_string(obj.operationId);
+  out << ", " << "operationType=" << to_string(obj.operationType);
+  out << ", " << "hasResultSet=" << to_string(obj.hasResultSet);
+  out << ", " << "modifiedRowCount="; (obj.__isset.modifiedRowCount ? (out << to_string(obj.modifiedRowCount)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -4591,9 +4731,11 @@ void TOpenSessionReq::__set_configuration(const std::map<std::string, std::strin
 __isset.configuration = true;
 }
 
+const char* TOpenSessionReq::ascii_fingerprint = "C8FD0F306A16C16BDA7B57F58BFAE5B2";
+const uint8_t TOpenSessionReq::binary_fingerprint[16] = {0xC8,0xFD,0x0F,0x30,0x6A,0x16,0xC1,0x6B,0xDA,0x7B,0x57,0xF5,0x8B,0xFA,0xE5,0xB2};
+
 uint32_t TOpenSessionReq::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -4678,7 +4820,7 @@ uint32_t TOpenSessionReq::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TOpenSessionReq::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TOpenSessionReq");
 
   xfer += oprot->writeFieldBegin("client_protocol", ::apache::thrift::protocol::T_I32, 1);
@@ -4711,6 +4853,7 @@ uint32_t TOpenSessionReq::write(::apache::thrift::protocol::TProtocol* oprot) co
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -4738,14 +4881,15 @@ TOpenSessionReq& TOpenSessionReq::operator=(const TOpenSessionReq& other191) {
   __isset = other191.__isset;
   return *this;
 }
-void TOpenSessionReq::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TOpenSessionReq& obj) {
+  using apache::thrift::to_string;
   out << "TOpenSessionReq(";
-  out << "client_protocol=" << to_string(client_protocol);
-  out << ", " << "username="; (__isset.username ? (out << to_string(username)) : (out << "<null>"));
-  out << ", " << "password="; (__isset.password ? (out << to_string(password)) : (out << "<null>"));
-  out << ", " << "configuration="; (__isset.configuration ? (out << to_string(configuration)) : (out << "<null>"));
+  out << "client_protocol=" << to_string(obj.client_protocol);
+  out << ", " << "username="; (obj.__isset.username ? (out << to_string(obj.username)) : (out << "<null>"));
+  out << ", " << "password="; (obj.__isset.password ? (out << to_string(obj.password)) : (out << "<null>"));
+  out << ", " << "configuration="; (obj.__isset.configuration ? (out << to_string(obj.configuration)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -4771,9 +4915,11 @@ void TOpenSessionResp::__set_configuration(const std::map<std::string, std::stri
 __isset.configuration = true;
 }
 
+const char* TOpenSessionResp::ascii_fingerprint = "CFE7D7F4E9EC671F2518ED74FEE9F163";
+const uint8_t TOpenSessionResp::binary_fingerprint[16] = {0xCF,0xE7,0xD7,0xF4,0xE9,0xEC,0x67,0x1F,0x25,0x18,0xED,0x74,0xFE,0xE9,0xF1,0x63};
+
 uint32_t TOpenSessionResp::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -4861,7 +5007,7 @@ uint32_t TOpenSessionResp::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TOpenSessionResp::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TOpenSessionResp");
 
   xfer += oprot->writeFieldBegin("status", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -4893,6 +5039,7 @@ uint32_t TOpenSessionResp::write(::apache::thrift::protocol::TProtocol* oprot) c
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -4920,14 +5067,15 @@ TOpenSessionResp& TOpenSessionResp::operator=(const TOpenSessionResp& other202)
   __isset = other202.__isset;
   return *this;
 }
-void TOpenSessionResp::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TOpenSessionResp& obj) {
+  using apache::thrift::to_string;
   out << "TOpenSessionResp(";
-  out << "status=" << to_string(status);
-  out << ", " << "serverProtocolVersion=" << to_string(serverProtocolVersion);
-  out << ", " << "sessionHandle="; (__isset.sessionHandle ? (out << to_string(sessionHandle)) : (out << "<null>"));
-  out << ", " << "configuration="; (__isset.configuration ? (out << to_string(configuration)) : (out << "<null>"));
+  out << "status=" << to_string(obj.status);
+  out << ", " << "serverProtocolVersion=" << to_string(obj.serverProtocolVersion);
+  out << ", " << "sessionHandle="; (obj.__isset.sessionHandle ? (out << to_string(obj.sessionHandle)) : (out << "<null>"));
+  out << ", " << "configuration="; (obj.__isset.configuration ? (out << to_string(obj.configuration)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -4939,9 +5087,11 @@ void TCloseSessionReq::__set_sessionHandle(const TSessionHandle& val) {
   this->sessionHandle = val;
 }
 
+const char* TCloseSessionReq::ascii_fingerprint = "82377107F8BD0526960537D5A112E6EF";
+const uint8_t TCloseSessionReq::binary_fingerprint[16] = {0x82,0x37,0x71,0x07,0xF8,0xBD,0x05,0x26,0x96,0x05,0x37,0xD5,0xA1,0x12,0xE6,0xEF};
+
 uint32_t TCloseSessionReq::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -4985,7 +5135,7 @@ uint32_t TCloseSessionReq::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TCloseSessionReq::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TCloseSessionReq");
 
   xfer += oprot->writeFieldBegin("sessionHandle", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -4994,6 +5144,7 @@ uint32_t TCloseSessionReq::write(::apache::thrift::protocol::TProtocol* oprot) c
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -5009,11 +5160,12 @@ TCloseSessionReq& TCloseSessionReq::operator=(const TCloseSessionReq& other204)
   sessionHandle = other204.sessionHandle;
   return *this;
 }
-void TCloseSessionReq::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TCloseSessionReq& obj) {
+  using apache::thrift::to_string;
   out << "TCloseSessionReq(";
-  out << "sessionHandle=" << to_string(sessionHandle);
+  out << "sessionHandle=" << to_string(obj.sessionHandle);
   out << ")";
+  return out;
 }
 
 
@@ -5025,9 +5177,11 @@ void TCloseSessionResp::__set_status(const TStatus& val) {
   this->status = val;
 }
 
+const char* TCloseSessionResp::ascii_fingerprint = "7142E89F09DC7C5F6FA916C7393F46C2";
+const uint8_t TCloseSessionResp::binary_fingerprint[16] = {0x71,0x42,0xE8,0x9F,0x09,0xDC,0x7C,0x5F,0x6F,0xA9,0x16,0xC7,0x39,0x3F,0x46,0xC2};
+
 uint32_t TCloseSessionResp::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -5071,7 +5225,7 @@ uint32_t TCloseSessionResp::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TCloseSessionResp::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TCloseSessionResp");
 
   xfer += oprot->writeFieldBegin("status", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -5080,6 +5234,7 @@ uint32_t TCloseSessionResp::write(::apache::thrift::protocol::TProtocol* oprot)
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -5095,11 +5250,12 @@ TCloseSessionResp& TCloseSessionResp::operator=(const TCloseSessionResp& other20
   status = other206.status;
   return *this;
 }
-void TCloseSessionResp::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TCloseSessionResp& obj) {
+  using apache::thrift::to_string;
   out << "TCloseSessionResp(";
-  out << "status=" << to_string(status);
+  out << "status=" << to_string(obj.status);
   out << ")";
+  return out;
 }
 
 
@@ -5131,9 +5287,11 @@ void TGetInfoValue::__set_lenValue(const int64_t val) {
   this->lenValue = val;
 }
 
+const char* TGetInfoValue::ascii_fingerprint = "057FED11279FD7248CFE73EE82ED579E";
+const uint8_t TGetInfoValue::binary_fingerprint[16] = {0x05,0x7F,0xED,0x11,0x27,0x9F,0xD7,0x24,0x8C,0xFE,0x73,0xEE,0x82,0xED,0x57,0x9E};
+
 uint32_t TGetInfoValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -5214,7 +5372,7 @@ uint32_t TGetInfoValue::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TGetInfoValue::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TGetInfoValue");
 
   xfer += oprot->writeFieldBegin("stringValue", ::apache::thrift::protocol::T_STRING, 1);
@@ -5243,6 +5401,7 @@ uint32_t TGetInfoValue::write(::apache::thrift::protocol::TProtocol* oprot) cons
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -5276,16 +5435,17 @@ TGetInfoValue& TGetInfoValue::operator=(const TGetInfoValue& other208) {
   __isset = other208.__isset;
   return *this;
 }
-void TGetInfoValue::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TGetInfoValue& obj) {
+  using apache::thrift::to_string;
   out << "TGetInfoValue(";
-  out << "stringValue=" << to_string(stringValue);
-  out << ", " << "smallIntValue=" << to_string(smallIntValue);
-  out << ", " << "integerBitmask=" << to_string(integerBitmask);
-  out << ", " << "integerFlag=" << to_string(integerFlag);
-  out << ", " << "binaryValue=" << to_string(binaryValue);
-  out << ", " << "lenValue=" << to_string(lenValue);
+  out << "stringValue=" << to_string(obj.stringValue);
+  out << ", " << "smallIntValue=" << to_string(obj.smallIntValue);
+  out << ", " << "integerBitmask=" << to_string(obj.integerBitmask);
+  out << ", " << "integerFlag=" << to_string(obj.integerFlag);
+  out << ", " << "binaryValue=" << to_string(obj.binaryValue);
+  out << ", " << "lenValue=" << to_string(obj.lenValue);
   out << ")";
+  return out;
 }
 
 
@@ -5301,9 +5461,11 @@ void TGetInfoReq::__set_infoType(const TGetInfoType::type val) {
   this->infoType = val;
 }
 
+const char* TGetInfoReq::ascii_fingerprint = "95675B1A0BADE5F7EDE323809DB679B2";
+const uint8_t TGetInfoReq::binary_fingerprint[16] = {0x95,0x67,0x5B,0x1A,0x0B,0xAD,0xE5,0xF7,0xED,0xE3,0x23,0x80,0x9D,0xB6,0x79,0xB2};
+
 uint32_t TGetInfoReq::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -5360,7 +5522,7 @@ uint32_t TGetInfoReq::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TGetInfoReq::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TGetInfoReq");
 
   xfer += oprot->writeFieldBegin("sessionHandle", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -5373,6 +5535,7 @@ uint32_t TGetInfoReq::write(::apache::thrift::protocol::TProtocol* oprot) const
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -5391,12 +5554,13 @@ TGetInfoReq& TGetInfoReq::operator=(const TGetInfoReq& other211) {
   infoType = other211.infoType;
   return *this;
 }
-void TGetInfoReq::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TGetInfoReq& obj) {
+  using apache::thrift::to_string;
   out << "TGetInfoReq(";
-  out << "sessionHandle=" << to_string(sessionHandle);
-  out << ", " << "infoType=" << to_string(infoType);
+  out << "sessionHandle=" << to_string(obj.sessionHandle);
+  out << ", " << "infoType=" << to_string(obj.infoType);
   out << ")";
+  return out;
 }
 
 
@@ -5412,9 +5576,11 @@ void TGetInfoResp::__set_infoValue(const TGetInfoValue& val) {
   this->infoValue = val;
 }
 
+const char* TGetInfoResp::ascii_fingerprint = "72AFA10A82728B51FDE91092012868DE";
+const uint8_t TGetInfoResp::binary_fingerprint[16] = {0x72,0xAF,0xA1,0x0A,0x82,0x72,0x8B,0x51,0xFD,0xE9,0x10,0x92,0x01,0x28,0x68,0xDE};
+
 uint32_t TGetInfoResp::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -5469,7 +5635,7 @@ uint32_t TGetInfoResp::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TGetInfoResp::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TGetInfoResp");
 
   xfer += oprot->writeFieldBegin("status", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -5482,6 +5648,7 @@ uint32_t TGetInfoResp::write(::apache::thrift::protocol::TProtocol* oprot) const
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -5500,12 +5667,13 @@ TGetInfoResp& TGetInfoResp::operator=(const TGetInfoResp& other213) {
   infoValue = other213.infoValue;
   return *this;
 }
-void TGetInfoResp::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TGetInfoResp& obj) {
+  using apache::thrift::to_string;
   out << "TGetInfoResp(";
-  out << "status=" << to_string(status);
-  out << ", " << "infoValue=" << to_string(infoValue);
+  out << "status=" << to_string(obj.status);
+  out << ", " << "infoValue=" << to_string(obj.infoValue);
   out << ")";
+  return out;
 }
 
 
@@ -5531,9 +5699,11 @@ void TExecuteStatementReq::__set_runAsync(const bool val) {
 __isset.runAsync = true;
 }
 
+const char* TExecuteStatementReq::ascii_fingerprint = "FED75DB77E66D76EC1939A51FB0D96FA";
+const uint8_t TExecuteStatementReq::binary_fingerprint[16] = {0xFE,0xD7,0x5D,0xB7,0x7E,0x66,0xD7,0x6E,0xC1,0x93,0x9A,0x51,0xFB,0x0D,0x96,0xFA};
+
 uint32_t TExecuteStatementReq::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -5619,7 +5789,7 @@ uint32_t TExecuteStatementReq::read(::apache::thrift::protocol::TProtocol* iprot
 
 uint32_t TExecuteStatementReq::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TExecuteStatementReq");
 
   xfer += oprot->writeFieldBegin("sessionHandle", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -5651,6 +5821,7 @@ uint32_t TExecuteStatementReq::write(::apache::thrift::protocol::TProtocol* opro
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -5678,14 +5849,15 @@ TExecuteStatementReq& TExecuteStatementReq::operator=(const TExecuteStatementReq
   __isset = other223.__isset;
   return *this;
 }
-void TExecuteStatementReq::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TExecuteStatementReq& obj) {
+  using apache::thrift::to_string;
   out << "TExecuteStatementReq(";
-  out << "sessionHandle=" << to_string(sessionHandle);
-  out << ", " << "statement=" << to_string(statement);
-  out << ", " << "confOverlay="; (__isset.confOverlay ? (out << to_string(confOverlay)) : (out << "<null>"));
-  out << ", " << "runAsync="; (__isset.runAsync ? (out << to_string(runAsync)) : (out << "<null>"));
+  out << "sessionHandle=" << to_string(obj.sessionHandle);
+  out << ", " << "statement=" << to_string(obj.statement);
+  out << ", " << "confOverlay="; (obj.__isset.confOverlay ? (out << to_string(obj.confOverlay)) : (out << "<null>"));
+  out << ", " << "runAsync="; (obj.__isset.runAsync ? (out << to_string(obj.runAsync)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -5702,9 +5874,11 @@ void TExecuteStatementResp::__set_operationHandle(const TOperationHandle& val) {
 __isset.operationHandle = true;
 }
 
+const char* TExecuteStatementResp::ascii_fingerprint = "02A075A0FF88D3A172916D8F23C7B286";
+const uint8_t TExecuteStatementResp::binary_fingerprint[16] = {0x02,0xA0,0x75,0xA0,0xFF,0x88,0xD3,0xA1,0x72,0x91,0x6D,0x8F,0x23,0xC7,0xB2,0x86};
+
 uint32_t TExecuteStatementResp::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -5756,7 +5930,7 @@ uint32_t TExecuteStatementResp::read(::apache::thrift::protocol::TProtocol* ipro
 
 uint32_t TExecuteStatementResp::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TExecuteStatementResp");
 
   xfer += oprot->writeFieldBegin("status", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -5770,6 +5944,7 @@ uint32_t TExecuteStatementResp::write(::apache::thrift::protocol::TProtocol* opr
   }
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -5791,12 +5966,13 @@ TExecuteStatementResp& TExecuteStatementResp::operator=(const TExecuteStatementR
   __isset = other225.__isset;
   return *this;
 }
-void TExecuteStatementResp::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostream& operator<<(std::ostream& out, const TExecuteStatementResp& obj) {
+  using apache::thrift::to_string;
   out << "TExecuteStatementResp(";
-  out << "status=" << to_string(status);
-  out << ", " << "operationHandle="; (__isset.operationHandle ? (out << to_string(operationHandle)) : (out << "<null>"));
+  out << "status=" << to_string(obj.status);
+  out << ", " << "operationHandle="; (obj.__isset.operationHandle ? (out << to_string(obj.operationHandle)) : (out << "<null>"));
   out << ")";
+  return out;
 }
 
 
@@ -5808,9 +5984,11 @@ void TGetTypeInfoReq::__set_sessionHandle(const TSessionHandle& val) {
   this->sessionHandle = val;
 }
 
+const char* TGetTypeInfoReq::ascii_fingerprint = "82377107F8BD0526960537D5A112E6EF";
+const uint8_t TGetTypeInfoReq::binary_fingerprint[16] = {0x82,0x37,0x71,0x07,0xF8,0xBD,0x05,0x26,0x96,0x05,0x37,0xD5,0xA1,0x12,0xE6,0xEF};
+
 uint32_t TGetTypeInfoReq::read(::apache::thrift::protocol::TProtocol* iprot) {
 
-  apache::thrift::protocol::TInputRecursionTracker tracker(*iprot);
   uint32_t xfer = 0;
   std::string fname;
   ::apache::thrift::protocol::TType ftype;
@@ -5854,7 +6032,7 @@ uint32_t TGetTypeInfoReq::read(::apache::thrift::protocol::TProtocol* iprot) {
 
 uint32_t TGetTypeInfoReq::write(::apache::thrift::protocol::TProtocol* oprot) const {
   uint32_t xfer = 0;
-  apache::thrift::protocol::TOutputRecursionTracker tracker(*oprot);
+  oprot->incrementRecursionDepth();
   xfer += oprot->writeStructBegin("TGetTypeInfoReq");
 
   xfer += oprot->writeFieldBegin("sessionHandle", ::apache::thrift::protocol::T_STRUCT, 1);
@@ -5863,6 +6041,7 @@ uint32_t TGetTypeInfoReq::write(::apache::thrift::protocol::TProtocol* oprot) co
 
   xfer += oprot->writeFieldStop();
   xfer += oprot->writeStructEnd();
+  oprot->decrementRecursionDepth();
   return xfer;
 }
 
@@ -5878,11 +6057,12 @@ TGetTypeInfoReq& TGetTypeInfoReq::operator=(const TGetTypeInfoReq& other227) {
   sessionHandle = other227.sessionHandle;
   return *this;
 }
-void TGetTypeInfoReq::printTo(std::ostream& out) const {
-  using ::apache::thrift::to_string;
+std::ostr

<TRUNCATED>