commit 386109baf0102123b0d3f0148a9f5b7a391d6a4a Author: Vihang Karajgaonkar Date: Mon Apr 29 17:23:33 2019 -0700 HIVE-21586 : Thrift generated cpp files for metastore do not compile (addendum) diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ColumnStatistics.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ColumnStatistics.java index 99984f4fa2af31a01b6f9550caf5489c447391bb..a7b8c4a1b369deed64449bc6e5d778611d14985e 100644 --- a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ColumnStatistics.java +++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/ColumnStatistics.java @@ -532,14 +532,14 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, ColumnStatistics st case 2: // STATS_OBJ if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list284 = iprot.readListBegin(); - struct.statsObj = new ArrayList(_list284.size); - ColumnStatisticsObj _elem285; - for (int _i286 = 0; _i286 < _list284.size; ++_i286) + org.apache.thrift.protocol.TList _list214 = iprot.readListBegin(); + struct.statsObj = new ArrayList(_list214.size); + ColumnStatisticsObj _elem215; + for (int _i216 = 0; _i216 < _list214.size; ++_i216) { - _elem285 = new ColumnStatisticsObj(); - _elem285.read(iprot); - struct.statsObj.add(_elem285); + _elem215 = new ColumnStatisticsObj(); + _elem215.read(iprot); + struct.statsObj.add(_elem215); } iprot.readListEnd(); } @@ -578,9 +578,9 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, ColumnStatistics s oprot.writeFieldBegin(STATS_OBJ_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.statsObj.size())); - for (ColumnStatisticsObj _iter287 : struct.statsObj) + for (ColumnStatisticsObj _iter217 : struct.statsObj) { - _iter287.write(oprot); + _iter217.write(oprot); } oprot.writeListEnd(); } @@ -611,9 +611,9 @@ public void write(org.apache.thrift.protocol.TProtocol prot, ColumnStatistics st struct.statsDesc.write(oprot); { oprot.writeI32(struct.statsObj.size()); - for (ColumnStatisticsObj _iter288 : struct.statsObj) + for (ColumnStatisticsObj _iter218 : struct.statsObj) { - _iter288.write(oprot); + _iter218.write(oprot); } } BitSet optionals = new BitSet(); @@ -633,14 +633,14 @@ public void read(org.apache.thrift.protocol.TProtocol prot, ColumnStatistics str struct.statsDesc.read(iprot); struct.setStatsDescIsSet(true); { - org.apache.thrift.protocol.TList _list289 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.statsObj = new ArrayList(_list289.size); - ColumnStatisticsObj _elem290; - for (int _i291 = 0; _i291 < _list289.size; ++_i291) + org.apache.thrift.protocol.TList _list219 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.statsObj = new ArrayList(_list219.size); + ColumnStatisticsObj _elem220; + for (int _i221 = 0; _i221 < _list219.size; ++_i221) { - _elem290 = new ColumnStatisticsObj(); - _elem290.read(iprot); - struct.statsObj.add(_elem290); + _elem220 = new ColumnStatisticsObj(); + _elem220.read(iprot); + struct.statsObj.add(_elem220); } } struct.setStatsObjIsSet(true); diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Partition.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Partition.java index 2db0fbc23e0807a2ba6abff32efcff79d1b64a80..b2d8d3c120470d336dbfd4280be4124bfe841671 100644 --- a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Partition.java +++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Partition.java @@ -197,7 +197,7 @@ public String getFieldName() { tmpMap.put(_Fields.IS_STATS_COMPLIANT, new org.apache.thrift.meta_data.FieldMetaData("isStatsCompliant", org.apache.thrift.TFieldRequirementType.OPTIONAL, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL))); tmpMap.put(_Fields.COL_STATS, new org.apache.thrift.meta_data.FieldMetaData("colStats", org.apache.thrift.TFieldRequirementType.OPTIONAL, - new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT , "ColumnStatistics"))); + new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, ColumnStatistics.class))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(Partition.class, metaDataMap); } @@ -261,7 +261,7 @@ public Partition(Partition other) { this.writeId = other.writeId; this.isStatsCompliant = other.isStatsCompliant; if (other.isSetColStats()) { - this.colStats = other.colStats; + this.colStats = new ColumnStatistics(other.colStats); } } @@ -1206,6 +1206,9 @@ public void validate() throws org.apache.thrift.TException { if (privileges != null) { privileges.validate(); } + if (colStats != null) { + colStats.validate(); + } } private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { @@ -1247,13 +1250,13 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, Partition struct) t case 1: // VALUES if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list232 = iprot.readListBegin(); - struct.values = new ArrayList(_list232.size); - String _elem233; - for (int _i234 = 0; _i234 < _list232.size; ++_i234) + org.apache.thrift.protocol.TList _list240 = iprot.readListBegin(); + struct.values = new ArrayList(_list240.size); + String _elem241; + for (int _i242 = 0; _i242 < _list240.size; ++_i242) { - _elem233 = iprot.readString(); - struct.values.add(_elem233); + _elem241 = iprot.readString(); + struct.values.add(_elem241); } iprot.readListEnd(); } @@ -1306,15 +1309,15 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, Partition struct) t case 7: // PARAMETERS if (schemeField.type == org.apache.thrift.protocol.TType.MAP) { { - org.apache.thrift.protocol.TMap _map235 = iprot.readMapBegin(); - struct.parameters = new HashMap(2*_map235.size); - String _key236; - String _val237; - for (int _i238 = 0; _i238 < _map235.size; ++_i238) + org.apache.thrift.protocol.TMap _map243 = iprot.readMapBegin(); + struct.parameters = new HashMap(2*_map243.size); + String _key244; + String _val245; + for (int _i246 = 0; _i246 < _map243.size; ++_i246) { - _key236 = iprot.readString(); - _val237 = iprot.readString(); - struct.parameters.put(_key236, _val237); + _key244 = iprot.readString(); + _val245 = iprot.readString(); + struct.parameters.put(_key244, _val245); } iprot.readMapEnd(); } @@ -1382,9 +1385,9 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, Partition struct) oprot.writeFieldBegin(VALUES_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, struct.values.size())); - for (String _iter239 : struct.values) + for (String _iter247 : struct.values) { - oprot.writeString(_iter239); + oprot.writeString(_iter247); } oprot.writeListEnd(); } @@ -1415,10 +1418,10 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, Partition struct) oprot.writeFieldBegin(PARAMETERS_FIELD_DESC); { oprot.writeMapBegin(new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, struct.parameters.size())); - for (Map.Entry _iter240 : struct.parameters.entrySet()) + for (Map.Entry _iter248 : struct.parameters.entrySet()) { - oprot.writeString(_iter240.getKey()); - oprot.writeString(_iter240.getValue()); + oprot.writeString(_iter248.getKey()); + oprot.writeString(_iter248.getValue()); } oprot.writeMapEnd(); } @@ -1513,9 +1516,9 @@ public void write(org.apache.thrift.protocol.TProtocol prot, Partition struct) t if (struct.isSetValues()) { { oprot.writeI32(struct.values.size()); - for (String _iter241 : struct.values) + for (String _iter249 : struct.values) { - oprot.writeString(_iter241); + oprot.writeString(_iter249); } } } @@ -1537,10 +1540,10 @@ public void write(org.apache.thrift.protocol.TProtocol prot, Partition struct) t if (struct.isSetParameters()) { { oprot.writeI32(struct.parameters.size()); - for (Map.Entry _iter242 : struct.parameters.entrySet()) + for (Map.Entry _iter250 : struct.parameters.entrySet()) { - oprot.writeString(_iter242.getKey()); - oprot.writeString(_iter242.getValue()); + oprot.writeString(_iter250.getKey()); + oprot.writeString(_iter250.getValue()); } } } @@ -1567,13 +1570,13 @@ public void read(org.apache.thrift.protocol.TProtocol prot, Partition struct) th BitSet incoming = iprot.readBitSet(12); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list243 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, iprot.readI32()); - struct.values = new ArrayList(_list243.size); - String _elem244; - for (int _i245 = 0; _i245 < _list243.size; ++_i245) + org.apache.thrift.protocol.TList _list251 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, iprot.readI32()); + struct.values = new ArrayList(_list251.size); + String _elem252; + for (int _i253 = 0; _i253 < _list251.size; ++_i253) { - _elem244 = iprot.readString(); - struct.values.add(_elem244); + _elem252 = iprot.readString(); + struct.values.add(_elem252); } } struct.setValuesIsSet(true); @@ -1601,15 +1604,15 @@ public void read(org.apache.thrift.protocol.TProtocol prot, Partition struct) th } if (incoming.get(6)) { { - org.apache.thrift.protocol.TMap _map246 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32()); - struct.parameters = new HashMap(2*_map246.size); - String _key247; - String _val248; - for (int _i249 = 0; _i249 < _map246.size; ++_i249) + org.apache.thrift.protocol.TMap _map254 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32()); + struct.parameters = new HashMap(2*_map254.size); + String _key255; + String _val256; + for (int _i257 = 0; _i257 < _map254.size; ++_i257) { - _key247 = iprot.readString(); - _val248 = iprot.readString(); - struct.parameters.put(_key247, _val248); + _key255 = iprot.readString(); + _val256 = iprot.readString(); + struct.parameters.put(_key255, _val256); } } struct.parameters = org.apache.hadoop.hive.metastore.utils.StringUtils.intern(struct.parameters); struct.setParametersIsSet(true); diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionListComposingSpec.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionListComposingSpec.java index 303c3ed77d118e8e782a5dd9ce2c955f5f7b7e1b..f265c491e31cafda7bc3bb6904d15e6c977e61d7 100644 --- a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionListComposingSpec.java +++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionListComposingSpec.java @@ -350,14 +350,14 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, PartitionListCompos case 1: // PARTITIONS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list276 = iprot.readListBegin(); - struct.partitions = new ArrayList(_list276.size); - Partition _elem277; - for (int _i278 = 0; _i278 < _list276.size; ++_i278) + org.apache.thrift.protocol.TList _list284 = iprot.readListBegin(); + struct.partitions = new ArrayList(_list284.size); + Partition _elem285; + for (int _i286 = 0; _i286 < _list284.size; ++_i286) { - _elem277 = new Partition(); - _elem277.read(iprot); - struct.partitions.add(_elem277); + _elem285 = new Partition(); + _elem285.read(iprot); + struct.partitions.add(_elem285); } iprot.readListEnd(); } @@ -383,9 +383,9 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, PartitionListCompo oprot.writeFieldBegin(PARTITIONS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.partitions.size())); - for (Partition _iter279 : struct.partitions) + for (Partition _iter287 : struct.partitions) { - _iter279.write(oprot); + _iter287.write(oprot); } oprot.writeListEnd(); } @@ -416,9 +416,9 @@ public void write(org.apache.thrift.protocol.TProtocol prot, PartitionListCompos if (struct.isSetPartitions()) { { oprot.writeI32(struct.partitions.size()); - for (Partition _iter280 : struct.partitions) + for (Partition _iter288 : struct.partitions) { - _iter280.write(oprot); + _iter288.write(oprot); } } } @@ -430,14 +430,14 @@ public void read(org.apache.thrift.protocol.TProtocol prot, PartitionListComposi BitSet incoming = iprot.readBitSet(1); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list281 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.partitions = new ArrayList(_list281.size); - Partition _elem282; - for (int _i283 = 0; _i283 < _list281.size; ++_i283) + org.apache.thrift.protocol.TList _list289 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.partitions = new ArrayList(_list289.size); + Partition _elem290; + for (int _i291 = 0; _i291 < _list289.size; ++_i291) { - _elem282 = new Partition(); - _elem282.read(iprot); - struct.partitions.add(_elem282); + _elem290 = new Partition(); + _elem290.read(iprot); + struct.partitions.add(_elem290); } } struct.setPartitionsIsSet(true); diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionSpecWithSharedSD.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionSpecWithSharedSD.java index 01b9e7d71b07f5c67e46e6b610e4239738822372..2974b0c87a7eb5ac78574000b829e1f614f3fa9e 100644 --- a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionSpecWithSharedSD.java +++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionSpecWithSharedSD.java @@ -434,14 +434,14 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, PartitionSpecWithSh case 1: // PARTITIONS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list268 = iprot.readListBegin(); - struct.partitions = new ArrayList(_list268.size); - PartitionWithoutSD _elem269; - for (int _i270 = 0; _i270 < _list268.size; ++_i270) + org.apache.thrift.protocol.TList _list276 = iprot.readListBegin(); + struct.partitions = new ArrayList(_list276.size); + PartitionWithoutSD _elem277; + for (int _i278 = 0; _i278 < _list276.size; ++_i278) { - _elem269 = new PartitionWithoutSD(); - _elem269.read(iprot); - struct.partitions.add(_elem269); + _elem277 = new PartitionWithoutSD(); + _elem277.read(iprot); + struct.partitions.add(_elem277); } iprot.readListEnd(); } @@ -476,9 +476,9 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, PartitionSpecWithS oprot.writeFieldBegin(PARTITIONS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.partitions.size())); - for (PartitionWithoutSD _iter271 : struct.partitions) + for (PartitionWithoutSD _iter279 : struct.partitions) { - _iter271.write(oprot); + _iter279.write(oprot); } oprot.writeListEnd(); } @@ -517,9 +517,9 @@ public void write(org.apache.thrift.protocol.TProtocol prot, PartitionSpecWithSh if (struct.isSetPartitions()) { { oprot.writeI32(struct.partitions.size()); - for (PartitionWithoutSD _iter272 : struct.partitions) + for (PartitionWithoutSD _iter280 : struct.partitions) { - _iter272.write(oprot); + _iter280.write(oprot); } } } @@ -534,14 +534,14 @@ public void read(org.apache.thrift.protocol.TProtocol prot, PartitionSpecWithSha BitSet incoming = iprot.readBitSet(2); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list273 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.partitions = new ArrayList(_list273.size); - PartitionWithoutSD _elem274; - for (int _i275 = 0; _i275 < _list273.size; ++_i275) + org.apache.thrift.protocol.TList _list281 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.partitions = new ArrayList(_list281.size); + PartitionWithoutSD _elem282; + for (int _i283 = 0; _i283 < _list281.size; ++_i283) { - _elem274 = new PartitionWithoutSD(); - _elem274.read(iprot); - struct.partitions.add(_elem274); + _elem282 = new PartitionWithoutSD(); + _elem282.read(iprot); + struct.partitions.add(_elem282); } } struct.setPartitionsIsSet(true); diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionWithoutSD.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionWithoutSD.java index f00d5b88e7adbbaaef149728856f357c56e6853e..d0e3101e4cd021824822dc4a49aa1c7ea518b370 100644 --- a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionWithoutSD.java +++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/PartitionWithoutSD.java @@ -766,13 +766,13 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, PartitionWithoutSD case 1: // VALUES if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list250 = iprot.readListBegin(); - struct.values = new ArrayList(_list250.size); - String _elem251; - for (int _i252 = 0; _i252 < _list250.size; ++_i252) + org.apache.thrift.protocol.TList _list258 = iprot.readListBegin(); + struct.values = new ArrayList(_list258.size); + String _elem259; + for (int _i260 = 0; _i260 < _list258.size; ++_i260) { - _elem251 = iprot.readString(); - struct.values.add(_elem251); + _elem259 = iprot.readString(); + struct.values.add(_elem259); } iprot.readListEnd(); } @@ -808,15 +808,15 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, PartitionWithoutSD case 5: // PARAMETERS if (schemeField.type == org.apache.thrift.protocol.TType.MAP) { { - org.apache.thrift.protocol.TMap _map253 = iprot.readMapBegin(); - struct.parameters = new HashMap(2*_map253.size); - String _key254; - String _val255; - for (int _i256 = 0; _i256 < _map253.size; ++_i256) + org.apache.thrift.protocol.TMap _map261 = iprot.readMapBegin(); + struct.parameters = new HashMap(2*_map261.size); + String _key262; + String _val263; + for (int _i264 = 0; _i264 < _map261.size; ++_i264) { - _key254 = iprot.readString(); - _val255 = iprot.readString(); - struct.parameters.put(_key254, _val255); + _key262 = iprot.readString(); + _val263 = iprot.readString(); + struct.parameters.put(_key262, _val263); } iprot.readMapEnd(); } @@ -851,9 +851,9 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, PartitionWithoutSD oprot.writeFieldBegin(VALUES_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, struct.values.size())); - for (String _iter257 : struct.values) + for (String _iter265 : struct.values) { - oprot.writeString(_iter257); + oprot.writeString(_iter265); } oprot.writeListEnd(); } @@ -874,10 +874,10 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, PartitionWithoutSD oprot.writeFieldBegin(PARAMETERS_FIELD_DESC); { oprot.writeMapBegin(new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, struct.parameters.size())); - for (Map.Entry _iter258 : struct.parameters.entrySet()) + for (Map.Entry _iter266 : struct.parameters.entrySet()) { - oprot.writeString(_iter258.getKey()); - oprot.writeString(_iter258.getValue()); + oprot.writeString(_iter266.getKey()); + oprot.writeString(_iter266.getValue()); } oprot.writeMapEnd(); } @@ -930,9 +930,9 @@ public void write(org.apache.thrift.protocol.TProtocol prot, PartitionWithoutSD if (struct.isSetValues()) { { oprot.writeI32(struct.values.size()); - for (String _iter259 : struct.values) + for (String _iter267 : struct.values) { - oprot.writeString(_iter259); + oprot.writeString(_iter267); } } } @@ -948,10 +948,10 @@ public void write(org.apache.thrift.protocol.TProtocol prot, PartitionWithoutSD if (struct.isSetParameters()) { { oprot.writeI32(struct.parameters.size()); - for (Map.Entry _iter260 : struct.parameters.entrySet()) + for (Map.Entry _iter268 : struct.parameters.entrySet()) { - oprot.writeString(_iter260.getKey()); - oprot.writeString(_iter260.getValue()); + oprot.writeString(_iter268.getKey()); + oprot.writeString(_iter268.getValue()); } } } @@ -966,13 +966,13 @@ public void read(org.apache.thrift.protocol.TProtocol prot, PartitionWithoutSD s BitSet incoming = iprot.readBitSet(6); if (incoming.get(0)) { { - org.apache.thrift.protocol.TList _list261 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, iprot.readI32()); - struct.values = new ArrayList(_list261.size); - String _elem262; - for (int _i263 = 0; _i263 < _list261.size; ++_i263) + org.apache.thrift.protocol.TList _list269 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRING, iprot.readI32()); + struct.values = new ArrayList(_list269.size); + String _elem270; + for (int _i271 = 0; _i271 < _list269.size; ++_i271) { - _elem262 = iprot.readString(); - struct.values.add(_elem262); + _elem270 = iprot.readString(); + struct.values.add(_elem270); } } struct.setValuesIsSet(true); @@ -991,15 +991,15 @@ public void read(org.apache.thrift.protocol.TProtocol prot, PartitionWithoutSD s } if (incoming.get(4)) { { - org.apache.thrift.protocol.TMap _map264 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32()); - struct.parameters = new HashMap(2*_map264.size); - String _key265; - String _val266; - for (int _i267 = 0; _i267 < _map264.size; ++_i267) + org.apache.thrift.protocol.TMap _map272 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32()); + struct.parameters = new HashMap(2*_map272.size); + String _key273; + String _val274; + for (int _i275 = 0; _i275 < _map272.size; ++_i275) { - _key265 = iprot.readString(); - _val266 = iprot.readString(); - struct.parameters.put(_key265, _val266); + _key273 = iprot.readString(); + _val274 = iprot.readString(); + struct.parameters.put(_key273, _val274); } } struct.setParametersIsSet(true); diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Table.java b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Table.java index 95cd19f34206104c12621b6555a63a92a13abd25..3499bc5287376f9a94e80c9b172642befe47a701 100644 --- a/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Table.java +++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/metastore/api/Table.java @@ -275,7 +275,7 @@ public String getFieldName() { tmpMap.put(_Fields.IS_STATS_COMPLIANT, new org.apache.thrift.meta_data.FieldMetaData("isStatsCompliant", org.apache.thrift.TFieldRequirementType.OPTIONAL, new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL))); tmpMap.put(_Fields.COL_STATS, new org.apache.thrift.meta_data.FieldMetaData("colStats", org.apache.thrift.TFieldRequirementType.OPTIONAL, - new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRUCT , "ColumnStatistics"))); + new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, ColumnStatistics.class))); metaDataMap = Collections.unmodifiableMap(tmpMap); org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(Table.class, metaDataMap); } @@ -379,7 +379,7 @@ public Table(Table other) { this.writeId = other.writeId; this.isStatsCompliant = other.isStatsCompliant; if (other.isSetColStats()) { - this.colStats = other.colStats; + this.colStats = new ColumnStatistics(other.colStats); } } @@ -2020,6 +2020,9 @@ public void validate() throws org.apache.thrift.TException { if (creationMetadata != null) { creationMetadata.validate(); } + if (colStats != null) { + colStats.validate(); + } } private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException { @@ -2126,14 +2129,14 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, Table struct) throw case 9: // PARTITION_KEYS if (schemeField.type == org.apache.thrift.protocol.TType.LIST) { { - org.apache.thrift.protocol.TList _list214 = iprot.readListBegin(); - struct.partitionKeys = new ArrayList(_list214.size); - FieldSchema _elem215; - for (int _i216 = 0; _i216 < _list214.size; ++_i216) + org.apache.thrift.protocol.TList _list222 = iprot.readListBegin(); + struct.partitionKeys = new ArrayList(_list222.size); + FieldSchema _elem223; + for (int _i224 = 0; _i224 < _list222.size; ++_i224) { - _elem215 = new FieldSchema(); - _elem215.read(iprot); - struct.partitionKeys.add(_elem215); + _elem223 = new FieldSchema(); + _elem223.read(iprot); + struct.partitionKeys.add(_elem223); } iprot.readListEnd(); } @@ -2145,15 +2148,15 @@ public void read(org.apache.thrift.protocol.TProtocol iprot, Table struct) throw case 10: // PARAMETERS if (schemeField.type == org.apache.thrift.protocol.TType.MAP) { { - org.apache.thrift.protocol.TMap _map217 = iprot.readMapBegin(); - struct.parameters = new HashMap(2*_map217.size); - String _key218; - String _val219; - for (int _i220 = 0; _i220 < _map217.size; ++_i220) + org.apache.thrift.protocol.TMap _map225 = iprot.readMapBegin(); + struct.parameters = new HashMap(2*_map225.size); + String _key226; + String _val227; + for (int _i228 = 0; _i228 < _map225.size; ++_i228) { - _key218 = iprot.readString(); - _val219 = iprot.readString(); - struct.parameters.put(_key218, _val219); + _key226 = iprot.readString(); + _val227 = iprot.readString(); + struct.parameters.put(_key226, _val227); } iprot.readMapEnd(); } @@ -2312,9 +2315,9 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, Table struct) thro oprot.writeFieldBegin(PARTITION_KEYS_FIELD_DESC); { oprot.writeListBegin(new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, struct.partitionKeys.size())); - for (FieldSchema _iter221 : struct.partitionKeys) + for (FieldSchema _iter229 : struct.partitionKeys) { - _iter221.write(oprot); + _iter229.write(oprot); } oprot.writeListEnd(); } @@ -2324,10 +2327,10 @@ public void write(org.apache.thrift.protocol.TProtocol oprot, Table struct) thro oprot.writeFieldBegin(PARAMETERS_FIELD_DESC); { oprot.writeMapBegin(new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, struct.parameters.size())); - for (Map.Entry _iter222 : struct.parameters.entrySet()) + for (Map.Entry _iter230 : struct.parameters.entrySet()) { - oprot.writeString(_iter222.getKey()); - oprot.writeString(_iter222.getValue()); + oprot.writeString(_iter230.getKey()); + oprot.writeString(_iter230.getValue()); } oprot.writeMapEnd(); } @@ -2515,19 +2518,19 @@ public void write(org.apache.thrift.protocol.TProtocol prot, Table struct) throw if (struct.isSetPartitionKeys()) { { oprot.writeI32(struct.partitionKeys.size()); - for (FieldSchema _iter223 : struct.partitionKeys) + for (FieldSchema _iter231 : struct.partitionKeys) { - _iter223.write(oprot); + _iter231.write(oprot); } } } if (struct.isSetParameters()) { { oprot.writeI32(struct.parameters.size()); - for (Map.Entry _iter224 : struct.parameters.entrySet()) + for (Map.Entry _iter232 : struct.parameters.entrySet()) { - oprot.writeString(_iter224.getKey()); - oprot.writeString(_iter224.getValue()); + oprot.writeString(_iter232.getKey()); + oprot.writeString(_iter232.getValue()); } } } @@ -2608,29 +2611,29 @@ public void read(org.apache.thrift.protocol.TProtocol prot, Table struct) throws } if (incoming.get(8)) { { - org.apache.thrift.protocol.TList _list225 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); - struct.partitionKeys = new ArrayList(_list225.size); - FieldSchema _elem226; - for (int _i227 = 0; _i227 < _list225.size; ++_i227) + org.apache.thrift.protocol.TList _list233 = new org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT, iprot.readI32()); + struct.partitionKeys = new ArrayList(_list233.size); + FieldSchema _elem234; + for (int _i235 = 0; _i235 < _list233.size; ++_i235) { - _elem226 = new FieldSchema(); - _elem226.read(iprot); - struct.partitionKeys.add(_elem226); + _elem234 = new FieldSchema(); + _elem234.read(iprot); + struct.partitionKeys.add(_elem234); } } struct.setPartitionKeysIsSet(true); } if (incoming.get(9)) { { - org.apache.thrift.protocol.TMap _map228 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32()); - struct.parameters = new HashMap(2*_map228.size); - String _key229; - String _val230; - for (int _i231 = 0; _i231 < _map228.size; ++_i231) + org.apache.thrift.protocol.TMap _map236 = new org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING, org.apache.thrift.protocol.TType.STRING, iprot.readI32()); + struct.parameters = new HashMap(2*_map236.size); + String _key237; + String _val238; + for (int _i239 = 0; _i239 < _map236.size; ++_i239) { - _key229 = iprot.readString(); - _val230 = iprot.readString(); - struct.parameters.put(_key229, _val230); + _key237 = iprot.readString(); + _val238 = iprot.readString(); + struct.parameters.put(_key237, _val238); } } struct.setParametersIsSet(true); diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-php/metastore/Types.php b/standalone-metastore/metastore-common/src/gen/thrift/gen-php/metastore/Types.php index 89af97f40b7d6fc0bc9ff0a5a0170e945ad82900..648865ad24bd29335784a40d95479b1ff13975e8 100644 --- a/standalone-metastore/metastore-common/src/gen/thrift/gen-php/metastore/Types.php +++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-php/metastore/Types.php @@ -6979,280 +6979,65 @@ class CreationMetadata { } -class Table { +class BooleanColumnStatsData { static $_TSPEC; /** * @var int */ - public $id = null; - /** - * @var string - */ - public $tableName = null; - /** - * @var string - */ - public $dbName = null; - /** - * @var string - */ - public $owner = null; - /** - * @var int - */ - public $createTime = null; + public $numTrues = null; /** * @var int */ - public $lastAccessTime = null; + public $numFalses = null; /** * @var int */ - public $retention = null; - /** - * @var \metastore\StorageDescriptor - */ - public $sd = null; - /** - * @var \metastore\FieldSchema[] - */ - public $partitionKeys = null; - /** - * @var array - */ - public $parameters = null; - /** - * @var string - */ - public $viewOriginalText = null; - /** - * @var string - */ - public $viewExpandedText = null; - /** - * @var string - */ - public $tableType = null; - /** - * @var \metastore\PrincipalPrivilegeSet - */ - public $privileges = null; - /** - * @var bool - */ - public $temporary = false; - /** - * @var bool - */ - public $rewriteEnabled = null; - /** - * @var \metastore\CreationMetadata - */ - public $creationMetadata = null; + public $numNulls = null; /** * @var string */ - public $catName = null; - /** - * @var int - */ - public $ownerType = 1; - /** - * @var int - */ - public $writeId = -1; - /** - * @var bool - */ - public $isStatsCompliant = null; - /** - * @var \metastore\ColumnStatistics - */ - public $colStats = null; + public $bitVectors = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'id', + 'var' => 'numTrues', 'type' => TType::I64, ), 2 => array( - 'var' => 'tableName', - 'type' => TType::STRING, + 'var' => 'numFalses', + 'type' => TType::I64, ), 3 => array( - 'var' => 'dbName', - 'type' => TType::STRING, + 'var' => 'numNulls', + 'type' => TType::I64, ), 4 => array( - 'var' => 'owner', - 'type' => TType::STRING, - ), - 5 => array( - 'var' => 'createTime', - 'type' => TType::I32, - ), - 6 => array( - 'var' => 'lastAccessTime', - 'type' => TType::I32, - ), - 7 => array( - 'var' => 'retention', - 'type' => TType::I32, - ), - 8 => array( - 'var' => 'sd', - 'type' => TType::STRUCT, - 'class' => '\metastore\StorageDescriptor', - ), - 9 => array( - 'var' => 'partitionKeys', - 'type' => TType::LST, - 'etype' => TType::STRUCT, - 'elem' => array( - 'type' => TType::STRUCT, - 'class' => '\metastore\FieldSchema', - ), - ), - 10 => array( - 'var' => 'parameters', - 'type' => TType::MAP, - 'ktype' => TType::STRING, - 'vtype' => TType::STRING, - 'key' => array( - 'type' => TType::STRING, - ), - 'val' => array( - 'type' => TType::STRING, - ), - ), - 11 => array( - 'var' => 'viewOriginalText', - 'type' => TType::STRING, - ), - 12 => array( - 'var' => 'viewExpandedText', - 'type' => TType::STRING, - ), - 13 => array( - 'var' => 'tableType', - 'type' => TType::STRING, - ), - 14 => array( - 'var' => 'privileges', - 'type' => TType::STRUCT, - 'class' => '\metastore\PrincipalPrivilegeSet', - ), - 15 => array( - 'var' => 'temporary', - 'type' => TType::BOOL, - ), - 16 => array( - 'var' => 'rewriteEnabled', - 'type' => TType::BOOL, - ), - 17 => array( - 'var' => 'creationMetadata', - 'type' => TType::STRUCT, - 'class' => '\metastore\CreationMetadata', - ), - 18 => array( - 'var' => 'catName', + 'var' => 'bitVectors', 'type' => TType::STRING, ), - 19 => array( - 'var' => 'ownerType', - 'type' => TType::I32, - ), - 20 => array( - 'var' => 'writeId', - 'type' => TType::I64, - ), - 21 => array( - 'var' => 'isStatsCompliant', - 'type' => TType::BOOL, - ), - 22 => array( - 'var' => 'colStats', - 'type' => TType::STRUCT, - 'class' => '\metastore\ColumnStatistics', - ), ); } if (is_array($vals)) { - if (isset($vals['id'])) { - $this->id = $vals['id']; - } - if (isset($vals['tableName'])) { - $this->tableName = $vals['tableName']; - } - if (isset($vals['dbName'])) { - $this->dbName = $vals['dbName']; - } - if (isset($vals['owner'])) { - $this->owner = $vals['owner']; - } - if (isset($vals['createTime'])) { - $this->createTime = $vals['createTime']; - } - if (isset($vals['lastAccessTime'])) { - $this->lastAccessTime = $vals['lastAccessTime']; - } - if (isset($vals['retention'])) { - $this->retention = $vals['retention']; - } - if (isset($vals['sd'])) { - $this->sd = $vals['sd']; - } - if (isset($vals['partitionKeys'])) { - $this->partitionKeys = $vals['partitionKeys']; - } - if (isset($vals['parameters'])) { - $this->parameters = $vals['parameters']; - } - if (isset($vals['viewOriginalText'])) { - $this->viewOriginalText = $vals['viewOriginalText']; - } - if (isset($vals['viewExpandedText'])) { - $this->viewExpandedText = $vals['viewExpandedText']; - } - if (isset($vals['tableType'])) { - $this->tableType = $vals['tableType']; - } - if (isset($vals['privileges'])) { - $this->privileges = $vals['privileges']; - } - if (isset($vals['temporary'])) { - $this->temporary = $vals['temporary']; - } - if (isset($vals['rewriteEnabled'])) { - $this->rewriteEnabled = $vals['rewriteEnabled']; - } - if (isset($vals['creationMetadata'])) { - $this->creationMetadata = $vals['creationMetadata']; - } - if (isset($vals['catName'])) { - $this->catName = $vals['catName']; - } - if (isset($vals['ownerType'])) { - $this->ownerType = $vals['ownerType']; + if (isset($vals['numTrues'])) { + $this->numTrues = $vals['numTrues']; } - if (isset($vals['writeId'])) { - $this->writeId = $vals['writeId']; + if (isset($vals['numFalses'])) { + $this->numFalses = $vals['numFalses']; } - if (isset($vals['isStatsCompliant'])) { - $this->isStatsCompliant = $vals['isStatsCompliant']; + if (isset($vals['numNulls'])) { + $this->numNulls = $vals['numNulls']; } - if (isset($vals['colStats'])) { - $this->colStats = $vals['colStats']; + if (isset($vals['bitVectors'])) { + $this->bitVectors = $vals['bitVectors']; } } } public function getName() { - return 'Table'; + return 'BooleanColumnStatsData'; } public function read($input) @@ -7272,188 +7057,196 @@ class Table { { case 1: if ($ftype == TType::I64) { - $xfer += $input->readI64($this->id); + $xfer += $input->readI64($this->numTrues); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->tableName); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numFalses); } else { $xfer += $input->skip($ftype); } break; case 3: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->dbName); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numNulls); } else { $xfer += $input->skip($ftype); } break; case 4: if ($ftype == TType::STRING) { - $xfer += $input->readString($this->owner); - } else { - $xfer += $input->skip($ftype); - } - break; - case 5: - if ($ftype == TType::I32) { - $xfer += $input->readI32($this->createTime); - } else { - $xfer += $input->skip($ftype); - } - break; - case 6: - if ($ftype == TType::I32) { - $xfer += $input->readI32($this->lastAccessTime); - } else { - $xfer += $input->skip($ftype); - } - break; - case 7: - if ($ftype == TType::I32) { - $xfer += $input->readI32($this->retention); - } else { - $xfer += $input->skip($ftype); - } - break; - case 8: - if ($ftype == TType::STRUCT) { - $this->sd = new \metastore\StorageDescriptor(); - $xfer += $this->sd->read($input); - } else { - $xfer += $input->skip($ftype); - } - break; - case 9: - if ($ftype == TType::LST) { - $this->partitionKeys = array(); - $_size190 = 0; - $_etype193 = 0; - $xfer += $input->readListBegin($_etype193, $_size190); - for ($_i194 = 0; $_i194 < $_size190; ++$_i194) - { - $elem195 = null; - $elem195 = new \metastore\FieldSchema(); - $xfer += $elem195->read($input); - $this->partitionKeys []= $elem195; - } - $xfer += $input->readListEnd(); - } else { - $xfer += $input->skip($ftype); - } - break; - case 10: - if ($ftype == TType::MAP) { - $this->parameters = array(); - $_size196 = 0; - $_ktype197 = 0; - $_vtype198 = 0; - $xfer += $input->readMapBegin($_ktype197, $_vtype198, $_size196); - for ($_i200 = 0; $_i200 < $_size196; ++$_i200) - { - $key201 = ''; - $val202 = ''; - $xfer += $input->readString($key201); - $xfer += $input->readString($val202); - $this->parameters[$key201] = $val202; - } - $xfer += $input->readMapEnd(); - } else { - $xfer += $input->skip($ftype); - } - break; - case 11: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->viewOriginalText); - } else { - $xfer += $input->skip($ftype); - } - break; - case 12: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->viewExpandedText); + $xfer += $input->readString($this->bitVectors); } else { $xfer += $input->skip($ftype); } break; - case 13: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->tableType); - } else { - $xfer += $input->skip($ftype); - } + default: + $xfer += $input->skip($ftype); break; - case 14: - if ($ftype == TType::STRUCT) { - $this->privileges = new \metastore\PrincipalPrivilegeSet(); - $xfer += $this->privileges->read($input); + } + $xfer += $input->readFieldEnd(); + } + $xfer += $input->readStructEnd(); + return $xfer; + } + + public function write($output) { + $xfer = 0; + $xfer += $output->writeStructBegin('BooleanColumnStatsData'); + if ($this->numTrues !== null) { + $xfer += $output->writeFieldBegin('numTrues', TType::I64, 1); + $xfer += $output->writeI64($this->numTrues); + $xfer += $output->writeFieldEnd(); + } + if ($this->numFalses !== null) { + $xfer += $output->writeFieldBegin('numFalses', TType::I64, 2); + $xfer += $output->writeI64($this->numFalses); + $xfer += $output->writeFieldEnd(); + } + if ($this->numNulls !== null) { + $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); + $xfer += $output->writeI64($this->numNulls); + $xfer += $output->writeFieldEnd(); + } + if ($this->bitVectors !== null) { + $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 4); + $xfer += $output->writeString($this->bitVectors); + $xfer += $output->writeFieldEnd(); + } + $xfer += $output->writeFieldStop(); + $xfer += $output->writeStructEnd(); + return $xfer; + } + +} + +class DoubleColumnStatsData { + static $_TSPEC; + + /** + * @var double + */ + public $lowValue = null; + /** + * @var double + */ + public $highValue = null; + /** + * @var int + */ + public $numNulls = null; + /** + * @var int + */ + public $numDVs = null; + /** + * @var string + */ + public $bitVectors = null; + + public function __construct($vals=null) { + if (!isset(self::$_TSPEC)) { + self::$_TSPEC = array( + 1 => array( + 'var' => 'lowValue', + 'type' => TType::DOUBLE, + ), + 2 => array( + 'var' => 'highValue', + 'type' => TType::DOUBLE, + ), + 3 => array( + 'var' => 'numNulls', + 'type' => TType::I64, + ), + 4 => array( + 'var' => 'numDVs', + 'type' => TType::I64, + ), + 5 => array( + 'var' => 'bitVectors', + 'type' => TType::STRING, + ), + ); + } + if (is_array($vals)) { + if (isset($vals['lowValue'])) { + $this->lowValue = $vals['lowValue']; + } + if (isset($vals['highValue'])) { + $this->highValue = $vals['highValue']; + } + if (isset($vals['numNulls'])) { + $this->numNulls = $vals['numNulls']; + } + if (isset($vals['numDVs'])) { + $this->numDVs = $vals['numDVs']; + } + if (isset($vals['bitVectors'])) { + $this->bitVectors = $vals['bitVectors']; + } + } + } + + public function getName() { + return 'DoubleColumnStatsData'; + } + + public function read($input) + { + $xfer = 0; + $fname = null; + $ftype = 0; + $fid = 0; + $xfer += $input->readStructBegin($fname); + while (true) + { + $xfer += $input->readFieldBegin($fname, $ftype, $fid); + if ($ftype == TType::STOP) { + break; + } + switch ($fid) + { + case 1: + if ($ftype == TType::DOUBLE) { + $xfer += $input->readDouble($this->lowValue); } else { $xfer += $input->skip($ftype); } break; - case 15: - if ($ftype == TType::BOOL) { - $xfer += $input->readBool($this->temporary); + case 2: + if ($ftype == TType::DOUBLE) { + $xfer += $input->readDouble($this->highValue); } else { $xfer += $input->skip($ftype); } break; - case 16: - if ($ftype == TType::BOOL) { - $xfer += $input->readBool($this->rewriteEnabled); + case 3: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numNulls); } else { $xfer += $input->skip($ftype); } break; - case 17: - if ($ftype == TType::STRUCT) { - $this->creationMetadata = new \metastore\CreationMetadata(); - $xfer += $this->creationMetadata->read($input); + case 4: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numDVs); } else { $xfer += $input->skip($ftype); } break; - case 18: + case 5: if ($ftype == TType::STRING) { - $xfer += $input->readString($this->catName); + $xfer += $input->readString($this->bitVectors); } else { $xfer += $input->skip($ftype); } break; - case 19: - if ($ftype == TType::I32) { - $xfer += $input->readI32($this->ownerType); - } else { - $xfer += $input->skip($ftype); - } - break; - case 20: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->writeId); - } else { - $xfer += $input->skip($ftype); - } - break; - case 21: - if ($ftype == TType::BOOL) { - $xfer += $input->readBool($this->isStatsCompliant); - } else { - $xfer += $input->skip($ftype); - } - break; - case 22: - if ($ftype == TType::STRUCT) { - $this->colStats = new \metastore\ColumnStatistics(); - $xfer += $this->colStats->read($input); - } else { - $xfer += $input->skip($ftype); - } - break; - default: - $xfer += $input->skip($ftype); + default: + $xfer += $input->skip($ftype); break; } $xfer += $input->readFieldEnd(); @@ -7464,152 +7257,30 @@ class Table { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('Table'); - if ($this->id !== null) { - $xfer += $output->writeFieldBegin('id', TType::I64, 1); - $xfer += $output->writeI64($this->id); - $xfer += $output->writeFieldEnd(); - } - if ($this->tableName !== null) { - $xfer += $output->writeFieldBegin('tableName', TType::STRING, 2); - $xfer += $output->writeString($this->tableName); - $xfer += $output->writeFieldEnd(); - } - if ($this->dbName !== null) { - $xfer += $output->writeFieldBegin('dbName', TType::STRING, 3); - $xfer += $output->writeString($this->dbName); - $xfer += $output->writeFieldEnd(); - } - if ($this->owner !== null) { - $xfer += $output->writeFieldBegin('owner', TType::STRING, 4); - $xfer += $output->writeString($this->owner); - $xfer += $output->writeFieldEnd(); - } - if ($this->createTime !== null) { - $xfer += $output->writeFieldBegin('createTime', TType::I32, 5); - $xfer += $output->writeI32($this->createTime); - $xfer += $output->writeFieldEnd(); - } - if ($this->lastAccessTime !== null) { - $xfer += $output->writeFieldBegin('lastAccessTime', TType::I32, 6); - $xfer += $output->writeI32($this->lastAccessTime); - $xfer += $output->writeFieldEnd(); - } - if ($this->retention !== null) { - $xfer += $output->writeFieldBegin('retention', TType::I32, 7); - $xfer += $output->writeI32($this->retention); - $xfer += $output->writeFieldEnd(); - } - if ($this->sd !== null) { - if (!is_object($this->sd)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('sd', TType::STRUCT, 8); - $xfer += $this->sd->write($output); - $xfer += $output->writeFieldEnd(); - } - if ($this->partitionKeys !== null) { - if (!is_array($this->partitionKeys)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('partitionKeys', TType::LST, 9); - { - $output->writeListBegin(TType::STRUCT, count($this->partitionKeys)); - { - foreach ($this->partitionKeys as $iter203) - { - $xfer += $iter203->write($output); - } - } - $output->writeListEnd(); - } - $xfer += $output->writeFieldEnd(); - } - if ($this->parameters !== null) { - if (!is_array($this->parameters)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('parameters', TType::MAP, 10); - { - $output->writeMapBegin(TType::STRING, TType::STRING, count($this->parameters)); - { - foreach ($this->parameters as $kiter204 => $viter205) - { - $xfer += $output->writeString($kiter204); - $xfer += $output->writeString($viter205); - } - } - $output->writeMapEnd(); - } - $xfer += $output->writeFieldEnd(); - } - if ($this->viewOriginalText !== null) { - $xfer += $output->writeFieldBegin('viewOriginalText', TType::STRING, 11); - $xfer += $output->writeString($this->viewOriginalText); - $xfer += $output->writeFieldEnd(); - } - if ($this->viewExpandedText !== null) { - $xfer += $output->writeFieldBegin('viewExpandedText', TType::STRING, 12); - $xfer += $output->writeString($this->viewExpandedText); - $xfer += $output->writeFieldEnd(); - } - if ($this->tableType !== null) { - $xfer += $output->writeFieldBegin('tableType', TType::STRING, 13); - $xfer += $output->writeString($this->tableType); - $xfer += $output->writeFieldEnd(); - } - if ($this->privileges !== null) { - if (!is_object($this->privileges)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('privileges', TType::STRUCT, 14); - $xfer += $this->privileges->write($output); - $xfer += $output->writeFieldEnd(); - } - if ($this->temporary !== null) { - $xfer += $output->writeFieldBegin('temporary', TType::BOOL, 15); - $xfer += $output->writeBool($this->temporary); - $xfer += $output->writeFieldEnd(); - } - if ($this->rewriteEnabled !== null) { - $xfer += $output->writeFieldBegin('rewriteEnabled', TType::BOOL, 16); - $xfer += $output->writeBool($this->rewriteEnabled); - $xfer += $output->writeFieldEnd(); - } - if ($this->creationMetadata !== null) { - if (!is_object($this->creationMetadata)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('creationMetadata', TType::STRUCT, 17); - $xfer += $this->creationMetadata->write($output); - $xfer += $output->writeFieldEnd(); - } - if ($this->catName !== null) { - $xfer += $output->writeFieldBegin('catName', TType::STRING, 18); - $xfer += $output->writeString($this->catName); + $xfer += $output->writeStructBegin('DoubleColumnStatsData'); + if ($this->lowValue !== null) { + $xfer += $output->writeFieldBegin('lowValue', TType::DOUBLE, 1); + $xfer += $output->writeDouble($this->lowValue); $xfer += $output->writeFieldEnd(); } - if ($this->ownerType !== null) { - $xfer += $output->writeFieldBegin('ownerType', TType::I32, 19); - $xfer += $output->writeI32($this->ownerType); + if ($this->highValue !== null) { + $xfer += $output->writeFieldBegin('highValue', TType::DOUBLE, 2); + $xfer += $output->writeDouble($this->highValue); $xfer += $output->writeFieldEnd(); } - if ($this->writeId !== null) { - $xfer += $output->writeFieldBegin('writeId', TType::I64, 20); - $xfer += $output->writeI64($this->writeId); + if ($this->numNulls !== null) { + $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); + $xfer += $output->writeI64($this->numNulls); $xfer += $output->writeFieldEnd(); } - if ($this->isStatsCompliant !== null) { - $xfer += $output->writeFieldBegin('isStatsCompliant', TType::BOOL, 21); - $xfer += $output->writeBool($this->isStatsCompliant); + if ($this->numDVs !== null) { + $xfer += $output->writeFieldBegin('numDVs', TType::I64, 4); + $xfer += $output->writeI64($this->numDVs); $xfer += $output->writeFieldEnd(); } - if ($this->colStats !== null) { - if (!is_object($this->colStats)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('colStats', TType::STRUCT, 22); - $xfer += $this->colStats->write($output); + if ($this->bitVectors !== null) { + $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 5); + $xfer += $output->writeString($this->bitVectors); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -7619,168 +7290,76 @@ class Table { } -class Partition { +class LongColumnStatsData { static $_TSPEC; /** - * @var string[] - */ - public $values = null; - /** - * @var string - */ - public $dbName = null; - /** - * @var string - */ - public $tableName = null; - /** * @var int */ - public $createTime = null; + public $lowValue = null; /** * @var int */ - public $lastAccessTime = null; - /** - * @var \metastore\StorageDescriptor - */ - public $sd = null; - /** - * @var array - */ - public $parameters = null; - /** - * @var \metastore\PrincipalPrivilegeSet - */ - public $privileges = null; - /** - * @var string - */ - public $catName = null; + public $highValue = null; /** * @var int */ - public $writeId = -1; + public $numNulls = null; /** - * @var bool + * @var int */ - public $isStatsCompliant = null; + public $numDVs = null; /** - * @var \metastore\ColumnStatistics + * @var string */ - public $colStats = null; + public $bitVectors = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'values', - 'type' => TType::LST, - 'etype' => TType::STRING, - 'elem' => array( - 'type' => TType::STRING, - ), + 'var' => 'lowValue', + 'type' => TType::I64, ), 2 => array( - 'var' => 'dbName', - 'type' => TType::STRING, + 'var' => 'highValue', + 'type' => TType::I64, ), 3 => array( - 'var' => 'tableName', - 'type' => TType::STRING, + 'var' => 'numNulls', + 'type' => TType::I64, ), 4 => array( - 'var' => 'createTime', - 'type' => TType::I32, + 'var' => 'numDVs', + 'type' => TType::I64, ), 5 => array( - 'var' => 'lastAccessTime', - 'type' => TType::I32, - ), - 6 => array( - 'var' => 'sd', - 'type' => TType::STRUCT, - 'class' => '\metastore\StorageDescriptor', - ), - 7 => array( - 'var' => 'parameters', - 'type' => TType::MAP, - 'ktype' => TType::STRING, - 'vtype' => TType::STRING, - 'key' => array( - 'type' => TType::STRING, - ), - 'val' => array( - 'type' => TType::STRING, - ), - ), - 8 => array( - 'var' => 'privileges', - 'type' => TType::STRUCT, - 'class' => '\metastore\PrincipalPrivilegeSet', - ), - 9 => array( - 'var' => 'catName', - 'type' => TType::STRING, - ), - 10 => array( - 'var' => 'writeId', - 'type' => TType::I64, - ), - 11 => array( - 'var' => 'isStatsCompliant', - 'type' => TType::BOOL, - ), - 12 => array( - 'var' => 'colStats', - 'type' => TType::STRUCT, - 'class' => '\metastore\ColumnStatistics', + 'var' => 'bitVectors', + 'type' => TType::STRING, ), ); } if (is_array($vals)) { - if (isset($vals['values'])) { - $this->values = $vals['values']; - } - if (isset($vals['dbName'])) { - $this->dbName = $vals['dbName']; - } - if (isset($vals['tableName'])) { - $this->tableName = $vals['tableName']; - } - if (isset($vals['createTime'])) { - $this->createTime = $vals['createTime']; - } - if (isset($vals['lastAccessTime'])) { - $this->lastAccessTime = $vals['lastAccessTime']; - } - if (isset($vals['sd'])) { - $this->sd = $vals['sd']; - } - if (isset($vals['parameters'])) { - $this->parameters = $vals['parameters']; - } - if (isset($vals['privileges'])) { - $this->privileges = $vals['privileges']; + if (isset($vals['lowValue'])) { + $this->lowValue = $vals['lowValue']; } - if (isset($vals['catName'])) { - $this->catName = $vals['catName']; + if (isset($vals['highValue'])) { + $this->highValue = $vals['highValue']; } - if (isset($vals['writeId'])) { - $this->writeId = $vals['writeId']; + if (isset($vals['numNulls'])) { + $this->numNulls = $vals['numNulls']; } - if (isset($vals['isStatsCompliant'])) { - $this->isStatsCompliant = $vals['isStatsCompliant']; + if (isset($vals['numDVs'])) { + $this->numDVs = $vals['numDVs']; } - if (isset($vals['colStats'])) { - $this->colStats = $vals['colStats']; + if (isset($vals['bitVectors'])) { + $this->bitVectors = $vals['bitVectors']; } } } public function getName() { - return 'Partition'; + return 'LongColumnStatsData'; } public function read($input) @@ -7799,111 +7378,36 @@ class Partition { switch ($fid) { case 1: - if ($ftype == TType::LST) { - $this->values = array(); - $_size206 = 0; - $_etype209 = 0; - $xfer += $input->readListBegin($_etype209, $_size206); - for ($_i210 = 0; $_i210 < $_size206; ++$_i210) - { - $elem211 = null; - $xfer += $input->readString($elem211); - $this->values []= $elem211; - } - $xfer += $input->readListEnd(); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->lowValue); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->dbName); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->highValue); } else { $xfer += $input->skip($ftype); } break; case 3: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->tableName); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numNulls); } else { $xfer += $input->skip($ftype); } break; case 4: - if ($ftype == TType::I32) { - $xfer += $input->readI32($this->createTime); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numDVs); } else { $xfer += $input->skip($ftype); } break; case 5: - if ($ftype == TType::I32) { - $xfer += $input->readI32($this->lastAccessTime); - } else { - $xfer += $input->skip($ftype); - } - break; - case 6: - if ($ftype == TType::STRUCT) { - $this->sd = new \metastore\StorageDescriptor(); - $xfer += $this->sd->read($input); - } else { - $xfer += $input->skip($ftype); - } - break; - case 7: - if ($ftype == TType::MAP) { - $this->parameters = array(); - $_size212 = 0; - $_ktype213 = 0; - $_vtype214 = 0; - $xfer += $input->readMapBegin($_ktype213, $_vtype214, $_size212); - for ($_i216 = 0; $_i216 < $_size212; ++$_i216) - { - $key217 = ''; - $val218 = ''; - $xfer += $input->readString($key217); - $xfer += $input->readString($val218); - $this->parameters[$key217] = $val218; - } - $xfer += $input->readMapEnd(); - } else { - $xfer += $input->skip($ftype); - } - break; - case 8: - if ($ftype == TType::STRUCT) { - $this->privileges = new \metastore\PrincipalPrivilegeSet(); - $xfer += $this->privileges->read($input); - } else { - $xfer += $input->skip($ftype); - } - break; - case 9: if ($ftype == TType::STRING) { - $xfer += $input->readString($this->catName); - } else { - $xfer += $input->skip($ftype); - } - break; - case 10: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->writeId); - } else { - $xfer += $input->skip($ftype); - } - break; - case 11: - if ($ftype == TType::BOOL) { - $xfer += $input->readBool($this->isStatsCompliant); - } else { - $xfer += $input->skip($ftype); - } - break; - case 12: - if ($ftype == TType::STRUCT) { - $this->colStats = new \metastore\ColumnStatistics(); - $xfer += $this->colStats->read($input); + $xfer += $input->readString($this->bitVectors); } else { $xfer += $input->skip($ftype); } @@ -7920,99 +7424,30 @@ class Partition { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('Partition'); - if ($this->values !== null) { - if (!is_array($this->values)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('values', TType::LST, 1); - { - $output->writeListBegin(TType::STRING, count($this->values)); - { - foreach ($this->values as $iter219) - { - $xfer += $output->writeString($iter219); - } - } - $output->writeListEnd(); - } - $xfer += $output->writeFieldEnd(); - } - if ($this->dbName !== null) { - $xfer += $output->writeFieldBegin('dbName', TType::STRING, 2); - $xfer += $output->writeString($this->dbName); - $xfer += $output->writeFieldEnd(); - } - if ($this->tableName !== null) { - $xfer += $output->writeFieldBegin('tableName', TType::STRING, 3); - $xfer += $output->writeString($this->tableName); - $xfer += $output->writeFieldEnd(); - } - if ($this->createTime !== null) { - $xfer += $output->writeFieldBegin('createTime', TType::I32, 4); - $xfer += $output->writeI32($this->createTime); - $xfer += $output->writeFieldEnd(); - } - if ($this->lastAccessTime !== null) { - $xfer += $output->writeFieldBegin('lastAccessTime', TType::I32, 5); - $xfer += $output->writeI32($this->lastAccessTime); - $xfer += $output->writeFieldEnd(); - } - if ($this->sd !== null) { - if (!is_object($this->sd)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('sd', TType::STRUCT, 6); - $xfer += $this->sd->write($output); - $xfer += $output->writeFieldEnd(); - } - if ($this->parameters !== null) { - if (!is_array($this->parameters)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('parameters', TType::MAP, 7); - { - $output->writeMapBegin(TType::STRING, TType::STRING, count($this->parameters)); - { - foreach ($this->parameters as $kiter220 => $viter221) - { - $xfer += $output->writeString($kiter220); - $xfer += $output->writeString($viter221); - } - } - $output->writeMapEnd(); - } - $xfer += $output->writeFieldEnd(); - } - if ($this->privileges !== null) { - if (!is_object($this->privileges)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('privileges', TType::STRUCT, 8); - $xfer += $this->privileges->write($output); + $xfer += $output->writeStructBegin('LongColumnStatsData'); + if ($this->lowValue !== null) { + $xfer += $output->writeFieldBegin('lowValue', TType::I64, 1); + $xfer += $output->writeI64($this->lowValue); $xfer += $output->writeFieldEnd(); } - if ($this->catName !== null) { - $xfer += $output->writeFieldBegin('catName', TType::STRING, 9); - $xfer += $output->writeString($this->catName); + if ($this->highValue !== null) { + $xfer += $output->writeFieldBegin('highValue', TType::I64, 2); + $xfer += $output->writeI64($this->highValue); $xfer += $output->writeFieldEnd(); } - if ($this->writeId !== null) { - $xfer += $output->writeFieldBegin('writeId', TType::I64, 10); - $xfer += $output->writeI64($this->writeId); + if ($this->numNulls !== null) { + $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); + $xfer += $output->writeI64($this->numNulls); $xfer += $output->writeFieldEnd(); } - if ($this->isStatsCompliant !== null) { - $xfer += $output->writeFieldBegin('isStatsCompliant', TType::BOOL, 11); - $xfer += $output->writeBool($this->isStatsCompliant); + if ($this->numDVs !== null) { + $xfer += $output->writeFieldBegin('numDVs', TType::I64, 4); + $xfer += $output->writeI64($this->numDVs); $xfer += $output->writeFieldEnd(); } - if ($this->colStats !== null) { - if (!is_object($this->colStats)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('colStats', TType::STRUCT, 12); - $xfer += $this->colStats->write($output); + if ($this->bitVectors !== null) { + $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 5); + $xfer += $output->writeString($this->bitVectors); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -8022,100 +7457,76 @@ class Partition { } -class PartitionWithoutSD { +class StringColumnStatsData { static $_TSPEC; /** - * @var string[] - */ - public $values = null; - /** * @var int */ - public $createTime = null; + public $maxColLen = null; /** - * @var int + * @var double */ - public $lastAccessTime = null; + public $avgColLen = null; /** - * @var string + * @var int */ - public $relativePath = null; + public $numNulls = null; /** - * @var array + * @var int */ - public $parameters = null; + public $numDVs = null; /** - * @var \metastore\PrincipalPrivilegeSet + * @var string */ - public $privileges = null; + public $bitVectors = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'values', - 'type' => TType::LST, - 'etype' => TType::STRING, - 'elem' => array( - 'type' => TType::STRING, - ), + 'var' => 'maxColLen', + 'type' => TType::I64, ), 2 => array( - 'var' => 'createTime', - 'type' => TType::I32, + 'var' => 'avgColLen', + 'type' => TType::DOUBLE, ), 3 => array( - 'var' => 'lastAccessTime', - 'type' => TType::I32, + 'var' => 'numNulls', + 'type' => TType::I64, ), 4 => array( - 'var' => 'relativePath', - 'type' => TType::STRING, + 'var' => 'numDVs', + 'type' => TType::I64, ), 5 => array( - 'var' => 'parameters', - 'type' => TType::MAP, - 'ktype' => TType::STRING, - 'vtype' => TType::STRING, - 'key' => array( - 'type' => TType::STRING, - ), - 'val' => array( - 'type' => TType::STRING, - ), - ), - 6 => array( - 'var' => 'privileges', - 'type' => TType::STRUCT, - 'class' => '\metastore\PrincipalPrivilegeSet', + 'var' => 'bitVectors', + 'type' => TType::STRING, ), ); } if (is_array($vals)) { - if (isset($vals['values'])) { - $this->values = $vals['values']; - } - if (isset($vals['createTime'])) { - $this->createTime = $vals['createTime']; + if (isset($vals['maxColLen'])) { + $this->maxColLen = $vals['maxColLen']; } - if (isset($vals['lastAccessTime'])) { - $this->lastAccessTime = $vals['lastAccessTime']; + if (isset($vals['avgColLen'])) { + $this->avgColLen = $vals['avgColLen']; } - if (isset($vals['relativePath'])) { - $this->relativePath = $vals['relativePath']; + if (isset($vals['numNulls'])) { + $this->numNulls = $vals['numNulls']; } - if (isset($vals['parameters'])) { - $this->parameters = $vals['parameters']; + if (isset($vals['numDVs'])) { + $this->numDVs = $vals['numDVs']; } - if (isset($vals['privileges'])) { - $this->privileges = $vals['privileges']; + if (isset($vals['bitVectors'])) { + $this->bitVectors = $vals['bitVectors']; } } } public function getName() { - return 'PartitionWithoutSD'; + return 'StringColumnStatsData'; } public function read($input) @@ -8134,67 +7545,36 @@ class PartitionWithoutSD { switch ($fid) { case 1: - if ($ftype == TType::LST) { - $this->values = array(); - $_size222 = 0; - $_etype225 = 0; - $xfer += $input->readListBegin($_etype225, $_size222); - for ($_i226 = 0; $_i226 < $_size222; ++$_i226) - { - $elem227 = null; - $xfer += $input->readString($elem227); - $this->values []= $elem227; - } - $xfer += $input->readListEnd(); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->maxColLen); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::I32) { - $xfer += $input->readI32($this->createTime); + if ($ftype == TType::DOUBLE) { + $xfer += $input->readDouble($this->avgColLen); } else { $xfer += $input->skip($ftype); } break; case 3: - if ($ftype == TType::I32) { - $xfer += $input->readI32($this->lastAccessTime); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numNulls); } else { $xfer += $input->skip($ftype); } break; case 4: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->relativePath); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numDVs); } else { $xfer += $input->skip($ftype); } break; case 5: - if ($ftype == TType::MAP) { - $this->parameters = array(); - $_size228 = 0; - $_ktype229 = 0; - $_vtype230 = 0; - $xfer += $input->readMapBegin($_ktype229, $_vtype230, $_size228); - for ($_i232 = 0; $_i232 < $_size228; ++$_i232) - { - $key233 = ''; - $val234 = ''; - $xfer += $input->readString($key233); - $xfer += $input->readString($val234); - $this->parameters[$key233] = $val234; - } - $xfer += $input->readMapEnd(); - } else { - $xfer += $input->skip($ftype); - } - break; - case 6: - if ($ftype == TType::STRUCT) { - $this->privileges = new \metastore\PrincipalPrivilegeSet(); - $xfer += $this->privileges->read($input); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->bitVectors); } else { $xfer += $input->skip($ftype); } @@ -8211,63 +7591,30 @@ class PartitionWithoutSD { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('PartitionWithoutSD'); - if ($this->values !== null) { - if (!is_array($this->values)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('values', TType::LST, 1); - { - $output->writeListBegin(TType::STRING, count($this->values)); - { - foreach ($this->values as $iter235) - { - $xfer += $output->writeString($iter235); - } - } - $output->writeListEnd(); - } - $xfer += $output->writeFieldEnd(); - } - if ($this->createTime !== null) { - $xfer += $output->writeFieldBegin('createTime', TType::I32, 2); - $xfer += $output->writeI32($this->createTime); + $xfer += $output->writeStructBegin('StringColumnStatsData'); + if ($this->maxColLen !== null) { + $xfer += $output->writeFieldBegin('maxColLen', TType::I64, 1); + $xfer += $output->writeI64($this->maxColLen); $xfer += $output->writeFieldEnd(); } - if ($this->lastAccessTime !== null) { - $xfer += $output->writeFieldBegin('lastAccessTime', TType::I32, 3); - $xfer += $output->writeI32($this->lastAccessTime); + if ($this->avgColLen !== null) { + $xfer += $output->writeFieldBegin('avgColLen', TType::DOUBLE, 2); + $xfer += $output->writeDouble($this->avgColLen); $xfer += $output->writeFieldEnd(); } - if ($this->relativePath !== null) { - $xfer += $output->writeFieldBegin('relativePath', TType::STRING, 4); - $xfer += $output->writeString($this->relativePath); + if ($this->numNulls !== null) { + $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); + $xfer += $output->writeI64($this->numNulls); $xfer += $output->writeFieldEnd(); } - if ($this->parameters !== null) { - if (!is_array($this->parameters)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('parameters', TType::MAP, 5); - { - $output->writeMapBegin(TType::STRING, TType::STRING, count($this->parameters)); - { - foreach ($this->parameters as $kiter236 => $viter237) - { - $xfer += $output->writeString($kiter236); - $xfer += $output->writeString($viter237); - } - } - $output->writeMapEnd(); - } + if ($this->numDVs !== null) { + $xfer += $output->writeFieldBegin('numDVs', TType::I64, 4); + $xfer += $output->writeI64($this->numDVs); $xfer += $output->writeFieldEnd(); } - if ($this->privileges !== null) { - if (!is_object($this->privileges)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('privileges', TType::STRUCT, 6); - $xfer += $this->privileges->write($output); + if ($this->bitVectors !== null) { + $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 5); + $xfer += $output->writeString($this->bitVectors); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -8277,49 +7624,65 @@ class PartitionWithoutSD { } -class PartitionSpecWithSharedSD { +class BinaryColumnStatsData { static $_TSPEC; /** - * @var \metastore\PartitionWithoutSD[] + * @var int */ - public $partitions = null; + public $maxColLen = null; /** - * @var \metastore\StorageDescriptor + * @var double */ - public $sd = null; + public $avgColLen = null; + /** + * @var int + */ + public $numNulls = null; + /** + * @var string + */ + public $bitVectors = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'partitions', - 'type' => TType::LST, - 'etype' => TType::STRUCT, - 'elem' => array( - 'type' => TType::STRUCT, - 'class' => '\metastore\PartitionWithoutSD', - ), + 'var' => 'maxColLen', + 'type' => TType::I64, ), 2 => array( - 'var' => 'sd', - 'type' => TType::STRUCT, - 'class' => '\metastore\StorageDescriptor', + 'var' => 'avgColLen', + 'type' => TType::DOUBLE, + ), + 3 => array( + 'var' => 'numNulls', + 'type' => TType::I64, + ), + 4 => array( + 'var' => 'bitVectors', + 'type' => TType::STRING, ), ); } if (is_array($vals)) { - if (isset($vals['partitions'])) { - $this->partitions = $vals['partitions']; + if (isset($vals['maxColLen'])) { + $this->maxColLen = $vals['maxColLen']; } - if (isset($vals['sd'])) { - $this->sd = $vals['sd']; + if (isset($vals['avgColLen'])) { + $this->avgColLen = $vals['avgColLen']; + } + if (isset($vals['numNulls'])) { + $this->numNulls = $vals['numNulls']; + } + if (isset($vals['bitVectors'])) { + $this->bitVectors = $vals['bitVectors']; } } } public function getName() { - return 'PartitionSpecWithSharedSD'; + return 'BinaryColumnStatsData'; } public function read($input) @@ -8338,27 +7701,29 @@ class PartitionSpecWithSharedSD { switch ($fid) { case 1: - if ($ftype == TType::LST) { - $this->partitions = array(); - $_size238 = 0; - $_etype241 = 0; - $xfer += $input->readListBegin($_etype241, $_size238); - for ($_i242 = 0; $_i242 < $_size238; ++$_i242) - { - $elem243 = null; - $elem243 = new \metastore\PartitionWithoutSD(); - $xfer += $elem243->read($input); - $this->partitions []= $elem243; - } - $xfer += $input->readListEnd(); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->maxColLen); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::STRUCT) { - $this->sd = new \metastore\StorageDescriptor(); - $xfer += $this->sd->read($input); + if ($ftype == TType::DOUBLE) { + $xfer += $input->readDouble($this->avgColLen); + } else { + $xfer += $input->skip($ftype); + } + break; + case 3: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numNulls); + } else { + $xfer += $input->skip($ftype); + } + break; + case 4: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->bitVectors); } else { $xfer += $input->skip($ftype); } @@ -8375,30 +7740,25 @@ class PartitionSpecWithSharedSD { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('PartitionSpecWithSharedSD'); - if ($this->partitions !== null) { - if (!is_array($this->partitions)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('partitions', TType::LST, 1); - { - $output->writeListBegin(TType::STRUCT, count($this->partitions)); - { - foreach ($this->partitions as $iter244) - { - $xfer += $iter244->write($output); - } - } - $output->writeListEnd(); - } - $xfer += $output->writeFieldEnd(); - } - if ($this->sd !== null) { - if (!is_object($this->sd)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('sd', TType::STRUCT, 2); - $xfer += $this->sd->write($output); + $xfer += $output->writeStructBegin('BinaryColumnStatsData'); + if ($this->maxColLen !== null) { + $xfer += $output->writeFieldBegin('maxColLen', TType::I64, 1); + $xfer += $output->writeI64($this->maxColLen); + $xfer += $output->writeFieldEnd(); + } + if ($this->avgColLen !== null) { + $xfer += $output->writeFieldBegin('avgColLen', TType::DOUBLE, 2); + $xfer += $output->writeDouble($this->avgColLen); + $xfer += $output->writeFieldEnd(); + } + if ($this->numNulls !== null) { + $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); + $xfer += $output->writeI64($this->numNulls); + $xfer += $output->writeFieldEnd(); + } + if ($this->bitVectors !== null) { + $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 4); + $xfer += $output->writeString($this->bitVectors); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -8408,37 +7768,43 @@ class PartitionSpecWithSharedSD { } -class PartitionListComposingSpec { +class Decimal { static $_TSPEC; /** - * @var \metastore\Partition[] + * @var int */ - public $partitions = null; + public $scale = null; + /** + * @var string + */ + public $unscaled = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( + 3 => array( + 'var' => 'scale', + 'type' => TType::I16, + ), 1 => array( - 'var' => 'partitions', - 'type' => TType::LST, - 'etype' => TType::STRUCT, - 'elem' => array( - 'type' => TType::STRUCT, - 'class' => '\metastore\Partition', - ), + 'var' => 'unscaled', + 'type' => TType::STRING, ), ); } if (is_array($vals)) { - if (isset($vals['partitions'])) { - $this->partitions = $vals['partitions']; + if (isset($vals['scale'])) { + $this->scale = $vals['scale']; + } + if (isset($vals['unscaled'])) { + $this->unscaled = $vals['unscaled']; } } } public function getName() { - return 'PartitionListComposingSpec'; + return 'Decimal'; } public function read($input) @@ -8456,20 +7822,16 @@ class PartitionListComposingSpec { } switch ($fid) { + case 3: + if ($ftype == TType::I16) { + $xfer += $input->readI16($this->scale); + } else { + $xfer += $input->skip($ftype); + } + break; case 1: - if ($ftype == TType::LST) { - $this->partitions = array(); - $_size245 = 0; - $_etype248 = 0; - $xfer += $input->readListBegin($_etype248, $_size245); - for ($_i249 = 0; $_i249 < $_size245; ++$_i249) - { - $elem250 = null; - $elem250 = new \metastore\Partition(); - $xfer += $elem250->read($input); - $this->partitions []= $elem250; - } - $xfer += $input->readListEnd(); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->unscaled); } else { $xfer += $input->skip($ftype); } @@ -8486,22 +7848,15 @@ class PartitionListComposingSpec { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('PartitionListComposingSpec'); - if ($this->partitions !== null) { - if (!is_array($this->partitions)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('partitions', TType::LST, 1); - { - $output->writeListBegin(TType::STRUCT, count($this->partitions)); - { - foreach ($this->partitions as $iter251) - { - $xfer += $iter251->write($output); - } - } - $output->writeListEnd(); - } + $xfer += $output->writeStructBegin('Decimal'); + if ($this->unscaled !== null) { + $xfer += $output->writeFieldBegin('unscaled', TType::STRING, 1); + $xfer += $output->writeString($this->unscaled); + $xfer += $output->writeFieldEnd(); + } + if ($this->scale !== null) { + $xfer += $output->writeFieldBegin('scale', TType::I16, 3); + $xfer += $output->writeI16($this->scale); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -8511,111 +7866,78 @@ class PartitionListComposingSpec { } -class PartitionSpec { +class DecimalColumnStatsData { static $_TSPEC; /** - * @var string - */ - public $dbName = null; - /** - * @var string - */ - public $tableName = null; - /** - * @var string - */ - public $rootPath = null; - /** - * @var \metastore\PartitionSpecWithSharedSD + * @var \metastore\Decimal */ - public $sharedSDPartitionSpec = null; + public $lowValue = null; /** - * @var \metastore\PartitionListComposingSpec + * @var \metastore\Decimal */ - public $partitionList = null; + public $highValue = null; /** - * @var string + * @var int */ - public $catName = null; + public $numNulls = null; /** * @var int */ - public $writeId = -1; + public $numDVs = null; /** - * @var bool + * @var string */ - public $isStatsCompliant = null; + public $bitVectors = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'dbName', - 'type' => TType::STRING, + 'var' => 'lowValue', + 'type' => TType::STRUCT, + 'class' => '\metastore\Decimal', ), 2 => array( - 'var' => 'tableName', - 'type' => TType::STRING, + 'var' => 'highValue', + 'type' => TType::STRUCT, + 'class' => '\metastore\Decimal', ), 3 => array( - 'var' => 'rootPath', - 'type' => TType::STRING, + 'var' => 'numNulls', + 'type' => TType::I64, ), 4 => array( - 'var' => 'sharedSDPartitionSpec', - 'type' => TType::STRUCT, - 'class' => '\metastore\PartitionSpecWithSharedSD', + 'var' => 'numDVs', + 'type' => TType::I64, ), 5 => array( - 'var' => 'partitionList', - 'type' => TType::STRUCT, - 'class' => '\metastore\PartitionListComposingSpec', - ), - 6 => array( - 'var' => 'catName', + 'var' => 'bitVectors', 'type' => TType::STRING, ), - 7 => array( - 'var' => 'writeId', - 'type' => TType::I64, - ), - 8 => array( - 'var' => 'isStatsCompliant', - 'type' => TType::BOOL, - ), ); } if (is_array($vals)) { - if (isset($vals['dbName'])) { - $this->dbName = $vals['dbName']; - } - if (isset($vals['tableName'])) { - $this->tableName = $vals['tableName']; - } - if (isset($vals['rootPath'])) { - $this->rootPath = $vals['rootPath']; - } - if (isset($vals['sharedSDPartitionSpec'])) { - $this->sharedSDPartitionSpec = $vals['sharedSDPartitionSpec']; + if (isset($vals['lowValue'])) { + $this->lowValue = $vals['lowValue']; } - if (isset($vals['partitionList'])) { - $this->partitionList = $vals['partitionList']; + if (isset($vals['highValue'])) { + $this->highValue = $vals['highValue']; } - if (isset($vals['catName'])) { - $this->catName = $vals['catName']; + if (isset($vals['numNulls'])) { + $this->numNulls = $vals['numNulls']; } - if (isset($vals['writeId'])) { - $this->writeId = $vals['writeId']; + if (isset($vals['numDVs'])) { + $this->numDVs = $vals['numDVs']; } - if (isset($vals['isStatsCompliant'])) { - $this->isStatsCompliant = $vals['isStatsCompliant']; + if (isset($vals['bitVectors'])) { + $this->bitVectors = $vals['bitVectors']; } } } public function getName() { - return 'PartitionSpec'; + return 'DecimalColumnStatsData'; } public function read($input) @@ -8634,59 +7956,38 @@ class PartitionSpec { switch ($fid) { case 1: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->dbName); + if ($ftype == TType::STRUCT) { + $this->lowValue = new \metastore\Decimal(); + $xfer += $this->lowValue->read($input); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->tableName); + if ($ftype == TType::STRUCT) { + $this->highValue = new \metastore\Decimal(); + $xfer += $this->highValue->read($input); } else { $xfer += $input->skip($ftype); } break; case 3: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->rootPath); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numNulls); } else { $xfer += $input->skip($ftype); } break; case 4: - if ($ftype == TType::STRUCT) { - $this->sharedSDPartitionSpec = new \metastore\PartitionSpecWithSharedSD(); - $xfer += $this->sharedSDPartitionSpec->read($input); + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->numDVs); } else { $xfer += $input->skip($ftype); } break; case 5: - if ($ftype == TType::STRUCT) { - $this->partitionList = new \metastore\PartitionListComposingSpec(); - $xfer += $this->partitionList->read($input); - } else { - $xfer += $input->skip($ftype); - } - break; - case 6: if ($ftype == TType::STRING) { - $xfer += $input->readString($this->catName); - } else { - $xfer += $input->skip($ftype); - } - break; - case 7: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->writeId); - } else { - $xfer += $input->skip($ftype); - } - break; - case 8: - if ($ftype == TType::BOOL) { - $xfer += $input->readBool($this->isStatsCompliant); + $xfer += $input->readString($this->bitVectors); } else { $xfer += $input->skip($ftype); } @@ -8703,51 +8004,36 @@ class PartitionSpec { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('PartitionSpec'); - if ($this->dbName !== null) { - $xfer += $output->writeFieldBegin('dbName', TType::STRING, 1); - $xfer += $output->writeString($this->dbName); + $xfer += $output->writeStructBegin('DecimalColumnStatsData'); + if ($this->lowValue !== null) { + if (!is_object($this->lowValue)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('lowValue', TType::STRUCT, 1); + $xfer += $this->lowValue->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->tableName !== null) { - $xfer += $output->writeFieldBegin('tableName', TType::STRING, 2); - $xfer += $output->writeString($this->tableName); - $xfer += $output->writeFieldEnd(); - } - if ($this->rootPath !== null) { - $xfer += $output->writeFieldBegin('rootPath', TType::STRING, 3); - $xfer += $output->writeString($this->rootPath); - $xfer += $output->writeFieldEnd(); - } - if ($this->sharedSDPartitionSpec !== null) { - if (!is_object($this->sharedSDPartitionSpec)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('sharedSDPartitionSpec', TType::STRUCT, 4); - $xfer += $this->sharedSDPartitionSpec->write($output); - $xfer += $output->writeFieldEnd(); - } - if ($this->partitionList !== null) { - if (!is_object($this->partitionList)) { + if ($this->highValue !== null) { + if (!is_object($this->highValue)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('partitionList', TType::STRUCT, 5); - $xfer += $this->partitionList->write($output); + $xfer += $output->writeFieldBegin('highValue', TType::STRUCT, 2); + $xfer += $this->highValue->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->catName !== null) { - $xfer += $output->writeFieldBegin('catName', TType::STRING, 6); - $xfer += $output->writeString($this->catName); + if ($this->numNulls !== null) { + $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); + $xfer += $output->writeI64($this->numNulls); $xfer += $output->writeFieldEnd(); } - if ($this->writeId !== null) { - $xfer += $output->writeFieldBegin('writeId', TType::I64, 7); - $xfer += $output->writeI64($this->writeId); + if ($this->numDVs !== null) { + $xfer += $output->writeFieldBegin('numDVs', TType::I64, 4); + $xfer += $output->writeI64($this->numDVs); $xfer += $output->writeFieldEnd(); } - if ($this->isStatsCompliant !== null) { - $xfer += $output->writeFieldBegin('isStatsCompliant', TType::BOOL, 8); - $xfer += $output->writeBool($this->isStatsCompliant); + if ($this->bitVectors !== null) { + $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 5); + $xfer += $output->writeString($this->bitVectors); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -8757,65 +8043,32 @@ class PartitionSpec { } -class BooleanColumnStatsData { +class Date { static $_TSPEC; /** * @var int */ - public $numTrues = null; - /** - * @var int - */ - public $numFalses = null; - /** - * @var int - */ - public $numNulls = null; - /** - * @var string - */ - public $bitVectors = null; + public $daysSinceEpoch = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'numTrues', - 'type' => TType::I64, - ), - 2 => array( - 'var' => 'numFalses', - 'type' => TType::I64, - ), - 3 => array( - 'var' => 'numNulls', + 'var' => 'daysSinceEpoch', 'type' => TType::I64, ), - 4 => array( - 'var' => 'bitVectors', - 'type' => TType::STRING, - ), ); } if (is_array($vals)) { - if (isset($vals['numTrues'])) { - $this->numTrues = $vals['numTrues']; - } - if (isset($vals['numFalses'])) { - $this->numFalses = $vals['numFalses']; - } - if (isset($vals['numNulls'])) { - $this->numNulls = $vals['numNulls']; - } - if (isset($vals['bitVectors'])) { - $this->bitVectors = $vals['bitVectors']; + if (isset($vals['daysSinceEpoch'])) { + $this->daysSinceEpoch = $vals['daysSinceEpoch']; } } } public function getName() { - return 'BooleanColumnStatsData'; + return 'Date'; } public function read($input) @@ -8835,28 +8088,7 @@ class BooleanColumnStatsData { { case 1: if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numTrues); - } else { - $xfer += $input->skip($ftype); - } - break; - case 2: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numFalses); - } else { - $xfer += $input->skip($ftype); - } - break; - case 3: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numNulls); - } else { - $xfer += $input->skip($ftype); - } - break; - case 4: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->bitVectors); + $xfer += $input->readI64($this->daysSinceEpoch); } else { $xfer += $input->skip($ftype); } @@ -8873,25 +8105,10 @@ class BooleanColumnStatsData { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('BooleanColumnStatsData'); - if ($this->numTrues !== null) { - $xfer += $output->writeFieldBegin('numTrues', TType::I64, 1); - $xfer += $output->writeI64($this->numTrues); - $xfer += $output->writeFieldEnd(); - } - if ($this->numFalses !== null) { - $xfer += $output->writeFieldBegin('numFalses', TType::I64, 2); - $xfer += $output->writeI64($this->numFalses); - $xfer += $output->writeFieldEnd(); - } - if ($this->numNulls !== null) { - $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); - $xfer += $output->writeI64($this->numNulls); - $xfer += $output->writeFieldEnd(); - } - if ($this->bitVectors !== null) { - $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 4); - $xfer += $output->writeString($this->bitVectors); + $xfer += $output->writeStructBegin('Date'); + if ($this->daysSinceEpoch !== null) { + $xfer += $output->writeFieldBegin('daysSinceEpoch', TType::I64, 1); + $xfer += $output->writeI64($this->daysSinceEpoch); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -8901,15 +8118,15 @@ class BooleanColumnStatsData { } -class DoubleColumnStatsData { +class DateColumnStatsData { static $_TSPEC; /** - * @var double + * @var \metastore\Date */ public $lowValue = null; /** - * @var double + * @var \metastore\Date */ public $highValue = null; /** @@ -8930,11 +8147,13 @@ class DoubleColumnStatsData { self::$_TSPEC = array( 1 => array( 'var' => 'lowValue', - 'type' => TType::DOUBLE, + 'type' => TType::STRUCT, + 'class' => '\metastore\Date', ), 2 => array( 'var' => 'highValue', - 'type' => TType::DOUBLE, + 'type' => TType::STRUCT, + 'class' => '\metastore\Date', ), 3 => array( 'var' => 'numNulls', @@ -8970,7 +8189,7 @@ class DoubleColumnStatsData { } public function getName() { - return 'DoubleColumnStatsData'; + return 'DateColumnStatsData'; } public function read($input) @@ -8989,15 +8208,17 @@ class DoubleColumnStatsData { switch ($fid) { case 1: - if ($ftype == TType::DOUBLE) { - $xfer += $input->readDouble($this->lowValue); + if ($ftype == TType::STRUCT) { + $this->lowValue = new \metastore\Date(); + $xfer += $this->lowValue->read($input); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::DOUBLE) { - $xfer += $input->readDouble($this->highValue); + if ($ftype == TType::STRUCT) { + $this->highValue = new \metastore\Date(); + $xfer += $this->highValue->read($input); } else { $xfer += $input->skip($ftype); } @@ -9035,15 +8256,21 @@ class DoubleColumnStatsData { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('DoubleColumnStatsData'); + $xfer += $output->writeStructBegin('DateColumnStatsData'); if ($this->lowValue !== null) { - $xfer += $output->writeFieldBegin('lowValue', TType::DOUBLE, 1); - $xfer += $output->writeDouble($this->lowValue); + if (!is_object($this->lowValue)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('lowValue', TType::STRUCT, 1); + $xfer += $this->lowValue->write($output); $xfer += $output->writeFieldEnd(); } if ($this->highValue !== null) { - $xfer += $output->writeFieldBegin('highValue', TType::DOUBLE, 2); - $xfer += $output->writeDouble($this->highValue); + if (!is_object($this->highValue)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('highValue', TType::STRUCT, 2); + $xfer += $this->highValue->write($output); $xfer += $output->writeFieldEnd(); } if ($this->numNulls !== null) { @@ -9068,76 +8295,105 @@ class DoubleColumnStatsData { } -class LongColumnStatsData { +class ColumnStatisticsData { static $_TSPEC; /** - * @var int + * @var \metastore\BooleanColumnStatsData */ - public $lowValue = null; + public $booleanStats = null; /** - * @var int + * @var \metastore\LongColumnStatsData */ - public $highValue = null; + public $longStats = null; /** - * @var int + * @var \metastore\DoubleColumnStatsData */ - public $numNulls = null; + public $doubleStats = null; /** - * @var int + * @var \metastore\StringColumnStatsData */ - public $numDVs = null; + public $stringStats = null; /** - * @var string + * @var \metastore\BinaryColumnStatsData */ - public $bitVectors = null; + public $binaryStats = null; + /** + * @var \metastore\DecimalColumnStatsData + */ + public $decimalStats = null; + /** + * @var \metastore\DateColumnStatsData + */ + public $dateStats = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'lowValue', - 'type' => TType::I64, + 'var' => 'booleanStats', + 'type' => TType::STRUCT, + 'class' => '\metastore\BooleanColumnStatsData', ), 2 => array( - 'var' => 'highValue', - 'type' => TType::I64, + 'var' => 'longStats', + 'type' => TType::STRUCT, + 'class' => '\metastore\LongColumnStatsData', ), 3 => array( - 'var' => 'numNulls', - 'type' => TType::I64, + 'var' => 'doubleStats', + 'type' => TType::STRUCT, + 'class' => '\metastore\DoubleColumnStatsData', ), 4 => array( - 'var' => 'numDVs', - 'type' => TType::I64, + 'var' => 'stringStats', + 'type' => TType::STRUCT, + 'class' => '\metastore\StringColumnStatsData', ), 5 => array( - 'var' => 'bitVectors', - 'type' => TType::STRING, + 'var' => 'binaryStats', + 'type' => TType::STRUCT, + 'class' => '\metastore\BinaryColumnStatsData', + ), + 6 => array( + 'var' => 'decimalStats', + 'type' => TType::STRUCT, + 'class' => '\metastore\DecimalColumnStatsData', + ), + 7 => array( + 'var' => 'dateStats', + 'type' => TType::STRUCT, + 'class' => '\metastore\DateColumnStatsData', ), ); } if (is_array($vals)) { - if (isset($vals['lowValue'])) { - $this->lowValue = $vals['lowValue']; + if (isset($vals['booleanStats'])) { + $this->booleanStats = $vals['booleanStats']; } - if (isset($vals['highValue'])) { - $this->highValue = $vals['highValue']; + if (isset($vals['longStats'])) { + $this->longStats = $vals['longStats']; } - if (isset($vals['numNulls'])) { - $this->numNulls = $vals['numNulls']; + if (isset($vals['doubleStats'])) { + $this->doubleStats = $vals['doubleStats']; } - if (isset($vals['numDVs'])) { - $this->numDVs = $vals['numDVs']; + if (isset($vals['stringStats'])) { + $this->stringStats = $vals['stringStats']; } - if (isset($vals['bitVectors'])) { - $this->bitVectors = $vals['bitVectors']; + if (isset($vals['binaryStats'])) { + $this->binaryStats = $vals['binaryStats']; + } + if (isset($vals['decimalStats'])) { + $this->decimalStats = $vals['decimalStats']; + } + if (isset($vals['dateStats'])) { + $this->dateStats = $vals['dateStats']; } } } public function getName() { - return 'LongColumnStatsData'; + return 'ColumnStatisticsData'; } public function read($input) @@ -9156,36 +8412,57 @@ class LongColumnStatsData { switch ($fid) { case 1: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->lowValue); + if ($ftype == TType::STRUCT) { + $this->booleanStats = new \metastore\BooleanColumnStatsData(); + $xfer += $this->booleanStats->read($input); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->highValue); + if ($ftype == TType::STRUCT) { + $this->longStats = new \metastore\LongColumnStatsData(); + $xfer += $this->longStats->read($input); } else { $xfer += $input->skip($ftype); } break; case 3: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numNulls); + if ($ftype == TType::STRUCT) { + $this->doubleStats = new \metastore\DoubleColumnStatsData(); + $xfer += $this->doubleStats->read($input); } else { $xfer += $input->skip($ftype); } break; case 4: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numDVs); + if ($ftype == TType::STRUCT) { + $this->stringStats = new \metastore\StringColumnStatsData(); + $xfer += $this->stringStats->read($input); } else { $xfer += $input->skip($ftype); } break; case 5: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->bitVectors); + if ($ftype == TType::STRUCT) { + $this->binaryStats = new \metastore\BinaryColumnStatsData(); + $xfer += $this->binaryStats->read($input); + } else { + $xfer += $input->skip($ftype); + } + break; + case 6: + if ($ftype == TType::STRUCT) { + $this->decimalStats = new \metastore\DecimalColumnStatsData(); + $xfer += $this->decimalStats->read($input); + } else { + $xfer += $input->skip($ftype); + } + break; + case 7: + if ($ftype == TType::STRUCT) { + $this->dateStats = new \metastore\DateColumnStatsData(); + $xfer += $this->dateStats->read($input); } else { $xfer += $input->skip($ftype); } @@ -9202,30 +8479,61 @@ class LongColumnStatsData { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('LongColumnStatsData'); - if ($this->lowValue !== null) { - $xfer += $output->writeFieldBegin('lowValue', TType::I64, 1); - $xfer += $output->writeI64($this->lowValue); + $xfer += $output->writeStructBegin('ColumnStatisticsData'); + if ($this->booleanStats !== null) { + if (!is_object($this->booleanStats)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('booleanStats', TType::STRUCT, 1); + $xfer += $this->booleanStats->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->highValue !== null) { - $xfer += $output->writeFieldBegin('highValue', TType::I64, 2); - $xfer += $output->writeI64($this->highValue); + if ($this->longStats !== null) { + if (!is_object($this->longStats)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('longStats', TType::STRUCT, 2); + $xfer += $this->longStats->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->numNulls !== null) { - $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); - $xfer += $output->writeI64($this->numNulls); + if ($this->doubleStats !== null) { + if (!is_object($this->doubleStats)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('doubleStats', TType::STRUCT, 3); + $xfer += $this->doubleStats->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->numDVs !== null) { - $xfer += $output->writeFieldBegin('numDVs', TType::I64, 4); - $xfer += $output->writeI64($this->numDVs); + if ($this->stringStats !== null) { + if (!is_object($this->stringStats)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('stringStats', TType::STRUCT, 4); + $xfer += $this->stringStats->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->bitVectors !== null) { - $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 5); - $xfer += $output->writeString($this->bitVectors); + if ($this->binaryStats !== null) { + if (!is_object($this->binaryStats)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('binaryStats', TType::STRUCT, 5); + $xfer += $this->binaryStats->write($output); + $xfer += $output->writeFieldEnd(); + } + if ($this->decimalStats !== null) { + if (!is_object($this->decimalStats)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('decimalStats', TType::STRUCT, 6); + $xfer += $this->decimalStats->write($output); + $xfer += $output->writeFieldEnd(); + } + if ($this->dateStats !== null) { + if (!is_object($this->dateStats)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('dateStats', TType::STRUCT, 7); + $xfer += $this->dateStats->write($output); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -9235,76 +8543,55 @@ class LongColumnStatsData { } -class StringColumnStatsData { +class ColumnStatisticsObj { static $_TSPEC; /** - * @var int - */ - public $maxColLen = null; - /** - * @var double - */ - public $avgColLen = null; - /** - * @var int + * @var string */ - public $numNulls = null; + public $colName = null; /** - * @var int + * @var string */ - public $numDVs = null; + public $colType = null; /** - * @var string + * @var \metastore\ColumnStatisticsData */ - public $bitVectors = null; + public $statsData = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'maxColLen', - 'type' => TType::I64, + 'var' => 'colName', + 'type' => TType::STRING, ), 2 => array( - 'var' => 'avgColLen', - 'type' => TType::DOUBLE, + 'var' => 'colType', + 'type' => TType::STRING, ), 3 => array( - 'var' => 'numNulls', - 'type' => TType::I64, - ), - 4 => array( - 'var' => 'numDVs', - 'type' => TType::I64, - ), - 5 => array( - 'var' => 'bitVectors', - 'type' => TType::STRING, + 'var' => 'statsData', + 'type' => TType::STRUCT, + 'class' => '\metastore\ColumnStatisticsData', ), ); } if (is_array($vals)) { - if (isset($vals['maxColLen'])) { - $this->maxColLen = $vals['maxColLen']; - } - if (isset($vals['avgColLen'])) { - $this->avgColLen = $vals['avgColLen']; - } - if (isset($vals['numNulls'])) { - $this->numNulls = $vals['numNulls']; + if (isset($vals['colName'])) { + $this->colName = $vals['colName']; } - if (isset($vals['numDVs'])) { - $this->numDVs = $vals['numDVs']; + if (isset($vals['colType'])) { + $this->colType = $vals['colType']; } - if (isset($vals['bitVectors'])) { - $this->bitVectors = $vals['bitVectors']; + if (isset($vals['statsData'])) { + $this->statsData = $vals['statsData']; } } } public function getName() { - return 'StringColumnStatsData'; + return 'ColumnStatisticsObj'; } public function read($input) @@ -9323,36 +8610,23 @@ class StringColumnStatsData { switch ($fid) { case 1: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->maxColLen); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->colName); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::DOUBLE) { - $xfer += $input->readDouble($this->avgColLen); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->colType); } else { $xfer += $input->skip($ftype); } break; case 3: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numNulls); - } else { - $xfer += $input->skip($ftype); - } - break; - case 4: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numDVs); - } else { - $xfer += $input->skip($ftype); - } - break; - case 5: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->bitVectors); + if ($ftype == TType::STRUCT) { + $this->statsData = new \metastore\ColumnStatisticsData(); + $xfer += $this->statsData->read($input); } else { $xfer += $input->skip($ftype); } @@ -9369,30 +8643,23 @@ class StringColumnStatsData { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('StringColumnStatsData'); - if ($this->maxColLen !== null) { - $xfer += $output->writeFieldBegin('maxColLen', TType::I64, 1); - $xfer += $output->writeI64($this->maxColLen); - $xfer += $output->writeFieldEnd(); - } - if ($this->avgColLen !== null) { - $xfer += $output->writeFieldBegin('avgColLen', TType::DOUBLE, 2); - $xfer += $output->writeDouble($this->avgColLen); - $xfer += $output->writeFieldEnd(); - } - if ($this->numNulls !== null) { - $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); - $xfer += $output->writeI64($this->numNulls); + $xfer += $output->writeStructBegin('ColumnStatisticsObj'); + if ($this->colName !== null) { + $xfer += $output->writeFieldBegin('colName', TType::STRING, 1); + $xfer += $output->writeString($this->colName); $xfer += $output->writeFieldEnd(); } - if ($this->numDVs !== null) { - $xfer += $output->writeFieldBegin('numDVs', TType::I64, 4); - $xfer += $output->writeI64($this->numDVs); + if ($this->colType !== null) { + $xfer += $output->writeFieldBegin('colType', TType::STRING, 2); + $xfer += $output->writeString($this->colType); $xfer += $output->writeFieldEnd(); } - if ($this->bitVectors !== null) { - $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 5); - $xfer += $output->writeString($this->bitVectors); + if ($this->statsData !== null) { + if (!is_object($this->statsData)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('statsData', TType::STRUCT, 3); + $xfer += $this->statsData->write($output); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -9402,65 +8669,87 @@ class StringColumnStatsData { } -class BinaryColumnStatsData { +class ColumnStatisticsDesc { static $_TSPEC; /** - * @var int + * @var bool */ - public $maxColLen = null; + public $isTblLevel = null; /** - * @var double + * @var string */ - public $avgColLen = null; + public $dbName = null; /** - * @var int + * @var string */ - public $numNulls = null; + public $tableName = null; /** * @var string */ - public $bitVectors = null; - - public function __construct($vals=null) { - if (!isset(self::$_TSPEC)) { - self::$_TSPEC = array( + public $partName = null; + /** + * @var int + */ + public $lastAnalyzed = null; + /** + * @var string + */ + public $catName = null; + + public function __construct($vals=null) { + if (!isset(self::$_TSPEC)) { + self::$_TSPEC = array( 1 => array( - 'var' => 'maxColLen', - 'type' => TType::I64, + 'var' => 'isTblLevel', + 'type' => TType::BOOL, ), 2 => array( - 'var' => 'avgColLen', - 'type' => TType::DOUBLE, + 'var' => 'dbName', + 'type' => TType::STRING, ), 3 => array( - 'var' => 'numNulls', - 'type' => TType::I64, + 'var' => 'tableName', + 'type' => TType::STRING, ), 4 => array( - 'var' => 'bitVectors', + 'var' => 'partName', + 'type' => TType::STRING, + ), + 5 => array( + 'var' => 'lastAnalyzed', + 'type' => TType::I64, + ), + 6 => array( + 'var' => 'catName', 'type' => TType::STRING, ), ); } if (is_array($vals)) { - if (isset($vals['maxColLen'])) { - $this->maxColLen = $vals['maxColLen']; + if (isset($vals['isTblLevel'])) { + $this->isTblLevel = $vals['isTblLevel']; } - if (isset($vals['avgColLen'])) { - $this->avgColLen = $vals['avgColLen']; + if (isset($vals['dbName'])) { + $this->dbName = $vals['dbName']; } - if (isset($vals['numNulls'])) { - $this->numNulls = $vals['numNulls']; + if (isset($vals['tableName'])) { + $this->tableName = $vals['tableName']; } - if (isset($vals['bitVectors'])) { - $this->bitVectors = $vals['bitVectors']; + if (isset($vals['partName'])) { + $this->partName = $vals['partName']; + } + if (isset($vals['lastAnalyzed'])) { + $this->lastAnalyzed = $vals['lastAnalyzed']; + } + if (isset($vals['catName'])) { + $this->catName = $vals['catName']; } } } public function getName() { - return 'BinaryColumnStatsData'; + return 'ColumnStatisticsDesc'; } public function read($input) @@ -9479,29 +8768,43 @@ class BinaryColumnStatsData { switch ($fid) { case 1: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->maxColLen); + if ($ftype == TType::BOOL) { + $xfer += $input->readBool($this->isTblLevel); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::DOUBLE) { - $xfer += $input->readDouble($this->avgColLen); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->dbName); } else { $xfer += $input->skip($ftype); } break; case 3: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numNulls); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->tableName); } else { $xfer += $input->skip($ftype); } break; case 4: if ($ftype == TType::STRING) { - $xfer += $input->readString($this->bitVectors); + $xfer += $input->readString($this->partName); + } else { + $xfer += $input->skip($ftype); + } + break; + case 5: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->lastAnalyzed); + } else { + $xfer += $input->skip($ftype); + } + break; + case 6: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->catName); } else { $xfer += $input->skip($ftype); } @@ -9518,25 +8821,35 @@ class BinaryColumnStatsData { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('BinaryColumnStatsData'); - if ($this->maxColLen !== null) { - $xfer += $output->writeFieldBegin('maxColLen', TType::I64, 1); - $xfer += $output->writeI64($this->maxColLen); + $xfer += $output->writeStructBegin('ColumnStatisticsDesc'); + if ($this->isTblLevel !== null) { + $xfer += $output->writeFieldBegin('isTblLevel', TType::BOOL, 1); + $xfer += $output->writeBool($this->isTblLevel); $xfer += $output->writeFieldEnd(); } - if ($this->avgColLen !== null) { - $xfer += $output->writeFieldBegin('avgColLen', TType::DOUBLE, 2); - $xfer += $output->writeDouble($this->avgColLen); + if ($this->dbName !== null) { + $xfer += $output->writeFieldBegin('dbName', TType::STRING, 2); + $xfer += $output->writeString($this->dbName); $xfer += $output->writeFieldEnd(); } - if ($this->numNulls !== null) { - $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); - $xfer += $output->writeI64($this->numNulls); + if ($this->tableName !== null) { + $xfer += $output->writeFieldBegin('tableName', TType::STRING, 3); + $xfer += $output->writeString($this->tableName); $xfer += $output->writeFieldEnd(); } - if ($this->bitVectors !== null) { - $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 4); - $xfer += $output->writeString($this->bitVectors); + if ($this->partName !== null) { + $xfer += $output->writeFieldBegin('partName', TType::STRING, 4); + $xfer += $output->writeString($this->partName); + $xfer += $output->writeFieldEnd(); + } + if ($this->lastAnalyzed !== null) { + $xfer += $output->writeFieldBegin('lastAnalyzed', TType::I64, 5); + $xfer += $output->writeI64($this->lastAnalyzed); + $xfer += $output->writeFieldEnd(); + } + if ($this->catName !== null) { + $xfer += $output->writeFieldBegin('catName', TType::STRING, 6); + $xfer += $output->writeString($this->catName); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -9546,43 +8859,60 @@ class BinaryColumnStatsData { } -class Decimal { +class ColumnStatistics { static $_TSPEC; /** - * @var int + * @var \metastore\ColumnStatisticsDesc */ - public $scale = null; + public $statsDesc = null; /** - * @var string + * @var \metastore\ColumnStatisticsObj[] */ - public $unscaled = null; + public $statsObj = null; + /** + * @var bool + */ + public $isStatsCompliant = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( - 3 => array( - 'var' => 'scale', - 'type' => TType::I16, - ), 1 => array( - 'var' => 'unscaled', - 'type' => TType::STRING, + 'var' => 'statsDesc', + 'type' => TType::STRUCT, + 'class' => '\metastore\ColumnStatisticsDesc', + ), + 2 => array( + 'var' => 'statsObj', + 'type' => TType::LST, + 'etype' => TType::STRUCT, + 'elem' => array( + 'type' => TType::STRUCT, + 'class' => '\metastore\ColumnStatisticsObj', + ), + ), + 3 => array( + 'var' => 'isStatsCompliant', + 'type' => TType::BOOL, ), ); } if (is_array($vals)) { - if (isset($vals['scale'])) { - $this->scale = $vals['scale']; + if (isset($vals['statsDesc'])) { + $this->statsDesc = $vals['statsDesc']; } - if (isset($vals['unscaled'])) { - $this->unscaled = $vals['unscaled']; + if (isset($vals['statsObj'])) { + $this->statsObj = $vals['statsObj']; + } + if (isset($vals['isStatsCompliant'])) { + $this->isStatsCompliant = $vals['isStatsCompliant']; } } } public function getName() { - return 'Decimal'; + return 'ColumnStatistics'; } public function read($input) @@ -9600,16 +8930,35 @@ class Decimal { } switch ($fid) { - case 3: - if ($ftype == TType::I16) { - $xfer += $input->readI16($this->scale); + case 1: + if ($ftype == TType::STRUCT) { + $this->statsDesc = new \metastore\ColumnStatisticsDesc(); + $xfer += $this->statsDesc->read($input); } else { $xfer += $input->skip($ftype); } break; - case 1: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->unscaled); + case 2: + if ($ftype == TType::LST) { + $this->statsObj = array(); + $_size190 = 0; + $_etype193 = 0; + $xfer += $input->readListBegin($_etype193, $_size190); + for ($_i194 = 0; $_i194 < $_size190; ++$_i194) + { + $elem195 = null; + $elem195 = new \metastore\ColumnStatisticsObj(); + $xfer += $elem195->read($input); + $this->statsObj []= $elem195; + } + $xfer += $input->readListEnd(); + } else { + $xfer += $input->skip($ftype); + } + break; + case 3: + if ($ftype == TType::BOOL) { + $xfer += $input->readBool($this->isStatsCompliant); } else { $xfer += $input->skip($ftype); } @@ -9626,15 +8975,35 @@ class Decimal { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('Decimal'); - if ($this->unscaled !== null) { - $xfer += $output->writeFieldBegin('unscaled', TType::STRING, 1); - $xfer += $output->writeString($this->unscaled); + $xfer += $output->writeStructBegin('ColumnStatistics'); + if ($this->statsDesc !== null) { + if (!is_object($this->statsDesc)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('statsDesc', TType::STRUCT, 1); + $xfer += $this->statsDesc->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->scale !== null) { - $xfer += $output->writeFieldBegin('scale', TType::I16, 3); - $xfer += $output->writeI16($this->scale); + if ($this->statsObj !== null) { + if (!is_array($this->statsObj)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('statsObj', TType::LST, 2); + { + $output->writeListBegin(TType::STRUCT, count($this->statsObj)); + { + foreach ($this->statsObj as $iter196) + { + $xfer += $iter196->write($output); + } + } + $output->writeListEnd(); + } + $xfer += $output->writeFieldEnd(); + } + if ($this->isStatsCompliant !== null) { + $xfer += $output->writeFieldBegin('isStatsCompliant', TType::BOOL, 3); + $xfer += $output->writeBool($this->isStatsCompliant); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -9644,78 +9013,280 @@ class Decimal { } -class DecimalColumnStatsData { +class Table { static $_TSPEC; /** - * @var \metastore\Decimal + * @var int */ - public $lowValue = null; + public $id = null; /** - * @var \metastore\Decimal + * @var string */ - public $highValue = null; + public $tableName = null; /** - * @var int + * @var string */ - public $numNulls = null; + public $dbName = null; + /** + * @var string + */ + public $owner = null; /** * @var int */ - public $numDVs = null; + public $createTime = null; /** - * @var string + * @var int */ - public $bitVectors = null; + public $lastAccessTime = null; + /** + * @var int + */ + public $retention = null; + /** + * @var \metastore\StorageDescriptor + */ + public $sd = null; + /** + * @var \metastore\FieldSchema[] + */ + public $partitionKeys = null; + /** + * @var array + */ + public $parameters = null; + /** + * @var string + */ + public $viewOriginalText = null; + /** + * @var string + */ + public $viewExpandedText = null; + /** + * @var string + */ + public $tableType = null; + /** + * @var \metastore\PrincipalPrivilegeSet + */ + public $privileges = null; + /** + * @var bool + */ + public $temporary = false; + /** + * @var bool + */ + public $rewriteEnabled = null; + /** + * @var \metastore\CreationMetadata + */ + public $creationMetadata = null; + /** + * @var string + */ + public $catName = null; + /** + * @var int + */ + public $ownerType = 1; + /** + * @var int + */ + public $writeId = -1; + /** + * @var bool + */ + public $isStatsCompliant = null; + /** + * @var \metastore\ColumnStatistics + */ + public $colStats = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'lowValue', - 'type' => TType::STRUCT, - 'class' => '\metastore\Decimal', + 'var' => 'id', + 'type' => TType::I64, ), 2 => array( - 'var' => 'highValue', - 'type' => TType::STRUCT, - 'class' => '\metastore\Decimal', + 'var' => 'tableName', + 'type' => TType::STRING, ), 3 => array( - 'var' => 'numNulls', - 'type' => TType::I64, + 'var' => 'dbName', + 'type' => TType::STRING, ), 4 => array( - 'var' => 'numDVs', - 'type' => TType::I64, + 'var' => 'owner', + 'type' => TType::STRING, ), 5 => array( - 'var' => 'bitVectors', + 'var' => 'createTime', + 'type' => TType::I32, + ), + 6 => array( + 'var' => 'lastAccessTime', + 'type' => TType::I32, + ), + 7 => array( + 'var' => 'retention', + 'type' => TType::I32, + ), + 8 => array( + 'var' => 'sd', + 'type' => TType::STRUCT, + 'class' => '\metastore\StorageDescriptor', + ), + 9 => array( + 'var' => 'partitionKeys', + 'type' => TType::LST, + 'etype' => TType::STRUCT, + 'elem' => array( + 'type' => TType::STRUCT, + 'class' => '\metastore\FieldSchema', + ), + ), + 10 => array( + 'var' => 'parameters', + 'type' => TType::MAP, + 'ktype' => TType::STRING, + 'vtype' => TType::STRING, + 'key' => array( + 'type' => TType::STRING, + ), + 'val' => array( + 'type' => TType::STRING, + ), + ), + 11 => array( + 'var' => 'viewOriginalText', + 'type' => TType::STRING, + ), + 12 => array( + 'var' => 'viewExpandedText', + 'type' => TType::STRING, + ), + 13 => array( + 'var' => 'tableType', + 'type' => TType::STRING, + ), + 14 => array( + 'var' => 'privileges', + 'type' => TType::STRUCT, + 'class' => '\metastore\PrincipalPrivilegeSet', + ), + 15 => array( + 'var' => 'temporary', + 'type' => TType::BOOL, + ), + 16 => array( + 'var' => 'rewriteEnabled', + 'type' => TType::BOOL, + ), + 17 => array( + 'var' => 'creationMetadata', + 'type' => TType::STRUCT, + 'class' => '\metastore\CreationMetadata', + ), + 18 => array( + 'var' => 'catName', 'type' => TType::STRING, ), + 19 => array( + 'var' => 'ownerType', + 'type' => TType::I32, + ), + 20 => array( + 'var' => 'writeId', + 'type' => TType::I64, + ), + 21 => array( + 'var' => 'isStatsCompliant', + 'type' => TType::BOOL, + ), + 22 => array( + 'var' => 'colStats', + 'type' => TType::STRUCT, + 'class' => '\metastore\ColumnStatistics', + ), ); } if (is_array($vals)) { - if (isset($vals['lowValue'])) { - $this->lowValue = $vals['lowValue']; + if (isset($vals['id'])) { + $this->id = $vals['id']; } - if (isset($vals['highValue'])) { - $this->highValue = $vals['highValue']; + if (isset($vals['tableName'])) { + $this->tableName = $vals['tableName']; } - if (isset($vals['numNulls'])) { - $this->numNulls = $vals['numNulls']; + if (isset($vals['dbName'])) { + $this->dbName = $vals['dbName']; } - if (isset($vals['numDVs'])) { - $this->numDVs = $vals['numDVs']; + if (isset($vals['owner'])) { + $this->owner = $vals['owner']; } - if (isset($vals['bitVectors'])) { - $this->bitVectors = $vals['bitVectors']; + if (isset($vals['createTime'])) { + $this->createTime = $vals['createTime']; + } + if (isset($vals['lastAccessTime'])) { + $this->lastAccessTime = $vals['lastAccessTime']; + } + if (isset($vals['retention'])) { + $this->retention = $vals['retention']; + } + if (isset($vals['sd'])) { + $this->sd = $vals['sd']; + } + if (isset($vals['partitionKeys'])) { + $this->partitionKeys = $vals['partitionKeys']; + } + if (isset($vals['parameters'])) { + $this->parameters = $vals['parameters']; + } + if (isset($vals['viewOriginalText'])) { + $this->viewOriginalText = $vals['viewOriginalText']; + } + if (isset($vals['viewExpandedText'])) { + $this->viewExpandedText = $vals['viewExpandedText']; + } + if (isset($vals['tableType'])) { + $this->tableType = $vals['tableType']; + } + if (isset($vals['privileges'])) { + $this->privileges = $vals['privileges']; + } + if (isset($vals['temporary'])) { + $this->temporary = $vals['temporary']; + } + if (isset($vals['rewriteEnabled'])) { + $this->rewriteEnabled = $vals['rewriteEnabled']; + } + if (isset($vals['creationMetadata'])) { + $this->creationMetadata = $vals['creationMetadata']; + } + if (isset($vals['catName'])) { + $this->catName = $vals['catName']; + } + if (isset($vals['ownerType'])) { + $this->ownerType = $vals['ownerType']; + } + if (isset($vals['writeId'])) { + $this->writeId = $vals['writeId']; + } + if (isset($vals['isStatsCompliant'])) { + $this->isStatsCompliant = $vals['isStatsCompliant']; + } + if (isset($vals['colStats'])) { + $this->colStats = $vals['colStats']; } } } public function getName() { - return 'DecimalColumnStatsData'; + return 'Table'; } public function read($input) @@ -9734,38 +9305,183 @@ class DecimalColumnStatsData { switch ($fid) { case 1: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->id); + } else { + $xfer += $input->skip($ftype); + } + break; + case 2: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->tableName); + } else { + $xfer += $input->skip($ftype); + } + break; + case 3: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->dbName); + } else { + $xfer += $input->skip($ftype); + } + break; + case 4: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->owner); + } else { + $xfer += $input->skip($ftype); + } + break; + case 5: + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->createTime); + } else { + $xfer += $input->skip($ftype); + } + break; + case 6: + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->lastAccessTime); + } else { + $xfer += $input->skip($ftype); + } + break; + case 7: + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->retention); + } else { + $xfer += $input->skip($ftype); + } + break; + case 8: if ($ftype == TType::STRUCT) { - $this->lowValue = new \metastore\Decimal(); - $xfer += $this->lowValue->read($input); + $this->sd = new \metastore\StorageDescriptor(); + $xfer += $this->sd->read($input); + } else { + $xfer += $input->skip($ftype); + } + break; + case 9: + if ($ftype == TType::LST) { + $this->partitionKeys = array(); + $_size197 = 0; + $_etype200 = 0; + $xfer += $input->readListBegin($_etype200, $_size197); + for ($_i201 = 0; $_i201 < $_size197; ++$_i201) + { + $elem202 = null; + $elem202 = new \metastore\FieldSchema(); + $xfer += $elem202->read($input); + $this->partitionKeys []= $elem202; + } + $xfer += $input->readListEnd(); + } else { + $xfer += $input->skip($ftype); + } + break; + case 10: + if ($ftype == TType::MAP) { + $this->parameters = array(); + $_size203 = 0; + $_ktype204 = 0; + $_vtype205 = 0; + $xfer += $input->readMapBegin($_ktype204, $_vtype205, $_size203); + for ($_i207 = 0; $_i207 < $_size203; ++$_i207) + { + $key208 = ''; + $val209 = ''; + $xfer += $input->readString($key208); + $xfer += $input->readString($val209); + $this->parameters[$key208] = $val209; + } + $xfer += $input->readMapEnd(); + } else { + $xfer += $input->skip($ftype); + } + break; + case 11: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->viewOriginalText); + } else { + $xfer += $input->skip($ftype); + } + break; + case 12: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->viewExpandedText); + } else { + $xfer += $input->skip($ftype); + } + break; + case 13: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->tableType); + } else { + $xfer += $input->skip($ftype); + } + break; + case 14: + if ($ftype == TType::STRUCT) { + $this->privileges = new \metastore\PrincipalPrivilegeSet(); + $xfer += $this->privileges->read($input); + } else { + $xfer += $input->skip($ftype); + } + break; + case 15: + if ($ftype == TType::BOOL) { + $xfer += $input->readBool($this->temporary); + } else { + $xfer += $input->skip($ftype); + } + break; + case 16: + if ($ftype == TType::BOOL) { + $xfer += $input->readBool($this->rewriteEnabled); } else { $xfer += $input->skip($ftype); } break; - case 2: + case 17: if ($ftype == TType::STRUCT) { - $this->highValue = new \metastore\Decimal(); - $xfer += $this->highValue->read($input); + $this->creationMetadata = new \metastore\CreationMetadata(); + $xfer += $this->creationMetadata->read($input); } else { $xfer += $input->skip($ftype); } break; - case 3: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numNulls); + case 18: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->catName); } else { $xfer += $input->skip($ftype); } break; - case 4: + case 19: + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->ownerType); + } else { + $xfer += $input->skip($ftype); + } + break; + case 20: if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numDVs); + $xfer += $input->readI64($this->writeId); } else { $xfer += $input->skip($ftype); } break; - case 5: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->bitVectors); + case 21: + if ($ftype == TType::BOOL) { + $xfer += $input->readBool($this->isStatsCompliant); + } else { + $xfer += $input->skip($ftype); + } + break; + case 22: + if ($ftype == TType::STRUCT) { + $this->colStats = new \metastore\ColumnStatistics(); + $xfer += $this->colStats->read($input); } else { $xfer += $input->skip($ftype); } @@ -9782,111 +9498,152 @@ class DecimalColumnStatsData { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('DecimalColumnStatsData'); - if ($this->lowValue !== null) { - if (!is_object($this->lowValue)) { + $xfer += $output->writeStructBegin('Table'); + if ($this->id !== null) { + $xfer += $output->writeFieldBegin('id', TType::I64, 1); + $xfer += $output->writeI64($this->id); + $xfer += $output->writeFieldEnd(); + } + if ($this->tableName !== null) { + $xfer += $output->writeFieldBegin('tableName', TType::STRING, 2); + $xfer += $output->writeString($this->tableName); + $xfer += $output->writeFieldEnd(); + } + if ($this->dbName !== null) { + $xfer += $output->writeFieldBegin('dbName', TType::STRING, 3); + $xfer += $output->writeString($this->dbName); + $xfer += $output->writeFieldEnd(); + } + if ($this->owner !== null) { + $xfer += $output->writeFieldBegin('owner', TType::STRING, 4); + $xfer += $output->writeString($this->owner); + $xfer += $output->writeFieldEnd(); + } + if ($this->createTime !== null) { + $xfer += $output->writeFieldBegin('createTime', TType::I32, 5); + $xfer += $output->writeI32($this->createTime); + $xfer += $output->writeFieldEnd(); + } + if ($this->lastAccessTime !== null) { + $xfer += $output->writeFieldBegin('lastAccessTime', TType::I32, 6); + $xfer += $output->writeI32($this->lastAccessTime); + $xfer += $output->writeFieldEnd(); + } + if ($this->retention !== null) { + $xfer += $output->writeFieldBegin('retention', TType::I32, 7); + $xfer += $output->writeI32($this->retention); + $xfer += $output->writeFieldEnd(); + } + if ($this->sd !== null) { + if (!is_object($this->sd)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('lowValue', TType::STRUCT, 1); - $xfer += $this->lowValue->write($output); + $xfer += $output->writeFieldBegin('sd', TType::STRUCT, 8); + $xfer += $this->sd->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->highValue !== null) { - if (!is_object($this->highValue)) { + if ($this->partitionKeys !== null) { + if (!is_array($this->partitionKeys)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('highValue', TType::STRUCT, 2); - $xfer += $this->highValue->write($output); + $xfer += $output->writeFieldBegin('partitionKeys', TType::LST, 9); + { + $output->writeListBegin(TType::STRUCT, count($this->partitionKeys)); + { + foreach ($this->partitionKeys as $iter210) + { + $xfer += $iter210->write($output); + } + } + $output->writeListEnd(); + } $xfer += $output->writeFieldEnd(); } - if ($this->numNulls !== null) { - $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); - $xfer += $output->writeI64($this->numNulls); + if ($this->parameters !== null) { + if (!is_array($this->parameters)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('parameters', TType::MAP, 10); + { + $output->writeMapBegin(TType::STRING, TType::STRING, count($this->parameters)); + { + foreach ($this->parameters as $kiter211 => $viter212) + { + $xfer += $output->writeString($kiter211); + $xfer += $output->writeString($viter212); + } + } + $output->writeMapEnd(); + } $xfer += $output->writeFieldEnd(); } - if ($this->numDVs !== null) { - $xfer += $output->writeFieldBegin('numDVs', TType::I64, 4); - $xfer += $output->writeI64($this->numDVs); + if ($this->viewOriginalText !== null) { + $xfer += $output->writeFieldBegin('viewOriginalText', TType::STRING, 11); + $xfer += $output->writeString($this->viewOriginalText); $xfer += $output->writeFieldEnd(); } - if ($this->bitVectors !== null) { - $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 5); - $xfer += $output->writeString($this->bitVectors); + if ($this->viewExpandedText !== null) { + $xfer += $output->writeFieldBegin('viewExpandedText', TType::STRING, 12); + $xfer += $output->writeString($this->viewExpandedText); $xfer += $output->writeFieldEnd(); } - $xfer += $output->writeFieldStop(); - $xfer += $output->writeStructEnd(); - return $xfer; - } - -} - -class Date { - static $_TSPEC; - - /** - * @var int - */ - public $daysSinceEpoch = null; - - public function __construct($vals=null) { - if (!isset(self::$_TSPEC)) { - self::$_TSPEC = array( - 1 => array( - 'var' => 'daysSinceEpoch', - 'type' => TType::I64, - ), - ); + if ($this->tableType !== null) { + $xfer += $output->writeFieldBegin('tableType', TType::STRING, 13); + $xfer += $output->writeString($this->tableType); + $xfer += $output->writeFieldEnd(); } - if (is_array($vals)) { - if (isset($vals['daysSinceEpoch'])) { - $this->daysSinceEpoch = $vals['daysSinceEpoch']; + if ($this->privileges !== null) { + if (!is_object($this->privileges)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } + $xfer += $output->writeFieldBegin('privileges', TType::STRUCT, 14); + $xfer += $this->privileges->write($output); + $xfer += $output->writeFieldEnd(); } - } - - public function getName() { - return 'Date'; - } - - public function read($input) - { - $xfer = 0; - $fname = null; - $ftype = 0; - $fid = 0; - $xfer += $input->readStructBegin($fname); - while (true) - { - $xfer += $input->readFieldBegin($fname, $ftype, $fid); - if ($ftype == TType::STOP) { - break; - } - switch ($fid) - { - case 1: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->daysSinceEpoch); - } else { - $xfer += $input->skip($ftype); - } - break; - default: - $xfer += $input->skip($ftype); - break; + if ($this->temporary !== null) { + $xfer += $output->writeFieldBegin('temporary', TType::BOOL, 15); + $xfer += $output->writeBool($this->temporary); + $xfer += $output->writeFieldEnd(); + } + if ($this->rewriteEnabled !== null) { + $xfer += $output->writeFieldBegin('rewriteEnabled', TType::BOOL, 16); + $xfer += $output->writeBool($this->rewriteEnabled); + $xfer += $output->writeFieldEnd(); + } + if ($this->creationMetadata !== null) { + if (!is_object($this->creationMetadata)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $input->readFieldEnd(); + $xfer += $output->writeFieldBegin('creationMetadata', TType::STRUCT, 17); + $xfer += $this->creationMetadata->write($output); + $xfer += $output->writeFieldEnd(); } - $xfer += $input->readStructEnd(); - return $xfer; - } - - public function write($output) { - $xfer = 0; - $xfer += $output->writeStructBegin('Date'); - if ($this->daysSinceEpoch !== null) { - $xfer += $output->writeFieldBegin('daysSinceEpoch', TType::I64, 1); - $xfer += $output->writeI64($this->daysSinceEpoch); + if ($this->catName !== null) { + $xfer += $output->writeFieldBegin('catName', TType::STRING, 18); + $xfer += $output->writeString($this->catName); + $xfer += $output->writeFieldEnd(); + } + if ($this->ownerType !== null) { + $xfer += $output->writeFieldBegin('ownerType', TType::I32, 19); + $xfer += $output->writeI32($this->ownerType); + $xfer += $output->writeFieldEnd(); + } + if ($this->writeId !== null) { + $xfer += $output->writeFieldBegin('writeId', TType::I64, 20); + $xfer += $output->writeI64($this->writeId); + $xfer += $output->writeFieldEnd(); + } + if ($this->isStatsCompliant !== null) { + $xfer += $output->writeFieldBegin('isStatsCompliant', TType::BOOL, 21); + $xfer += $output->writeBool($this->isStatsCompliant); + $xfer += $output->writeFieldEnd(); + } + if ($this->colStats !== null) { + if (!is_object($this->colStats)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('colStats', TType::STRUCT, 22); + $xfer += $this->colStats->write($output); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -9896,78 +9653,168 @@ class Date { } -class DateColumnStatsData { +class Partition { static $_TSPEC; /** - * @var \metastore\Date + * @var string[] + */ + public $values = null; + /** + * @var string */ - public $lowValue = null; + public $dbName = null; /** - * @var \metastore\Date + * @var string */ - public $highValue = null; + public $tableName = null; /** * @var int */ - public $numNulls = null; + public $createTime = null; /** * @var int */ - public $numDVs = null; + public $lastAccessTime = null; + /** + * @var \metastore\StorageDescriptor + */ + public $sd = null; + /** + * @var array + */ + public $parameters = null; + /** + * @var \metastore\PrincipalPrivilegeSet + */ + public $privileges = null; /** * @var string */ - public $bitVectors = null; + public $catName = null; + /** + * @var int + */ + public $writeId = -1; + /** + * @var bool + */ + public $isStatsCompliant = null; + /** + * @var \metastore\ColumnStatistics + */ + public $colStats = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'lowValue', - 'type' => TType::STRUCT, - 'class' => '\metastore\Date', + 'var' => 'values', + 'type' => TType::LST, + 'etype' => TType::STRING, + 'elem' => array( + 'type' => TType::STRING, + ), ), 2 => array( - 'var' => 'highValue', - 'type' => TType::STRUCT, - 'class' => '\metastore\Date', + 'var' => 'dbName', + 'type' => TType::STRING, ), 3 => array( - 'var' => 'numNulls', - 'type' => TType::I64, + 'var' => 'tableName', + 'type' => TType::STRING, ), 4 => array( - 'var' => 'numDVs', - 'type' => TType::I64, + 'var' => 'createTime', + 'type' => TType::I32, ), 5 => array( - 'var' => 'bitVectors', + 'var' => 'lastAccessTime', + 'type' => TType::I32, + ), + 6 => array( + 'var' => 'sd', + 'type' => TType::STRUCT, + 'class' => '\metastore\StorageDescriptor', + ), + 7 => array( + 'var' => 'parameters', + 'type' => TType::MAP, + 'ktype' => TType::STRING, + 'vtype' => TType::STRING, + 'key' => array( + 'type' => TType::STRING, + ), + 'val' => array( + 'type' => TType::STRING, + ), + ), + 8 => array( + 'var' => 'privileges', + 'type' => TType::STRUCT, + 'class' => '\metastore\PrincipalPrivilegeSet', + ), + 9 => array( + 'var' => 'catName', 'type' => TType::STRING, ), + 10 => array( + 'var' => 'writeId', + 'type' => TType::I64, + ), + 11 => array( + 'var' => 'isStatsCompliant', + 'type' => TType::BOOL, + ), + 12 => array( + 'var' => 'colStats', + 'type' => TType::STRUCT, + 'class' => '\metastore\ColumnStatistics', + ), ); } if (is_array($vals)) { - if (isset($vals['lowValue'])) { - $this->lowValue = $vals['lowValue']; + if (isset($vals['values'])) { + $this->values = $vals['values']; } - if (isset($vals['highValue'])) { - $this->highValue = $vals['highValue']; + if (isset($vals['dbName'])) { + $this->dbName = $vals['dbName']; } - if (isset($vals['numNulls'])) { - $this->numNulls = $vals['numNulls']; + if (isset($vals['tableName'])) { + $this->tableName = $vals['tableName']; } - if (isset($vals['numDVs'])) { - $this->numDVs = $vals['numDVs']; + if (isset($vals['createTime'])) { + $this->createTime = $vals['createTime']; } - if (isset($vals['bitVectors'])) { - $this->bitVectors = $vals['bitVectors']; + if (isset($vals['lastAccessTime'])) { + $this->lastAccessTime = $vals['lastAccessTime']; + } + if (isset($vals['sd'])) { + $this->sd = $vals['sd']; + } + if (isset($vals['parameters'])) { + $this->parameters = $vals['parameters']; + } + if (isset($vals['privileges'])) { + $this->privileges = $vals['privileges']; + } + if (isset($vals['catName'])) { + $this->catName = $vals['catName']; + } + if (isset($vals['writeId'])) { + $this->writeId = $vals['writeId']; + } + if (isset($vals['isStatsCompliant'])) { + $this->isStatsCompliant = $vals['isStatsCompliant']; + } + if (isset($vals['colStats'])) { + $this->colStats = $vals['colStats']; } } } public function getName() { - return 'DateColumnStatsData'; + return 'Partition'; } public function read($input) @@ -9986,38 +9833,111 @@ class DateColumnStatsData { switch ($fid) { case 1: - if ($ftype == TType::STRUCT) { - $this->lowValue = new \metastore\Date(); - $xfer += $this->lowValue->read($input); + if ($ftype == TType::LST) { + $this->values = array(); + $_size213 = 0; + $_etype216 = 0; + $xfer += $input->readListBegin($_etype216, $_size213); + for ($_i217 = 0; $_i217 < $_size213; ++$_i217) + { + $elem218 = null; + $xfer += $input->readString($elem218); + $this->values []= $elem218; + } + $xfer += $input->readListEnd(); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::STRUCT) { - $this->highValue = new \metastore\Date(); - $xfer += $this->highValue->read($input); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->dbName); } else { $xfer += $input->skip($ftype); } break; case 3: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numNulls); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->tableName); } else { $xfer += $input->skip($ftype); } break; case 4: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->numDVs); + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->createTime); } else { $xfer += $input->skip($ftype); } break; case 5: + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->lastAccessTime); + } else { + $xfer += $input->skip($ftype); + } + break; + case 6: + if ($ftype == TType::STRUCT) { + $this->sd = new \metastore\StorageDescriptor(); + $xfer += $this->sd->read($input); + } else { + $xfer += $input->skip($ftype); + } + break; + case 7: + if ($ftype == TType::MAP) { + $this->parameters = array(); + $_size219 = 0; + $_ktype220 = 0; + $_vtype221 = 0; + $xfer += $input->readMapBegin($_ktype220, $_vtype221, $_size219); + for ($_i223 = 0; $_i223 < $_size219; ++$_i223) + { + $key224 = ''; + $val225 = ''; + $xfer += $input->readString($key224); + $xfer += $input->readString($val225); + $this->parameters[$key224] = $val225; + } + $xfer += $input->readMapEnd(); + } else { + $xfer += $input->skip($ftype); + } + break; + case 8: + if ($ftype == TType::STRUCT) { + $this->privileges = new \metastore\PrincipalPrivilegeSet(); + $xfer += $this->privileges->read($input); + } else { + $xfer += $input->skip($ftype); + } + break; + case 9: if ($ftype == TType::STRING) { - $xfer += $input->readString($this->bitVectors); + $xfer += $input->readString($this->catName); + } else { + $xfer += $input->skip($ftype); + } + break; + case 10: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->writeId); + } else { + $xfer += $input->skip($ftype); + } + break; + case 11: + if ($ftype == TType::BOOL) { + $xfer += $input->readBool($this->isStatsCompliant); + } else { + $xfer += $input->skip($ftype); + } + break; + case 12: + if ($ftype == TType::STRUCT) { + $this->colStats = new \metastore\ColumnStatistics(); + $xfer += $this->colStats->read($input); } else { $xfer += $input->skip($ftype); } @@ -10026,44 +9946,107 @@ class DateColumnStatsData { $xfer += $input->skip($ftype); break; } - $xfer += $input->readFieldEnd(); + $xfer += $input->readFieldEnd(); + } + $xfer += $input->readStructEnd(); + return $xfer; + } + + public function write($output) { + $xfer = 0; + $xfer += $output->writeStructBegin('Partition'); + if ($this->values !== null) { + if (!is_array($this->values)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('values', TType::LST, 1); + { + $output->writeListBegin(TType::STRING, count($this->values)); + { + foreach ($this->values as $iter226) + { + $xfer += $output->writeString($iter226); + } + } + $output->writeListEnd(); + } + $xfer += $output->writeFieldEnd(); + } + if ($this->dbName !== null) { + $xfer += $output->writeFieldBegin('dbName', TType::STRING, 2); + $xfer += $output->writeString($this->dbName); + $xfer += $output->writeFieldEnd(); + } + if ($this->tableName !== null) { + $xfer += $output->writeFieldBegin('tableName', TType::STRING, 3); + $xfer += $output->writeString($this->tableName); + $xfer += $output->writeFieldEnd(); + } + if ($this->createTime !== null) { + $xfer += $output->writeFieldBegin('createTime', TType::I32, 4); + $xfer += $output->writeI32($this->createTime); + $xfer += $output->writeFieldEnd(); + } + if ($this->lastAccessTime !== null) { + $xfer += $output->writeFieldBegin('lastAccessTime', TType::I32, 5); + $xfer += $output->writeI32($this->lastAccessTime); + $xfer += $output->writeFieldEnd(); + } + if ($this->sd !== null) { + if (!is_object($this->sd)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('sd', TType::STRUCT, 6); + $xfer += $this->sd->write($output); + $xfer += $output->writeFieldEnd(); } - $xfer += $input->readStructEnd(); - return $xfer; - } - - public function write($output) { - $xfer = 0; - $xfer += $output->writeStructBegin('DateColumnStatsData'); - if ($this->lowValue !== null) { - if (!is_object($this->lowValue)) { + if ($this->parameters !== null) { + if (!is_array($this->parameters)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('lowValue', TType::STRUCT, 1); - $xfer += $this->lowValue->write($output); + $xfer += $output->writeFieldBegin('parameters', TType::MAP, 7); + { + $output->writeMapBegin(TType::STRING, TType::STRING, count($this->parameters)); + { + foreach ($this->parameters as $kiter227 => $viter228) + { + $xfer += $output->writeString($kiter227); + $xfer += $output->writeString($viter228); + } + } + $output->writeMapEnd(); + } $xfer += $output->writeFieldEnd(); } - if ($this->highValue !== null) { - if (!is_object($this->highValue)) { + if ($this->privileges !== null) { + if (!is_object($this->privileges)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('highValue', TType::STRUCT, 2); - $xfer += $this->highValue->write($output); + $xfer += $output->writeFieldBegin('privileges', TType::STRUCT, 8); + $xfer += $this->privileges->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->numNulls !== null) { - $xfer += $output->writeFieldBegin('numNulls', TType::I64, 3); - $xfer += $output->writeI64($this->numNulls); + if ($this->catName !== null) { + $xfer += $output->writeFieldBegin('catName', TType::STRING, 9); + $xfer += $output->writeString($this->catName); $xfer += $output->writeFieldEnd(); } - if ($this->numDVs !== null) { - $xfer += $output->writeFieldBegin('numDVs', TType::I64, 4); - $xfer += $output->writeI64($this->numDVs); + if ($this->writeId !== null) { + $xfer += $output->writeFieldBegin('writeId', TType::I64, 10); + $xfer += $output->writeI64($this->writeId); $xfer += $output->writeFieldEnd(); } - if ($this->bitVectors !== null) { - $xfer += $output->writeFieldBegin('bitVectors', TType::STRING, 5); - $xfer += $output->writeString($this->bitVectors); + if ($this->isStatsCompliant !== null) { + $xfer += $output->writeFieldBegin('isStatsCompliant', TType::BOOL, 11); + $xfer += $output->writeBool($this->isStatsCompliant); + $xfer += $output->writeFieldEnd(); + } + if ($this->colStats !== null) { + if (!is_object($this->colStats)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('colStats', TType::STRUCT, 12); + $xfer += $this->colStats->write($output); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -10073,105 +10056,100 @@ class DateColumnStatsData { } -class ColumnStatisticsData { +class PartitionWithoutSD { static $_TSPEC; /** - * @var \metastore\BooleanColumnStatsData - */ - public $booleanStats = null; - /** - * @var \metastore\LongColumnStatsData + * @var string[] */ - public $longStats = null; + public $values = null; /** - * @var \metastore\DoubleColumnStatsData + * @var int */ - public $doubleStats = null; + public $createTime = null; /** - * @var \metastore\StringColumnStatsData + * @var int */ - public $stringStats = null; + public $lastAccessTime = null; /** - * @var \metastore\BinaryColumnStatsData + * @var string */ - public $binaryStats = null; + public $relativePath = null; /** - * @var \metastore\DecimalColumnStatsData + * @var array */ - public $decimalStats = null; + public $parameters = null; /** - * @var \metastore\DateColumnStatsData + * @var \metastore\PrincipalPrivilegeSet */ - public $dateStats = null; + public $privileges = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'booleanStats', - 'type' => TType::STRUCT, - 'class' => '\metastore\BooleanColumnStatsData', + 'var' => 'values', + 'type' => TType::LST, + 'etype' => TType::STRING, + 'elem' => array( + 'type' => TType::STRING, + ), ), 2 => array( - 'var' => 'longStats', - 'type' => TType::STRUCT, - 'class' => '\metastore\LongColumnStatsData', + 'var' => 'createTime', + 'type' => TType::I32, ), 3 => array( - 'var' => 'doubleStats', - 'type' => TType::STRUCT, - 'class' => '\metastore\DoubleColumnStatsData', + 'var' => 'lastAccessTime', + 'type' => TType::I32, ), 4 => array( - 'var' => 'stringStats', - 'type' => TType::STRUCT, - 'class' => '\metastore\StringColumnStatsData', + 'var' => 'relativePath', + 'type' => TType::STRING, ), 5 => array( - 'var' => 'binaryStats', - 'type' => TType::STRUCT, - 'class' => '\metastore\BinaryColumnStatsData', + 'var' => 'parameters', + 'type' => TType::MAP, + 'ktype' => TType::STRING, + 'vtype' => TType::STRING, + 'key' => array( + 'type' => TType::STRING, ), - 6 => array( - 'var' => 'decimalStats', - 'type' => TType::STRUCT, - 'class' => '\metastore\DecimalColumnStatsData', + 'val' => array( + 'type' => TType::STRING, + ), ), - 7 => array( - 'var' => 'dateStats', + 6 => array( + 'var' => 'privileges', 'type' => TType::STRUCT, - 'class' => '\metastore\DateColumnStatsData', + 'class' => '\metastore\PrincipalPrivilegeSet', ), ); } if (is_array($vals)) { - if (isset($vals['booleanStats'])) { - $this->booleanStats = $vals['booleanStats']; - } - if (isset($vals['longStats'])) { - $this->longStats = $vals['longStats']; + if (isset($vals['values'])) { + $this->values = $vals['values']; } - if (isset($vals['doubleStats'])) { - $this->doubleStats = $vals['doubleStats']; + if (isset($vals['createTime'])) { + $this->createTime = $vals['createTime']; } - if (isset($vals['stringStats'])) { - $this->stringStats = $vals['stringStats']; + if (isset($vals['lastAccessTime'])) { + $this->lastAccessTime = $vals['lastAccessTime']; } - if (isset($vals['binaryStats'])) { - $this->binaryStats = $vals['binaryStats']; + if (isset($vals['relativePath'])) { + $this->relativePath = $vals['relativePath']; } - if (isset($vals['decimalStats'])) { - $this->decimalStats = $vals['decimalStats']; + if (isset($vals['parameters'])) { + $this->parameters = $vals['parameters']; } - if (isset($vals['dateStats'])) { - $this->dateStats = $vals['dateStats']; + if (isset($vals['privileges'])) { + $this->privileges = $vals['privileges']; } } } public function getName() { - return 'ColumnStatisticsData'; + return 'PartitionWithoutSD'; } public function read($input) @@ -10190,57 +10168,67 @@ class ColumnStatisticsData { switch ($fid) { case 1: - if ($ftype == TType::STRUCT) { - $this->booleanStats = new \metastore\BooleanColumnStatsData(); - $xfer += $this->booleanStats->read($input); + if ($ftype == TType::LST) { + $this->values = array(); + $_size229 = 0; + $_etype232 = 0; + $xfer += $input->readListBegin($_etype232, $_size229); + for ($_i233 = 0; $_i233 < $_size229; ++$_i233) + { + $elem234 = null; + $xfer += $input->readString($elem234); + $this->values []= $elem234; + } + $xfer += $input->readListEnd(); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::STRUCT) { - $this->longStats = new \metastore\LongColumnStatsData(); - $xfer += $this->longStats->read($input); + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->createTime); } else { $xfer += $input->skip($ftype); } break; case 3: - if ($ftype == TType::STRUCT) { - $this->doubleStats = new \metastore\DoubleColumnStatsData(); - $xfer += $this->doubleStats->read($input); + if ($ftype == TType::I32) { + $xfer += $input->readI32($this->lastAccessTime); } else { $xfer += $input->skip($ftype); } break; case 4: - if ($ftype == TType::STRUCT) { - $this->stringStats = new \metastore\StringColumnStatsData(); - $xfer += $this->stringStats->read($input); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->relativePath); } else { $xfer += $input->skip($ftype); } break; case 5: - if ($ftype == TType::STRUCT) { - $this->binaryStats = new \metastore\BinaryColumnStatsData(); - $xfer += $this->binaryStats->read($input); + if ($ftype == TType::MAP) { + $this->parameters = array(); + $_size235 = 0; + $_ktype236 = 0; + $_vtype237 = 0; + $xfer += $input->readMapBegin($_ktype236, $_vtype237, $_size235); + for ($_i239 = 0; $_i239 < $_size235; ++$_i239) + { + $key240 = ''; + $val241 = ''; + $xfer += $input->readString($key240); + $xfer += $input->readString($val241); + $this->parameters[$key240] = $val241; + } + $xfer += $input->readMapEnd(); } else { $xfer += $input->skip($ftype); } break; case 6: if ($ftype == TType::STRUCT) { - $this->decimalStats = new \metastore\DecimalColumnStatsData(); - $xfer += $this->decimalStats->read($input); - } else { - $xfer += $input->skip($ftype); - } - break; - case 7: - if ($ftype == TType::STRUCT) { - $this->dateStats = new \metastore\DateColumnStatsData(); - $xfer += $this->dateStats->read($input); + $this->privileges = new \metastore\PrincipalPrivilegeSet(); + $xfer += $this->privileges->read($input); } else { $xfer += $input->skip($ftype); } @@ -10257,61 +10245,63 @@ class ColumnStatisticsData { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('ColumnStatisticsData'); - if ($this->booleanStats !== null) { - if (!is_object($this->booleanStats)) { + $xfer += $output->writeStructBegin('PartitionWithoutSD'); + if ($this->values !== null) { + if (!is_array($this->values)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('booleanStats', TType::STRUCT, 1); - $xfer += $this->booleanStats->write($output); + $xfer += $output->writeFieldBegin('values', TType::LST, 1); + { + $output->writeListBegin(TType::STRING, count($this->values)); + { + foreach ($this->values as $iter242) + { + $xfer += $output->writeString($iter242); + } + } + $output->writeListEnd(); + } $xfer += $output->writeFieldEnd(); } - if ($this->longStats !== null) { - if (!is_object($this->longStats)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('longStats', TType::STRUCT, 2); - $xfer += $this->longStats->write($output); + if ($this->createTime !== null) { + $xfer += $output->writeFieldBegin('createTime', TType::I32, 2); + $xfer += $output->writeI32($this->createTime); $xfer += $output->writeFieldEnd(); } - if ($this->doubleStats !== null) { - if (!is_object($this->doubleStats)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('doubleStats', TType::STRUCT, 3); - $xfer += $this->doubleStats->write($output); + if ($this->lastAccessTime !== null) { + $xfer += $output->writeFieldBegin('lastAccessTime', TType::I32, 3); + $xfer += $output->writeI32($this->lastAccessTime); $xfer += $output->writeFieldEnd(); } - if ($this->stringStats !== null) { - if (!is_object($this->stringStats)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); - } - $xfer += $output->writeFieldBegin('stringStats', TType::STRUCT, 4); - $xfer += $this->stringStats->write($output); + if ($this->relativePath !== null) { + $xfer += $output->writeFieldBegin('relativePath', TType::STRING, 4); + $xfer += $output->writeString($this->relativePath); $xfer += $output->writeFieldEnd(); } - if ($this->binaryStats !== null) { - if (!is_object($this->binaryStats)) { + if ($this->parameters !== null) { + if (!is_array($this->parameters)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('binaryStats', TType::STRUCT, 5); - $xfer += $this->binaryStats->write($output); - $xfer += $output->writeFieldEnd(); - } - if ($this->decimalStats !== null) { - if (!is_object($this->decimalStats)) { - throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + $xfer += $output->writeFieldBegin('parameters', TType::MAP, 5); + { + $output->writeMapBegin(TType::STRING, TType::STRING, count($this->parameters)); + { + foreach ($this->parameters as $kiter243 => $viter244) + { + $xfer += $output->writeString($kiter243); + $xfer += $output->writeString($viter244); + } + } + $output->writeMapEnd(); } - $xfer += $output->writeFieldBegin('decimalStats', TType::STRUCT, 6); - $xfer += $this->decimalStats->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->dateStats !== null) { - if (!is_object($this->dateStats)) { + if ($this->privileges !== null) { + if (!is_object($this->privileges)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('dateStats', TType::STRUCT, 7); - $xfer += $this->dateStats->write($output); + $xfer += $output->writeFieldBegin('privileges', TType::STRUCT, 6); + $xfer += $this->privileges->write($output); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -10321,55 +10311,49 @@ class ColumnStatisticsData { } -class ColumnStatisticsObj { +class PartitionSpecWithSharedSD { static $_TSPEC; /** - * @var string - */ - public $colName = null; - /** - * @var string + * @var \metastore\PartitionWithoutSD[] */ - public $colType = null; + public $partitions = null; /** - * @var \metastore\ColumnStatisticsData + * @var \metastore\StorageDescriptor */ - public $statsData = null; + public $sd = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'colName', - 'type' => TType::STRING, + 'var' => 'partitions', + 'type' => TType::LST, + 'etype' => TType::STRUCT, + 'elem' => array( + 'type' => TType::STRUCT, + 'class' => '\metastore\PartitionWithoutSD', + ), ), 2 => array( - 'var' => 'colType', - 'type' => TType::STRING, - ), - 3 => array( - 'var' => 'statsData', + 'var' => 'sd', 'type' => TType::STRUCT, - 'class' => '\metastore\ColumnStatisticsData', + 'class' => '\metastore\StorageDescriptor', ), ); } if (is_array($vals)) { - if (isset($vals['colName'])) { - $this->colName = $vals['colName']; - } - if (isset($vals['colType'])) { - $this->colType = $vals['colType']; + if (isset($vals['partitions'])) { + $this->partitions = $vals['partitions']; } - if (isset($vals['statsData'])) { - $this->statsData = $vals['statsData']; + if (isset($vals['sd'])) { + $this->sd = $vals['sd']; } } } public function getName() { - return 'ColumnStatisticsObj'; + return 'PartitionSpecWithSharedSD'; } public function read($input) @@ -10388,23 +10372,27 @@ class ColumnStatisticsObj { switch ($fid) { case 1: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->colName); + if ($ftype == TType::LST) { + $this->partitions = array(); + $_size245 = 0; + $_etype248 = 0; + $xfer += $input->readListBegin($_etype248, $_size245); + for ($_i249 = 0; $_i249 < $_size245; ++$_i249) + { + $elem250 = null; + $elem250 = new \metastore\PartitionWithoutSD(); + $xfer += $elem250->read($input); + $this->partitions []= $elem250; + } + $xfer += $input->readListEnd(); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->colType); - } else { - $xfer += $input->skip($ftype); - } - break; - case 3: if ($ftype == TType::STRUCT) { - $this->statsData = new \metastore\ColumnStatisticsData(); - $xfer += $this->statsData->read($input); + $this->sd = new \metastore\StorageDescriptor(); + $xfer += $this->sd->read($input); } else { $xfer += $input->skip($ftype); } @@ -10421,23 +10409,30 @@ class ColumnStatisticsObj { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('ColumnStatisticsObj'); - if ($this->colName !== null) { - $xfer += $output->writeFieldBegin('colName', TType::STRING, 1); - $xfer += $output->writeString($this->colName); - $xfer += $output->writeFieldEnd(); - } - if ($this->colType !== null) { - $xfer += $output->writeFieldBegin('colType', TType::STRING, 2); - $xfer += $output->writeString($this->colType); + $xfer += $output->writeStructBegin('PartitionSpecWithSharedSD'); + if ($this->partitions !== null) { + if (!is_array($this->partitions)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('partitions', TType::LST, 1); + { + $output->writeListBegin(TType::STRUCT, count($this->partitions)); + { + foreach ($this->partitions as $iter251) + { + $xfer += $iter251->write($output); + } + } + $output->writeListEnd(); + } $xfer += $output->writeFieldEnd(); } - if ($this->statsData !== null) { - if (!is_object($this->statsData)) { + if ($this->sd !== null) { + if (!is_object($this->sd)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('statsData', TType::STRUCT, 3); - $xfer += $this->statsData->write($output); + $xfer += $output->writeFieldBegin('sd', TType::STRUCT, 2); + $xfer += $this->sd->write($output); $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -10447,87 +10442,37 @@ class ColumnStatisticsObj { } -class ColumnStatisticsDesc { +class PartitionListComposingSpec { static $_TSPEC; /** - * @var bool - */ - public $isTblLevel = null; - /** - * @var string - */ - public $dbName = null; - /** - * @var string - */ - public $tableName = null; - /** - * @var string - */ - public $partName = null; - /** - * @var int - */ - public $lastAnalyzed = null; - /** - * @var string + * @var \metastore\Partition[] */ - public $catName = null; + public $partitions = null; public function __construct($vals=null) { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'isTblLevel', - 'type' => TType::BOOL, - ), - 2 => array( - 'var' => 'dbName', - 'type' => TType::STRING, - ), - 3 => array( - 'var' => 'tableName', - 'type' => TType::STRING, - ), - 4 => array( - 'var' => 'partName', - 'type' => TType::STRING, - ), - 5 => array( - 'var' => 'lastAnalyzed', - 'type' => TType::I64, - ), - 6 => array( - 'var' => 'catName', - 'type' => TType::STRING, + 'var' => 'partitions', + 'type' => TType::LST, + 'etype' => TType::STRUCT, + 'elem' => array( + 'type' => TType::STRUCT, + 'class' => '\metastore\Partition', + ), ), ); } if (is_array($vals)) { - if (isset($vals['isTblLevel'])) { - $this->isTblLevel = $vals['isTblLevel']; - } - if (isset($vals['dbName'])) { - $this->dbName = $vals['dbName']; - } - if (isset($vals['tableName'])) { - $this->tableName = $vals['tableName']; - } - if (isset($vals['partName'])) { - $this->partName = $vals['partName']; - } - if (isset($vals['lastAnalyzed'])) { - $this->lastAnalyzed = $vals['lastAnalyzed']; - } - if (isset($vals['catName'])) { - $this->catName = $vals['catName']; + if (isset($vals['partitions'])) { + $this->partitions = $vals['partitions']; } } } public function getName() { - return 'ColumnStatisticsDesc'; + return 'PartitionListComposingSpec'; } public function read($input) @@ -10544,45 +10489,21 @@ class ColumnStatisticsDesc { break; } switch ($fid) - { - case 1: - if ($ftype == TType::BOOL) { - $xfer += $input->readBool($this->isTblLevel); - } else { - $xfer += $input->skip($ftype); - } - break; - case 2: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->dbName); - } else { - $xfer += $input->skip($ftype); - } - break; - case 3: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->tableName); - } else { - $xfer += $input->skip($ftype); - } - break; - case 4: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->partName); - } else { - $xfer += $input->skip($ftype); - } - break; - case 5: - if ($ftype == TType::I64) { - $xfer += $input->readI64($this->lastAnalyzed); - } else { - $xfer += $input->skip($ftype); - } - break; - case 6: - if ($ftype == TType::STRING) { - $xfer += $input->readString($this->catName); + { + case 1: + if ($ftype == TType::LST) { + $this->partitions = array(); + $_size252 = 0; + $_etype255 = 0; + $xfer += $input->readListBegin($_etype255, $_size252); + for ($_i256 = 0; $_i256 < $_size252; ++$_i256) + { + $elem257 = null; + $elem257 = new \metastore\Partition(); + $xfer += $elem257->read($input); + $this->partitions []= $elem257; + } + $xfer += $input->readListEnd(); } else { $xfer += $input->skip($ftype); } @@ -10599,35 +10520,22 @@ class ColumnStatisticsDesc { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('ColumnStatisticsDesc'); - if ($this->isTblLevel !== null) { - $xfer += $output->writeFieldBegin('isTblLevel', TType::BOOL, 1); - $xfer += $output->writeBool($this->isTblLevel); - $xfer += $output->writeFieldEnd(); - } - if ($this->dbName !== null) { - $xfer += $output->writeFieldBegin('dbName', TType::STRING, 2); - $xfer += $output->writeString($this->dbName); - $xfer += $output->writeFieldEnd(); - } - if ($this->tableName !== null) { - $xfer += $output->writeFieldBegin('tableName', TType::STRING, 3); - $xfer += $output->writeString($this->tableName); - $xfer += $output->writeFieldEnd(); - } - if ($this->partName !== null) { - $xfer += $output->writeFieldBegin('partName', TType::STRING, 4); - $xfer += $output->writeString($this->partName); - $xfer += $output->writeFieldEnd(); - } - if ($this->lastAnalyzed !== null) { - $xfer += $output->writeFieldBegin('lastAnalyzed', TType::I64, 5); - $xfer += $output->writeI64($this->lastAnalyzed); - $xfer += $output->writeFieldEnd(); - } - if ($this->catName !== null) { - $xfer += $output->writeFieldBegin('catName', TType::STRING, 6); - $xfer += $output->writeString($this->catName); + $xfer += $output->writeStructBegin('PartitionListComposingSpec'); + if ($this->partitions !== null) { + if (!is_array($this->partitions)) { + throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); + } + $xfer += $output->writeFieldBegin('partitions', TType::LST, 1); + { + $output->writeListBegin(TType::STRUCT, count($this->partitions)); + { + foreach ($this->partitions as $iter258) + { + $xfer += $iter258->write($output); + } + } + $output->writeListEnd(); + } $xfer += $output->writeFieldEnd(); } $xfer += $output->writeFieldStop(); @@ -10637,17 +10545,37 @@ class ColumnStatisticsDesc { } -class ColumnStatistics { +class PartitionSpec { static $_TSPEC; /** - * @var \metastore\ColumnStatisticsDesc + * @var string */ - public $statsDesc = null; + public $dbName = null; /** - * @var \metastore\ColumnStatisticsObj[] + * @var string */ - public $statsObj = null; + public $tableName = null; + /** + * @var string + */ + public $rootPath = null; + /** + * @var \metastore\PartitionSpecWithSharedSD + */ + public $sharedSDPartitionSpec = null; + /** + * @var \metastore\PartitionListComposingSpec + */ + public $partitionList = null; + /** + * @var string + */ + public $catName = null; + /** + * @var int + */ + public $writeId = -1; /** * @var bool */ @@ -10657,31 +10585,62 @@ class ColumnStatistics { if (!isset(self::$_TSPEC)) { self::$_TSPEC = array( 1 => array( - 'var' => 'statsDesc', - 'type' => TType::STRUCT, - 'class' => '\metastore\ColumnStatisticsDesc', + 'var' => 'dbName', + 'type' => TType::STRING, ), 2 => array( - 'var' => 'statsObj', - 'type' => TType::LST, - 'etype' => TType::STRUCT, - 'elem' => array( - 'type' => TType::STRUCT, - 'class' => '\metastore\ColumnStatisticsObj', - ), + 'var' => 'tableName', + 'type' => TType::STRING, ), 3 => array( + 'var' => 'rootPath', + 'type' => TType::STRING, + ), + 4 => array( + 'var' => 'sharedSDPartitionSpec', + 'type' => TType::STRUCT, + 'class' => '\metastore\PartitionSpecWithSharedSD', + ), + 5 => array( + 'var' => 'partitionList', + 'type' => TType::STRUCT, + 'class' => '\metastore\PartitionListComposingSpec', + ), + 6 => array( + 'var' => 'catName', + 'type' => TType::STRING, + ), + 7 => array( + 'var' => 'writeId', + 'type' => TType::I64, + ), + 8 => array( 'var' => 'isStatsCompliant', 'type' => TType::BOOL, ), ); } if (is_array($vals)) { - if (isset($vals['statsDesc'])) { - $this->statsDesc = $vals['statsDesc']; + if (isset($vals['dbName'])) { + $this->dbName = $vals['dbName']; } - if (isset($vals['statsObj'])) { - $this->statsObj = $vals['statsObj']; + if (isset($vals['tableName'])) { + $this->tableName = $vals['tableName']; + } + if (isset($vals['rootPath'])) { + $this->rootPath = $vals['rootPath']; + } + if (isset($vals['sharedSDPartitionSpec'])) { + $this->sharedSDPartitionSpec = $vals['sharedSDPartitionSpec']; + } + if (isset($vals['partitionList'])) { + $this->partitionList = $vals['partitionList']; + } + if (isset($vals['catName'])) { + $this->catName = $vals['catName']; + } + if (isset($vals['writeId'])) { + $this->writeId = $vals['writeId']; } if (isset($vals['isStatsCompliant'])) { $this->isStatsCompliant = $vals['isStatsCompliant']; @@ -10690,7 +10649,7 @@ class ColumnStatistics { } public function getName() { - return 'ColumnStatistics'; + return 'PartitionSpec'; } public function read($input) @@ -10709,32 +10668,57 @@ class ColumnStatistics { switch ($fid) { case 1: - if ($ftype == TType::STRUCT) { - $this->statsDesc = new \metastore\ColumnStatisticsDesc(); - $xfer += $this->statsDesc->read($input); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->dbName); } else { $xfer += $input->skip($ftype); } break; case 2: - if ($ftype == TType::LST) { - $this->statsObj = array(); - $_size252 = 0; - $_etype255 = 0; - $xfer += $input->readListBegin($_etype255, $_size252); - for ($_i256 = 0; $_i256 < $_size252; ++$_i256) - { - $elem257 = null; - $elem257 = new \metastore\ColumnStatisticsObj(); - $xfer += $elem257->read($input); - $this->statsObj []= $elem257; - } - $xfer += $input->readListEnd(); + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->tableName); } else { $xfer += $input->skip($ftype); } break; case 3: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->rootPath); + } else { + $xfer += $input->skip($ftype); + } + break; + case 4: + if ($ftype == TType::STRUCT) { + $this->sharedSDPartitionSpec = new \metastore\PartitionSpecWithSharedSD(); + $xfer += $this->sharedSDPartitionSpec->read($input); + } else { + $xfer += $input->skip($ftype); + } + break; + case 5: + if ($ftype == TType::STRUCT) { + $this->partitionList = new \metastore\PartitionListComposingSpec(); + $xfer += $this->partitionList->read($input); + } else { + $xfer += $input->skip($ftype); + } + break; + case 6: + if ($ftype == TType::STRING) { + $xfer += $input->readString($this->catName); + } else { + $xfer += $input->skip($ftype); + } + break; + case 7: + if ($ftype == TType::I64) { + $xfer += $input->readI64($this->writeId); + } else { + $xfer += $input->skip($ftype); + } + break; + case 8: if ($ftype == TType::BOOL) { $xfer += $input->readBool($this->isStatsCompliant); } else { @@ -10753,34 +10737,50 @@ class ColumnStatistics { public function write($output) { $xfer = 0; - $xfer += $output->writeStructBegin('ColumnStatistics'); - if ($this->statsDesc !== null) { - if (!is_object($this->statsDesc)) { + $xfer += $output->writeStructBegin('PartitionSpec'); + if ($this->dbName !== null) { + $xfer += $output->writeFieldBegin('dbName', TType::STRING, 1); + $xfer += $output->writeString($this->dbName); + $xfer += $output->writeFieldEnd(); + } + if ($this->tableName !== null) { + $xfer += $output->writeFieldBegin('tableName', TType::STRING, 2); + $xfer += $output->writeString($this->tableName); + $xfer += $output->writeFieldEnd(); + } + if ($this->rootPath !== null) { + $xfer += $output->writeFieldBegin('rootPath', TType::STRING, 3); + $xfer += $output->writeString($this->rootPath); + $xfer += $output->writeFieldEnd(); + } + if ($this->sharedSDPartitionSpec !== null) { + if (!is_object($this->sharedSDPartitionSpec)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('statsDesc', TType::STRUCT, 1); - $xfer += $this->statsDesc->write($output); + $xfer += $output->writeFieldBegin('sharedSDPartitionSpec', TType::STRUCT, 4); + $xfer += $this->sharedSDPartitionSpec->write($output); $xfer += $output->writeFieldEnd(); } - if ($this->statsObj !== null) { - if (!is_array($this->statsObj)) { + if ($this->partitionList !== null) { + if (!is_object($this->partitionList)) { throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA); } - $xfer += $output->writeFieldBegin('statsObj', TType::LST, 2); - { - $output->writeListBegin(TType::STRUCT, count($this->statsObj)); - { - foreach ($this->statsObj as $iter258) - { - $xfer += $iter258->write($output); - } - } - $output->writeListEnd(); - } + $xfer += $output->writeFieldBegin('partitionList', TType::STRUCT, 5); + $xfer += $this->partitionList->write($output); + $xfer += $output->writeFieldEnd(); + } + if ($this->catName !== null) { + $xfer += $output->writeFieldBegin('catName', TType::STRING, 6); + $xfer += $output->writeString($this->catName); + $xfer += $output->writeFieldEnd(); + } + if ($this->writeId !== null) { + $xfer += $output->writeFieldBegin('writeId', TType::I64, 7); + $xfer += $output->writeI64($this->writeId); $xfer += $output->writeFieldEnd(); } if ($this->isStatsCompliant !== null) { - $xfer += $output->writeFieldBegin('isStatsCompliant', TType::BOOL, 3); + $xfer += $output->writeFieldBegin('isStatsCompliant', TType::BOOL, 8); $xfer += $output->writeBool($this->isStatsCompliant); $xfer += $output->writeFieldEnd(); } diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-py/hive_metastore/ttypes.py b/standalone-metastore/metastore-common/src/gen/thrift/gen-py/hive_metastore/ttypes.py index 5f0a0a3b1b9be057b6d51ec1649695b7e93e72e7..3df71f7f5a17fbe28294dec530536fed18c505a9 100644 --- a/standalone-metastore/metastore-common/src/gen/thrift/gen-py/hive_metastore/ttypes.py +++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-py/hive_metastore/ttypes.py @@ -4913,82 +4913,28 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class Table: +class BooleanColumnStatsData: """ Attributes: - - id - - tableName - - dbName - - owner - - createTime - - lastAccessTime - - retention - - sd - - partitionKeys - - parameters - - viewOriginalText - - viewExpandedText - - tableType - - privileges - - temporary - - rewriteEnabled - - creationMetadata - - catName - - ownerType - - writeId - - isStatsCompliant - - colStats + - numTrues + - numFalses + - numNulls + - bitVectors """ thrift_spec = ( None, # 0 - (1, TType.I64, 'id', None, None, ), # 1 - (2, TType.STRING, 'tableName', None, None, ), # 2 - (3, TType.STRING, 'dbName', None, None, ), # 3 - (4, TType.STRING, 'owner', None, None, ), # 4 - (5, TType.I32, 'createTime', None, None, ), # 5 - (6, TType.I32, 'lastAccessTime', None, None, ), # 6 - (7, TType.I32, 'retention', None, None, ), # 7 - (8, TType.STRUCT, 'sd', (StorageDescriptor, StorageDescriptor.thrift_spec), None, ), # 8 - (9, TType.LIST, 'partitionKeys', (TType.STRUCT,(FieldSchema, FieldSchema.thrift_spec)), None, ), # 9 - (10, TType.MAP, 'parameters', (TType.STRING,None,TType.STRING,None), None, ), # 10 - (11, TType.STRING, 'viewOriginalText', None, None, ), # 11 - (12, TType.STRING, 'viewExpandedText', None, None, ), # 12 - (13, TType.STRING, 'tableType', None, None, ), # 13 - (14, TType.STRUCT, 'privileges', (PrincipalPrivilegeSet, PrincipalPrivilegeSet.thrift_spec), None, ), # 14 - (15, TType.BOOL, 'temporary', None, False, ), # 15 - (16, TType.BOOL, 'rewriteEnabled', None, None, ), # 16 - (17, TType.STRUCT, 'creationMetadata', (CreationMetadata, CreationMetadata.thrift_spec), None, ), # 17 - (18, TType.STRING, 'catName', None, None, ), # 18 - (19, TType.I32, 'ownerType', None, 1, ), # 19 - (20, TType.I64, 'writeId', None, -1, ), # 20 - (21, TType.BOOL, 'isStatsCompliant', None, None, ), # 21 - (22, TType.STRUCT, 'colStats', (ColumnStatistics, ColumnStatistics.thrift_spec), None, ), # 22 + (1, TType.I64, 'numTrues', None, None, ), # 1 + (2, TType.I64, 'numFalses', None, None, ), # 2 + (3, TType.I64, 'numNulls', None, None, ), # 3 + (4, TType.STRING, 'bitVectors', None, None, ), # 4 ) - def __init__(self, id=None, tableName=None, dbName=None, owner=None, createTime=None, lastAccessTime=None, retention=None, sd=None, partitionKeys=None, parameters=None, viewOriginalText=None, viewExpandedText=None, tableType=None, privileges=None, temporary=thrift_spec[15][4], rewriteEnabled=None, creationMetadata=None, catName=None, ownerType=thrift_spec[19][4], writeId=thrift_spec[20][4], isStatsCompliant=None, colStats=None,): - self.id = id - self.tableName = tableName - self.dbName = dbName - self.owner = owner - self.createTime = createTime - self.lastAccessTime = lastAccessTime - self.retention = retention - self.sd = sd - self.partitionKeys = partitionKeys - self.parameters = parameters - self.viewOriginalText = viewOriginalText - self.viewExpandedText = viewExpandedText - self.tableType = tableType - self.privileges = privileges - self.temporary = temporary - self.rewriteEnabled = rewriteEnabled - self.creationMetadata = creationMetadata - self.catName = catName - self.ownerType = ownerType - self.writeId = writeId - self.isStatsCompliant = isStatsCompliant - self.colStats = colStats + def __init__(self, numTrues=None, numFalses=None, numNulls=None, bitVectors=None,): + self.numTrues = numTrues + self.numFalses = numFalses + self.numNulls = numNulls + self.bitVectors = bitVectors 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: @@ -5001,407 +4947,22 @@ def read(self, iprot): break if fid == 1: if ftype == TType.I64: - self.id = iprot.readI64() + self.numTrues = iprot.readI64() else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.STRING: - self.tableName = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 3: - if ftype == TType.STRING: - self.dbName = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 4: - if ftype == TType.STRING: - self.owner = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 5: - if ftype == TType.I32: - self.createTime = iprot.readI32() - else: - iprot.skip(ftype) - elif fid == 6: - if ftype == TType.I32: - self.lastAccessTime = iprot.readI32() - else: - iprot.skip(ftype) - elif fid == 7: - if ftype == TType.I32: - self.retention = iprot.readI32() - else: - iprot.skip(ftype) - elif fid == 8: - if ftype == TType.STRUCT: - self.sd = StorageDescriptor() - self.sd.read(iprot) - else: - iprot.skip(ftype) - elif fid == 9: - if ftype == TType.LIST: - self.partitionKeys = [] - (_etype192, _size189) = iprot.readListBegin() - for _i193 in xrange(_size189): - _elem194 = FieldSchema() - _elem194.read(iprot) - self.partitionKeys.append(_elem194) - iprot.readListEnd() - else: - iprot.skip(ftype) - elif fid == 10: - if ftype == TType.MAP: - self.parameters = {} - (_ktype196, _vtype197, _size195 ) = iprot.readMapBegin() - for _i199 in xrange(_size195): - _key200 = iprot.readString() - _val201 = iprot.readString() - self.parameters[_key200] = _val201 - iprot.readMapEnd() - else: - iprot.skip(ftype) - elif fid == 11: - if ftype == TType.STRING: - self.viewOriginalText = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 12: - if ftype == TType.STRING: - self.viewExpandedText = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 13: - if ftype == TType.STRING: - self.tableType = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 14: - if ftype == TType.STRUCT: - self.privileges = PrincipalPrivilegeSet() - self.privileges.read(iprot) - else: - iprot.skip(ftype) - elif fid == 15: - if ftype == TType.BOOL: - self.temporary = iprot.readBool() - else: - iprot.skip(ftype) - elif fid == 16: - if ftype == TType.BOOL: - self.rewriteEnabled = iprot.readBool() - else: - iprot.skip(ftype) - elif fid == 17: - if ftype == TType.STRUCT: - self.creationMetadata = CreationMetadata() - self.creationMetadata.read(iprot) - else: - iprot.skip(ftype) - elif fid == 18: - if ftype == TType.STRING: - self.catName = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 19: - if ftype == TType.I32: - self.ownerType = iprot.readI32() - else: - iprot.skip(ftype) - elif fid == 20: if ftype == TType.I64: - self.writeId = iprot.readI64() - else: - iprot.skip(ftype) - elif fid == 21: - if ftype == TType.BOOL: - self.isStatsCompliant = iprot.readBool() - else: - iprot.skip(ftype) - elif fid == 22: - if ftype == TType.STRUCT: - self.colStats = ColumnStatistics() - self.colStats.read(iprot) - else: - iprot.skip(ftype) - else: - iprot.skip(ftype) - iprot.readFieldEnd() - iprot.readStructEnd() - - def write(self, oprot): - if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: - oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) - return - oprot.writeStructBegin('Table') - if self.id is not None: - oprot.writeFieldBegin('id', TType.I64, 1) - oprot.writeI64(self.id) - oprot.writeFieldEnd() - if self.tableName is not None: - oprot.writeFieldBegin('tableName', TType.STRING, 2) - oprot.writeString(self.tableName) - oprot.writeFieldEnd() - if self.dbName is not None: - oprot.writeFieldBegin('dbName', TType.STRING, 3) - oprot.writeString(self.dbName) - oprot.writeFieldEnd() - if self.owner is not None: - oprot.writeFieldBegin('owner', TType.STRING, 4) - oprot.writeString(self.owner) - oprot.writeFieldEnd() - if self.createTime is not None: - oprot.writeFieldBegin('createTime', TType.I32, 5) - oprot.writeI32(self.createTime) - oprot.writeFieldEnd() - if self.lastAccessTime is not None: - oprot.writeFieldBegin('lastAccessTime', TType.I32, 6) - oprot.writeI32(self.lastAccessTime) - oprot.writeFieldEnd() - if self.retention is not None: - oprot.writeFieldBegin('retention', TType.I32, 7) - oprot.writeI32(self.retention) - oprot.writeFieldEnd() - if self.sd is not None: - oprot.writeFieldBegin('sd', TType.STRUCT, 8) - self.sd.write(oprot) - oprot.writeFieldEnd() - if self.partitionKeys is not None: - oprot.writeFieldBegin('partitionKeys', TType.LIST, 9) - oprot.writeListBegin(TType.STRUCT, len(self.partitionKeys)) - for iter202 in self.partitionKeys: - iter202.write(oprot) - oprot.writeListEnd() - oprot.writeFieldEnd() - if self.parameters is not None: - oprot.writeFieldBegin('parameters', TType.MAP, 10) - oprot.writeMapBegin(TType.STRING, TType.STRING, len(self.parameters)) - for kiter203,viter204 in self.parameters.items(): - oprot.writeString(kiter203) - oprot.writeString(viter204) - oprot.writeMapEnd() - oprot.writeFieldEnd() - if self.viewOriginalText is not None: - oprot.writeFieldBegin('viewOriginalText', TType.STRING, 11) - oprot.writeString(self.viewOriginalText) - oprot.writeFieldEnd() - if self.viewExpandedText is not None: - oprot.writeFieldBegin('viewExpandedText', TType.STRING, 12) - oprot.writeString(self.viewExpandedText) - oprot.writeFieldEnd() - if self.tableType is not None: - oprot.writeFieldBegin('tableType', TType.STRING, 13) - oprot.writeString(self.tableType) - oprot.writeFieldEnd() - if self.privileges is not None: - oprot.writeFieldBegin('privileges', TType.STRUCT, 14) - self.privileges.write(oprot) - oprot.writeFieldEnd() - if self.temporary is not None: - oprot.writeFieldBegin('temporary', TType.BOOL, 15) - oprot.writeBool(self.temporary) - oprot.writeFieldEnd() - if self.rewriteEnabled is not None: - oprot.writeFieldBegin('rewriteEnabled', TType.BOOL, 16) - oprot.writeBool(self.rewriteEnabled) - oprot.writeFieldEnd() - if self.creationMetadata is not None: - oprot.writeFieldBegin('creationMetadata', TType.STRUCT, 17) - self.creationMetadata.write(oprot) - oprot.writeFieldEnd() - if self.catName is not None: - oprot.writeFieldBegin('catName', TType.STRING, 18) - oprot.writeString(self.catName) - oprot.writeFieldEnd() - if self.ownerType is not None: - oprot.writeFieldBegin('ownerType', TType.I32, 19) - oprot.writeI32(self.ownerType) - oprot.writeFieldEnd() - if self.writeId is not None: - oprot.writeFieldBegin('writeId', TType.I64, 20) - oprot.writeI64(self.writeId) - oprot.writeFieldEnd() - if self.isStatsCompliant is not None: - oprot.writeFieldBegin('isStatsCompliant', TType.BOOL, 21) - oprot.writeBool(self.isStatsCompliant) - oprot.writeFieldEnd() - if self.colStats is not None: - oprot.writeFieldBegin('colStats', TType.STRUCT, 22) - self.colStats.write(oprot) - oprot.writeFieldEnd() - oprot.writeFieldStop() - oprot.writeStructEnd() - - def validate(self): - return - - - def __hash__(self): - value = 17 - value = (value * 31) ^ hash(self.id) - value = (value * 31) ^ hash(self.tableName) - value = (value * 31) ^ hash(self.dbName) - value = (value * 31) ^ hash(self.owner) - value = (value * 31) ^ hash(self.createTime) - value = (value * 31) ^ hash(self.lastAccessTime) - value = (value * 31) ^ hash(self.retention) - value = (value * 31) ^ hash(self.sd) - value = (value * 31) ^ hash(self.partitionKeys) - value = (value * 31) ^ hash(self.parameters) - value = (value * 31) ^ hash(self.viewOriginalText) - value = (value * 31) ^ hash(self.viewExpandedText) - value = (value * 31) ^ hash(self.tableType) - value = (value * 31) ^ hash(self.privileges) - value = (value * 31) ^ hash(self.temporary) - value = (value * 31) ^ hash(self.rewriteEnabled) - value = (value * 31) ^ hash(self.creationMetadata) - value = (value * 31) ^ hash(self.catName) - value = (value * 31) ^ hash(self.ownerType) - value = (value * 31) ^ hash(self.writeId) - value = (value * 31) ^ hash(self.isStatsCompliant) - value = (value * 31) ^ hash(self.colStats) - return value - - def __repr__(self): - L = ['%s=%r' % (key, value) - for key, value in self.__dict__.iteritems()] - return '%s(%s)' % (self.__class__.__name__, ', '.join(L)) - - def __eq__(self, other): - return isinstance(other, self.__class__) and self.__dict__ == other.__dict__ - - def __ne__(self, other): - return not (self == other) - -class Partition: - """ - Attributes: - - values - - dbName - - tableName - - createTime - - lastAccessTime - - sd - - parameters - - privileges - - catName - - writeId - - isStatsCompliant - - colStats - """ - - thrift_spec = ( - None, # 0 - (1, TType.LIST, 'values', (TType.STRING,None), None, ), # 1 - (2, TType.STRING, 'dbName', None, None, ), # 2 - (3, TType.STRING, 'tableName', None, None, ), # 3 - (4, TType.I32, 'createTime', None, None, ), # 4 - (5, TType.I32, 'lastAccessTime', None, None, ), # 5 - (6, TType.STRUCT, 'sd', (StorageDescriptor, StorageDescriptor.thrift_spec), None, ), # 6 - (7, TType.MAP, 'parameters', (TType.STRING,None,TType.STRING,None), None, ), # 7 - (8, TType.STRUCT, 'privileges', (PrincipalPrivilegeSet, PrincipalPrivilegeSet.thrift_spec), None, ), # 8 - (9, TType.STRING, 'catName', None, None, ), # 9 - (10, TType.I64, 'writeId', None, -1, ), # 10 - (11, TType.BOOL, 'isStatsCompliant', None, None, ), # 11 - (12, TType.STRUCT, 'colStats', (ColumnStatistics, ColumnStatistics.thrift_spec), None, ), # 12 - ) - - def __init__(self, values=None, dbName=None, tableName=None, createTime=None, lastAccessTime=None, sd=None, parameters=None, privileges=None, catName=None, writeId=thrift_spec[10][4], isStatsCompliant=None, colStats=None,): - self.values = values - self.dbName = dbName - self.tableName = tableName - self.createTime = createTime - self.lastAccessTime = lastAccessTime - self.sd = sd - self.parameters = parameters - self.privileges = privileges - self.catName = catName - self.writeId = writeId - self.isStatsCompliant = isStatsCompliant - self.colStats = colStats - - 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: - fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec)) - return - iprot.readStructBegin() - while True: - (fname, ftype, fid) = iprot.readFieldBegin() - if ftype == TType.STOP: - break - if fid == 1: - if ftype == TType.LIST: - self.values = [] - (_etype208, _size205) = iprot.readListBegin() - for _i209 in xrange(_size205): - _elem210 = iprot.readString() - self.values.append(_elem210) - iprot.readListEnd() - else: - iprot.skip(ftype) - elif fid == 2: - if ftype == TType.STRING: - self.dbName = iprot.readString() + self.numFalses = iprot.readI64() else: iprot.skip(ftype) elif fid == 3: - if ftype == TType.STRING: - self.tableName = iprot.readString() + if ftype == TType.I64: + self.numNulls = iprot.readI64() else: iprot.skip(ftype) elif fid == 4: - if ftype == TType.I32: - self.createTime = iprot.readI32() - else: - iprot.skip(ftype) - elif fid == 5: - if ftype == TType.I32: - self.lastAccessTime = iprot.readI32() - else: - iprot.skip(ftype) - elif fid == 6: - if ftype == TType.STRUCT: - self.sd = StorageDescriptor() - self.sd.read(iprot) - else: - iprot.skip(ftype) - elif fid == 7: - if ftype == TType.MAP: - self.parameters = {} - (_ktype212, _vtype213, _size211 ) = iprot.readMapBegin() - for _i215 in xrange(_size211): - _key216 = iprot.readString() - _val217 = iprot.readString() - self.parameters[_key216] = _val217 - iprot.readMapEnd() - else: - iprot.skip(ftype) - elif fid == 8: - if ftype == TType.STRUCT: - self.privileges = PrincipalPrivilegeSet() - self.privileges.read(iprot) - else: - iprot.skip(ftype) - elif fid == 9: if ftype == TType.STRING: - self.catName = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 10: - if ftype == TType.I64: - self.writeId = iprot.readI64() - else: - iprot.skip(ftype) - elif fid == 11: - if ftype == TType.BOOL: - self.isStatsCompliant = iprot.readBool() - else: - iprot.skip(ftype) - elif fid == 12: - if ftype == TType.STRUCT: - self.colStats = ColumnStatistics() - self.colStats.read(iprot) + self.bitVectors = iprot.readString() else: iprot.skip(ftype) else: @@ -5413,83 +4974,42 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('Partition') - if self.values is not None: - oprot.writeFieldBegin('values', TType.LIST, 1) - oprot.writeListBegin(TType.STRING, len(self.values)) - for iter218 in self.values: - oprot.writeString(iter218) - oprot.writeListEnd() - oprot.writeFieldEnd() - if self.dbName is not None: - oprot.writeFieldBegin('dbName', TType.STRING, 2) - oprot.writeString(self.dbName) - oprot.writeFieldEnd() - if self.tableName is not None: - oprot.writeFieldBegin('tableName', TType.STRING, 3) - oprot.writeString(self.tableName) - oprot.writeFieldEnd() - if self.createTime is not None: - oprot.writeFieldBegin('createTime', TType.I32, 4) - oprot.writeI32(self.createTime) - oprot.writeFieldEnd() - if self.lastAccessTime is not None: - oprot.writeFieldBegin('lastAccessTime', TType.I32, 5) - oprot.writeI32(self.lastAccessTime) - oprot.writeFieldEnd() - if self.sd is not None: - oprot.writeFieldBegin('sd', TType.STRUCT, 6) - self.sd.write(oprot) - oprot.writeFieldEnd() - if self.parameters is not None: - oprot.writeFieldBegin('parameters', TType.MAP, 7) - oprot.writeMapBegin(TType.STRING, TType.STRING, len(self.parameters)) - for kiter219,viter220 in self.parameters.items(): - oprot.writeString(kiter219) - oprot.writeString(viter220) - oprot.writeMapEnd() - oprot.writeFieldEnd() - if self.privileges is not None: - oprot.writeFieldBegin('privileges', TType.STRUCT, 8) - self.privileges.write(oprot) - oprot.writeFieldEnd() - if self.catName is not None: - oprot.writeFieldBegin('catName', TType.STRING, 9) - oprot.writeString(self.catName) + oprot.writeStructBegin('BooleanColumnStatsData') + if self.numTrues is not None: + oprot.writeFieldBegin('numTrues', TType.I64, 1) + oprot.writeI64(self.numTrues) oprot.writeFieldEnd() - if self.writeId is not None: - oprot.writeFieldBegin('writeId', TType.I64, 10) - oprot.writeI64(self.writeId) + if self.numFalses is not None: + oprot.writeFieldBegin('numFalses', TType.I64, 2) + oprot.writeI64(self.numFalses) oprot.writeFieldEnd() - if self.isStatsCompliant is not None: - oprot.writeFieldBegin('isStatsCompliant', TType.BOOL, 11) - oprot.writeBool(self.isStatsCompliant) + if self.numNulls is not None: + oprot.writeFieldBegin('numNulls', TType.I64, 3) + oprot.writeI64(self.numNulls) oprot.writeFieldEnd() - if self.colStats is not None: - oprot.writeFieldBegin('colStats', TType.STRUCT, 12) - self.colStats.write(oprot) + if self.bitVectors is not None: + oprot.writeFieldBegin('bitVectors', TType.STRING, 4) + oprot.writeString(self.bitVectors) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): + if self.numTrues is None: + raise TProtocol.TProtocolException(message='Required field numTrues is unset!') + if self.numFalses is None: + raise TProtocol.TProtocolException(message='Required field numFalses is unset!') + if self.numNulls is None: + raise TProtocol.TProtocolException(message='Required field numNulls is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.values) - value = (value * 31) ^ hash(self.dbName) - value = (value * 31) ^ hash(self.tableName) - value = (value * 31) ^ hash(self.createTime) - value = (value * 31) ^ hash(self.lastAccessTime) - value = (value * 31) ^ hash(self.sd) - value = (value * 31) ^ hash(self.parameters) - value = (value * 31) ^ hash(self.privileges) - value = (value * 31) ^ hash(self.catName) - value = (value * 31) ^ hash(self.writeId) - value = (value * 31) ^ hash(self.isStatsCompliant) - value = (value * 31) ^ hash(self.colStats) + value = (value * 31) ^ hash(self.numTrues) + value = (value * 31) ^ hash(self.numFalses) + value = (value * 31) ^ hash(self.numNulls) + value = (value * 31) ^ hash(self.bitVectors) return value def __repr__(self): @@ -5503,34 +5023,31 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class PartitionWithoutSD: +class DoubleColumnStatsData: """ Attributes: - - values - - createTime - - lastAccessTime - - relativePath - - parameters - - privileges + - lowValue + - highValue + - numNulls + - numDVs + - bitVectors """ thrift_spec = ( None, # 0 - (1, TType.LIST, 'values', (TType.STRING,None), None, ), # 1 - (2, TType.I32, 'createTime', None, None, ), # 2 - (3, TType.I32, 'lastAccessTime', None, None, ), # 3 - (4, TType.STRING, 'relativePath', None, None, ), # 4 - (5, TType.MAP, 'parameters', (TType.STRING,None,TType.STRING,None), None, ), # 5 - (6, TType.STRUCT, 'privileges', (PrincipalPrivilegeSet, PrincipalPrivilegeSet.thrift_spec), None, ), # 6 + (1, TType.DOUBLE, 'lowValue', None, None, ), # 1 + (2, TType.DOUBLE, 'highValue', None, None, ), # 2 + (3, TType.I64, 'numNulls', None, None, ), # 3 + (4, TType.I64, 'numDVs', None, None, ), # 4 + (5, TType.STRING, 'bitVectors', None, None, ), # 5 ) - def __init__(self, values=None, createTime=None, lastAccessTime=None, relativePath=None, parameters=None, privileges=None,): - self.values = values - self.createTime = createTime - self.lastAccessTime = lastAccessTime - self.relativePath = relativePath - self.parameters = parameters - self.privileges = privileges + def __init__(self, lowValue=None, highValue=None, numNulls=None, numDVs=None, bitVectors=None,): + self.lowValue = lowValue + self.highValue = highValue + self.numNulls = numNulls + self.numDVs = numDVs + self.bitVectors = bitVectors 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: @@ -5542,45 +5059,28 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.LIST: - self.values = [] - (_etype224, _size221) = iprot.readListBegin() - for _i225 in xrange(_size221): - _elem226 = iprot.readString() - self.values.append(_elem226) - iprot.readListEnd() + if ftype == TType.DOUBLE: + self.lowValue = iprot.readDouble() else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.I32: - self.createTime = iprot.readI32() + if ftype == TType.DOUBLE: + self.highValue = iprot.readDouble() else: iprot.skip(ftype) elif fid == 3: - if ftype == TType.I32: - self.lastAccessTime = iprot.readI32() + if ftype == TType.I64: + self.numNulls = iprot.readI64() else: iprot.skip(ftype) elif fid == 4: - if ftype == TType.STRING: - self.relativePath = iprot.readString() + if ftype == TType.I64: + self.numDVs = iprot.readI64() else: iprot.skip(ftype) elif fid == 5: - if ftype == TType.MAP: - self.parameters = {} - (_ktype228, _vtype229, _size227 ) = iprot.readMapBegin() - for _i231 in xrange(_size227): - _key232 = iprot.readString() - _val233 = iprot.readString() - self.parameters[_key232] = _val233 - iprot.readMapEnd() - else: - iprot.skip(ftype) - elif fid == 6: - if ftype == TType.STRUCT: - self.privileges = PrincipalPrivilegeSet() - self.privileges.read(iprot) + if ftype == TType.STRING: + self.bitVectors = iprot.readString() else: iprot.skip(ftype) else: @@ -5592,53 +5092,45 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('PartitionWithoutSD') - if self.values is not None: - oprot.writeFieldBegin('values', TType.LIST, 1) - oprot.writeListBegin(TType.STRING, len(self.values)) - for iter234 in self.values: - oprot.writeString(iter234) - oprot.writeListEnd() - oprot.writeFieldEnd() - if self.createTime is not None: - oprot.writeFieldBegin('createTime', TType.I32, 2) - oprot.writeI32(self.createTime) + oprot.writeStructBegin('DoubleColumnStatsData') + if self.lowValue is not None: + oprot.writeFieldBegin('lowValue', TType.DOUBLE, 1) + oprot.writeDouble(self.lowValue) oprot.writeFieldEnd() - if self.lastAccessTime is not None: - oprot.writeFieldBegin('lastAccessTime', TType.I32, 3) - oprot.writeI32(self.lastAccessTime) + if self.highValue is not None: + oprot.writeFieldBegin('highValue', TType.DOUBLE, 2) + oprot.writeDouble(self.highValue) oprot.writeFieldEnd() - if self.relativePath is not None: - oprot.writeFieldBegin('relativePath', TType.STRING, 4) - oprot.writeString(self.relativePath) + if self.numNulls is not None: + oprot.writeFieldBegin('numNulls', TType.I64, 3) + oprot.writeI64(self.numNulls) oprot.writeFieldEnd() - if self.parameters is not None: - oprot.writeFieldBegin('parameters', TType.MAP, 5) - oprot.writeMapBegin(TType.STRING, TType.STRING, len(self.parameters)) - for kiter235,viter236 in self.parameters.items(): - oprot.writeString(kiter235) - oprot.writeString(viter236) - oprot.writeMapEnd() + if self.numDVs is not None: + oprot.writeFieldBegin('numDVs', TType.I64, 4) + oprot.writeI64(self.numDVs) oprot.writeFieldEnd() - if self.privileges is not None: - oprot.writeFieldBegin('privileges', TType.STRUCT, 6) - self.privileges.write(oprot) + if self.bitVectors is not None: + oprot.writeFieldBegin('bitVectors', TType.STRING, 5) + oprot.writeString(self.bitVectors) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): + if self.numNulls is None: + raise TProtocol.TProtocolException(message='Required field numNulls is unset!') + if self.numDVs is None: + raise TProtocol.TProtocolException(message='Required field numDVs is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.values) - value = (value * 31) ^ hash(self.createTime) - value = (value * 31) ^ hash(self.lastAccessTime) - value = (value * 31) ^ hash(self.relativePath) - value = (value * 31) ^ hash(self.parameters) - value = (value * 31) ^ hash(self.privileges) + value = (value * 31) ^ hash(self.lowValue) + value = (value * 31) ^ hash(self.highValue) + value = (value * 31) ^ hash(self.numNulls) + value = (value * 31) ^ hash(self.numDVs) + value = (value * 31) ^ hash(self.bitVectors) return value def __repr__(self): @@ -5652,22 +5144,31 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class PartitionSpecWithSharedSD: +class LongColumnStatsData: """ Attributes: - - partitions - - sd + - lowValue + - highValue + - numNulls + - numDVs + - bitVectors """ thrift_spec = ( None, # 0 - (1, TType.LIST, 'partitions', (TType.STRUCT,(PartitionWithoutSD, PartitionWithoutSD.thrift_spec)), None, ), # 1 - (2, TType.STRUCT, 'sd', (StorageDescriptor, StorageDescriptor.thrift_spec), None, ), # 2 + (1, TType.I64, 'lowValue', None, None, ), # 1 + (2, TType.I64, 'highValue', None, None, ), # 2 + (3, TType.I64, 'numNulls', None, None, ), # 3 + (4, TType.I64, 'numDVs', None, None, ), # 4 + (5, TType.STRING, 'bitVectors', None, None, ), # 5 ) - def __init__(self, partitions=None, sd=None,): - self.partitions = partitions - self.sd = sd + def __init__(self, lowValue=None, highValue=None, numNulls=None, numDVs=None, bitVectors=None,): + self.lowValue = lowValue + self.highValue = highValue + self.numNulls = numNulls + self.numDVs = numDVs + self.bitVectors = bitVectors 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: @@ -5679,20 +5180,28 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.LIST: - self.partitions = [] - (_etype240, _size237) = iprot.readListBegin() - for _i241 in xrange(_size237): - _elem242 = PartitionWithoutSD() - _elem242.read(iprot) - self.partitions.append(_elem242) - iprot.readListEnd() + if ftype == TType.I64: + self.lowValue = iprot.readI64() else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.STRUCT: - self.sd = StorageDescriptor() - self.sd.read(iprot) + if ftype == TType.I64: + self.highValue = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 3: + if ftype == TType.I64: + self.numNulls = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 4: + if ftype == TType.I64: + self.numDVs = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 5: + if ftype == TType.STRING: + self.bitVectors = iprot.readString() else: iprot.skip(ftype) else: @@ -5704,29 +5213,45 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('PartitionSpecWithSharedSD') - if self.partitions is not None: - oprot.writeFieldBegin('partitions', TType.LIST, 1) - oprot.writeListBegin(TType.STRUCT, len(self.partitions)) - for iter243 in self.partitions: - iter243.write(oprot) - oprot.writeListEnd() + oprot.writeStructBegin('LongColumnStatsData') + if self.lowValue is not None: + oprot.writeFieldBegin('lowValue', TType.I64, 1) + oprot.writeI64(self.lowValue) oprot.writeFieldEnd() - if self.sd is not None: - oprot.writeFieldBegin('sd', TType.STRUCT, 2) - self.sd.write(oprot) + if self.highValue is not None: + oprot.writeFieldBegin('highValue', TType.I64, 2) + oprot.writeI64(self.highValue) + oprot.writeFieldEnd() + if self.numNulls is not None: + oprot.writeFieldBegin('numNulls', TType.I64, 3) + oprot.writeI64(self.numNulls) + oprot.writeFieldEnd() + if self.numDVs is not None: + oprot.writeFieldBegin('numDVs', TType.I64, 4) + oprot.writeI64(self.numDVs) + oprot.writeFieldEnd() + if self.bitVectors is not None: + oprot.writeFieldBegin('bitVectors', TType.STRING, 5) + oprot.writeString(self.bitVectors) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): + if self.numNulls is None: + raise TProtocol.TProtocolException(message='Required field numNulls is unset!') + if self.numDVs is None: + raise TProtocol.TProtocolException(message='Required field numDVs is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.partitions) - value = (value * 31) ^ hash(self.sd) + value = (value * 31) ^ hash(self.lowValue) + value = (value * 31) ^ hash(self.highValue) + value = (value * 31) ^ hash(self.numNulls) + value = (value * 31) ^ hash(self.numDVs) + value = (value * 31) ^ hash(self.bitVectors) return value def __repr__(self): @@ -5740,19 +5265,31 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class PartitionListComposingSpec: +class StringColumnStatsData: """ Attributes: - - partitions + - maxColLen + - avgColLen + - numNulls + - numDVs + - bitVectors """ thrift_spec = ( None, # 0 - (1, TType.LIST, 'partitions', (TType.STRUCT,(Partition, Partition.thrift_spec)), None, ), # 1 + (1, TType.I64, 'maxColLen', None, None, ), # 1 + (2, TType.DOUBLE, 'avgColLen', None, None, ), # 2 + (3, TType.I64, 'numNulls', None, None, ), # 3 + (4, TType.I64, 'numDVs', None, None, ), # 4 + (5, TType.STRING, 'bitVectors', None, None, ), # 5 ) - def __init__(self, partitions=None,): - self.partitions = partitions + def __init__(self, maxColLen=None, avgColLen=None, numNulls=None, numDVs=None, bitVectors=None,): + self.maxColLen = maxColLen + self.avgColLen = avgColLen + self.numNulls = numNulls + self.numDVs = numDVs + self.bitVectors = bitVectors 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: @@ -5764,14 +5301,28 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.LIST: - self.partitions = [] - (_etype247, _size244) = iprot.readListBegin() - for _i248 in xrange(_size244): - _elem249 = Partition() - _elem249.read(iprot) - self.partitions.append(_elem249) - iprot.readListEnd() + if ftype == TType.I64: + self.maxColLen = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 2: + if ftype == TType.DOUBLE: + self.avgColLen = iprot.readDouble() + else: + iprot.skip(ftype) + elif fid == 3: + if ftype == TType.I64: + self.numNulls = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 4: + if ftype == TType.I64: + self.numDVs = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 5: + if ftype == TType.STRING: + self.bitVectors = iprot.readString() else: iprot.skip(ftype) else: @@ -5783,24 +5334,49 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('PartitionListComposingSpec') - if self.partitions is not None: - oprot.writeFieldBegin('partitions', TType.LIST, 1) - oprot.writeListBegin(TType.STRUCT, len(self.partitions)) - for iter250 in self.partitions: - iter250.write(oprot) - oprot.writeListEnd() + oprot.writeStructBegin('StringColumnStatsData') + if self.maxColLen is not None: + oprot.writeFieldBegin('maxColLen', TType.I64, 1) + oprot.writeI64(self.maxColLen) + oprot.writeFieldEnd() + if self.avgColLen is not None: + oprot.writeFieldBegin('avgColLen', TType.DOUBLE, 2) + oprot.writeDouble(self.avgColLen) + oprot.writeFieldEnd() + if self.numNulls is not None: + oprot.writeFieldBegin('numNulls', TType.I64, 3) + oprot.writeI64(self.numNulls) + oprot.writeFieldEnd() + if self.numDVs is not None: + oprot.writeFieldBegin('numDVs', TType.I64, 4) + oprot.writeI64(self.numDVs) + oprot.writeFieldEnd() + if self.bitVectors is not None: + oprot.writeFieldBegin('bitVectors', TType.STRING, 5) + oprot.writeString(self.bitVectors) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): + if self.maxColLen is None: + raise TProtocol.TProtocolException(message='Required field maxColLen is unset!') + if self.avgColLen is None: + raise TProtocol.TProtocolException(message='Required field avgColLen is unset!') + if self.numNulls is None: + raise TProtocol.TProtocolException(message='Required field numNulls is unset!') + if self.numDVs is None: + raise TProtocol.TProtocolException(message='Required field numDVs is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.partitions) + value = (value * 31) ^ hash(self.maxColLen) + value = (value * 31) ^ hash(self.avgColLen) + value = (value * 31) ^ hash(self.numNulls) + value = (value * 31) ^ hash(self.numDVs) + value = (value * 31) ^ hash(self.bitVectors) return value def __repr__(self): @@ -5814,40 +5390,28 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class PartitionSpec: +class BinaryColumnStatsData: """ Attributes: - - dbName - - tableName - - rootPath - - sharedSDPartitionSpec - - partitionList - - catName - - writeId - - isStatsCompliant + - maxColLen + - avgColLen + - numNulls + - bitVectors """ thrift_spec = ( None, # 0 - (1, TType.STRING, 'dbName', None, None, ), # 1 - (2, TType.STRING, 'tableName', None, None, ), # 2 - (3, TType.STRING, 'rootPath', None, None, ), # 3 - (4, TType.STRUCT, 'sharedSDPartitionSpec', (PartitionSpecWithSharedSD, PartitionSpecWithSharedSD.thrift_spec), None, ), # 4 - (5, TType.STRUCT, 'partitionList', (PartitionListComposingSpec, PartitionListComposingSpec.thrift_spec), None, ), # 5 - (6, TType.STRING, 'catName', None, None, ), # 6 - (7, TType.I64, 'writeId', None, -1, ), # 7 - (8, TType.BOOL, 'isStatsCompliant', None, None, ), # 8 + (1, TType.I64, 'maxColLen', None, None, ), # 1 + (2, TType.DOUBLE, 'avgColLen', None, None, ), # 2 + (3, TType.I64, 'numNulls', None, None, ), # 3 + (4, TType.STRING, 'bitVectors', None, None, ), # 4 ) - def __init__(self, dbName=None, tableName=None, rootPath=None, sharedSDPartitionSpec=None, partitionList=None, catName=None, writeId=thrift_spec[7][4], isStatsCompliant=None,): - self.dbName = dbName - self.tableName = tableName - self.rootPath = rootPath - self.sharedSDPartitionSpec = sharedSDPartitionSpec - self.partitionList = partitionList - self.catName = catName - self.writeId = writeId - self.isStatsCompliant = isStatsCompliant + def __init__(self, maxColLen=None, avgColLen=None, numNulls=None, bitVectors=None,): + self.maxColLen = maxColLen + self.avgColLen = avgColLen + self.numNulls = numNulls + self.bitVectors = bitVectors 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: @@ -5859,45 +5423,23 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.STRING: - self.dbName = iprot.readString() + if ftype == TType.I64: + self.maxColLen = iprot.readI64() else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.STRING: - self.tableName = iprot.readString() + if ftype == TType.DOUBLE: + self.avgColLen = iprot.readDouble() else: iprot.skip(ftype) elif fid == 3: - if ftype == TType.STRING: - self.rootPath = iprot.readString() + if ftype == TType.I64: + self.numNulls = iprot.readI64() else: iprot.skip(ftype) elif fid == 4: - if ftype == TType.STRUCT: - self.sharedSDPartitionSpec = PartitionSpecWithSharedSD() - self.sharedSDPartitionSpec.read(iprot) - else: - iprot.skip(ftype) - elif fid == 5: - if ftype == TType.STRUCT: - self.partitionList = PartitionListComposingSpec() - self.partitionList.read(iprot) - else: - iprot.skip(ftype) - elif fid == 6: if ftype == TType.STRING: - self.catName = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 7: - if ftype == TType.I64: - self.writeId = iprot.readI64() - else: - iprot.skip(ftype) - elif fid == 8: - if ftype == TType.BOOL: - self.isStatsCompliant = iprot.readBool() + self.bitVectors = iprot.readString() else: iprot.skip(ftype) else: @@ -5909,56 +5451,42 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('PartitionSpec') - if self.dbName is not None: - oprot.writeFieldBegin('dbName', TType.STRING, 1) - oprot.writeString(self.dbName) - oprot.writeFieldEnd() - if self.tableName is not None: - oprot.writeFieldBegin('tableName', TType.STRING, 2) - oprot.writeString(self.tableName) - oprot.writeFieldEnd() - if self.rootPath is not None: - oprot.writeFieldBegin('rootPath', TType.STRING, 3) - oprot.writeString(self.rootPath) - oprot.writeFieldEnd() - if self.sharedSDPartitionSpec is not None: - oprot.writeFieldBegin('sharedSDPartitionSpec', TType.STRUCT, 4) - self.sharedSDPartitionSpec.write(oprot) - oprot.writeFieldEnd() - if self.partitionList is not None: - oprot.writeFieldBegin('partitionList', TType.STRUCT, 5) - self.partitionList.write(oprot) + oprot.writeStructBegin('BinaryColumnStatsData') + if self.maxColLen is not None: + oprot.writeFieldBegin('maxColLen', TType.I64, 1) + oprot.writeI64(self.maxColLen) oprot.writeFieldEnd() - if self.catName is not None: - oprot.writeFieldBegin('catName', TType.STRING, 6) - oprot.writeString(self.catName) + if self.avgColLen is not None: + oprot.writeFieldBegin('avgColLen', TType.DOUBLE, 2) + oprot.writeDouble(self.avgColLen) oprot.writeFieldEnd() - if self.writeId is not None: - oprot.writeFieldBegin('writeId', TType.I64, 7) - oprot.writeI64(self.writeId) + if self.numNulls is not None: + oprot.writeFieldBegin('numNulls', TType.I64, 3) + oprot.writeI64(self.numNulls) oprot.writeFieldEnd() - if self.isStatsCompliant is not None: - oprot.writeFieldBegin('isStatsCompliant', TType.BOOL, 8) - oprot.writeBool(self.isStatsCompliant) + if self.bitVectors is not None: + oprot.writeFieldBegin('bitVectors', TType.STRING, 4) + oprot.writeString(self.bitVectors) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): + if self.maxColLen is None: + raise TProtocol.TProtocolException(message='Required field maxColLen is unset!') + if self.avgColLen is None: + raise TProtocol.TProtocolException(message='Required field avgColLen is unset!') + if self.numNulls is None: + raise TProtocol.TProtocolException(message='Required field numNulls is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.dbName) - value = (value * 31) ^ hash(self.tableName) - value = (value * 31) ^ hash(self.rootPath) - value = (value * 31) ^ hash(self.sharedSDPartitionSpec) - value = (value * 31) ^ hash(self.partitionList) - value = (value * 31) ^ hash(self.catName) - value = (value * 31) ^ hash(self.writeId) - value = (value * 31) ^ hash(self.isStatsCompliant) + value = (value * 31) ^ hash(self.maxColLen) + value = (value * 31) ^ hash(self.avgColLen) + value = (value * 31) ^ hash(self.numNulls) + value = (value * 31) ^ hash(self.bitVectors) return value def __repr__(self): @@ -5972,28 +5500,23 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class BooleanColumnStatsData: +class Decimal: """ Attributes: - - numTrues - - numFalses - - numNulls - - bitVectors + - scale + - unscaled """ thrift_spec = ( None, # 0 - (1, TType.I64, 'numTrues', None, None, ), # 1 - (2, TType.I64, 'numFalses', None, None, ), # 2 - (3, TType.I64, 'numNulls', None, None, ), # 3 - (4, TType.STRING, 'bitVectors', None, None, ), # 4 + (1, TType.STRING, 'unscaled', None, None, ), # 1 + None, # 2 + (3, TType.I16, 'scale', None, None, ), # 3 ) - def __init__(self, numTrues=None, numFalses=None, numNulls=None, bitVectors=None,): - self.numTrues = numTrues - self.numFalses = numFalses - self.numNulls = numNulls - self.bitVectors = bitVectors + def __init__(self, scale=None, unscaled=None,): + self.scale = scale + self.unscaled = unscaled 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: @@ -6004,24 +5527,14 @@ def read(self, iprot): (fname, ftype, fid) = iprot.readFieldBegin() if ftype == TType.STOP: break - if fid == 1: - if ftype == TType.I64: - self.numTrues = iprot.readI64() - else: - iprot.skip(ftype) - elif fid == 2: - if ftype == TType.I64: - self.numFalses = iprot.readI64() - else: - iprot.skip(ftype) - elif fid == 3: - if ftype == TType.I64: - self.numNulls = iprot.readI64() + if fid == 3: + if ftype == TType.I16: + self.scale = iprot.readI16() else: iprot.skip(ftype) - elif fid == 4: + elif fid == 1: if ftype == TType.STRING: - self.bitVectors = iprot.readString() + self.unscaled = iprot.readString() else: iprot.skip(ftype) else: @@ -6033,42 +5546,30 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('BooleanColumnStatsData') - if self.numTrues is not None: - oprot.writeFieldBegin('numTrues', TType.I64, 1) - oprot.writeI64(self.numTrues) - oprot.writeFieldEnd() - if self.numFalses is not None: - oprot.writeFieldBegin('numFalses', TType.I64, 2) - oprot.writeI64(self.numFalses) - oprot.writeFieldEnd() - if self.numNulls is not None: - oprot.writeFieldBegin('numNulls', TType.I64, 3) - oprot.writeI64(self.numNulls) + oprot.writeStructBegin('Decimal') + if self.unscaled is not None: + oprot.writeFieldBegin('unscaled', TType.STRING, 1) + oprot.writeString(self.unscaled) oprot.writeFieldEnd() - if self.bitVectors is not None: - oprot.writeFieldBegin('bitVectors', TType.STRING, 4) - oprot.writeString(self.bitVectors) + if self.scale is not None: + oprot.writeFieldBegin('scale', TType.I16, 3) + oprot.writeI16(self.scale) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.numTrues is None: - raise TProtocol.TProtocolException(message='Required field numTrues is unset!') - if self.numFalses is None: - raise TProtocol.TProtocolException(message='Required field numFalses is unset!') - if self.numNulls is None: - raise TProtocol.TProtocolException(message='Required field numNulls is unset!') + if self.scale is None: + raise TProtocol.TProtocolException(message='Required field scale is unset!') + if self.unscaled is None: + raise TProtocol.TProtocolException(message='Required field unscaled is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.numTrues) - value = (value * 31) ^ hash(self.numFalses) - value = (value * 31) ^ hash(self.numNulls) - value = (value * 31) ^ hash(self.bitVectors) + value = (value * 31) ^ hash(self.scale) + value = (value * 31) ^ hash(self.unscaled) return value def __repr__(self): @@ -6082,7 +5583,7 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class DoubleColumnStatsData: +class DecimalColumnStatsData: """ Attributes: - lowValue @@ -6094,8 +5595,8 @@ class DoubleColumnStatsData: thrift_spec = ( None, # 0 - (1, TType.DOUBLE, 'lowValue', None, None, ), # 1 - (2, TType.DOUBLE, 'highValue', None, None, ), # 2 + (1, TType.STRUCT, 'lowValue', (Decimal, Decimal.thrift_spec), None, ), # 1 + (2, TType.STRUCT, 'highValue', (Decimal, Decimal.thrift_spec), None, ), # 2 (3, TType.I64, 'numNulls', None, None, ), # 3 (4, TType.I64, 'numDVs', None, None, ), # 4 (5, TType.STRING, 'bitVectors', None, None, ), # 5 @@ -6118,13 +5619,15 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.DOUBLE: - self.lowValue = iprot.readDouble() + if ftype == TType.STRUCT: + self.lowValue = Decimal() + self.lowValue.read(iprot) else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.DOUBLE: - self.highValue = iprot.readDouble() + if ftype == TType.STRUCT: + self.highValue = Decimal() + self.highValue.read(iprot) else: iprot.skip(ftype) elif fid == 3: @@ -6151,14 +5654,14 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('DoubleColumnStatsData') + oprot.writeStructBegin('DecimalColumnStatsData') if self.lowValue is not None: - oprot.writeFieldBegin('lowValue', TType.DOUBLE, 1) - oprot.writeDouble(self.lowValue) + oprot.writeFieldBegin('lowValue', TType.STRUCT, 1) + self.lowValue.write(oprot) oprot.writeFieldEnd() if self.highValue is not None: - oprot.writeFieldBegin('highValue', TType.DOUBLE, 2) - oprot.writeDouble(self.highValue) + oprot.writeFieldBegin('highValue', TType.STRUCT, 2) + self.highValue.write(oprot) oprot.writeFieldEnd() if self.numNulls is not None: oprot.writeFieldBegin('numNulls', TType.I64, 3) @@ -6203,7 +5706,74 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class LongColumnStatsData: +class Date: + """ + Attributes: + - daysSinceEpoch + """ + + thrift_spec = ( + None, # 0 + (1, TType.I64, 'daysSinceEpoch', None, None, ), # 1 + ) + + def __init__(self, daysSinceEpoch=None,): + self.daysSinceEpoch = daysSinceEpoch + + 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: + fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec)) + return + iprot.readStructBegin() + while True: + (fname, ftype, fid) = iprot.readFieldBegin() + if ftype == TType.STOP: + break + if fid == 1: + if ftype == TType.I64: + self.daysSinceEpoch = iprot.readI64() + else: + iprot.skip(ftype) + else: + iprot.skip(ftype) + iprot.readFieldEnd() + iprot.readStructEnd() + + def write(self, oprot): + if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: + oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) + return + oprot.writeStructBegin('Date') + if self.daysSinceEpoch is not None: + oprot.writeFieldBegin('daysSinceEpoch', TType.I64, 1) + oprot.writeI64(self.daysSinceEpoch) + oprot.writeFieldEnd() + oprot.writeFieldStop() + oprot.writeStructEnd() + + def validate(self): + if self.daysSinceEpoch is None: + raise TProtocol.TProtocolException(message='Required field daysSinceEpoch is unset!') + return + + + def __hash__(self): + value = 17 + value = (value * 31) ^ hash(self.daysSinceEpoch) + return value + + def __repr__(self): + L = ['%s=%r' % (key, value) + for key, value in self.__dict__.iteritems()] + return '%s(%s)' % (self.__class__.__name__, ', '.join(L)) + + def __eq__(self, other): + return isinstance(other, self.__class__) and self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not (self == other) + +class DateColumnStatsData: """ Attributes: - lowValue @@ -6215,8 +5785,8 @@ class LongColumnStatsData: thrift_spec = ( None, # 0 - (1, TType.I64, 'lowValue', None, None, ), # 1 - (2, TType.I64, 'highValue', None, None, ), # 2 + (1, TType.STRUCT, 'lowValue', (Date, Date.thrift_spec), None, ), # 1 + (2, TType.STRUCT, 'highValue', (Date, Date.thrift_spec), None, ), # 2 (3, TType.I64, 'numNulls', None, None, ), # 3 (4, TType.I64, 'numDVs', None, None, ), # 4 (5, TType.STRING, 'bitVectors', None, None, ), # 5 @@ -6239,13 +5809,15 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.I64: - self.lowValue = iprot.readI64() + if ftype == TType.STRUCT: + self.lowValue = Date() + self.lowValue.read(iprot) else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.I64: - self.highValue = iprot.readI64() + if ftype == TType.STRUCT: + self.highValue = Date() + self.highValue.read(iprot) else: iprot.skip(ftype) elif fid == 3: @@ -6272,14 +5844,14 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('LongColumnStatsData') + oprot.writeStructBegin('DateColumnStatsData') if self.lowValue is not None: - oprot.writeFieldBegin('lowValue', TType.I64, 1) - oprot.writeI64(self.lowValue) + oprot.writeFieldBegin('lowValue', TType.STRUCT, 1) + self.lowValue.write(oprot) oprot.writeFieldEnd() if self.highValue is not None: - oprot.writeFieldBegin('highValue', TType.I64, 2) - oprot.writeI64(self.highValue) + oprot.writeFieldBegin('highValue', TType.STRUCT, 2) + self.highValue.write(oprot) oprot.writeFieldEnd() if self.numNulls is not None: oprot.writeFieldBegin('numNulls', TType.I64, 3) @@ -6324,31 +5896,37 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class StringColumnStatsData: +class ColumnStatisticsData: """ Attributes: - - maxColLen - - avgColLen - - numNulls - - numDVs - - bitVectors + - booleanStats + - longStats + - doubleStats + - stringStats + - binaryStats + - decimalStats + - dateStats """ thrift_spec = ( None, # 0 - (1, TType.I64, 'maxColLen', None, None, ), # 1 - (2, TType.DOUBLE, 'avgColLen', None, None, ), # 2 - (3, TType.I64, 'numNulls', None, None, ), # 3 - (4, TType.I64, 'numDVs', None, None, ), # 4 - (5, TType.STRING, 'bitVectors', None, None, ), # 5 + (1, TType.STRUCT, 'booleanStats', (BooleanColumnStatsData, BooleanColumnStatsData.thrift_spec), None, ), # 1 + (2, TType.STRUCT, 'longStats', (LongColumnStatsData, LongColumnStatsData.thrift_spec), None, ), # 2 + (3, TType.STRUCT, 'doubleStats', (DoubleColumnStatsData, DoubleColumnStatsData.thrift_spec), None, ), # 3 + (4, TType.STRUCT, 'stringStats', (StringColumnStatsData, StringColumnStatsData.thrift_spec), None, ), # 4 + (5, TType.STRUCT, 'binaryStats', (BinaryColumnStatsData, BinaryColumnStatsData.thrift_spec), None, ), # 5 + (6, TType.STRUCT, 'decimalStats', (DecimalColumnStatsData, DecimalColumnStatsData.thrift_spec), None, ), # 6 + (7, TType.STRUCT, 'dateStats', (DateColumnStatsData, DateColumnStatsData.thrift_spec), None, ), # 7 ) - def __init__(self, maxColLen=None, avgColLen=None, numNulls=None, numDVs=None, bitVectors=None,): - self.maxColLen = maxColLen - self.avgColLen = avgColLen - self.numNulls = numNulls - self.numDVs = numDVs - self.bitVectors = bitVectors + def __init__(self, booleanStats=None, longStats=None, doubleStats=None, stringStats=None, binaryStats=None, decimalStats=None, dateStats=None,): + self.booleanStats = booleanStats + self.longStats = longStats + self.doubleStats = doubleStats + self.stringStats = stringStats + self.binaryStats = binaryStats + self.decimalStats = decimalStats + self.dateStats = dateStats 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: @@ -6360,28 +5938,45 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.I64: - self.maxColLen = iprot.readI64() + if ftype == TType.STRUCT: + self.booleanStats = BooleanColumnStatsData() + self.booleanStats.read(iprot) else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.DOUBLE: - self.avgColLen = iprot.readDouble() + if ftype == TType.STRUCT: + self.longStats = LongColumnStatsData() + self.longStats.read(iprot) else: iprot.skip(ftype) elif fid == 3: - if ftype == TType.I64: - self.numNulls = iprot.readI64() + if ftype == TType.STRUCT: + self.doubleStats = DoubleColumnStatsData() + self.doubleStats.read(iprot) else: iprot.skip(ftype) elif fid == 4: - if ftype == TType.I64: - self.numDVs = iprot.readI64() + if ftype == TType.STRUCT: + self.stringStats = StringColumnStatsData() + self.stringStats.read(iprot) else: iprot.skip(ftype) elif fid == 5: - if ftype == TType.STRING: - self.bitVectors = iprot.readString() + if ftype == TType.STRUCT: + self.binaryStats = BinaryColumnStatsData() + self.binaryStats.read(iprot) + else: + iprot.skip(ftype) + elif fid == 6: + if ftype == TType.STRUCT: + self.decimalStats = DecimalColumnStatsData() + self.decimalStats.read(iprot) + else: + iprot.skip(ftype) + elif fid == 7: + if ftype == TType.STRUCT: + self.dateStats = DateColumnStatsData() + self.dateStats.read(iprot) else: iprot.skip(ftype) else: @@ -6393,49 +5988,51 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('StringColumnStatsData') - if self.maxColLen is not None: - oprot.writeFieldBegin('maxColLen', TType.I64, 1) - oprot.writeI64(self.maxColLen) + oprot.writeStructBegin('ColumnStatisticsData') + if self.booleanStats is not None: + oprot.writeFieldBegin('booleanStats', TType.STRUCT, 1) + self.booleanStats.write(oprot) oprot.writeFieldEnd() - if self.avgColLen is not None: - oprot.writeFieldBegin('avgColLen', TType.DOUBLE, 2) - oprot.writeDouble(self.avgColLen) + if self.longStats is not None: + oprot.writeFieldBegin('longStats', TType.STRUCT, 2) + self.longStats.write(oprot) + oprot.writeFieldEnd() + if self.doubleStats is not None: + oprot.writeFieldBegin('doubleStats', TType.STRUCT, 3) + self.doubleStats.write(oprot) + oprot.writeFieldEnd() + if self.stringStats is not None: + oprot.writeFieldBegin('stringStats', TType.STRUCT, 4) + self.stringStats.write(oprot) oprot.writeFieldEnd() - if self.numNulls is not None: - oprot.writeFieldBegin('numNulls', TType.I64, 3) - oprot.writeI64(self.numNulls) + if self.binaryStats is not None: + oprot.writeFieldBegin('binaryStats', TType.STRUCT, 5) + self.binaryStats.write(oprot) oprot.writeFieldEnd() - if self.numDVs is not None: - oprot.writeFieldBegin('numDVs', TType.I64, 4) - oprot.writeI64(self.numDVs) + if self.decimalStats is not None: + oprot.writeFieldBegin('decimalStats', TType.STRUCT, 6) + self.decimalStats.write(oprot) oprot.writeFieldEnd() - if self.bitVectors is not None: - oprot.writeFieldBegin('bitVectors', TType.STRING, 5) - oprot.writeString(self.bitVectors) + if self.dateStats is not None: + oprot.writeFieldBegin('dateStats', TType.STRUCT, 7) + self.dateStats.write(oprot) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.maxColLen is None: - raise TProtocol.TProtocolException(message='Required field maxColLen is unset!') - if self.avgColLen is None: - raise TProtocol.TProtocolException(message='Required field avgColLen is unset!') - if self.numNulls is None: - raise TProtocol.TProtocolException(message='Required field numNulls is unset!') - if self.numDVs is None: - raise TProtocol.TProtocolException(message='Required field numDVs is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.maxColLen) - value = (value * 31) ^ hash(self.avgColLen) - value = (value * 31) ^ hash(self.numNulls) - value = (value * 31) ^ hash(self.numDVs) - value = (value * 31) ^ hash(self.bitVectors) + value = (value * 31) ^ hash(self.booleanStats) + value = (value * 31) ^ hash(self.longStats) + value = (value * 31) ^ hash(self.doubleStats) + value = (value * 31) ^ hash(self.stringStats) + value = (value * 31) ^ hash(self.binaryStats) + value = (value * 31) ^ hash(self.decimalStats) + value = (value * 31) ^ hash(self.dateStats) return value def __repr__(self): @@ -6449,28 +6046,25 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class BinaryColumnStatsData: +class ColumnStatisticsObj: """ Attributes: - - maxColLen - - avgColLen - - numNulls - - bitVectors + - colName + - colType + - statsData """ thrift_spec = ( None, # 0 - (1, TType.I64, 'maxColLen', None, None, ), # 1 - (2, TType.DOUBLE, 'avgColLen', None, None, ), # 2 - (3, TType.I64, 'numNulls', None, None, ), # 3 - (4, TType.STRING, 'bitVectors', None, None, ), # 4 + (1, TType.STRING, 'colName', None, None, ), # 1 + (2, TType.STRING, 'colType', None, None, ), # 2 + (3, TType.STRUCT, 'statsData', (ColumnStatisticsData, ColumnStatisticsData.thrift_spec), None, ), # 3 ) - def __init__(self, maxColLen=None, avgColLen=None, numNulls=None, bitVectors=None,): - self.maxColLen = maxColLen - self.avgColLen = avgColLen - self.numNulls = numNulls - self.bitVectors = bitVectors + def __init__(self, colName=None, colType=None, statsData=None,): + self.colName = colName + self.colType = colType + self.statsData = statsData 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: @@ -6482,23 +6076,19 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.I64: - self.maxColLen = iprot.readI64() + if ftype == TType.STRING: + self.colName = iprot.readString() else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.DOUBLE: - self.avgColLen = iprot.readDouble() + if ftype == TType.STRING: + self.colType = iprot.readString() else: iprot.skip(ftype) elif fid == 3: - if ftype == TType.I64: - self.numNulls = iprot.readI64() - else: - iprot.skip(ftype) - elif fid == 4: - if ftype == TType.STRING: - self.bitVectors = iprot.readString() + if ftype == TType.STRUCT: + self.statsData = ColumnStatisticsData() + self.statsData.read(iprot) else: iprot.skip(ftype) else: @@ -6510,42 +6100,37 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('BinaryColumnStatsData') - if self.maxColLen is not None: - oprot.writeFieldBegin('maxColLen', TType.I64, 1) - oprot.writeI64(self.maxColLen) - oprot.writeFieldEnd() - if self.avgColLen is not None: - oprot.writeFieldBegin('avgColLen', TType.DOUBLE, 2) - oprot.writeDouble(self.avgColLen) + oprot.writeStructBegin('ColumnStatisticsObj') + if self.colName is not None: + oprot.writeFieldBegin('colName', TType.STRING, 1) + oprot.writeString(self.colName) oprot.writeFieldEnd() - if self.numNulls is not None: - oprot.writeFieldBegin('numNulls', TType.I64, 3) - oprot.writeI64(self.numNulls) + if self.colType is not None: + oprot.writeFieldBegin('colType', TType.STRING, 2) + oprot.writeString(self.colType) oprot.writeFieldEnd() - if self.bitVectors is not None: - oprot.writeFieldBegin('bitVectors', TType.STRING, 4) - oprot.writeString(self.bitVectors) + if self.statsData is not None: + oprot.writeFieldBegin('statsData', TType.STRUCT, 3) + self.statsData.write(oprot) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.maxColLen is None: - raise TProtocol.TProtocolException(message='Required field maxColLen is unset!') - if self.avgColLen is None: - raise TProtocol.TProtocolException(message='Required field avgColLen is unset!') - if self.numNulls is None: - raise TProtocol.TProtocolException(message='Required field numNulls is unset!') + if self.colName is None: + raise TProtocol.TProtocolException(message='Required field colName is unset!') + if self.colType is None: + raise TProtocol.TProtocolException(message='Required field colType is unset!') + if self.statsData is None: + raise TProtocol.TProtocolException(message='Required field statsData is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.maxColLen) - value = (value * 31) ^ hash(self.avgColLen) - value = (value * 31) ^ hash(self.numNulls) - value = (value * 31) ^ hash(self.bitVectors) + value = (value * 31) ^ hash(self.colName) + value = (value * 31) ^ hash(self.colType) + value = (value * 31) ^ hash(self.statsData) return value def __repr__(self): @@ -6559,23 +6144,34 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class Decimal: +class ColumnStatisticsDesc: """ Attributes: - - scale - - unscaled + - isTblLevel + - dbName + - tableName + - partName + - lastAnalyzed + - catName """ thrift_spec = ( None, # 0 - (1, TType.STRING, 'unscaled', None, None, ), # 1 - None, # 2 - (3, TType.I16, 'scale', None, None, ), # 3 + (1, TType.BOOL, 'isTblLevel', None, None, ), # 1 + (2, TType.STRING, 'dbName', None, None, ), # 2 + (3, TType.STRING, 'tableName', None, None, ), # 3 + (4, TType.STRING, 'partName', None, None, ), # 4 + (5, TType.I64, 'lastAnalyzed', None, None, ), # 5 + (6, TType.STRING, 'catName', None, None, ), # 6 ) - def __init__(self, scale=None, unscaled=None,): - self.scale = scale - self.unscaled = unscaled + def __init__(self, isTblLevel=None, dbName=None, tableName=None, partName=None, lastAnalyzed=None, catName=None,): + self.isTblLevel = isTblLevel + self.dbName = dbName + self.tableName = tableName + self.partName = partName + self.lastAnalyzed = lastAnalyzed + self.catName = catName 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: @@ -6586,14 +6182,34 @@ def read(self, iprot): (fname, ftype, fid) = iprot.readFieldBegin() if ftype == TType.STOP: break - if fid == 3: - if ftype == TType.I16: - self.scale = iprot.readI16() + if fid == 1: + if ftype == TType.BOOL: + self.isTblLevel = iprot.readBool() else: iprot.skip(ftype) - elif fid == 1: + elif fid == 2: if ftype == TType.STRING: - self.unscaled = iprot.readString() + self.dbName = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 3: + if ftype == TType.STRING: + self.tableName = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 4: + if ftype == TType.STRING: + self.partName = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 5: + if ftype == TType.I64: + self.lastAnalyzed = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 6: + if ftype == TType.STRING: + self.catName = iprot.readString() else: iprot.skip(ftype) else: @@ -6605,30 +6221,52 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('Decimal') - if self.unscaled is not None: - oprot.writeFieldBegin('unscaled', TType.STRING, 1) - oprot.writeString(self.unscaled) + oprot.writeStructBegin('ColumnStatisticsDesc') + if self.isTblLevel is not None: + oprot.writeFieldBegin('isTblLevel', TType.BOOL, 1) + oprot.writeBool(self.isTblLevel) oprot.writeFieldEnd() - if self.scale is not None: - oprot.writeFieldBegin('scale', TType.I16, 3) - oprot.writeI16(self.scale) + if self.dbName is not None: + oprot.writeFieldBegin('dbName', TType.STRING, 2) + oprot.writeString(self.dbName) + oprot.writeFieldEnd() + if self.tableName is not None: + oprot.writeFieldBegin('tableName', TType.STRING, 3) + oprot.writeString(self.tableName) + oprot.writeFieldEnd() + if self.partName is not None: + oprot.writeFieldBegin('partName', TType.STRING, 4) + oprot.writeString(self.partName) + oprot.writeFieldEnd() + if self.lastAnalyzed is not None: + oprot.writeFieldBegin('lastAnalyzed', TType.I64, 5) + oprot.writeI64(self.lastAnalyzed) + oprot.writeFieldEnd() + if self.catName is not None: + oprot.writeFieldBegin('catName', TType.STRING, 6) + oprot.writeString(self.catName) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.scale is None: - raise TProtocol.TProtocolException(message='Required field scale is unset!') - if self.unscaled is None: - raise TProtocol.TProtocolException(message='Required field unscaled is unset!') + if self.isTblLevel is None: + raise TProtocol.TProtocolException(message='Required field isTblLevel is unset!') + if self.dbName is None: + raise TProtocol.TProtocolException(message='Required field dbName is unset!') + if self.tableName is None: + raise TProtocol.TProtocolException(message='Required field tableName is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.scale) - value = (value * 31) ^ hash(self.unscaled) + value = (value * 31) ^ hash(self.isTblLevel) + value = (value * 31) ^ hash(self.dbName) + value = (value * 31) ^ hash(self.tableName) + value = (value * 31) ^ hash(self.partName) + value = (value * 31) ^ hash(self.lastAnalyzed) + value = (value * 31) ^ hash(self.catName) return value def __repr__(self): @@ -6642,31 +6280,25 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class DecimalColumnStatsData: +class ColumnStatistics: """ Attributes: - - lowValue - - highValue - - numNulls - - numDVs - - bitVectors + - statsDesc + - statsObj + - isStatsCompliant """ thrift_spec = ( None, # 0 - (1, TType.STRUCT, 'lowValue', (Decimal, Decimal.thrift_spec), None, ), # 1 - (2, TType.STRUCT, 'highValue', (Decimal, Decimal.thrift_spec), None, ), # 2 - (3, TType.I64, 'numNulls', None, None, ), # 3 - (4, TType.I64, 'numDVs', None, None, ), # 4 - (5, TType.STRING, 'bitVectors', None, None, ), # 5 + (1, TType.STRUCT, 'statsDesc', (ColumnStatisticsDesc, ColumnStatisticsDesc.thrift_spec), None, ), # 1 + (2, TType.LIST, 'statsObj', (TType.STRUCT,(ColumnStatisticsObj, ColumnStatisticsObj.thrift_spec)), None, ), # 2 + (3, TType.BOOL, 'isStatsCompliant', None, None, ), # 3 ) - def __init__(self, lowValue=None, highValue=None, numNulls=None, numDVs=None, bitVectors=None,): - self.lowValue = lowValue - self.highValue = highValue - self.numNulls = numNulls - self.numDVs = numDVs - self.bitVectors = bitVectors + def __init__(self, statsDesc=None, statsObj=None, isStatsCompliant=None,): + self.statsDesc = statsDesc + self.statsObj = statsObj + self.isStatsCompliant = isStatsCompliant 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: @@ -6679,29 +6311,24 @@ def read(self, iprot): break if fid == 1: if ftype == TType.STRUCT: - self.lowValue = Decimal() - self.lowValue.read(iprot) + self.statsDesc = ColumnStatisticsDesc() + self.statsDesc.read(iprot) else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.STRUCT: - self.highValue = Decimal() - self.highValue.read(iprot) + if ftype == TType.LIST: + self.statsObj = [] + (_etype192, _size189) = iprot.readListBegin() + for _i193 in xrange(_size189): + _elem194 = ColumnStatisticsObj() + _elem194.read(iprot) + self.statsObj.append(_elem194) + iprot.readListEnd() else: iprot.skip(ftype) elif fid == 3: - if ftype == TType.I64: - self.numNulls = iprot.readI64() - else: - iprot.skip(ftype) - elif fid == 4: - if ftype == TType.I64: - self.numDVs = iprot.readI64() - else: - iprot.skip(ftype) - elif fid == 5: - if ftype == TType.STRING: - self.bitVectors = iprot.readString() + if ftype == TType.BOOL: + self.isStatsCompliant = iprot.readBool() else: iprot.skip(ftype) else: @@ -6713,45 +6340,38 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('DecimalColumnStatsData') - if self.lowValue is not None: - oprot.writeFieldBegin('lowValue', TType.STRUCT, 1) - self.lowValue.write(oprot) - oprot.writeFieldEnd() - if self.highValue is not None: - oprot.writeFieldBegin('highValue', TType.STRUCT, 2) - self.highValue.write(oprot) - oprot.writeFieldEnd() - if self.numNulls is not None: - oprot.writeFieldBegin('numNulls', TType.I64, 3) - oprot.writeI64(self.numNulls) + oprot.writeStructBegin('ColumnStatistics') + if self.statsDesc is not None: + oprot.writeFieldBegin('statsDesc', TType.STRUCT, 1) + self.statsDesc.write(oprot) oprot.writeFieldEnd() - if self.numDVs is not None: - oprot.writeFieldBegin('numDVs', TType.I64, 4) - oprot.writeI64(self.numDVs) + if self.statsObj is not None: + oprot.writeFieldBegin('statsObj', TType.LIST, 2) + oprot.writeListBegin(TType.STRUCT, len(self.statsObj)) + for iter195 in self.statsObj: + iter195.write(oprot) + oprot.writeListEnd() oprot.writeFieldEnd() - if self.bitVectors is not None: - oprot.writeFieldBegin('bitVectors', TType.STRING, 5) - oprot.writeString(self.bitVectors) + if self.isStatsCompliant is not None: + oprot.writeFieldBegin('isStatsCompliant', TType.BOOL, 3) + oprot.writeBool(self.isStatsCompliant) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.numNulls is None: - raise TProtocol.TProtocolException(message='Required field numNulls is unset!') - if self.numDVs is None: - raise TProtocol.TProtocolException(message='Required field numDVs is unset!') + if self.statsDesc is None: + raise TProtocol.TProtocolException(message='Required field statsDesc is unset!') + if self.statsObj is None: + raise TProtocol.TProtocolException(message='Required field statsObj is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.lowValue) - value = (value * 31) ^ hash(self.highValue) - value = (value * 31) ^ hash(self.numNulls) - value = (value * 31) ^ hash(self.numDVs) - value = (value * 31) ^ hash(self.bitVectors) + value = (value * 31) ^ hash(self.statsDesc) + value = (value * 31) ^ hash(self.statsObj) + value = (value * 31) ^ hash(self.isStatsCompliant) return value def __repr__(self): @@ -6765,19 +6385,82 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class Date: +class Table: """ Attributes: - - daysSinceEpoch + - id + - tableName + - dbName + - owner + - createTime + - lastAccessTime + - retention + - sd + - partitionKeys + - parameters + - viewOriginalText + - viewExpandedText + - tableType + - privileges + - temporary + - rewriteEnabled + - creationMetadata + - catName + - ownerType + - writeId + - isStatsCompliant + - colStats """ thrift_spec = ( None, # 0 - (1, TType.I64, 'daysSinceEpoch', None, None, ), # 1 + (1, TType.I64, 'id', None, None, ), # 1 + (2, TType.STRING, 'tableName', None, None, ), # 2 + (3, TType.STRING, 'dbName', None, None, ), # 3 + (4, TType.STRING, 'owner', None, None, ), # 4 + (5, TType.I32, 'createTime', None, None, ), # 5 + (6, TType.I32, 'lastAccessTime', None, None, ), # 6 + (7, TType.I32, 'retention', None, None, ), # 7 + (8, TType.STRUCT, 'sd', (StorageDescriptor, StorageDescriptor.thrift_spec), None, ), # 8 + (9, TType.LIST, 'partitionKeys', (TType.STRUCT,(FieldSchema, FieldSchema.thrift_spec)), None, ), # 9 + (10, TType.MAP, 'parameters', (TType.STRING,None,TType.STRING,None), None, ), # 10 + (11, TType.STRING, 'viewOriginalText', None, None, ), # 11 + (12, TType.STRING, 'viewExpandedText', None, None, ), # 12 + (13, TType.STRING, 'tableType', None, None, ), # 13 + (14, TType.STRUCT, 'privileges', (PrincipalPrivilegeSet, PrincipalPrivilegeSet.thrift_spec), None, ), # 14 + (15, TType.BOOL, 'temporary', None, False, ), # 15 + (16, TType.BOOL, 'rewriteEnabled', None, None, ), # 16 + (17, TType.STRUCT, 'creationMetadata', (CreationMetadata, CreationMetadata.thrift_spec), None, ), # 17 + (18, TType.STRING, 'catName', None, None, ), # 18 + (19, TType.I32, 'ownerType', None, 1, ), # 19 + (20, TType.I64, 'writeId', None, -1, ), # 20 + (21, TType.BOOL, 'isStatsCompliant', None, None, ), # 21 + (22, TType.STRUCT, 'colStats', (ColumnStatistics, ColumnStatistics.thrift_spec), None, ), # 22 ) - def __init__(self, daysSinceEpoch=None,): - self.daysSinceEpoch = daysSinceEpoch + def __init__(self, id=None, tableName=None, dbName=None, owner=None, createTime=None, lastAccessTime=None, retention=None, sd=None, partitionKeys=None, parameters=None, viewOriginalText=None, viewExpandedText=None, tableType=None, privileges=None, temporary=thrift_spec[15][4], rewriteEnabled=None, creationMetadata=None, catName=None, ownerType=thrift_spec[19][4], writeId=thrift_spec[20][4], isStatsCompliant=None, colStats=None,): + self.id = id + self.tableName = tableName + self.dbName = dbName + self.owner = owner + self.createTime = createTime + self.lastAccessTime = lastAccessTime + self.retention = retention + self.sd = sd + self.partitionKeys = partitionKeys + self.parameters = parameters + self.viewOriginalText = viewOriginalText + self.viewExpandedText = viewExpandedText + self.tableType = tableType + self.privileges = privileges + self.temporary = temporary + self.rewriteEnabled = rewriteEnabled + self.creationMetadata = creationMetadata + self.catName = catName + self.ownerType = ownerType + self.writeId = writeId + self.isStatsCompliant = isStatsCompliant + self.colStats = colStats 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: @@ -6790,7 +6473,128 @@ def read(self, iprot): break if fid == 1: if ftype == TType.I64: - self.daysSinceEpoch = iprot.readI64() + self.id = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 2: + if ftype == TType.STRING: + self.tableName = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 3: + if ftype == TType.STRING: + self.dbName = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 4: + if ftype == TType.STRING: + self.owner = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 5: + if ftype == TType.I32: + self.createTime = iprot.readI32() + else: + iprot.skip(ftype) + elif fid == 6: + if ftype == TType.I32: + self.lastAccessTime = iprot.readI32() + else: + iprot.skip(ftype) + elif fid == 7: + if ftype == TType.I32: + self.retention = iprot.readI32() + else: + iprot.skip(ftype) + elif fid == 8: + if ftype == TType.STRUCT: + self.sd = StorageDescriptor() + self.sd.read(iprot) + else: + iprot.skip(ftype) + elif fid == 9: + if ftype == TType.LIST: + self.partitionKeys = [] + (_etype199, _size196) = iprot.readListBegin() + for _i200 in xrange(_size196): + _elem201 = FieldSchema() + _elem201.read(iprot) + self.partitionKeys.append(_elem201) + iprot.readListEnd() + else: + iprot.skip(ftype) + elif fid == 10: + if ftype == TType.MAP: + self.parameters = {} + (_ktype203, _vtype204, _size202 ) = iprot.readMapBegin() + for _i206 in xrange(_size202): + _key207 = iprot.readString() + _val208 = iprot.readString() + self.parameters[_key207] = _val208 + iprot.readMapEnd() + else: + iprot.skip(ftype) + elif fid == 11: + if ftype == TType.STRING: + self.viewOriginalText = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 12: + if ftype == TType.STRING: + self.viewExpandedText = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 13: + if ftype == TType.STRING: + self.tableType = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 14: + if ftype == TType.STRUCT: + self.privileges = PrincipalPrivilegeSet() + self.privileges.read(iprot) + else: + iprot.skip(ftype) + elif fid == 15: + if ftype == TType.BOOL: + self.temporary = iprot.readBool() + else: + iprot.skip(ftype) + elif fid == 16: + if ftype == TType.BOOL: + self.rewriteEnabled = iprot.readBool() + else: + iprot.skip(ftype) + elif fid == 17: + if ftype == TType.STRUCT: + self.creationMetadata = CreationMetadata() + self.creationMetadata.read(iprot) + else: + iprot.skip(ftype) + elif fid == 18: + if ftype == TType.STRING: + self.catName = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 19: + if ftype == TType.I32: + self.ownerType = iprot.readI32() + else: + iprot.skip(ftype) + elif fid == 20: + if ftype == TType.I64: + self.writeId = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 21: + if ftype == TType.BOOL: + self.isStatsCompliant = iprot.readBool() + else: + iprot.skip(ftype) + elif fid == 22: + if ftype == TType.STRUCT: + self.colStats = ColumnStatistics() + self.colStats.read(iprot) else: iprot.skip(ftype) else: @@ -6802,23 +6606,133 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('Date') - if self.daysSinceEpoch is not None: - oprot.writeFieldBegin('daysSinceEpoch', TType.I64, 1) - oprot.writeI64(self.daysSinceEpoch) + oprot.writeStructBegin('Table') + if self.id is not None: + oprot.writeFieldBegin('id', TType.I64, 1) + oprot.writeI64(self.id) + oprot.writeFieldEnd() + if self.tableName is not None: + oprot.writeFieldBegin('tableName', TType.STRING, 2) + oprot.writeString(self.tableName) + oprot.writeFieldEnd() + if self.dbName is not None: + oprot.writeFieldBegin('dbName', TType.STRING, 3) + oprot.writeString(self.dbName) + oprot.writeFieldEnd() + if self.owner is not None: + oprot.writeFieldBegin('owner', TType.STRING, 4) + oprot.writeString(self.owner) + oprot.writeFieldEnd() + if self.createTime is not None: + oprot.writeFieldBegin('createTime', TType.I32, 5) + oprot.writeI32(self.createTime) + oprot.writeFieldEnd() + if self.lastAccessTime is not None: + oprot.writeFieldBegin('lastAccessTime', TType.I32, 6) + oprot.writeI32(self.lastAccessTime) + oprot.writeFieldEnd() + if self.retention is not None: + oprot.writeFieldBegin('retention', TType.I32, 7) + oprot.writeI32(self.retention) + oprot.writeFieldEnd() + if self.sd is not None: + oprot.writeFieldBegin('sd', TType.STRUCT, 8) + self.sd.write(oprot) + oprot.writeFieldEnd() + if self.partitionKeys is not None: + oprot.writeFieldBegin('partitionKeys', TType.LIST, 9) + oprot.writeListBegin(TType.STRUCT, len(self.partitionKeys)) + for iter209 in self.partitionKeys: + iter209.write(oprot) + oprot.writeListEnd() + oprot.writeFieldEnd() + if self.parameters is not None: + oprot.writeFieldBegin('parameters', TType.MAP, 10) + oprot.writeMapBegin(TType.STRING, TType.STRING, len(self.parameters)) + for kiter210,viter211 in self.parameters.items(): + oprot.writeString(kiter210) + oprot.writeString(viter211) + oprot.writeMapEnd() + oprot.writeFieldEnd() + if self.viewOriginalText is not None: + oprot.writeFieldBegin('viewOriginalText', TType.STRING, 11) + oprot.writeString(self.viewOriginalText) + oprot.writeFieldEnd() + if self.viewExpandedText is not None: + oprot.writeFieldBegin('viewExpandedText', TType.STRING, 12) + oprot.writeString(self.viewExpandedText) + oprot.writeFieldEnd() + if self.tableType is not None: + oprot.writeFieldBegin('tableType', TType.STRING, 13) + oprot.writeString(self.tableType) + oprot.writeFieldEnd() + if self.privileges is not None: + oprot.writeFieldBegin('privileges', TType.STRUCT, 14) + self.privileges.write(oprot) + oprot.writeFieldEnd() + if self.temporary is not None: + oprot.writeFieldBegin('temporary', TType.BOOL, 15) + oprot.writeBool(self.temporary) + oprot.writeFieldEnd() + if self.rewriteEnabled is not None: + oprot.writeFieldBegin('rewriteEnabled', TType.BOOL, 16) + oprot.writeBool(self.rewriteEnabled) + oprot.writeFieldEnd() + if self.creationMetadata is not None: + oprot.writeFieldBegin('creationMetadata', TType.STRUCT, 17) + self.creationMetadata.write(oprot) + oprot.writeFieldEnd() + if self.catName is not None: + oprot.writeFieldBegin('catName', TType.STRING, 18) + oprot.writeString(self.catName) + oprot.writeFieldEnd() + if self.ownerType is not None: + oprot.writeFieldBegin('ownerType', TType.I32, 19) + oprot.writeI32(self.ownerType) + oprot.writeFieldEnd() + if self.writeId is not None: + oprot.writeFieldBegin('writeId', TType.I64, 20) + oprot.writeI64(self.writeId) + oprot.writeFieldEnd() + if self.isStatsCompliant is not None: + oprot.writeFieldBegin('isStatsCompliant', TType.BOOL, 21) + oprot.writeBool(self.isStatsCompliant) + oprot.writeFieldEnd() + if self.colStats is not None: + oprot.writeFieldBegin('colStats', TType.STRUCT, 22) + self.colStats.write(oprot) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.daysSinceEpoch is None: - raise TProtocol.TProtocolException(message='Required field daysSinceEpoch is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.daysSinceEpoch) + value = (value * 31) ^ hash(self.id) + value = (value * 31) ^ hash(self.tableName) + value = (value * 31) ^ hash(self.dbName) + value = (value * 31) ^ hash(self.owner) + value = (value * 31) ^ hash(self.createTime) + value = (value * 31) ^ hash(self.lastAccessTime) + value = (value * 31) ^ hash(self.retention) + value = (value * 31) ^ hash(self.sd) + value = (value * 31) ^ hash(self.partitionKeys) + value = (value * 31) ^ hash(self.parameters) + value = (value * 31) ^ hash(self.viewOriginalText) + value = (value * 31) ^ hash(self.viewExpandedText) + value = (value * 31) ^ hash(self.tableType) + value = (value * 31) ^ hash(self.privileges) + value = (value * 31) ^ hash(self.temporary) + value = (value * 31) ^ hash(self.rewriteEnabled) + value = (value * 31) ^ hash(self.creationMetadata) + value = (value * 31) ^ hash(self.catName) + value = (value * 31) ^ hash(self.ownerType) + value = (value * 31) ^ hash(self.writeId) + value = (value * 31) ^ hash(self.isStatsCompliant) + value = (value * 31) ^ hash(self.colStats) return value def __repr__(self): @@ -6832,31 +6746,52 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class DateColumnStatsData: +class Partition: """ Attributes: - - lowValue - - highValue - - numNulls - - numDVs - - bitVectors + - values + - dbName + - tableName + - createTime + - lastAccessTime + - sd + - parameters + - privileges + - catName + - writeId + - isStatsCompliant + - colStats """ thrift_spec = ( None, # 0 - (1, TType.STRUCT, 'lowValue', (Date, Date.thrift_spec), None, ), # 1 - (2, TType.STRUCT, 'highValue', (Date, Date.thrift_spec), None, ), # 2 - (3, TType.I64, 'numNulls', None, None, ), # 3 - (4, TType.I64, 'numDVs', None, None, ), # 4 - (5, TType.STRING, 'bitVectors', None, None, ), # 5 + (1, TType.LIST, 'values', (TType.STRING,None), None, ), # 1 + (2, TType.STRING, 'dbName', None, None, ), # 2 + (3, TType.STRING, 'tableName', None, None, ), # 3 + (4, TType.I32, 'createTime', None, None, ), # 4 + (5, TType.I32, 'lastAccessTime', None, None, ), # 5 + (6, TType.STRUCT, 'sd', (StorageDescriptor, StorageDescriptor.thrift_spec), None, ), # 6 + (7, TType.MAP, 'parameters', (TType.STRING,None,TType.STRING,None), None, ), # 7 + (8, TType.STRUCT, 'privileges', (PrincipalPrivilegeSet, PrincipalPrivilegeSet.thrift_spec), None, ), # 8 + (9, TType.STRING, 'catName', None, None, ), # 9 + (10, TType.I64, 'writeId', None, -1, ), # 10 + (11, TType.BOOL, 'isStatsCompliant', None, None, ), # 11 + (12, TType.STRUCT, 'colStats', (ColumnStatistics, ColumnStatistics.thrift_spec), None, ), # 12 ) - def __init__(self, lowValue=None, highValue=None, numNulls=None, numDVs=None, bitVectors=None,): - self.lowValue = lowValue - self.highValue = highValue - self.numNulls = numNulls - self.numDVs = numDVs - self.bitVectors = bitVectors + def __init__(self, values=None, dbName=None, tableName=None, createTime=None, lastAccessTime=None, sd=None, parameters=None, privileges=None, catName=None, writeId=thrift_spec[10][4], isStatsCompliant=None, colStats=None,): + self.values = values + self.dbName = dbName + self.tableName = tableName + self.createTime = createTime + self.lastAccessTime = lastAccessTime + self.sd = sd + self.parameters = parameters + self.privileges = privileges + self.catName = catName + self.writeId = writeId + self.isStatsCompliant = isStatsCompliant + self.colStats = colStats 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: @@ -6868,30 +6803,77 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.STRUCT: - self.lowValue = Date() - self.lowValue.read(iprot) + if ftype == TType.LIST: + self.values = [] + (_etype215, _size212) = iprot.readListBegin() + for _i216 in xrange(_size212): + _elem217 = iprot.readString() + self.values.append(_elem217) + iprot.readListEnd() else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.STRUCT: - self.highValue = Date() - self.highValue.read(iprot) + if ftype == TType.STRING: + self.dbName = iprot.readString() else: iprot.skip(ftype) elif fid == 3: - if ftype == TType.I64: - self.numNulls = iprot.readI64() + if ftype == TType.STRING: + self.tableName = iprot.readString() else: iprot.skip(ftype) elif fid == 4: - if ftype == TType.I64: - self.numDVs = iprot.readI64() + if ftype == TType.I32: + self.createTime = iprot.readI32() else: iprot.skip(ftype) elif fid == 5: + if ftype == TType.I32: + self.lastAccessTime = iprot.readI32() + else: + iprot.skip(ftype) + elif fid == 6: + if ftype == TType.STRUCT: + self.sd = StorageDescriptor() + self.sd.read(iprot) + else: + iprot.skip(ftype) + elif fid == 7: + if ftype == TType.MAP: + self.parameters = {} + (_ktype219, _vtype220, _size218 ) = iprot.readMapBegin() + for _i222 in xrange(_size218): + _key223 = iprot.readString() + _val224 = iprot.readString() + self.parameters[_key223] = _val224 + iprot.readMapEnd() + else: + iprot.skip(ftype) + elif fid == 8: + if ftype == TType.STRUCT: + self.privileges = PrincipalPrivilegeSet() + self.privileges.read(iprot) + else: + iprot.skip(ftype) + elif fid == 9: if ftype == TType.STRING: - self.bitVectors = iprot.readString() + self.catName = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 10: + if ftype == TType.I64: + self.writeId = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 11: + if ftype == TType.BOOL: + self.isStatsCompliant = iprot.readBool() + else: + iprot.skip(ftype) + elif fid == 12: + if ftype == TType.STRUCT: + self.colStats = ColumnStatistics() + self.colStats.read(iprot) else: iprot.skip(ftype) else: @@ -6903,45 +6885,83 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('DateColumnStatsData') - if self.lowValue is not None: - oprot.writeFieldBegin('lowValue', TType.STRUCT, 1) - self.lowValue.write(oprot) + oprot.writeStructBegin('Partition') + if self.values is not None: + oprot.writeFieldBegin('values', TType.LIST, 1) + oprot.writeListBegin(TType.STRING, len(self.values)) + for iter225 in self.values: + oprot.writeString(iter225) + oprot.writeListEnd() + oprot.writeFieldEnd() + if self.dbName is not None: + oprot.writeFieldBegin('dbName', TType.STRING, 2) + oprot.writeString(self.dbName) + oprot.writeFieldEnd() + if self.tableName is not None: + oprot.writeFieldBegin('tableName', TType.STRING, 3) + oprot.writeString(self.tableName) oprot.writeFieldEnd() - if self.highValue is not None: - oprot.writeFieldBegin('highValue', TType.STRUCT, 2) - self.highValue.write(oprot) + if self.createTime is not None: + oprot.writeFieldBegin('createTime', TType.I32, 4) + oprot.writeI32(self.createTime) oprot.writeFieldEnd() - if self.numNulls is not None: - oprot.writeFieldBegin('numNulls', TType.I64, 3) - oprot.writeI64(self.numNulls) + if self.lastAccessTime is not None: + oprot.writeFieldBegin('lastAccessTime', TType.I32, 5) + oprot.writeI32(self.lastAccessTime) oprot.writeFieldEnd() - if self.numDVs is not None: - oprot.writeFieldBegin('numDVs', TType.I64, 4) - oprot.writeI64(self.numDVs) + if self.sd is not None: + oprot.writeFieldBegin('sd', TType.STRUCT, 6) + self.sd.write(oprot) oprot.writeFieldEnd() - if self.bitVectors is not None: - oprot.writeFieldBegin('bitVectors', TType.STRING, 5) - oprot.writeString(self.bitVectors) + if self.parameters is not None: + oprot.writeFieldBegin('parameters', TType.MAP, 7) + oprot.writeMapBegin(TType.STRING, TType.STRING, len(self.parameters)) + for kiter226,viter227 in self.parameters.items(): + oprot.writeString(kiter226) + oprot.writeString(viter227) + oprot.writeMapEnd() + oprot.writeFieldEnd() + if self.privileges is not None: + oprot.writeFieldBegin('privileges', TType.STRUCT, 8) + self.privileges.write(oprot) + oprot.writeFieldEnd() + if self.catName is not None: + oprot.writeFieldBegin('catName', TType.STRING, 9) + oprot.writeString(self.catName) + oprot.writeFieldEnd() + if self.writeId is not None: + oprot.writeFieldBegin('writeId', TType.I64, 10) + oprot.writeI64(self.writeId) + oprot.writeFieldEnd() + if self.isStatsCompliant is not None: + oprot.writeFieldBegin('isStatsCompliant', TType.BOOL, 11) + oprot.writeBool(self.isStatsCompliant) + oprot.writeFieldEnd() + if self.colStats is not None: + oprot.writeFieldBegin('colStats', TType.STRUCT, 12) + self.colStats.write(oprot) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.numNulls is None: - raise TProtocol.TProtocolException(message='Required field numNulls is unset!') - if self.numDVs is None: - raise TProtocol.TProtocolException(message='Required field numDVs is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.lowValue) - value = (value * 31) ^ hash(self.highValue) - value = (value * 31) ^ hash(self.numNulls) - value = (value * 31) ^ hash(self.numDVs) - value = (value * 31) ^ hash(self.bitVectors) + value = (value * 31) ^ hash(self.values) + value = (value * 31) ^ hash(self.dbName) + value = (value * 31) ^ hash(self.tableName) + value = (value * 31) ^ hash(self.createTime) + value = (value * 31) ^ hash(self.lastAccessTime) + value = (value * 31) ^ hash(self.sd) + value = (value * 31) ^ hash(self.parameters) + value = (value * 31) ^ hash(self.privileges) + value = (value * 31) ^ hash(self.catName) + value = (value * 31) ^ hash(self.writeId) + value = (value * 31) ^ hash(self.isStatsCompliant) + value = (value * 31) ^ hash(self.colStats) return value def __repr__(self): @@ -6955,37 +6975,34 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class ColumnStatisticsData: +class PartitionWithoutSD: """ Attributes: - - booleanStats - - longStats - - doubleStats - - stringStats - - binaryStats - - decimalStats - - dateStats + - values + - createTime + - lastAccessTime + - relativePath + - parameters + - privileges """ thrift_spec = ( None, # 0 - (1, TType.STRUCT, 'booleanStats', (BooleanColumnStatsData, BooleanColumnStatsData.thrift_spec), None, ), # 1 - (2, TType.STRUCT, 'longStats', (LongColumnStatsData, LongColumnStatsData.thrift_spec), None, ), # 2 - (3, TType.STRUCT, 'doubleStats', (DoubleColumnStatsData, DoubleColumnStatsData.thrift_spec), None, ), # 3 - (4, TType.STRUCT, 'stringStats', (StringColumnStatsData, StringColumnStatsData.thrift_spec), None, ), # 4 - (5, TType.STRUCT, 'binaryStats', (BinaryColumnStatsData, BinaryColumnStatsData.thrift_spec), None, ), # 5 - (6, TType.STRUCT, 'decimalStats', (DecimalColumnStatsData, DecimalColumnStatsData.thrift_spec), None, ), # 6 - (7, TType.STRUCT, 'dateStats', (DateColumnStatsData, DateColumnStatsData.thrift_spec), None, ), # 7 + (1, TType.LIST, 'values', (TType.STRING,None), None, ), # 1 + (2, TType.I32, 'createTime', None, None, ), # 2 + (3, TType.I32, 'lastAccessTime', None, None, ), # 3 + (4, TType.STRING, 'relativePath', None, None, ), # 4 + (5, TType.MAP, 'parameters', (TType.STRING,None,TType.STRING,None), None, ), # 5 + (6, TType.STRUCT, 'privileges', (PrincipalPrivilegeSet, PrincipalPrivilegeSet.thrift_spec), None, ), # 6 ) - def __init__(self, booleanStats=None, longStats=None, doubleStats=None, stringStats=None, binaryStats=None, decimalStats=None, dateStats=None,): - self.booleanStats = booleanStats - self.longStats = longStats - self.doubleStats = doubleStats - self.stringStats = stringStats - self.binaryStats = binaryStats - self.decimalStats = decimalStats - self.dateStats = dateStats + def __init__(self, values=None, createTime=None, lastAccessTime=None, relativePath=None, parameters=None, privileges=None,): + self.values = values + self.createTime = createTime + self.lastAccessTime = lastAccessTime + self.relativePath = relativePath + self.parameters = parameters + self.privileges = privileges 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: @@ -6997,45 +7014,45 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.STRUCT: - self.booleanStats = BooleanColumnStatsData() - self.booleanStats.read(iprot) + if ftype == TType.LIST: + self.values = [] + (_etype231, _size228) = iprot.readListBegin() + for _i232 in xrange(_size228): + _elem233 = iprot.readString() + self.values.append(_elem233) + iprot.readListEnd() else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.STRUCT: - self.longStats = LongColumnStatsData() - self.longStats.read(iprot) + if ftype == TType.I32: + self.createTime = iprot.readI32() else: iprot.skip(ftype) elif fid == 3: - if ftype == TType.STRUCT: - self.doubleStats = DoubleColumnStatsData() - self.doubleStats.read(iprot) + if ftype == TType.I32: + self.lastAccessTime = iprot.readI32() else: iprot.skip(ftype) elif fid == 4: - if ftype == TType.STRUCT: - self.stringStats = StringColumnStatsData() - self.stringStats.read(iprot) + if ftype == TType.STRING: + self.relativePath = iprot.readString() else: iprot.skip(ftype) elif fid == 5: - if ftype == TType.STRUCT: - self.binaryStats = BinaryColumnStatsData() - self.binaryStats.read(iprot) + if ftype == TType.MAP: + self.parameters = {} + (_ktype235, _vtype236, _size234 ) = iprot.readMapBegin() + for _i238 in xrange(_size234): + _key239 = iprot.readString() + _val240 = iprot.readString() + self.parameters[_key239] = _val240 + iprot.readMapEnd() else: iprot.skip(ftype) elif fid == 6: if ftype == TType.STRUCT: - self.decimalStats = DecimalColumnStatsData() - self.decimalStats.read(iprot) - else: - iprot.skip(ftype) - elif fid == 7: - if ftype == TType.STRUCT: - self.dateStats = DateColumnStatsData() - self.dateStats.read(iprot) + self.privileges = PrincipalPrivilegeSet() + self.privileges.read(iprot) else: iprot.skip(ftype) else: @@ -7047,34 +7064,37 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('ColumnStatisticsData') - if self.booleanStats is not None: - oprot.writeFieldBegin('booleanStats', TType.STRUCT, 1) - self.booleanStats.write(oprot) - oprot.writeFieldEnd() - if self.longStats is not None: - oprot.writeFieldBegin('longStats', TType.STRUCT, 2) - self.longStats.write(oprot) + oprot.writeStructBegin('PartitionWithoutSD') + if self.values is not None: + oprot.writeFieldBegin('values', TType.LIST, 1) + oprot.writeListBegin(TType.STRING, len(self.values)) + for iter241 in self.values: + oprot.writeString(iter241) + oprot.writeListEnd() oprot.writeFieldEnd() - if self.doubleStats is not None: - oprot.writeFieldBegin('doubleStats', TType.STRUCT, 3) - self.doubleStats.write(oprot) + if self.createTime is not None: + oprot.writeFieldBegin('createTime', TType.I32, 2) + oprot.writeI32(self.createTime) oprot.writeFieldEnd() - if self.stringStats is not None: - oprot.writeFieldBegin('stringStats', TType.STRUCT, 4) - self.stringStats.write(oprot) + if self.lastAccessTime is not None: + oprot.writeFieldBegin('lastAccessTime', TType.I32, 3) + oprot.writeI32(self.lastAccessTime) oprot.writeFieldEnd() - if self.binaryStats is not None: - oprot.writeFieldBegin('binaryStats', TType.STRUCT, 5) - self.binaryStats.write(oprot) + if self.relativePath is not None: + oprot.writeFieldBegin('relativePath', TType.STRING, 4) + oprot.writeString(self.relativePath) oprot.writeFieldEnd() - if self.decimalStats is not None: - oprot.writeFieldBegin('decimalStats', TType.STRUCT, 6) - self.decimalStats.write(oprot) + if self.parameters is not None: + oprot.writeFieldBegin('parameters', TType.MAP, 5) + oprot.writeMapBegin(TType.STRING, TType.STRING, len(self.parameters)) + for kiter242,viter243 in self.parameters.items(): + oprot.writeString(kiter242) + oprot.writeString(viter243) + oprot.writeMapEnd() oprot.writeFieldEnd() - if self.dateStats is not None: - oprot.writeFieldBegin('dateStats', TType.STRUCT, 7) - self.dateStats.write(oprot) + if self.privileges is not None: + oprot.writeFieldBegin('privileges', TType.STRUCT, 6) + self.privileges.write(oprot) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() @@ -7085,13 +7105,12 @@ def validate(self): def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.booleanStats) - value = (value * 31) ^ hash(self.longStats) - value = (value * 31) ^ hash(self.doubleStats) - value = (value * 31) ^ hash(self.stringStats) - value = (value * 31) ^ hash(self.binaryStats) - value = (value * 31) ^ hash(self.decimalStats) - value = (value * 31) ^ hash(self.dateStats) + value = (value * 31) ^ hash(self.values) + value = (value * 31) ^ hash(self.createTime) + value = (value * 31) ^ hash(self.lastAccessTime) + value = (value * 31) ^ hash(self.relativePath) + value = (value * 31) ^ hash(self.parameters) + value = (value * 31) ^ hash(self.privileges) return value def __repr__(self): @@ -7105,25 +7124,22 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class ColumnStatisticsObj: +class PartitionSpecWithSharedSD: """ Attributes: - - colName - - colType - - statsData + - partitions + - sd """ thrift_spec = ( None, # 0 - (1, TType.STRING, 'colName', None, None, ), # 1 - (2, TType.STRING, 'colType', None, None, ), # 2 - (3, TType.STRUCT, 'statsData', (ColumnStatisticsData, ColumnStatisticsData.thrift_spec), None, ), # 3 + (1, TType.LIST, 'partitions', (TType.STRUCT,(PartitionWithoutSD, PartitionWithoutSD.thrift_spec)), None, ), # 1 + (2, TType.STRUCT, 'sd', (StorageDescriptor, StorageDescriptor.thrift_spec), None, ), # 2 ) - def __init__(self, colName=None, colType=None, statsData=None,): - self.colName = colName - self.colType = colType - self.statsData = statsData + def __init__(self, partitions=None, sd=None,): + self.partitions = partitions + self.sd = sd 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: @@ -7135,61 +7151,54 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.STRING: - self.colName = iprot.readString() + if ftype == TType.LIST: + self.partitions = [] + (_etype247, _size244) = iprot.readListBegin() + for _i248 in xrange(_size244): + _elem249 = PartitionWithoutSD() + _elem249.read(iprot) + self.partitions.append(_elem249) + iprot.readListEnd() else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.STRING: - self.colType = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 3: if ftype == TType.STRUCT: - self.statsData = ColumnStatisticsData() - self.statsData.read(iprot) + self.sd = StorageDescriptor() + self.sd.read(iprot) else: iprot.skip(ftype) else: iprot.skip(ftype) - iprot.readFieldEnd() - iprot.readStructEnd() - - def write(self, oprot): - if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: - oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) - return - oprot.writeStructBegin('ColumnStatisticsObj') - if self.colName is not None: - oprot.writeFieldBegin('colName', TType.STRING, 1) - oprot.writeString(self.colName) - oprot.writeFieldEnd() - if self.colType is not None: - oprot.writeFieldBegin('colType', TType.STRING, 2) - oprot.writeString(self.colType) + iprot.readFieldEnd() + iprot.readStructEnd() + + def write(self, oprot): + if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: + oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) + return + oprot.writeStructBegin('PartitionSpecWithSharedSD') + if self.partitions is not None: + oprot.writeFieldBegin('partitions', TType.LIST, 1) + oprot.writeListBegin(TType.STRUCT, len(self.partitions)) + for iter250 in self.partitions: + iter250.write(oprot) + oprot.writeListEnd() oprot.writeFieldEnd() - if self.statsData is not None: - oprot.writeFieldBegin('statsData', TType.STRUCT, 3) - self.statsData.write(oprot) + if self.sd is not None: + oprot.writeFieldBegin('sd', TType.STRUCT, 2) + self.sd.write(oprot) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.colName is None: - raise TProtocol.TProtocolException(message='Required field colName is unset!') - if self.colType is None: - raise TProtocol.TProtocolException(message='Required field colType is unset!') - if self.statsData is None: - raise TProtocol.TProtocolException(message='Required field statsData is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.colName) - value = (value * 31) ^ hash(self.colType) - value = (value * 31) ^ hash(self.statsData) + value = (value * 31) ^ hash(self.partitions) + value = (value * 31) ^ hash(self.sd) return value def __repr__(self): @@ -7203,34 +7212,19 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class ColumnStatisticsDesc: +class PartitionListComposingSpec: """ Attributes: - - isTblLevel - - dbName - - tableName - - partName - - lastAnalyzed - - catName + - partitions """ thrift_spec = ( None, # 0 - (1, TType.BOOL, 'isTblLevel', None, None, ), # 1 - (2, TType.STRING, 'dbName', None, None, ), # 2 - (3, TType.STRING, 'tableName', None, None, ), # 3 - (4, TType.STRING, 'partName', None, None, ), # 4 - (5, TType.I64, 'lastAnalyzed', None, None, ), # 5 - (6, TType.STRING, 'catName', None, None, ), # 6 + (1, TType.LIST, 'partitions', (TType.STRUCT,(Partition, Partition.thrift_spec)), None, ), # 1 ) - def __init__(self, isTblLevel=None, dbName=None, tableName=None, partName=None, lastAnalyzed=None, catName=None,): - self.isTblLevel = isTblLevel - self.dbName = dbName - self.tableName = tableName - self.partName = partName - self.lastAnalyzed = lastAnalyzed - self.catName = catName + def __init__(self, partitions=None,): + self.partitions = partitions 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: @@ -7242,33 +7236,14 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.BOOL: - self.isTblLevel = iprot.readBool() - else: - iprot.skip(ftype) - elif fid == 2: - if ftype == TType.STRING: - self.dbName = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 3: - if ftype == TType.STRING: - self.tableName = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 4: - if ftype == TType.STRING: - self.partName = iprot.readString() - else: - iprot.skip(ftype) - elif fid == 5: - if ftype == TType.I64: - self.lastAnalyzed = iprot.readI64() - else: - iprot.skip(ftype) - elif fid == 6: - if ftype == TType.STRING: - self.catName = iprot.readString() + if ftype == TType.LIST: + self.partitions = [] + (_etype254, _size251) = iprot.readListBegin() + for _i255 in xrange(_size251): + _elem256 = Partition() + _elem256.read(iprot) + self.partitions.append(_elem256) + iprot.readListEnd() else: iprot.skip(ftype) else: @@ -7280,52 +7255,24 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('ColumnStatisticsDesc') - if self.isTblLevel is not None: - oprot.writeFieldBegin('isTblLevel', TType.BOOL, 1) - oprot.writeBool(self.isTblLevel) - oprot.writeFieldEnd() - if self.dbName is not None: - oprot.writeFieldBegin('dbName', TType.STRING, 2) - oprot.writeString(self.dbName) - oprot.writeFieldEnd() - if self.tableName is not None: - oprot.writeFieldBegin('tableName', TType.STRING, 3) - oprot.writeString(self.tableName) - oprot.writeFieldEnd() - if self.partName is not None: - oprot.writeFieldBegin('partName', TType.STRING, 4) - oprot.writeString(self.partName) - oprot.writeFieldEnd() - if self.lastAnalyzed is not None: - oprot.writeFieldBegin('lastAnalyzed', TType.I64, 5) - oprot.writeI64(self.lastAnalyzed) - oprot.writeFieldEnd() - if self.catName is not None: - oprot.writeFieldBegin('catName', TType.STRING, 6) - oprot.writeString(self.catName) + oprot.writeStructBegin('PartitionListComposingSpec') + if self.partitions is not None: + oprot.writeFieldBegin('partitions', TType.LIST, 1) + oprot.writeListBegin(TType.STRUCT, len(self.partitions)) + for iter257 in self.partitions: + iter257.write(oprot) + oprot.writeListEnd() oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.isTblLevel is None: - raise TProtocol.TProtocolException(message='Required field isTblLevel is unset!') - if self.dbName is None: - raise TProtocol.TProtocolException(message='Required field dbName is unset!') - if self.tableName is None: - raise TProtocol.TProtocolException(message='Required field tableName is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.isTblLevel) - value = (value * 31) ^ hash(self.dbName) - value = (value * 31) ^ hash(self.tableName) - value = (value * 31) ^ hash(self.partName) - value = (value * 31) ^ hash(self.lastAnalyzed) - value = (value * 31) ^ hash(self.catName) + value = (value * 31) ^ hash(self.partitions) return value def __repr__(self): @@ -7339,24 +7286,39 @@ def __eq__(self, other): def __ne__(self, other): return not (self == other) -class ColumnStatistics: +class PartitionSpec: """ Attributes: - - statsDesc - - statsObj + - dbName + - tableName + - rootPath + - sharedSDPartitionSpec + - partitionList + - catName + - writeId - isStatsCompliant """ thrift_spec = ( None, # 0 - (1, TType.STRUCT, 'statsDesc', (ColumnStatisticsDesc, ColumnStatisticsDesc.thrift_spec), None, ), # 1 - (2, TType.LIST, 'statsObj', (TType.STRUCT,(ColumnStatisticsObj, ColumnStatisticsObj.thrift_spec)), None, ), # 2 - (3, TType.BOOL, 'isStatsCompliant', None, None, ), # 3 + (1, TType.STRING, 'dbName', None, None, ), # 1 + (2, TType.STRING, 'tableName', None, None, ), # 2 + (3, TType.STRING, 'rootPath', None, None, ), # 3 + (4, TType.STRUCT, 'sharedSDPartitionSpec', (PartitionSpecWithSharedSD, PartitionSpecWithSharedSD.thrift_spec), None, ), # 4 + (5, TType.STRUCT, 'partitionList', (PartitionListComposingSpec, PartitionListComposingSpec.thrift_spec), None, ), # 5 + (6, TType.STRING, 'catName', None, None, ), # 6 + (7, TType.I64, 'writeId', None, -1, ), # 7 + (8, TType.BOOL, 'isStatsCompliant', None, None, ), # 8 ) - def __init__(self, statsDesc=None, statsObj=None, isStatsCompliant=None,): - self.statsDesc = statsDesc - self.statsObj = statsObj + def __init__(self, dbName=None, tableName=None, rootPath=None, sharedSDPartitionSpec=None, partitionList=None, catName=None, writeId=thrift_spec[7][4], isStatsCompliant=None,): + self.dbName = dbName + self.tableName = tableName + self.rootPath = rootPath + self.sharedSDPartitionSpec = sharedSDPartitionSpec + self.partitionList = partitionList + self.catName = catName + self.writeId = writeId self.isStatsCompliant = isStatsCompliant def read(self, iprot): @@ -7369,23 +7331,43 @@ def read(self, iprot): if ftype == TType.STOP: break if fid == 1: - if ftype == TType.STRUCT: - self.statsDesc = ColumnStatisticsDesc() - self.statsDesc.read(iprot) + if ftype == TType.STRING: + self.dbName = iprot.readString() else: iprot.skip(ftype) elif fid == 2: - if ftype == TType.LIST: - self.statsObj = [] - (_etype254, _size251) = iprot.readListBegin() - for _i255 in xrange(_size251): - _elem256 = ColumnStatisticsObj() - _elem256.read(iprot) - self.statsObj.append(_elem256) - iprot.readListEnd() + if ftype == TType.STRING: + self.tableName = iprot.readString() else: iprot.skip(ftype) elif fid == 3: + if ftype == TType.STRING: + self.rootPath = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 4: + if ftype == TType.STRUCT: + self.sharedSDPartitionSpec = PartitionSpecWithSharedSD() + self.sharedSDPartitionSpec.read(iprot) + else: + iprot.skip(ftype) + elif fid == 5: + if ftype == TType.STRUCT: + self.partitionList = PartitionListComposingSpec() + self.partitionList.read(iprot) + else: + iprot.skip(ftype) + elif fid == 6: + if ftype == TType.STRING: + self.catName = iprot.readString() + else: + iprot.skip(ftype) + elif fid == 7: + if ftype == TType.I64: + self.writeId = iprot.readI64() + else: + iprot.skip(ftype) + elif fid == 8: if ftype == TType.BOOL: self.isStatsCompliant = iprot.readBool() else: @@ -7399,37 +7381,55 @@ def write(self, oprot): if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None: oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec))) return - oprot.writeStructBegin('ColumnStatistics') - if self.statsDesc is not None: - oprot.writeFieldBegin('statsDesc', TType.STRUCT, 1) - self.statsDesc.write(oprot) + oprot.writeStructBegin('PartitionSpec') + if self.dbName is not None: + oprot.writeFieldBegin('dbName', TType.STRING, 1) + oprot.writeString(self.dbName) oprot.writeFieldEnd() - if self.statsObj is not None: - oprot.writeFieldBegin('statsObj', TType.LIST, 2) - oprot.writeListBegin(TType.STRUCT, len(self.statsObj)) - for iter257 in self.statsObj: - iter257.write(oprot) - oprot.writeListEnd() + if self.tableName is not None: + oprot.writeFieldBegin('tableName', TType.STRING, 2) + oprot.writeString(self.tableName) + oprot.writeFieldEnd() + if self.rootPath is not None: + oprot.writeFieldBegin('rootPath', TType.STRING, 3) + oprot.writeString(self.rootPath) + oprot.writeFieldEnd() + if self.sharedSDPartitionSpec is not None: + oprot.writeFieldBegin('sharedSDPartitionSpec', TType.STRUCT, 4) + self.sharedSDPartitionSpec.write(oprot) + oprot.writeFieldEnd() + if self.partitionList is not None: + oprot.writeFieldBegin('partitionList', TType.STRUCT, 5) + self.partitionList.write(oprot) + oprot.writeFieldEnd() + if self.catName is not None: + oprot.writeFieldBegin('catName', TType.STRING, 6) + oprot.writeString(self.catName) + oprot.writeFieldEnd() + if self.writeId is not None: + oprot.writeFieldBegin('writeId', TType.I64, 7) + oprot.writeI64(self.writeId) oprot.writeFieldEnd() if self.isStatsCompliant is not None: - oprot.writeFieldBegin('isStatsCompliant', TType.BOOL, 3) + oprot.writeFieldBegin('isStatsCompliant', TType.BOOL, 8) oprot.writeBool(self.isStatsCompliant) oprot.writeFieldEnd() oprot.writeFieldStop() oprot.writeStructEnd() def validate(self): - if self.statsDesc is None: - raise TProtocol.TProtocolException(message='Required field statsDesc is unset!') - if self.statsObj is None: - raise TProtocol.TProtocolException(message='Required field statsObj is unset!') return def __hash__(self): value = 17 - value = (value * 31) ^ hash(self.statsDesc) - value = (value * 31) ^ hash(self.statsObj) + value = (value * 31) ^ hash(self.dbName) + value = (value * 31) ^ hash(self.tableName) + value = (value * 31) ^ hash(self.rootPath) + value = (value * 31) ^ hash(self.sharedSDPartitionSpec) + value = (value * 31) ^ hash(self.partitionList) + value = (value * 31) ^ hash(self.catName) + value = (value * 31) ^ hash(self.writeId) value = (value * 31) ^ hash(self.isStatsCompliant) return value diff --git a/standalone-metastore/metastore-common/src/gen/thrift/gen-rb/hive_metastore_types.rb b/standalone-metastore/metastore-common/src/gen/thrift/gen-rb/hive_metastore_types.rb index 8e4b990028ee29cc40cb4ece1f36c15a1c020a13..9ac27ddab3027741f6e1c8f1e39e865501267ff8 100644 --- a/standalone-metastore/metastore-common/src/gen/thrift/gen-rb/hive_metastore_types.rb +++ b/standalone-metastore/metastore-common/src/gen/thrift/gen-rb/hive_metastore_types.rb @@ -1134,195 +1134,6 @@ class CreationMetadata ::Thrift::Struct.generate_accessors self end -class Table - include ::Thrift::Struct, ::Thrift::Struct_Union - ID = 1 - TABLENAME = 2 - DBNAME = 3 - OWNER = 4 - CREATETIME = 5 - LASTACCESSTIME = 6 - RETENTION = 7 - SD = 8 - PARTITIONKEYS = 9 - PARAMETERS = 10 - VIEWORIGINALTEXT = 11 - VIEWEXPANDEDTEXT = 12 - TABLETYPE = 13 - PRIVILEGES = 14 - TEMPORARY = 15 - REWRITEENABLED = 16 - CREATIONMETADATA = 17 - CATNAME = 18 - OWNERTYPE = 19 - WRITEID = 20 - ISSTATSCOMPLIANT = 21 - COLSTATS = 22 - - FIELDS = { - ID => {:type => ::Thrift::Types::I64, :name => 'id', :optional => true}, - TABLENAME => {:type => ::Thrift::Types::STRING, :name => 'tableName'}, - DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbName'}, - OWNER => {:type => ::Thrift::Types::STRING, :name => 'owner'}, - CREATETIME => {:type => ::Thrift::Types::I32, :name => 'createTime'}, - LASTACCESSTIME => {:type => ::Thrift::Types::I32, :name => 'lastAccessTime'}, - RETENTION => {:type => ::Thrift::Types::I32, :name => 'retention'}, - SD => {:type => ::Thrift::Types::STRUCT, :name => 'sd', :class => ::StorageDescriptor}, - PARTITIONKEYS => {:type => ::Thrift::Types::LIST, :name => 'partitionKeys', :element => {:type => ::Thrift::Types::STRUCT, :class => ::FieldSchema}}, - PARAMETERS => {:type => ::Thrift::Types::MAP, :name => 'parameters', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}}, - VIEWORIGINALTEXT => {:type => ::Thrift::Types::STRING, :name => 'viewOriginalText'}, - VIEWEXPANDEDTEXT => {:type => ::Thrift::Types::STRING, :name => 'viewExpandedText'}, - TABLETYPE => {:type => ::Thrift::Types::STRING, :name => 'tableType'}, - PRIVILEGES => {:type => ::Thrift::Types::STRUCT, :name => 'privileges', :class => ::PrincipalPrivilegeSet, :optional => true}, - TEMPORARY => {:type => ::Thrift::Types::BOOL, :name => 'temporary', :default => false, :optional => true}, - REWRITEENABLED => {:type => ::Thrift::Types::BOOL, :name => 'rewriteEnabled', :optional => true}, - CREATIONMETADATA => {:type => ::Thrift::Types::STRUCT, :name => 'creationMetadata', :class => ::CreationMetadata, :optional => true}, - CATNAME => {:type => ::Thrift::Types::STRING, :name => 'catName', :optional => true}, - OWNERTYPE => {:type => ::Thrift::Types::I32, :name => 'ownerType', :default => 1, :optional => true, :enum_class => ::PrincipalType}, - WRITEID => {:type => ::Thrift::Types::I64, :name => 'writeId', :default => -1, :optional => true}, - ISSTATSCOMPLIANT => {:type => ::Thrift::Types::BOOL, :name => 'isStatsCompliant', :optional => true}, - COLSTATS => {:type => ::Thrift::Types::STRUCT, :name => 'colStats', :class => ::ColumnStatistics, :optional => true} - } - - def struct_fields; FIELDS; end - - def validate - unless @ownerType.nil? || ::PrincipalType::VALID_VALUES.include?(@ownerType) - raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field ownerType!') - end - end - - ::Thrift::Struct.generate_accessors self -end - -class Partition - include ::Thrift::Struct, ::Thrift::Struct_Union - VALUES = 1 - DBNAME = 2 - TABLENAME = 3 - CREATETIME = 4 - LASTACCESSTIME = 5 - SD = 6 - PARAMETERS = 7 - PRIVILEGES = 8 - CATNAME = 9 - WRITEID = 10 - ISSTATSCOMPLIANT = 11 - COLSTATS = 12 - - FIELDS = { - VALUES => {:type => ::Thrift::Types::LIST, :name => 'values', :element => {:type => ::Thrift::Types::STRING}}, - DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbName'}, - TABLENAME => {:type => ::Thrift::Types::STRING, :name => 'tableName'}, - CREATETIME => {:type => ::Thrift::Types::I32, :name => 'createTime'}, - LASTACCESSTIME => {:type => ::Thrift::Types::I32, :name => 'lastAccessTime'}, - SD => {:type => ::Thrift::Types::STRUCT, :name => 'sd', :class => ::StorageDescriptor}, - PARAMETERS => {:type => ::Thrift::Types::MAP, :name => 'parameters', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}}, - PRIVILEGES => {:type => ::Thrift::Types::STRUCT, :name => 'privileges', :class => ::PrincipalPrivilegeSet, :optional => true}, - CATNAME => {:type => ::Thrift::Types::STRING, :name => 'catName', :optional => true}, - WRITEID => {:type => ::Thrift::Types::I64, :name => 'writeId', :default => -1, :optional => true}, - ISSTATSCOMPLIANT => {:type => ::Thrift::Types::BOOL, :name => 'isStatsCompliant', :optional => true}, - COLSTATS => {:type => ::Thrift::Types::STRUCT, :name => 'colStats', :class => ::ColumnStatistics, :optional => true} - } - - def struct_fields; FIELDS; end - - def validate - end - - ::Thrift::Struct.generate_accessors self -end - -class PartitionWithoutSD - include ::Thrift::Struct, ::Thrift::Struct_Union - VALUES = 1 - CREATETIME = 2 - LASTACCESSTIME = 3 - RELATIVEPATH = 4 - PARAMETERS = 5 - PRIVILEGES = 6 - - FIELDS = { - VALUES => {:type => ::Thrift::Types::LIST, :name => 'values', :element => {:type => ::Thrift::Types::STRING}}, - CREATETIME => {:type => ::Thrift::Types::I32, :name => 'createTime'}, - LASTACCESSTIME => {:type => ::Thrift::Types::I32, :name => 'lastAccessTime'}, - RELATIVEPATH => {:type => ::Thrift::Types::STRING, :name => 'relativePath'}, - PARAMETERS => {:type => ::Thrift::Types::MAP, :name => 'parameters', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}}, - PRIVILEGES => {:type => ::Thrift::Types::STRUCT, :name => 'privileges', :class => ::PrincipalPrivilegeSet, :optional => true} - } - - def struct_fields; FIELDS; end - - def validate - end - - ::Thrift::Struct.generate_accessors self -end - -class PartitionSpecWithSharedSD - include ::Thrift::Struct, ::Thrift::Struct_Union - PARTITIONS = 1 - SD = 2 - - FIELDS = { - PARTITIONS => {:type => ::Thrift::Types::LIST, :name => 'partitions', :element => {:type => ::Thrift::Types::STRUCT, :class => ::PartitionWithoutSD}}, - SD => {:type => ::Thrift::Types::STRUCT, :name => 'sd', :class => ::StorageDescriptor} - } - - def struct_fields; FIELDS; end - - def validate - end - - ::Thrift::Struct.generate_accessors self -end - -class PartitionListComposingSpec - include ::Thrift::Struct, ::Thrift::Struct_Union - PARTITIONS = 1 - - FIELDS = { - PARTITIONS => {:type => ::Thrift::Types::LIST, :name => 'partitions', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Partition}} - } - - def struct_fields; FIELDS; end - - def validate - end - - ::Thrift::Struct.generate_accessors self -end - -class PartitionSpec - include ::Thrift::Struct, ::Thrift::Struct_Union - DBNAME = 1 - TABLENAME = 2 - ROOTPATH = 3 - SHAREDSDPARTITIONSPEC = 4 - PARTITIONLIST = 5 - CATNAME = 6 - WRITEID = 7 - ISSTATSCOMPLIANT = 8 - - FIELDS = { - DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbName'}, - TABLENAME => {:type => ::Thrift::Types::STRING, :name => 'tableName'}, - ROOTPATH => {:type => ::Thrift::Types::STRING, :name => 'rootPath'}, - SHAREDSDPARTITIONSPEC => {:type => ::Thrift::Types::STRUCT, :name => 'sharedSDPartitionSpec', :class => ::PartitionSpecWithSharedSD, :optional => true}, - PARTITIONLIST => {:type => ::Thrift::Types::STRUCT, :name => 'partitionList', :class => ::PartitionListComposingSpec, :optional => true}, - CATNAME => {:type => ::Thrift::Types::STRING, :name => 'catName', :optional => true}, - WRITEID => {:type => ::Thrift::Types::I64, :name => 'writeId', :default => -1, :optional => true}, - ISSTATSCOMPLIANT => {:type => ::Thrift::Types::BOOL, :name => 'isStatsCompliant', :optional => true} - } - - def struct_fields; FIELDS; end - - def validate - end - - ::Thrift::Struct.generate_accessors self -end - class BooleanColumnStatsData include ::Thrift::Struct, ::Thrift::Struct_Union NUMTRUES = 1 @@ -1675,6 +1486,195 @@ class ColumnStatistics ::Thrift::Struct.generate_accessors self end +class Table + include ::Thrift::Struct, ::Thrift::Struct_Union + ID = 1 + TABLENAME = 2 + DBNAME = 3 + OWNER = 4 + CREATETIME = 5 + LASTACCESSTIME = 6 + RETENTION = 7 + SD = 8 + PARTITIONKEYS = 9 + PARAMETERS = 10 + VIEWORIGINALTEXT = 11 + VIEWEXPANDEDTEXT = 12 + TABLETYPE = 13 + PRIVILEGES = 14 + TEMPORARY = 15 + REWRITEENABLED = 16 + CREATIONMETADATA = 17 + CATNAME = 18 + OWNERTYPE = 19 + WRITEID = 20 + ISSTATSCOMPLIANT = 21 + COLSTATS = 22 + + FIELDS = { + ID => {:type => ::Thrift::Types::I64, :name => 'id', :optional => true}, + TABLENAME => {:type => ::Thrift::Types::STRING, :name => 'tableName'}, + DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbName'}, + OWNER => {:type => ::Thrift::Types::STRING, :name => 'owner'}, + CREATETIME => {:type => ::Thrift::Types::I32, :name => 'createTime'}, + LASTACCESSTIME => {:type => ::Thrift::Types::I32, :name => 'lastAccessTime'}, + RETENTION => {:type => ::Thrift::Types::I32, :name => 'retention'}, + SD => {:type => ::Thrift::Types::STRUCT, :name => 'sd', :class => ::StorageDescriptor}, + PARTITIONKEYS => {:type => ::Thrift::Types::LIST, :name => 'partitionKeys', :element => {:type => ::Thrift::Types::STRUCT, :class => ::FieldSchema}}, + PARAMETERS => {:type => ::Thrift::Types::MAP, :name => 'parameters', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}}, + VIEWORIGINALTEXT => {:type => ::Thrift::Types::STRING, :name => 'viewOriginalText'}, + VIEWEXPANDEDTEXT => {:type => ::Thrift::Types::STRING, :name => 'viewExpandedText'}, + TABLETYPE => {:type => ::Thrift::Types::STRING, :name => 'tableType'}, + PRIVILEGES => {:type => ::Thrift::Types::STRUCT, :name => 'privileges', :class => ::PrincipalPrivilegeSet, :optional => true}, + TEMPORARY => {:type => ::Thrift::Types::BOOL, :name => 'temporary', :default => false, :optional => true}, + REWRITEENABLED => {:type => ::Thrift::Types::BOOL, :name => 'rewriteEnabled', :optional => true}, + CREATIONMETADATA => {:type => ::Thrift::Types::STRUCT, :name => 'creationMetadata', :class => ::CreationMetadata, :optional => true}, + CATNAME => {:type => ::Thrift::Types::STRING, :name => 'catName', :optional => true}, + OWNERTYPE => {:type => ::Thrift::Types::I32, :name => 'ownerType', :default => 1, :optional => true, :enum_class => ::PrincipalType}, + WRITEID => {:type => ::Thrift::Types::I64, :name => 'writeId', :default => -1, :optional => true}, + ISSTATSCOMPLIANT => {:type => ::Thrift::Types::BOOL, :name => 'isStatsCompliant', :optional => true}, + COLSTATS => {:type => ::Thrift::Types::STRUCT, :name => 'colStats', :class => ::ColumnStatistics, :optional => true} + } + + def struct_fields; FIELDS; end + + def validate + unless @ownerType.nil? || ::PrincipalType::VALID_VALUES.include?(@ownerType) + raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field ownerType!') + end + end + + ::Thrift::Struct.generate_accessors self +end + +class Partition + include ::Thrift::Struct, ::Thrift::Struct_Union + VALUES = 1 + DBNAME = 2 + TABLENAME = 3 + CREATETIME = 4 + LASTACCESSTIME = 5 + SD = 6 + PARAMETERS = 7 + PRIVILEGES = 8 + CATNAME = 9 + WRITEID = 10 + ISSTATSCOMPLIANT = 11 + COLSTATS = 12 + + FIELDS = { + VALUES => {:type => ::Thrift::Types::LIST, :name => 'values', :element => {:type => ::Thrift::Types::STRING}}, + DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbName'}, + TABLENAME => {:type => ::Thrift::Types::STRING, :name => 'tableName'}, + CREATETIME => {:type => ::Thrift::Types::I32, :name => 'createTime'}, + LASTACCESSTIME => {:type => ::Thrift::Types::I32, :name => 'lastAccessTime'}, + SD => {:type => ::Thrift::Types::STRUCT, :name => 'sd', :class => ::StorageDescriptor}, + PARAMETERS => {:type => ::Thrift::Types::MAP, :name => 'parameters', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}}, + PRIVILEGES => {:type => ::Thrift::Types::STRUCT, :name => 'privileges', :class => ::PrincipalPrivilegeSet, :optional => true}, + CATNAME => {:type => ::Thrift::Types::STRING, :name => 'catName', :optional => true}, + WRITEID => {:type => ::Thrift::Types::I64, :name => 'writeId', :default => -1, :optional => true}, + ISSTATSCOMPLIANT => {:type => ::Thrift::Types::BOOL, :name => 'isStatsCompliant', :optional => true}, + COLSTATS => {:type => ::Thrift::Types::STRUCT, :name => 'colStats', :class => ::ColumnStatistics, :optional => true} + } + + def struct_fields; FIELDS; end + + def validate + end + + ::Thrift::Struct.generate_accessors self +end + +class PartitionWithoutSD + include ::Thrift::Struct, ::Thrift::Struct_Union + VALUES = 1 + CREATETIME = 2 + LASTACCESSTIME = 3 + RELATIVEPATH = 4 + PARAMETERS = 5 + PRIVILEGES = 6 + + FIELDS = { + VALUES => {:type => ::Thrift::Types::LIST, :name => 'values', :element => {:type => ::Thrift::Types::STRING}}, + CREATETIME => {:type => ::Thrift::Types::I32, :name => 'createTime'}, + LASTACCESSTIME => {:type => ::Thrift::Types::I32, :name => 'lastAccessTime'}, + RELATIVEPATH => {:type => ::Thrift::Types::STRING, :name => 'relativePath'}, + PARAMETERS => {:type => ::Thrift::Types::MAP, :name => 'parameters', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}}, + PRIVILEGES => {:type => ::Thrift::Types::STRUCT, :name => 'privileges', :class => ::PrincipalPrivilegeSet, :optional => true} + } + + def struct_fields; FIELDS; end + + def validate + end + + ::Thrift::Struct.generate_accessors self +end + +class PartitionSpecWithSharedSD + include ::Thrift::Struct, ::Thrift::Struct_Union + PARTITIONS = 1 + SD = 2 + + FIELDS = { + PARTITIONS => {:type => ::Thrift::Types::LIST, :name => 'partitions', :element => {:type => ::Thrift::Types::STRUCT, :class => ::PartitionWithoutSD}}, + SD => {:type => ::Thrift::Types::STRUCT, :name => 'sd', :class => ::StorageDescriptor} + } + + def struct_fields; FIELDS; end + + def validate + end + + ::Thrift::Struct.generate_accessors self +end + +class PartitionListComposingSpec + include ::Thrift::Struct, ::Thrift::Struct_Union + PARTITIONS = 1 + + FIELDS = { + PARTITIONS => {:type => ::Thrift::Types::LIST, :name => 'partitions', :element => {:type => ::Thrift::Types::STRUCT, :class => ::Partition}} + } + + def struct_fields; FIELDS; end + + def validate + end + + ::Thrift::Struct.generate_accessors self +end + +class PartitionSpec + include ::Thrift::Struct, ::Thrift::Struct_Union + DBNAME = 1 + TABLENAME = 2 + ROOTPATH = 3 + SHAREDSDPARTITIONSPEC = 4 + PARTITIONLIST = 5 + CATNAME = 6 + WRITEID = 7 + ISSTATSCOMPLIANT = 8 + + FIELDS = { + DBNAME => {:type => ::Thrift::Types::STRING, :name => 'dbName'}, + TABLENAME => {:type => ::Thrift::Types::STRING, :name => 'tableName'}, + ROOTPATH => {:type => ::Thrift::Types::STRING, :name => 'rootPath'}, + SHAREDSDPARTITIONSPEC => {:type => ::Thrift::Types::STRUCT, :name => 'sharedSDPartitionSpec', :class => ::PartitionSpecWithSharedSD, :optional => true}, + PARTITIONLIST => {:type => ::Thrift::Types::STRUCT, :name => 'partitionList', :class => ::PartitionListComposingSpec, :optional => true}, + CATNAME => {:type => ::Thrift::Types::STRING, :name => 'catName', :optional => true}, + WRITEID => {:type => ::Thrift::Types::I64, :name => 'writeId', :default => -1, :optional => true}, + ISSTATSCOMPLIANT => {:type => ::Thrift::Types::BOOL, :name => 'isStatsCompliant', :optional => true} + } + + def struct_fields; FIELDS; end + + def validate + end + + ::Thrift::Struct.generate_accessors self +end + class AggrStats include ::Thrift::Struct, ::Thrift::Struct_Union COLSTATS = 1 diff --git a/standalone-metastore/metastore-common/src/main/thrift/hive_metastore.thrift b/standalone-metastore/metastore-common/src/main/thrift/hive_metastore.thrift index 4e43fee20930c42dd8d5bc3b2770a958b0a38436..b62939e8152ee965f17baba7a3465e988fa9aba5 100644 --- a/standalone-metastore/metastore-common/src/main/thrift/hive_metastore.thrift +++ b/standalone-metastore/metastore-common/src/main/thrift/hive_metastore.thrift @@ -433,76 +433,6 @@ struct CreationMetadata { 6: optional i64 materializationTime } -// table information -struct Table { - 1: optional i64 id, // id of the table. It will be ignored if set. It's only for - // read purposed - 2: string tableName, // name of the table - 3: string dbName, // database name ('default') - 4: string owner, // owner of this table - 5: i32 createTime, // creation time of the table - 6: i32 lastAccessTime, // last access time (usually this will be filled from HDFS and shouldn't be relied on) - 7: i32 retention, // retention time - 8: StorageDescriptor sd, // storage descriptor of the table - 9: list partitionKeys, // partition keys of the table. only primitive types are supported - 10: map parameters, // to store comments or any other user level parameters - 11: string viewOriginalText, // original view text, null for non-view - 12: string viewExpandedText, // expanded view text, null for non-view - 13: string tableType, // table type enum, e.g. EXTERNAL_TABLE - 14: optional PrincipalPrivilegeSet privileges, - 15: optional bool temporary=false, - 16: optional bool rewriteEnabled, // rewrite enabled or not - 17: optional CreationMetadata creationMetadata, // only for MVs, it stores table names used and txn list at MV creation - 18: optional string catName, // Name of the catalog the table is in - 19: optional PrincipalType ownerType = PrincipalType.USER, // owner type of this table (default to USER for backward compatibility) - 20: optional i64 writeId=-1, - 21: optional bool isStatsCompliant, - 22: optional ColumnStatistics colStats // column statistics for table -} - -struct Partition { - 1: list values // string value is converted to appropriate partition key type - 2: string dbName, - 3: string tableName, - 4: i32 createTime, - 5: i32 lastAccessTime, - 6: StorageDescriptor sd, - 7: map parameters, - 8: optional PrincipalPrivilegeSet privileges, - 9: optional string catName, - 10: optional i64 writeId=-1, - 11: optional bool isStatsCompliant, - 12: optional ColumnStatistics colStats // column statistics for partition -} - -struct PartitionWithoutSD { - 1: list values // string value is converted to appropriate partition key type - 2: i32 createTime, - 3: i32 lastAccessTime, - 4: string relativePath, - 5: map parameters, - 6: optional PrincipalPrivilegeSet privileges -} - -struct PartitionSpecWithSharedSD { - 1: list partitions, - 2: StorageDescriptor sd, -} - -struct PartitionListComposingSpec { - 1: list partitions -} - -struct PartitionSpec { - 1: string dbName, - 2: string tableName, - 3: string rootPath, - 4: optional PartitionSpecWithSharedSD sharedSDPartitionSpec, - 5: optional PartitionListComposingSpec partitionList, - 6: optional string catName, - 7: optional i64 writeId=-1, - 8: optional bool isStatsCompliant -} // column statistics struct BooleanColumnStatsData { @@ -601,6 +531,77 @@ struct ColumnStatistics { // the calling query? } +// table information +struct Table { + 1: optional i64 id, // id of the table. It will be ignored if set. It's only for + // read purposed + 2: string tableName, // name of the table + 3: string dbName, // database name ('default') + 4: string owner, // owner of this table + 5: i32 createTime, // creation time of the table + 6: i32 lastAccessTime, // last access time (usually this will be filled from HDFS and shouldn't be relied on) + 7: i32 retention, // retention time + 8: StorageDescriptor sd, // storage descriptor of the table + 9: list partitionKeys, // partition keys of the table. only primitive types are supported + 10: map parameters, // to store comments or any other user level parameters + 11: string viewOriginalText, // original view text, null for non-view + 12: string viewExpandedText, // expanded view text, null for non-view + 13: string tableType, // table type enum, e.g. EXTERNAL_TABLE + 14: optional PrincipalPrivilegeSet privileges, + 15: optional bool temporary=false, + 16: optional bool rewriteEnabled, // rewrite enabled or not + 17: optional CreationMetadata creationMetadata, // only for MVs, it stores table names used and txn list at MV creation + 18: optional string catName, // Name of the catalog the table is in + 19: optional PrincipalType ownerType = PrincipalType.USER, // owner type of this table (default to USER for backward compatibility) + 20: optional i64 writeId=-1, + 21: optional bool isStatsCompliant, + 22: optional ColumnStatistics colStats // column statistics for table +} + +struct Partition { + 1: list values // string value is converted to appropriate partition key type + 2: string dbName, + 3: string tableName, + 4: i32 createTime, + 5: i32 lastAccessTime, + 6: StorageDescriptor sd, + 7: map parameters, + 8: optional PrincipalPrivilegeSet privileges, + 9: optional string catName, + 10: optional i64 writeId=-1, + 11: optional bool isStatsCompliant, + 12: optional ColumnStatistics colStats // column statistics for partition +} + +struct PartitionWithoutSD { + 1: list values // string value is converted to appropriate partition key type + 2: i32 createTime, + 3: i32 lastAccessTime, + 4: string relativePath, + 5: map parameters, + 6: optional PrincipalPrivilegeSet privileges +} + +struct PartitionSpecWithSharedSD { + 1: list partitions, + 2: StorageDescriptor sd, +} + +struct PartitionListComposingSpec { + 1: list partitions +} + +struct PartitionSpec { + 1: string dbName, + 2: string tableName, + 3: string rootPath, + 4: optional PartitionSpecWithSharedSD sharedSDPartitionSpec, + 5: optional PartitionListComposingSpec partitionList, + 6: optional string catName, + 7: optional i64 writeId=-1, + 8: optional bool isStatsCompliant +} + struct AggrStats { 1: required list colStats, 2: required i64 partsFound, // number of partitions for which stats were found