This is an automated email from the ASF dual-hosted git repository. dmollitor pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/hive.git
The following commit(s) were added to refs/heads/master by this push: new a4c5ddd HIVE-24321: Implement Default getSerDeStats in AbstractSerDe (David Mollitor, reviewed by Panagiotis Garefalakis, Miklos Gergely) a4c5ddd is described below commit a4c5ddd7da78d42343914d670c1c824bb1ad2395 Author: belugabehr <12578579+belugab...@users.noreply.github.com> AuthorDate: Fri Oct 30 09:28:26 2020 -0400 HIVE-24321: Implement Default getSerDeStats in AbstractSerDe (David Mollitor, reviewed by Panagiotis Garefalakis, Miklos Gergely) --- .../hadoop/hive/accumulo/serde/AccumuloSerDe.java | 6 ------ .../apache/hadoop/hive/contrib/serde2/RegexSerDe.java | 7 ------- .../hadoop/hive/contrib/serde2/TypedBytesSerDe.java | 5 ----- .../org/apache/hadoop/hive/druid/serde/DruidSerDe.java | 6 ------ .../java/org/apache/hadoop/hive/hbase/HBaseSerDe.java | 7 ------- .../org/apache/hive/hcatalog/data/HCatRecordSerDe.java | 8 -------- .../java/org/apache/hive/hcatalog/data/JsonSerDe.java | 7 ------- .../org/apache/hadoop/hive/serde2/CustomSerDe1.java | 6 ------ .../org/apache/hadoop/hive/serde2/CustomSerDe2.java | 6 ------ .../java/org/apache/hadoop/hive/serde2/TestSerDe.java | 6 ------ .../java/org/apache/hive/storage/jdbc/JdbcSerDe.java | 7 ------- .../java/org/apache/hadoop/hive/kudu/KuduSerDe.java | 7 ------- .../hive/ql/io/arrow/ArrowColumnarBatchSerDe.java | 6 ------ .../org/apache/hadoop/hive/ql/io/orc/OrcSerde.java | 17 +++-------------- .../hive/ql/io/parquet/serde/ParquetHiveSerDe.java | 18 +++--------------- .../hadoop/hive/ql/io/protobuf/ProtobufSerDe.java | 6 ------ .../apache/hadoop/hive/ql/log/syslog/SyslogSerDe.java | 6 ------ .../hadoop/hive/ql/exec/TestFileSinkOperator.java | 5 ----- .../org/apache/hadoop/hive/serde2/AbstractSerDe.java | 9 +++++++-- .../java/org/apache/hadoop/hive/serde2/JsonSerDe.java | 6 ------ .../hive/serde2/MetadataTypedColumnsetSerDe.java | 6 ------ .../apache/hadoop/hive/serde2/MultiDelimitSerDe.java | 6 ------ .../org/apache/hadoop/hive/serde2/NullStructSerDe.java | 5 ----- .../org/apache/hadoop/hive/serde2/OpenCSVSerde.java | 5 ----- .../java/org/apache/hadoop/hive/serde2/RegexSerDe.java | 6 ------ .../java/org/apache/hadoop/hive/serde2/TypedSerDe.java | 6 ------ .../org/apache/hadoop/hive/serde2/avro/AvroSerDe.java | 7 ------- .../serde2/binarysortable/BinarySortableSerDe.java | 7 ------- .../hive/serde2/teradata/TeradataBinarySerde.java | 6 ------ .../hive/serde2/thrift/ThriftJDBCBinarySerDe.java | 6 ------ 30 files changed, 13 insertions(+), 198 deletions(-) diff --git a/accumulo-handler/src/java/org/apache/hadoop/hive/accumulo/serde/AccumuloSerDe.java b/accumulo-handler/src/java/org/apache/hadoop/hive/accumulo/serde/AccumuloSerDe.java index 6fa48dd..9607b6d 100644 --- a/accumulo-handler/src/java/org/apache/hadoop/hive/accumulo/serde/AccumuloSerDe.java +++ b/accumulo-handler/src/java/org/apache/hadoop/hive/accumulo/serde/AccumuloSerDe.java @@ -30,7 +30,6 @@ import org.apache.hadoop.hive.accumulo.columns.ColumnMapping; import org.apache.hadoop.hive.accumulo.columns.HiveAccumuloRowIdColumnMapping; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.lazy.LazyFactory; import org.apache.hadoop.hive.serde2.lazy.LazySerDeParameters; import org.apache.hadoop.hive.serde2.lazy.objectinspector.LazyObjectInspectorFactory; @@ -142,11 +141,6 @@ public class AccumuloSerDe extends AbstractSerDe { return cachedObjectInspector; } - @Override - public SerDeStats getSerDeStats() { - return null; - } - public AccumuloSerDeParameters getParams() { return accumuloSerDeParameters; } diff --git a/contrib/src/java/org/apache/hadoop/hive/contrib/serde2/RegexSerDe.java b/contrib/src/java/org/apache/hadoop/hive/contrib/serde2/RegexSerDe.java index 45f32dd..5ac3d4a 100644 --- a/contrib/src/java/org/apache/hadoop/hive/contrib/serde2/RegexSerDe.java +++ b/contrib/src/java/org/apache/hadoop/hive/contrib/serde2/RegexSerDe.java @@ -32,7 +32,6 @@ import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.SerDeUtils; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorFactory; @@ -270,10 +269,4 @@ public class RegexSerDe extends AbstractSerDe { return outputRowText; } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - } diff --git a/contrib/src/java/org/apache/hadoop/hive/contrib/serde2/TypedBytesSerDe.java b/contrib/src/java/org/apache/hadoop/hive/contrib/serde2/TypedBytesSerDe.java index bb6d779..2997ed6 100644 --- a/contrib/src/java/org/apache/hadoop/hive/contrib/serde2/TypedBytesSerDe.java +++ b/contrib/src/java/org/apache/hadoop/hive/contrib/serde2/TypedBytesSerDe.java @@ -384,9 +384,4 @@ public class TypedBytesSerDe extends AbstractSerDe { } } } - - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } } diff --git a/druid-handler/src/java/org/apache/hadoop/hive/druid/serde/DruidSerDe.java b/druid-handler/src/java/org/apache/hadoop/hive/druid/serde/DruidSerDe.java index cd21824..e94ef5c 100644 --- a/druid-handler/src/java/org/apache/hadoop/hive/druid/serde/DruidSerDe.java +++ b/druid-handler/src/java/org/apache/hadoop/hive/druid/serde/DruidSerDe.java @@ -41,7 +41,6 @@ import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorFactory; import org.apache.hadoop.hive.serde2.objectinspector.StructField; @@ -387,11 +386,6 @@ import static org.joda.time.format.ISODateTimeFormat.dateOptionalTimeParser; return new DruidWritable(value); } - @Override public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - /** * @param writable Druid Writable to be deserialized. * @return List of Hive Writables. diff --git a/hbase-handler/src/java/org/apache/hadoop/hive/hbase/HBaseSerDe.java b/hbase-handler/src/java/org/apache/hadoop/hive/hbase/HBaseSerDe.java index 5147d0e..96e1bbd 100644 --- a/hbase-handler/src/java/org/apache/hadoop/hive/hbase/HBaseSerDe.java +++ b/hbase-handler/src/java/org/apache/hadoop/hive/hbase/HBaseSerDe.java @@ -32,7 +32,6 @@ import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.lazy.LazySerDeParameters; import org.apache.hadoop.hive.serde2.lazy.objectinspector.LazySimpleStructObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; @@ -301,12 +300,6 @@ public class HBaseSerDe extends AbstractSerDe { } } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - public HBaseKeyFactory getKeyFactory() { return serdeParams.getKeyFactory(); } diff --git a/hcatalog/core/src/main/java/org/apache/hive/hcatalog/data/HCatRecordSerDe.java b/hcatalog/core/src/main/java/org/apache/hive/hcatalog/data/HCatRecordSerDe.java index 110769a..3a9939c 100644 --- a/hcatalog/core/src/main/java/org/apache/hive/hcatalog/data/HCatRecordSerDe.java +++ b/hcatalog/core/src/main/java/org/apache/hive/hcatalog/data/HCatRecordSerDe.java @@ -30,7 +30,6 @@ import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.SerDeUtils; import org.apache.hadoop.hive.serde2.objectinspector.ListObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.MapObjectInspector; @@ -317,11 +316,4 @@ public class HCatRecordSerDe extends AbstractSerDe { return HCatRecord.class; } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics yet - return null; - } - - } diff --git a/hcatalog/core/src/main/java/org/apache/hive/hcatalog/data/JsonSerDe.java b/hcatalog/core/src/main/java/org/apache/hive/hcatalog/data/JsonSerDe.java index dd7690e..1ad05b3 100644 --- a/hcatalog/core/src/main/java/org/apache/hive/hcatalog/data/JsonSerDe.java +++ b/hcatalog/core/src/main/java/org/apache/hive/hcatalog/data/JsonSerDe.java @@ -34,7 +34,6 @@ import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo; import org.apache.hadoop.io.Text; @@ -187,10 +186,4 @@ public class JsonSerDe extends AbstractSerDe { return Text.class; } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics yet - return null; - } - } diff --git a/itests/custom-serde/src/main/java/org/apache/hadoop/hive/serde2/CustomSerDe1.java b/itests/custom-serde/src/main/java/org/apache/hadoop/hive/serde2/CustomSerDe1.java index 73ca9d2..0fe0dbc 100644 --- a/itests/custom-serde/src/main/java/org/apache/hadoop/hive/serde2/CustomSerDe1.java +++ b/itests/custom-serde/src/main/java/org/apache/hadoop/hive/serde2/CustomSerDe1.java @@ -106,10 +106,4 @@ public class CustomSerDe1 extends AbstractSerDe { return null; } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - } diff --git a/itests/custom-serde/src/main/java/org/apache/hadoop/hive/serde2/CustomSerDe2.java b/itests/custom-serde/src/main/java/org/apache/hadoop/hive/serde2/CustomSerDe2.java index ed385c9..9cca295 100644 --- a/itests/custom-serde/src/main/java/org/apache/hadoop/hive/serde2/CustomSerDe2.java +++ b/itests/custom-serde/src/main/java/org/apache/hadoop/hive/serde2/CustomSerDe2.java @@ -106,10 +106,4 @@ public class CustomSerDe2 extends AbstractSerDe { return null; } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - } diff --git a/itests/test-serde/src/main/java/org/apache/hadoop/hive/serde2/TestSerDe.java b/itests/test-serde/src/main/java/org/apache/hadoop/hive/serde2/TestSerDe.java index d23e30d..6067b99 100644 --- a/itests/test-serde/src/main/java/org/apache/hadoop/hive/serde2/TestSerDe.java +++ b/itests/test-serde/src/main/java/org/apache/hadoop/hive/serde2/TestSerDe.java @@ -201,10 +201,4 @@ public class TestSerDe extends AbstractSerDe { return serializeCache; } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - } diff --git a/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/JdbcSerDe.java b/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/JdbcSerDe.java index 04927a8..0d469f8 100644 --- a/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/JdbcSerDe.java +++ b/jdbc-handler/src/main/java/org/apache/hive/storage/jdbc/JdbcSerDe.java @@ -23,7 +23,6 @@ import org.apache.hadoop.hive.conf.Constants; import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector.Category; @@ -336,10 +335,4 @@ public class JdbcSerDe extends AbstractSerDe { return MapWritable.class; } - - @Override - public SerDeStats getSerDeStats() { - return null; - } - } diff --git a/kudu-handler/src/java/org/apache/hadoop/hive/kudu/KuduSerDe.java b/kudu-handler/src/java/org/apache/hadoop/hive/kudu/KuduSerDe.java index 33c3e0e..b00e2fc 100644 --- a/kudu-handler/src/java/org/apache/hadoop/hive/kudu/KuduSerDe.java +++ b/kudu-handler/src/java/org/apache/hadoop/hive/kudu/KuduSerDe.java @@ -31,7 +31,6 @@ import org.apache.hadoop.hive.metastore.utils.StringUtils; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.io.ByteWritable; import org.apache.hadoop.hive.serde2.io.DoubleWritable; import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable; @@ -274,12 +273,6 @@ public class KuduSerDe extends AbstractSerDe { } return output; } - - @Override - public SerDeStats getSerDeStats() { - // No support for statistics. That seems to be a popular answer. - return null; - } } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/arrow/ArrowColumnarBatchSerDe.java b/ql/src/java/org/apache/hadoop/hive/ql/io/arrow/ArrowColumnarBatchSerDe.java index 4896bc4..9bdd5aa 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/io/arrow/ArrowColumnarBatchSerDe.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/io/arrow/ArrowColumnarBatchSerDe.java @@ -36,7 +36,6 @@ import org.apache.hadoop.hive.ql.exec.vector.VectorAssignRow; import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.SerDeUtils; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector; @@ -269,11 +268,6 @@ public class ArrowColumnarBatchSerDe extends AbstractSerDe { } @Override - public SerDeStats getSerDeStats() { - return null; - } - - @Override public Object deserialize(Writable writable) { if(deserializer == null) { try { diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcSerde.java b/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcSerde.java index 7252665..8280d3f 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcSerde.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/io/orc/OrcSerde.java @@ -29,7 +29,6 @@ import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.SerDeUtils; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo; @@ -38,8 +37,9 @@ import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoUtils; import org.apache.hadoop.io.Writable; /** - * A serde class for ORC. - * It transparently passes the object to/from the ORC file reader/writer. + * A serde class for ORC. It transparently passes the object to/from the ORC + * file reader/writer. This SerDe does not support statistics, since serialized + * size doesn't make sense in the context of ORC files. */ @SerDeSpec(schemaProps = {serdeConstants.LIST_COLUMNS, serdeConstants.LIST_COLUMN_TYPES, OrcSerde.COMPRESSION}) public class OrcSerde extends AbstractSerDe { @@ -129,15 +129,4 @@ public class OrcSerde extends AbstractSerDe { return inspector; } - /** - * Always returns null, since serialized size doesn't make sense in the - * context of ORC files. - * - * @return null - */ - @Override - public SerDeStats getSerDeStats() { - return null; - } - } diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/ParquetHiveSerDe.java b/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/ParquetHiveSerDe.java index 5d98b69..932dca1 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/ParquetHiveSerDe.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/io/parquet/serde/ParquetHiveSerDe.java @@ -30,7 +30,6 @@ import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.ColumnProjectionUtils; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.SerDeUtils; import org.apache.hadoop.hive.serde2.io.ParquetHiveRecord; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; @@ -46,9 +45,9 @@ import org.apache.hadoop.io.Writable; import org.apache.parquet.hadoop.ParquetOutputFormat; /** - * - * A ParquetHiveSerDe for Hive (with the deprecated package mapred) - * + * A ParquetHiveSerDe for Hive (with the deprecated package mapred). Parquet + * format and stats is collected in ParquetRecordWriterWrapper when writer gets + * closed. */ @SerDeSpec(schemaProps = {serdeConstants.LIST_COLUMNS, serdeConstants.LIST_COLUMN_TYPES, ParquetOutputFormat.COMPRESSION}) @@ -147,17 +146,6 @@ public class ParquetHiveSerDe extends AbstractSerDe { } /** - * Return null for Parquet format and stats is collected in ParquetRecordWriterWrapper when writer gets - * closed. - * - * @return null - */ - @Override - public SerDeStats getSerDeStats() { - return null; - } - - /** * @param table * @return true if the table has the parquet serde defined */ diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/protobuf/ProtobufSerDe.java b/ql/src/java/org/apache/hadoop/hive/ql/io/protobuf/ProtobufSerDe.java index 86da30f..48677e9 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/io/protobuf/ProtobufSerDe.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/io/protobuf/ProtobufSerDe.java @@ -30,7 +30,6 @@ import java.util.Set; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorFactory; import org.apache.hadoop.hive.serde2.objectinspector.PrimitiveObjectInspector.PrimitiveCategory; @@ -115,11 +114,6 @@ public abstract class ProtobufSerDe extends AbstractSerDe { } @Override - public SerDeStats getSerDeStats() { - return null; - } - - @Override public Object deserialize(Writable blob) throws SerDeException { if (blob == null) { return null; diff --git a/ql/src/java/org/apache/hadoop/hive/ql/log/syslog/SyslogSerDe.java b/ql/src/java/org/apache/hadoop/hive/ql/log/syslog/SyslogSerDe.java index 8523c41..6fbe26b 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/log/syslog/SyslogSerDe.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/log/syslog/SyslogSerDe.java @@ -28,7 +28,6 @@ import javax.annotation.Nullable; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.SerDeUtils; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.typeinfo.StructTypeInfo; @@ -77,11 +76,6 @@ public class SyslogSerDe extends AbstractSerDe { } @Override - public SerDeStats getSerDeStats() { - return null; - } - - @Override public Object deserialize(final Writable writable) throws SerDeException { Text rowText = (Text) writable; if (rowText.getLength() == 0) { diff --git a/ql/src/test/org/apache/hadoop/hive/ql/exec/TestFileSinkOperator.java b/ql/src/test/org/apache/hadoop/hive/ql/exec/TestFileSinkOperator.java index ebb51c4..d4f362b 100644 --- a/ql/src/test/org/apache/hadoop/hive/ql/exec/TestFileSinkOperator.java +++ b/ql/src/test/org/apache/hadoop/hive/ql/exec/TestFileSinkOperator.java @@ -864,11 +864,6 @@ public class TestFileSinkOperator { public ObjectInspector getObjectInspector() throws SerDeException { return null; } - - @Override - public SerDeStats getSerDeStats() { - return null; - } } public static class TFSOStatsPublisher implements StatsPublisher { diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/AbstractSerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/AbstractSerDe.java index 7150a4e..34aadb9 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/AbstractSerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/AbstractSerDe.java @@ -85,9 +85,14 @@ public abstract class AbstractSerDe implements Deserializer, Serializer { throws SerDeException; /** - * Returns statistics collected when serializing + * Returns statistics collected when serializing. + * + * @return A SerDeStats object or {@code null} if stats are not supported by + * this SerDe. */ - public abstract SerDeStats getSerDeStats(); + public SerDeStats getSerDeStats() { + return null; + } /** * Deserialize an object out of a Writable blob. In most cases, the return diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/JsonSerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/JsonSerDe.java index 9cbd344..cd33b9f 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/JsonSerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/JsonSerDe.java @@ -219,12 +219,6 @@ public class JsonSerDe extends AbstractSerDe { return Text.class; } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics yet - return null; - } - public StructTypeInfo getTypeInfo() { return rowTypeInfo; } diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/MetadataTypedColumnsetSerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/MetadataTypedColumnsetSerDe.java index 8c37522..e3fce82 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/MetadataTypedColumnsetSerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/MetadataTypedColumnsetSerDe.java @@ -230,10 +230,4 @@ public class MetadataTypedColumnsetSerDe extends AbstractSerDe { return serializeCache; } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - } diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/MultiDelimitSerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/MultiDelimitSerDe.java index 289f7fe..8c95d0b 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/MultiDelimitSerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/MultiDelimitSerDe.java @@ -302,10 +302,4 @@ public class MultiDelimitSerDe extends AbstractEncodingAwareSerDe { return SerDeUtils.transformTextToUTF8(text, this.charset); } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - } diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/NullStructSerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/NullStructSerDe.java index 09b7630..1c8e2e8 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/NullStructSerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/NullStructSerDe.java @@ -69,11 +69,6 @@ public class NullStructSerDe extends AbstractSerDe { } @Override - public SerDeStats getSerDeStats() { - return null; - } - - @Override public void initialize(Configuration conf, Properties tbl) throws SerDeException { } diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/OpenCSVSerde.java b/serde/src/java/org/apache/hadoop/hive/serde2/OpenCSVSerde.java index d287df0..fa0f5cf 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/OpenCSVSerde.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/OpenCSVSerde.java @@ -200,9 +200,4 @@ public final class OpenCSVSerde extends AbstractSerDe { public Class<? extends Writable> getSerializedClass() { return Text.class; } - - @Override - public SerDeStats getSerDeStats() { - return null; - } } diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/RegexSerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/RegexSerDe.java index 71a9cfc..54a7143 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/RegexSerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/RegexSerDe.java @@ -290,10 +290,4 @@ public class RegexSerDe extends AbstractSerDe { throw new UnsupportedOperationException( "Regex SerDe doesn't support the serialize() method"); } - - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } } diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/TypedSerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/TypedSerDe.java index c57fe3b..ce304fd 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/TypedSerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/TypedSerDe.java @@ -87,10 +87,4 @@ public abstract class TypedSerDe extends AbstractSerDe { throw new RuntimeException("not supported"); } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - } diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/avro/AvroSerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/avro/AvroSerDe.java index ff4a197..4649d94 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/avro/AvroSerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/avro/AvroSerDe.java @@ -32,7 +32,6 @@ import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.SerDeUtils; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.typeinfo.TypeInfo; @@ -247,12 +246,6 @@ public class AvroSerDe extends AbstractSerDe { } @Override - public SerDeStats getSerDeStats() { - // No support for statistics. That seems to be a popular answer. - return null; - } - - @Override public boolean shouldStoreFieldsInMetastore(Map<String, String> tableParams) { return !hasExternalSchema(tableParams); } diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/binarysortable/BinarySortableSerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/binarysortable/BinarySortableSerDe.java index 999273c..222dde6 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/binarysortable/BinarySortableSerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/binarysortable/BinarySortableSerDe.java @@ -40,7 +40,6 @@ import org.apache.hadoop.hive.serde2.ByteStream.Output; import org.apache.hadoop.hive.serde2.ByteStream.RandomAccessOutput; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.SerDeUtils; import org.apache.hadoop.hive.serde2.io.ByteWritable; import org.apache.hadoop.hive.serde2.io.DateWritableV2; @@ -1104,12 +1103,6 @@ public class BinarySortableSerDe extends AbstractSerDe { signum == -1 ? !invert : invert); } - @Override - public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - public static void serializeStruct(Output byteStream, Object[] fieldData, List<ObjectInspector> fieldOis, boolean[] sortableSortOrders, byte[] nullMarkers, byte[] notNullMarkers) throws SerDeException { diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/teradata/TeradataBinarySerde.java b/serde/src/java/org/apache/hadoop/hive/serde2/teradata/TeradataBinarySerde.java index ccf5f44..dac4d70 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/teradata/TeradataBinarySerde.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/teradata/TeradataBinarySerde.java @@ -37,7 +37,6 @@ import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.SerDeException; import org.apache.hadoop.hive.serde2.SerDeSpec; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorFactory; import org.apache.hadoop.hive.serde2.objectinspector.StructField; @@ -366,11 +365,6 @@ import static java.lang.String.format; } } - @Override public SerDeStats getSerDeStats() { - // no support for statistics - return null; - } - /** * Deserialize an object out of a Writable blob. In most cases, the return * value of this function will be constant since the function will reuse the diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/thrift/ThriftJDBCBinarySerDe.java b/serde/src/java/org/apache/hadoop/hive/serde2/thrift/ThriftJDBCBinarySerDe.java index 1c5fd59..407c84c 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/thrift/ThriftJDBCBinarySerDe.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/thrift/ThriftJDBCBinarySerDe.java @@ -29,7 +29,6 @@ import org.apache.hadoop.hive.serde.serdeConstants; import org.apache.hadoop.hive.serde2.AbstractSerDe; import org.apache.hadoop.hive.serde2.ByteStream; import org.apache.hadoop.hive.serde2.SerDeException; -import org.apache.hadoop.hive.serde2.SerDeStats; import org.apache.hadoop.hive.serde2.SerDeUtils; import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector; import org.apache.hadoop.hive.serde2.objectinspector.StructField; @@ -161,11 +160,6 @@ public class ThriftJDBCBinarySerDe extends AbstractSerDe { return null; } - @Override - public SerDeStats getSerDeStats() { - return null; - } - /** * Return the bytes from this writable blob. * Eventually the client of this method will interpret the byte using the Thrift Protocol