@Override
  public void configure(MapredContext mapredContext) {
    this.currentVertexName = mapredContext.getJobConf().get(TezProcessor.HIVE_TEZ_VERTEX_NAME);
    this.currentTaskNumber =
        mapredContext.getJobConf().getInt(TezProcessor.HIVE_TEZ_TASK_INDEX, -1);
    this.currentTaskAttemptNumber =
        mapredContext.getJobConf().getInt(TezProcessor.HIVE_TEZ_TASK_ATTEMPT_NUMBER, -1);

    LOG.debug(
        "configure vertex: {}, task: {}, attempt: {} <-> current vertex {}, task: {}, attempt: {}",
        vertexName, taskNumberExpr, taskAttemptNumberExpr, currentVertexName, currentTaskNumber,
        currentTaskAttemptNumber);
  }
This class implements the UDF which can throw an exception in arbitrary vertex (typically mapper)
/ task / task attempt. For throwing exception in reducer side, where most probably
GroupByOperator codepath applies, GenericUDAFExceptionInVertex is used.
ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFExceptionInVertex.java