commit 6fd301d446c9ec7d3231f43eebf0297e0750014f Author: Alice Fan Date: Fri May 11 18:22:35 2018 -0700 HIVE-19424 : Fixing NPE In MetaDataFormatters diff --git ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/JsonMetaDataFormatter.java ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/JsonMetaDataFormatter.java index c21967cb9cea25563e0b5c58e20714ef1e0d8e88..2e13698515c70b27e40187df31ca99441a655987 100644 --- ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/JsonMetaDataFormatter.java +++ ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/JsonMetaDataFormatter.java @@ -204,15 +204,15 @@ public void showTableStatus(DataOutputStream out, Hive db, HiveConf conf, if (par.getLocation() != null) { tblLoc = par.getDataLocation().toString(); } - inputFormattCls = par.getInputFormatClass().getName(); - outputFormattCls = par.getOutputFormatClass().getName(); + inputFormattCls = par.getInputFormatClass() == null ? null : par.getInputFormatClass().getName(); + outputFormattCls = par.getOutputFormatClass() == null ? null : par.getOutputFormatClass().getName(); } } else { if (tbl.getPath() != null) { tblLoc = tbl.getDataLocation().toString(); } - inputFormattCls = tbl.getInputFormatClass().getName(); - outputFormattCls = tbl.getOutputFormatClass().getName(); + inputFormattCls = tbl.getInputFormatClass() == null ? null : tbl.getInputFormatClass().getName(); + outputFormattCls = tbl.getOutputFormatClass() == null ? null : tbl.getOutputFormatClass().getName(); } MapBuilder builder = MapBuilder.create(); diff --git ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java index 25299234196e876f4723fc7afe88963eaed3bbf3..2916b8938750e5d2b3636927108d09fbd4365719 100644 --- ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java +++ ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/TextMetaDataFormatter.java @@ -291,15 +291,16 @@ public void showTableStatus(DataOutputStream outStream, if (par.getLocation() != null) { tblLoc = par.getDataLocation().toString(); } - inputFormattCls = par.getInputFormatClass().getName(); - outputFormattCls = par.getOutputFormatClass().getName(); + inputFormattCls = par.getInputFormatClass() == null ? null : par.getInputFormatClass().getName(); + outputFormattCls = par.getOutputFormatClass() == null ? null : par.getOutputFormatClass().getName(); } } else { if (tbl.getPath() != null) { tblLoc = tbl.getDataLocation().toString(); } - inputFormattCls = tbl.getInputFormatClass().getName(); - outputFormattCls = tbl.getOutputFormatClass().getName(); + + inputFormattCls = tbl.getInputFormatClass() == null ? null : tbl.getInputFormatClass().getName(); + outputFormattCls = tbl.getOutputFormatClass() == null ? null : tbl.getOutputFormatClass().getName(); } String owner = tbl.getOwner();