@Override public void process(Object row, int tag) throws HiveException { // The UDTF expects arguments in an object[] StructObjectInspector soi = (StructObjectInspector) inputObjInspectors[tag]; List<? extends StructField> fields = soi.getAllStructFieldRefs(); for (int i = 0; i < fields.size(); i++) { objToSendToUDTF[i] = soi.getStructFieldData(row, fields.get(i)); } genericUDTF.process(objToSendToUDTF); if (conf.isOuterLV() && collector.getCounter() == 0) { collector.collect(outerObj); } collector.reset(); }
@Override public void process(Object row, int tag) throws HiveException { // The UDTF expects arguments in an object[] StructObjectInspector soi = (StructObjectInspector) inputObjInspectors[tag]; List<? extends StructField> fields = soi.getAllStructFieldRefs(); for (int i = 0; i < fields.size(); i++) { objToSendToUDTF[i] = soi.getStructFieldData(row, fields.get(i)); } genericUDTF.process(objToSendToUDTF); if (conf.isOuterLV() && collector.getCounter() == 0) { collector.collect(outerObj); } collector.reset(); }
public void eval(Object... args) throws HiveException { if (!initialized) { // Initialize at the server side initialize(args); } function.process(args); collector.collectRows(this); }
@Override public void processOp(Object row, int tag) throws HiveException { // The UDTF expects arguments in an object[] StandardStructObjectInspector soi = (StandardStructObjectInspector) inputObjInspectors[tag]; List<? extends StructField> fields = soi.getAllStructFieldRefs(); for (int i = 0; i < fields.size(); i++) { objToSendToUDTF[i] = soi.getStructFieldData(row, fields.get(i)); } conf.getGenericUDTF().process(objToSendToUDTF); }
@Override public void process(Object row, int tag) throws HiveException { // The UDTF expects arguments in an object[] StructObjectInspector soi = (StructObjectInspector) inputObjInspectors[tag]; List<? extends StructField> fields = soi.getAllStructFieldRefs(); for (int i = 0; i < fields.size(); i++) { objToSendToUDTF[i] = soi.getStructFieldData(row, fields.get(i)); } genericUDTF.process(objToSendToUDTF); if (conf.isOuterLV() && collector.getCounter() == 0) { collector.collect(outerObj); } collector.reset(); }
@Override public Object exec(Tuple input) throws IOException { if (!inited) { udtf.configure(instantiateMapredContext()); schemaInfo.init(getInputSchema(), udtf, constantsInfo); inited = true; } if (collector == null) { collector = new HiveUDTFCollector(); udtf.setCollector(collector); } else { collector.init(); } try { if (!endOfAllInput) { udtf.process(input.getAll().toArray()); } else { udtf.close(); } } catch (Exception e) { throw new IOException(e); } return collector.getBag(); }