diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorMapOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorMapOperator.java index 0cab25e..59e1d54 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorMapOperator.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorMapOperator.java @@ -756,6 +756,9 @@ public void process(Writable value) throws HiveException { * We pass the VectorizedRowBatch through here. */ batchCounter++; + if (value != null) { + numRows += ((VectorizedRowBatch) value).size; + } oneRootOperator.process(value, 0); if (oneRootOperator.getDone()) { setDone(true); @@ -773,6 +776,7 @@ public void process(Writable value) throws HiveException { currentReadType == VectorMapOperatorReadType.ROW_DESERIALIZE); if (deserializerBatch.size == deserializerBatch.DEFAULT_SIZE) { + numRows += deserializerBatch.size; /* * Feed current full batch to operator tree. @@ -859,6 +863,7 @@ public void closeOp(boolean abort) throws HiveException { if (!abort && oneRootOperator != null && !oneRootOperator.getDone() && currentReadType != VectorMapOperatorReadType.VECTORIZED_INPUT_FILE_FORMAT) { if (deserializerBatch.size > 0) { + numRows += deserializerBatch.size; batchCounter++; oneRootOperator.process(deserializerBatch, 0); deserializerBatch.size = 0;