commit 60c3e3777420d88f88ebf8f153e5b736e9e0faf4 Author: Mithun RK Date: Thu Oct 12 15:47:49 2017 -0700 HIVE-17794: HCatLoader breaks when a member is added to a struct-column of a table diff --git a/hcatalog/hcatalog-pig-adapter/src/main/java/org/apache/hive/hcatalog/pig/PigHCatUtil.java b/hcatalog/hcatalog-pig-adapter/src/main/java/org/apache/hive/hcatalog/pig/PigHCatUtil.java index 2e756b47d7..46d8074b12 100644 --- a/hcatalog/hcatalog-pig-adapter/src/main/java/org/apache/hive/hcatalog/pig/PigHCatUtil.java +++ b/hcatalog/hcatalog-pig-adapter/src/main/java/org/apache/hive/hcatalog/pig/PigHCatUtil.java @@ -462,11 +462,15 @@ private static Tuple transformToTuple(List objList, HCatSchema hs) throws Exc if (objList == null) { return null; } - Tuple t = tupFac.newTuple(objList.size()); List subFields = hs.getFields(); - for (int i = 0; i < subFields.size(); i++) { + Tuple t = tupFac.newTuple(subFields.size()); + int i = 0; + for (; i < objList.size(); ++i) { t.set(i, extractPigObject(objList.get(i), subFields.get(i))); } + for (; i < subFields.size(); ++i) { + t.set(i, null); + } return t; }