You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by su...@apache.org on 2022/07/28 04:43:36 UTC
[hive] branch branch-2.3 updated: HIVE-26434: Fix HMS thrift method recv_get_table_objects_by_name's exception list (#3483)
This is an automated email from the ASF dual-hosted git repository.
sunchao pushed a commit to branch branch-2.3
in repository https://gitbox.apache.org/repos/asf/hive.git
The following commit(s) were added to refs/heads/branch-2.3 by this push:
new a3e807af67f HIVE-26434: Fix HMS thrift method recv_get_table_objects_by_name's exception list (#3483)
a3e807af67f is described below
commit a3e807af67fb708acc5f6ab7d63575125615de3d
Author: Cheng Pan <pa...@gmail.com>
AuthorDate: Thu Jul 28 12:43:24 2022 +0800
HIVE-26434: Fix HMS thrift method recv_get_table_objects_by_name's exception list (#3483)
---
metastore/if/hive_metastore.thrift | 3 +-
.../src/gen/thrift/gen-cpp/ThriftHiveMetastore.cpp | 90 +++++
.../src/gen/thrift/gen-cpp/ThriftHiveMetastore.h | 28 +-
.../hive/metastore/api/ThriftHiveMetastore.java | 369 ++++++++++++++++++++-
.../gen-php/metastore/ThriftHiveMetastore.php | 87 +++++
.../gen-py/hive_metastore/ThriftHiveMetastore.py | 59 +++-
.../src/gen/thrift/gen-rb/thrift_hive_metastore.rb | 21 +-
7 files changed, 641 insertions(+), 16 deletions(-)
diff --git a/metastore/if/hive_metastore.thrift b/metastore/if/hive_metastore.thrift
index 8a66bbcc70d..9df27319ffa 100755
--- a/metastore/if/hive_metastore.thrift
+++ b/metastore/if/hive_metastore.thrift
@@ -1099,11 +1099,10 @@ service ThriftHiveMetastore extends fb303.FacebookService
Table get_table(1:string dbname, 2:string tbl_name)
throws (1:MetaException o1, 2:NoSuchObjectException o2)
list<Table> get_table_objects_by_name(1:string dbname, 2:list<string> tbl_names)
+ throws (1:MetaException o1, 2:InvalidOperationException o2, 3:UnknownDBException o3)
GetTableResult get_table_req(1:GetTableRequest req)
throws (1:MetaException o1, 2:NoSuchObjectException o2)
GetTablesResult get_table_objects_by_name_req(1:GetTablesRequest req)
-
-
throws (1:MetaException o1, 2:InvalidOperationException o2, 3:UnknownDBException o3)
// Get a list of table names that match a filter.
diff --git a/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.cpp b/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.cpp
index 155aab66aeb..cd59743f873 100644
--- a/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.cpp
+++ b/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.cpp
@@ -7406,6 +7406,30 @@ uint32_t ThriftHiveMetastore_get_table_objects_by_name_result::read(::apache::th
xfer += iprot->skip(ftype);
}
break;
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->o1.read(iprot);
+ this->__isset.o1 = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->o2.read(iprot);
+ this->__isset.o2 = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->o3.read(iprot);
+ this->__isset.o3 = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
default:
xfer += iprot->skip(ftype);
break;
@@ -7436,6 +7460,18 @@ uint32_t ThriftHiveMetastore_get_table_objects_by_name_result::write(::apache::t
xfer += oprot->writeListEnd();
}
xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.o1) {
+ xfer += oprot->writeFieldBegin("o1", ::apache::thrift::protocol::T_STRUCT, 1);
+ xfer += this->o1.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.o2) {
+ xfer += oprot->writeFieldBegin("o2", ::apache::thrift::protocol::T_STRUCT, 2);
+ xfer += this->o2.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ } else if (this->__isset.o3) {
+ xfer += oprot->writeFieldBegin("o3", ::apache::thrift::protocol::T_STRUCT, 3);
+ xfer += this->o3.write(oprot);
+ xfer += oprot->writeFieldEnd();
}
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
@@ -7488,6 +7524,30 @@ uint32_t ThriftHiveMetastore_get_table_objects_by_name_presult::read(::apache::t
xfer += iprot->skip(ftype);
}
break;
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->o1.read(iprot);
+ this->__isset.o1 = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->o2.read(iprot);
+ this->__isset.o2 = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->o3.read(iprot);
+ this->__isset.o3 = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
default:
xfer += iprot->skip(ftype);
break;
@@ -40054,6 +40114,15 @@ void ThriftHiveMetastoreClient::recv_get_table_objects_by_name(std::vector<Table
// _return pointer has now been filled
return;
}
+ if (result.__isset.o1) {
+ throw result.o1;
+ }
+ if (result.__isset.o2) {
+ throw result.o2;
+ }
+ if (result.__isset.o3) {
+ throw result.o3;
+ }
throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "get_table_objects_by_name failed: unknown result");
}
@@ -49693,6 +49762,15 @@ void ThriftHiveMetastoreProcessor::process_get_table_objects_by_name(int32_t seq
try {
iface_->get_table_objects_by_name(result.success, args.dbname, args.tbl_names);
result.__isset.success = true;
+ } catch (MetaException &o1) {
+ result.o1 = o1;
+ result.__isset.o1 = true;
+ } catch (InvalidOperationException &o2) {
+ result.o2 = o2;
+ result.__isset.o2 = true;
+ } catch (UnknownDBException &o3) {
+ result.o3 = o3;
+ result.__isset.o3 = true;
} catch (const std::exception& e) {
if (this->eventHandler_.get() != NULL) {
this->eventHandler_->handlerError(ctx, "ThriftHiveMetastore.get_table_objects_by_name");
@@ -59756,6 +59834,18 @@ void ThriftHiveMetastoreConcurrentClient::recv_get_table_objects_by_name(std::ve
sentry.commit();
return;
}
+ if (result.__isset.o1) {
+ sentry.commit();
+ throw result.o1;
+ }
+ if (result.__isset.o2) {
+ sentry.commit();
+ throw result.o2;
+ }
+ if (result.__isset.o3) {
+ sentry.commit();
+ throw result.o3;
+ }
// in a bad state, don't commit
throw ::apache::thrift::TApplicationException(::apache::thrift::TApplicationException::MISSING_RESULT, "get_table_objects_by_name failed: unknown result");
}
diff --git a/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.h b/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.h
index 43127b56eb1..f5c4fbbf638 100644
--- a/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.h
+++ b/metastore/src/gen/thrift/gen-cpp/ThriftHiveMetastore.h
@@ -4326,8 +4326,11 @@ class ThriftHiveMetastore_get_table_objects_by_name_pargs {
};
typedef struct _ThriftHiveMetastore_get_table_objects_by_name_result__isset {
- _ThriftHiveMetastore_get_table_objects_by_name_result__isset() : success(false) {}
+ _ThriftHiveMetastore_get_table_objects_by_name_result__isset() : success(false), o1(false), o2(false), o3(false) {}
bool success :1;
+ bool o1 :1;
+ bool o2 :1;
+ bool o3 :1;
} _ThriftHiveMetastore_get_table_objects_by_name_result__isset;
class ThriftHiveMetastore_get_table_objects_by_name_result {
@@ -4340,15 +4343,30 @@ class ThriftHiveMetastore_get_table_objects_by_name_result {
virtual ~ThriftHiveMetastore_get_table_objects_by_name_result() throw();
std::vector<Table> success;
+ MetaException o1;
+ InvalidOperationException o2;
+ UnknownDBException o3;
_ThriftHiveMetastore_get_table_objects_by_name_result__isset __isset;
void __set_success(const std::vector<Table> & val);
+ void __set_o1(const MetaException& val);
+
+ void __set_o2(const InvalidOperationException& val);
+
+ void __set_o3(const UnknownDBException& val);
+
bool operator == (const ThriftHiveMetastore_get_table_objects_by_name_result & rhs) const
{
if (!(success == rhs.success))
return false;
+ if (!(o1 == rhs.o1))
+ return false;
+ if (!(o2 == rhs.o2))
+ return false;
+ if (!(o3 == rhs.o3))
+ return false;
return true;
}
bool operator != (const ThriftHiveMetastore_get_table_objects_by_name_result &rhs) const {
@@ -4363,8 +4381,11 @@ class ThriftHiveMetastore_get_table_objects_by_name_result {
};
typedef struct _ThriftHiveMetastore_get_table_objects_by_name_presult__isset {
- _ThriftHiveMetastore_get_table_objects_by_name_presult__isset() : success(false) {}
+ _ThriftHiveMetastore_get_table_objects_by_name_presult__isset() : success(false), o1(false), o2(false), o3(false) {}
bool success :1;
+ bool o1 :1;
+ bool o2 :1;
+ bool o3 :1;
} _ThriftHiveMetastore_get_table_objects_by_name_presult__isset;
class ThriftHiveMetastore_get_table_objects_by_name_presult {
@@ -4373,6 +4394,9 @@ class ThriftHiveMetastore_get_table_objects_by_name_presult {
virtual ~ThriftHiveMetastore_get_table_objects_by_name_presult() throw();
std::vector<Table> * success;
+ MetaException o1;
+ InvalidOperationException o2;
+ UnknownDBException o3;
_ThriftHiveMetastore_get_table_objects_by_name_presult__isset __isset;
diff --git a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ThriftHiveMetastore.java b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ThriftHiveMetastore.java
index cc3871b3782..2eca9614b84 100644
--- a/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ThriftHiveMetastore.java
+++ b/metastore/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ThriftHiveMetastore.java
@@ -100,7 +100,7 @@ public class ThriftHiveMetastore {
public Table get_table(String dbname, String tbl_name) throws MetaException, NoSuchObjectException, org.apache.thrift.TException;
- public List<Table> get_table_objects_by_name(String dbname, List<String> tbl_names) throws org.apache.thrift.TException;
+ public List<Table> get_table_objects_by_name(String dbname, List<String> tbl_names) throws MetaException, InvalidOperationException, UnknownDBException, org.apache.thrift.TException;
public GetTableResult get_table_req(GetTableRequest req) throws MetaException, NoSuchObjectException, org.apache.thrift.TException;
@@ -1524,7 +1524,7 @@ public class ThriftHiveMetastore {
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "get_table failed: unknown result");
}
- public List<Table> get_table_objects_by_name(String dbname, List<String> tbl_names) throws org.apache.thrift.TException
+ public List<Table> get_table_objects_by_name(String dbname, List<String> tbl_names) throws MetaException, InvalidOperationException, UnknownDBException, org.apache.thrift.TException
{
send_get_table_objects_by_name(dbname, tbl_names);
return recv_get_table_objects_by_name();
@@ -1538,13 +1538,22 @@ public class ThriftHiveMetastore {
sendBase("get_table_objects_by_name", args);
}
- public List<Table> recv_get_table_objects_by_name() throws org.apache.thrift.TException
+ public List<Table> recv_get_table_objects_by_name() throws MetaException, InvalidOperationException, UnknownDBException, org.apache.thrift.TException
{
get_table_objects_by_name_result result = new get_table_objects_by_name_result();
receiveBase(result, "get_table_objects_by_name");
if (result.isSetSuccess()) {
return result.success;
}
+ if (result.o1 != null) {
+ throw result.o1;
+ }
+ if (result.o2 != null) {
+ throw result.o2;
+ }
+ if (result.o3 != null) {
+ throw result.o3;
+ }
throw new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.MISSING_RESULT, "get_table_objects_by_name failed: unknown result");
}
@@ -6155,7 +6164,7 @@ public class ThriftHiveMetastore {
prot.writeMessageEnd();
}
- public List<Table> getResult() throws org.apache.thrift.TException {
+ public List<Table> getResult() throws MetaException, InvalidOperationException, UnknownDBException, org.apache.thrift.TException {
if (getState() != org.apache.thrift.async.TAsyncMethodCall.State.RESPONSE_READ) {
throw new IllegalStateException("Method call not finished!");
}
@@ -11499,7 +11508,15 @@ public class ThriftHiveMetastore {
public get_table_objects_by_name_result getResult(I iface, get_table_objects_by_name_args args) throws org.apache.thrift.TException {
get_table_objects_by_name_result result = new get_table_objects_by_name_result();
- result.success = iface.get_table_objects_by_name(args.dbname, args.tbl_names);
+ try {
+ result.success = iface.get_table_objects_by_name(args.dbname, args.tbl_names);
+ } catch (MetaException o1) {
+ result.o1 = o1;
+ } catch (InvalidOperationException o2) {
+ result.o2 = o2;
+ } catch (UnknownDBException o3) {
+ result.o3 = o3;
+ }
return result;
}
}
@@ -16647,6 +16664,22 @@ public class ThriftHiveMetastore {
byte msgType = org.apache.thrift.protocol.TMessageType.REPLY;
org.apache.thrift.TBase msg;
get_table_objects_by_name_result result = new get_table_objects_by_name_result();
+ if (e instanceof MetaException) {
+ result.o1 = (MetaException) e;
+ result.setO1IsSet(true);
+ msg = result;
+ }
+ else if (e instanceof InvalidOperationException) {
+ result.o2 = (InvalidOperationException) e;
+ result.setO2IsSet(true);
+ msg = result;
+ }
+ else if (e instanceof UnknownDBException) {
+ result.o3 = (UnknownDBException) e;
+ result.setO3IsSet(true);
+ msg = result;
+ }
+ else
{
msgType = org.apache.thrift.protocol.TMessageType.EXCEPTION;
msg = (org.apache.thrift.TBase)new org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR, e.getMessage());
@@ -53968,6 +54001,9 @@ public class ThriftHiveMetastore {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("get_table_objects_by_name_result");
private static final org.apache.thrift.protocol.TField SUCCESS_FIELD_DESC = new org.apache.thrift.protocol.TField("success", org.apache.thrift.protocol.TType.LIST, (short)0);
+ private static final org.apache.thrift.protocol.TField O1_FIELD_DESC = new org.apache.thrift.protocol.TField("o1", org.apache.thrift.protocol.TType.STRUCT, (short)1);
+ private static final org.apache.thrift.protocol.TField O2_FIELD_DESC = new org.apache.thrift.protocol.TField("o2", org.apache.thrift.protocol.TType.STRUCT, (short)2);
+ private static final org.apache.thrift.protocol.TField O3_FIELD_DESC = new org.apache.thrift.protocol.TField("o3", org.apache.thrift.protocol.TType.STRUCT, (short)3);
private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
static {
@@ -53976,10 +54012,16 @@ public class ThriftHiveMetastore {
}
private List<Table> success; // required
+ private MetaException o1; // required
+ private InvalidOperationException o2; // required
+ private UnknownDBException o3; // required
/** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
public enum _Fields implements org.apache.thrift.TFieldIdEnum {
- SUCCESS((short)0, "success");
+ SUCCESS((short)0, "success"),
+ O1((short)1, "o1"),
+ O2((short)2, "o2"),
+ O3((short)3, "o3");
private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
@@ -53996,6 +54038,12 @@ public class ThriftHiveMetastore {
switch(fieldId) {
case 0: // SUCCESS
return SUCCESS;
+ case 1: // O1
+ return O1;
+ case 2: // O2
+ return O2;
+ case 3: // O3
+ return O3;
default:
return null;
}
@@ -54042,6 +54090,12 @@ public class ThriftHiveMetastore {
tmpMap.put(_Fields.SUCCESS, new org.apache.thrift.meta_data.FieldMetaData("success", org.apache.thrift.TFieldRequirementType.DEFAULT,
new org.apache.thrift.meta_data.ListMetaData(org.apache.thrift.protocol.TType.LIST,
new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, Table.class))));
+ tmpMap.put(_Fields.O1, new org.apache.thrift.meta_data.FieldMetaData("o1", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+ tmpMap.put(_Fields.O2, new org.apache.thrift.meta_data.FieldMetaData("o2", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
+ tmpMap.put(_Fields.O3, new org.apache.thrift.meta_data.FieldMetaData("o3", org.apache.thrift.TFieldRequirementType.DEFAULT,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT)));
metaDataMap = Collections.unmodifiableMap(tmpMap);
org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(get_table_objects_by_name_result.class, metaDataMap);
}
@@ -54050,10 +54104,16 @@ public class ThriftHiveMetastore {
}
public get_table_objects_by_name_result(
- List<Table> success)
+ List<Table> success,
+ MetaException o1,
+ InvalidOperationException o2,
+ UnknownDBException o3)
{
this();
this.success = success;
+ this.o1 = o1;
+ this.o2 = o2;
+ this.o3 = o3;
}
/**
@@ -54067,6 +54127,15 @@ public class ThriftHiveMetastore {
}
this.success = __this__success;
}
+ if (other.isSetO1()) {
+ this.o1 = new MetaException(other.o1);
+ }
+ if (other.isSetO2()) {
+ this.o2 = new InvalidOperationException(other.o2);
+ }
+ if (other.isSetO3()) {
+ this.o3 = new UnknownDBException(other.o3);
+ }
}
public get_table_objects_by_name_result deepCopy() {
@@ -54076,6 +54145,9 @@ public class ThriftHiveMetastore {
@Override
public void clear() {
this.success = null;
+ this.o1 = null;
+ this.o2 = null;
+ this.o3 = null;
}
public int getSuccessSize() {
@@ -54116,6 +54188,75 @@ public class ThriftHiveMetastore {
}
}
+ public MetaException getO1() {
+ return this.o1;
+ }
+
+ public void setO1(MetaException o1) {
+ this.o1 = o1;
+ }
+
+ public void unsetO1() {
+ this.o1 = null;
+ }
+
+ /** Returns true if field o1 is set (has been assigned a value) and false otherwise */
+ public boolean isSetO1() {
+ return this.o1 != null;
+ }
+
+ public void setO1IsSet(boolean value) {
+ if (!value) {
+ this.o1 = null;
+ }
+ }
+
+ public InvalidOperationException getO2() {
+ return this.o2;
+ }
+
+ public void setO2(InvalidOperationException o2) {
+ this.o2 = o2;
+ }
+
+ public void unsetO2() {
+ this.o2 = null;
+ }
+
+ /** Returns true if field o2 is set (has been assigned a value) and false otherwise */
+ public boolean isSetO2() {
+ return this.o2 != null;
+ }
+
+ public void setO2IsSet(boolean value) {
+ if (!value) {
+ this.o2 = null;
+ }
+ }
+
+ public UnknownDBException getO3() {
+ return this.o3;
+ }
+
+ public void setO3(UnknownDBException o3) {
+ this.o3 = o3;
+ }
+
+ public void unsetO3() {
+ this.o3 = null;
+ }
+
+ /** Returns true if field o3 is set (has been assigned a value) and false otherwise */
+ public boolean isSetO3() {
+ return this.o3 != null;
+ }
+
+ public void setO3IsSet(boolean value) {
+ if (!value) {
+ this.o3 = null;
+ }
+ }
+
public void setFieldValue(_Fields field, Object value) {
switch (field) {
case SUCCESS:
@@ -54126,6 +54267,30 @@ public class ThriftHiveMetastore {
}
break;
+ case O1:
+ if (value == null) {
+ unsetO1();
+ } else {
+ setO1((MetaException)value);
+ }
+ break;
+
+ case O2:
+ if (value == null) {
+ unsetO2();
+ } else {
+ setO2((InvalidOperationException)value);
+ }
+ break;
+
+ case O3:
+ if (value == null) {
+ unsetO3();
+ } else {
+ setO3((UnknownDBException)value);
+ }
+ break;
+
}
}
@@ -54134,6 +54299,15 @@ public class ThriftHiveMetastore {
case SUCCESS:
return getSuccess();
+ case O1:
+ return getO1();
+
+ case O2:
+ return getO2();
+
+ case O3:
+ return getO3();
+
}
throw new IllegalStateException();
}
@@ -54147,6 +54321,12 @@ public class ThriftHiveMetastore {
switch (field) {
case SUCCESS:
return isSetSuccess();
+ case O1:
+ return isSetO1();
+ case O2:
+ return isSetO2();
+ case O3:
+ return isSetO3();
}
throw new IllegalStateException();
}
@@ -54173,6 +54353,33 @@ public class ThriftHiveMetastore {
return false;
}
+ boolean this_present_o1 = true && this.isSetO1();
+ boolean that_present_o1 = true && that.isSetO1();
+ if (this_present_o1 || that_present_o1) {
+ if (!(this_present_o1 && that_present_o1))
+ return false;
+ if (!this.o1.equals(that.o1))
+ return false;
+ }
+
+ boolean this_present_o2 = true && this.isSetO2();
+ boolean that_present_o2 = true && that.isSetO2();
+ if (this_present_o2 || that_present_o2) {
+ if (!(this_present_o2 && that_present_o2))
+ return false;
+ if (!this.o2.equals(that.o2))
+ return false;
+ }
+
+ boolean this_present_o3 = true && this.isSetO3();
+ boolean that_present_o3 = true && that.isSetO3();
+ if (this_present_o3 || that_present_o3) {
+ if (!(this_present_o3 && that_present_o3))
+ return false;
+ if (!this.o3.equals(that.o3))
+ return false;
+ }
+
return true;
}
@@ -54185,6 +54392,21 @@ public class ThriftHiveMetastore {
if (present_success)
list.add(success);
+ boolean present_o1 = true && (isSetO1());
+ list.add(present_o1);
+ if (present_o1)
+ list.add(o1);
+
+ boolean present_o2 = true && (isSetO2());
+ list.add(present_o2);
+ if (present_o2)
+ list.add(o2);
+
+ boolean present_o3 = true && (isSetO3());
+ list.add(present_o3);
+ if (present_o3)
+ list.add(o3);
+
return list.hashCode();
}
@@ -54206,6 +54428,36 @@ public class ThriftHiveMetastore {
return lastComparison;
}
}
+ lastComparison = Boolean.valueOf(isSetO1()).compareTo(other.isSetO1());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetO1()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.o1, other.o1);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetO2()).compareTo(other.isSetO2());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetO2()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.o2, other.o2);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetO3()).compareTo(other.isSetO3());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetO3()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.o3, other.o3);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
return 0;
}
@@ -54233,6 +54485,30 @@ public class ThriftHiveMetastore {
sb.append(this.success);
}
first = false;
+ if (!first) sb.append(", ");
+ sb.append("o1:");
+ if (this.o1 == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.o1);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("o2:");
+ if (this.o2 == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.o2);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("o3:");
+ if (this.o3 == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.o3);
+ }
+ first = false;
sb.append(")");
return sb.toString();
}
@@ -54295,6 +54571,33 @@ public class ThriftHiveMetastore {
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
+ case 1: // O1
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.o1 = new MetaException();
+ struct.o1.read(iprot);
+ struct.setO1IsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 2: // O2
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.o2 = new InvalidOperationException();
+ struct.o2.read(iprot);
+ struct.setO2IsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 3: // O3
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.o3 = new UnknownDBException();
+ struct.o3.read(iprot);
+ struct.setO3IsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
default:
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
@@ -54320,6 +54623,21 @@ public class ThriftHiveMetastore {
}
oprot.writeFieldEnd();
}
+ if (struct.o1 != null) {
+ oprot.writeFieldBegin(O1_FIELD_DESC);
+ struct.o1.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ if (struct.o2 != null) {
+ oprot.writeFieldBegin(O2_FIELD_DESC);
+ struct.o2.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ if (struct.o3 != null) {
+ oprot.writeFieldBegin(O3_FIELD_DESC);
+ struct.o3.write(oprot);
+ oprot.writeFieldEnd();
+ }
oprot.writeFieldStop();
oprot.writeStructEnd();
}
@@ -54341,7 +54659,16 @@ public class ThriftHiveMetastore {
if (struct.isSetSuccess()) {
optionals.set(0);
}
- oprot.writeBitSet(optionals, 1);
+ if (struct.isSetO1()) {
+ optionals.set(1);
+ }
+ if (struct.isSetO2()) {
+ optionals.set(2);
+ }
+ if (struct.isSetO3()) {
+ optionals.set(3);
+ }
+ oprot.writeBitSet(optionals, 4);
if (struct.isSetSuccess()) {
{
oprot.writeI32(struct.success.size());
@@ -54351,12 +54678,21 @@ public class ThriftHiveMetastore {
}
}
}
+ if (struct.isSetO1()) {
+ struct.o1.write(oprot);
+ }
+ if (struct.isSetO2()) {
+ struct.o2.write(oprot);
+ }
+ if (struct.isSetO3()) {
+ struct.o3.write(oprot);
+ }
}
@Override
public void read(org.apache.thrift.protocol.TProtocol prot, get_table_objects_by_name_result struct) throws org.apache.thrift.TException {
TTupleProtocol iprot = (TTupleProtocol) prot;
- BitSet incoming = iprot.readBitSet(1);
+ BitSet incoming = iprot.readBitSet(4);
if (incoming.get(0)) {
{
org.apache.thrift.protocol.TList _list833 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32());
@@ -54371,6 +54707,21 @@ public class ThriftHiveMetastore {
}
struct.setSuccessIsSet(true);
}
+ if (incoming.get(1)) {
+ struct.o1 = new MetaException();
+ struct.o1.read(iprot);
+ struct.setO1IsSet(true);
+ }
+ if (incoming.get(2)) {
+ struct.o2 = new InvalidOperationException();
+ struct.o2.read(iprot);
+ struct.setO2IsSet(true);
+ }
+ if (incoming.get(3)) {
+ struct.o3 = new UnknownDBException();
+ struct.o3.read(iprot);
+ struct.setO3IsSet(true);
+ }
}
}
diff --git a/metastore/src/gen/thrift/gen-php/metastore/ThriftHiveMetastore.php b/metastore/src/gen/thrift/gen-php/metastore/ThriftHiveMetastore.php
index 17d3d764edf..147da299208 100644
--- a/metastore/src/gen/thrift/gen-php/metastore/ThriftHiveMetastore.php
+++ b/metastore/src/gen/thrift/gen-php/metastore/ThriftHiveMetastore.php
@@ -242,6 +242,9 @@ interface ThriftHiveMetastoreIf extends \FacebookServiceIf {
* @param string $dbname
* @param string[] $tbl_names
* @return \metastore\Table[]
+ * @throws \metastore\MetaException
+ * @throws \metastore\InvalidOperationException
+ * @throws \metastore\UnknownDBException
*/
public function get_table_objects_by_name($dbname, array $tbl_names);
/**
@@ -2903,6 +2906,15 @@ class ThriftHiveMetastoreClient extends \FacebookServiceClient implements \metas
if ($result->success !== null) {
return $result->success;
}
+ if ($result->o1 !== null) {
+ throw $result->o1;
+ }
+ if ($result->o2 !== null) {
+ throw $result->o2;
+ }
+ if ($result->o3 !== null) {
+ throw $result->o3;
+ }
throw new \Exception("get_table_objects_by_name failed: unknown result");
}
@@ -16699,6 +16711,18 @@ class ThriftHiveMetastore_get_table_objects_by_name_result {
* @var \metastore\Table[]
*/
public $success = null;
+ /**
+ * @var \metastore\MetaException
+ */
+ public $o1 = null;
+ /**
+ * @var \metastore\InvalidOperationException
+ */
+ public $o2 = null;
+ /**
+ * @var \metastore\UnknownDBException
+ */
+ public $o3 = null;
public function __construct($vals=null) {
if (!isset(self::$_TSPEC)) {
@@ -16712,12 +16736,36 @@ class ThriftHiveMetastore_get_table_objects_by_name_result {
'class' => '\metastore\Table',
),
),
+ 1 => array(
+ 'var' => 'o1',
+ 'type' => TType::STRUCT,
+ 'class' => '\metastore\MetaException',
+ ),
+ 2 => array(
+ 'var' => 'o2',
+ 'type' => TType::STRUCT,
+ 'class' => '\metastore\InvalidOperationException',
+ ),
+ 3 => array(
+ 'var' => 'o3',
+ 'type' => TType::STRUCT,
+ 'class' => '\metastore\UnknownDBException',
+ ),
);
}
if (is_array($vals)) {
if (isset($vals['success'])) {
$this->success = $vals['success'];
}
+ if (isset($vals['o1'])) {
+ $this->o1 = $vals['o1'];
+ }
+ if (isset($vals['o2'])) {
+ $this->o2 = $vals['o2'];
+ }
+ if (isset($vals['o3'])) {
+ $this->o3 = $vals['o3'];
+ }
}
}
@@ -16758,6 +16806,30 @@ class ThriftHiveMetastore_get_table_objects_by_name_result {
$xfer += $input->skip($ftype);
}
break;
+ case 1:
+ if ($ftype == TType::STRUCT) {
+ $this->o1 = new \metastore\MetaException();
+ $xfer += $this->o1->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRUCT) {
+ $this->o2 = new \metastore\InvalidOperationException();
+ $xfer += $this->o2->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRUCT) {
+ $this->o3 = new \metastore\UnknownDBException();
+ $xfer += $this->o3->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
default:
$xfer += $input->skip($ftype);
break;
@@ -16788,6 +16860,21 @@ class ThriftHiveMetastore_get_table_objects_by_name_result {
}
$xfer += $output->writeFieldEnd();
}
+ if ($this->o1 !== null) {
+ $xfer += $output->writeFieldBegin('o1', TType::STRUCT, 1);
+ $xfer += $this->o1->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->o2 !== null) {
+ $xfer += $output->writeFieldBegin('o2', TType::STRUCT, 2);
+ $xfer += $this->o2->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->o3 !== null) {
+ $xfer += $output->writeFieldBegin('o3', TType::STRUCT, 3);
+ $xfer += $this->o3->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
$xfer += $output->writeFieldStop();
$xfer += $output->writeStructEnd();
return $xfer;
diff --git a/metastore/src/gen/thrift/gen-py/hive_metastore/ThriftHiveMetastore.py b/metastore/src/gen/thrift/gen-py/hive_metastore/ThriftHiveMetastore.py
index f3451651282..861b9fd4cc7 100644
--- a/metastore/src/gen/thrift/gen-py/hive_metastore/ThriftHiveMetastore.py
+++ b/metastore/src/gen/thrift/gen-py/hive_metastore/ThriftHiveMetastore.py
@@ -2318,6 +2318,12 @@ class Client(fb303.FacebookService.Client, Iface):
iprot.readMessageEnd()
if result.success is not None:
return result.success
+ if result.o1 is not None:
+ raise result.o1
+ if result.o2 is not None:
+ raise result.o2
+ if result.o3 is not None:
+ raise result.o3
raise TApplicationException(TApplicationException.MISSING_RESULT, "get_table_objects_by_name failed: unknown result")
def get_table_req(self, req):
@@ -7723,6 +7729,15 @@ class Processor(fb303.FacebookService.Processor, Iface, TProcessor):
msg_type = TMessageType.REPLY
except (TTransport.TTransportException, KeyboardInterrupt, SystemExit):
raise
+ except MetaException as o1:
+ msg_type = TMessageType.REPLY
+ result.o1 = o1
+ except InvalidOperationException as o2:
+ msg_type = TMessageType.REPLY
+ result.o2 = o2
+ except UnknownDBException as o3:
+ msg_type = TMessageType.REPLY
+ result.o3 = o3
except Exception as ex:
msg_type = TMessageType.EXCEPTION
logging.exception(ex)
@@ -15722,14 +15737,23 @@ class get_table_objects_by_name_result:
"""
Attributes:
- success
+ - o1
+ - o2
+ - o3
"""
thrift_spec = (
(0, TType.LIST, 'success', (TType.STRUCT,(Table, Table.thrift_spec)), None, ), # 0
+ (1, TType.STRUCT, 'o1', (MetaException, MetaException.thrift_spec), None, ), # 1
+ (2, TType.STRUCT, 'o2', (InvalidOperationException, InvalidOperationException.thrift_spec), None, ), # 2
+ (3, TType.STRUCT, 'o3', (UnknownDBException, UnknownDBException.thrift_spec), None, ), # 3
)
- def __init__(self, success=None,):
+ def __init__(self, success=None, o1=None, o2=None, o3=None,):
self.success = success
+ self.o1 = o1
+ self.o2 = o2
+ self.o3 = o3
def read(self, iprot):
if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
@@ -15751,6 +15775,24 @@ class get_table_objects_by_name_result:
iprot.readListEnd()
else:
iprot.skip(ftype)
+ elif fid == 1:
+ if ftype == TType.STRUCT:
+ self.o1 = MetaException()
+ self.o1.read(iprot)
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRUCT:
+ self.o2 = InvalidOperationException()
+ self.o2.read(iprot)
+ else:
+ iprot.skip(ftype)
+ elif fid == 3:
+ if ftype == TType.STRUCT:
+ self.o3 = UnknownDBException()
+ self.o3.read(iprot)
+ else:
+ iprot.skip(ftype)
else:
iprot.skip(ftype)
iprot.readFieldEnd()
@@ -15768,6 +15810,18 @@ class get_table_objects_by_name_result:
iter735.write(oprot)
oprot.writeListEnd()
oprot.writeFieldEnd()
+ if self.o1 is not None:
+ oprot.writeFieldBegin('o1', TType.STRUCT, 1)
+ self.o1.write(oprot)
+ oprot.writeFieldEnd()
+ if self.o2 is not None:
+ oprot.writeFieldBegin('o2', TType.STRUCT, 2)
+ self.o2.write(oprot)
+ oprot.writeFieldEnd()
+ if self.o3 is not None:
+ oprot.writeFieldBegin('o3', TType.STRUCT, 3)
+ self.o3.write(oprot)
+ oprot.writeFieldEnd()
oprot.writeFieldStop()
oprot.writeStructEnd()
@@ -15778,6 +15832,9 @@ class get_table_objects_by_name_result:
def __hash__(self):
value = 17
value = (value * 31) ^ hash(self.success)
+ value = (value * 31) ^ hash(self.o1)
+ value = (value * 31) ^ hash(self.o2)
+ value = (value * 31) ^ hash(self.o3)
return value
def __repr__(self):
diff --git a/metastore/src/gen/thrift/gen-rb/thrift_hive_metastore.rb b/metastore/src/gen/thrift/gen-rb/thrift_hive_metastore.rb
index 2e22eaf5d17..49bbcbfbabc 100644
--- a/metastore/src/gen/thrift/gen-rb/thrift_hive_metastore.rb
+++ b/metastore/src/gen/thrift/gen-rb/thrift_hive_metastore.rb
@@ -509,6 +509,9 @@ module ThriftHiveMetastore
def recv_get_table_objects_by_name()
result = receive_message(Get_table_objects_by_name_result)
return result.success unless result.success.nil?
+ raise result.o1 unless result.o1.nil?
+ raise result.o2 unless result.o2.nil?
+ raise result.o3 unless result.o3.nil?
raise ::Thrift::ApplicationException.new(::Thrift::ApplicationException::MISSING_RESULT, 'get_table_objects_by_name failed: unknown result')
end
@@ -2957,7 +2960,15 @@ module ThriftHiveMetastore
def process_get_table_objects_by_name(seqid, iprot, oprot)
args = read_args(iprot, Get_table_objects_by_name_args)
result = Get_table_objects_by_name_result.new()
- result.success = @handler.get_table_objects_by_name(args.dbname, args.tbl_names)
+ begin
+ result.success = @handler.get_table_objects_by_name(args.dbname, args.tbl_names)
+ rescue ::MetaException => o1
+ result.o1 = o1
+ rescue ::InvalidOperationException => o2
+ result.o2 = o2
+ rescue ::UnknownDBException => o3
+ result.o3 = o3
+ end
write_result(result, oprot, 'get_table_objects_by_name', seqid)
end
@@ -5561,9 +5572,15 @@ module ThriftHiveMetastore
class Get_table_objects_by_name_result
include ::Thrift::Struct, ::Thrift::Struct_Union
SUCCESS = 0
+ O1 = 1
+ O2 = 2
+ O3 = 3
FIELDS = {
- SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Table}}
+ SUCCESS => {:type => ::Thrift::Types::LIST, :name => 'success', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Table}},
+ O1 => {:type => ::Thrift::Types::STRUCT, :name => 'o1', :class => ::MetaException},
+ O2 => {:type => ::Thrift::Types::STRUCT, :name => 'o2', :class => ::InvalidOperationException},
+ O3 => {:type => ::Thrift::Types::STRUCT, :name => 'o3', :class => ::UnknownDBException}
}
def struct_fields; FIELDS; end