Is there a race condition with input.start()?  I was under the impression I
didn't need to use it since it's in the initialize() method of
the LogicalIOProcessorRuntimeTask, but I saw this in one of the logs of a
task attempt.

2014-08-07 18:55:23,487 INFO [AsyncDispatcher event handler]
org.apache.tez.dag.history.HistoryEventHandler:
[HISTORY][DAG:dag_1407259853327_0029_2][Event:TASK_ATTEMPT_FINISHED]:
vertexName=8b013089-9aa9-4da3-9ab9-cca97fdf6b7c,
taskAttemptId=attempt_1407259853327_0029_2_01_000000_0,
startTime=1407437720449, finishTime=1407437723472, timeTaken=3023,
status=FAILED, diagnostics=Error: Failure while running
task:java.lang.IllegalStateException: Due to KeyValuesReader behavior you
must alternate calls to hasNext()/next()
at com.google.common.base.Preconditions.checkState(Preconditions.java:145)
at
com.hadapt.exec.tez.VectorizedRowBatchFromKeyValueIterator.hasNext(VectorizedRowBatchFromKeyValueIterator.java:45)
at
com.hadapt.exec.tez.VectorizedRowBatchFromKeyValueIterator.next(VectorizedRowBatchFromKeyValueIterator.java:66)
at
com.hadapt.exec.tez.VectorizedRowBatchFromKeyValueIterator.next(VectorizedRowBatchFromKeyValueIterator.java:24)
at
com.hadapt.exec.tez.VectorOperatorProcessor.run(VectorOperatorProcessor.java:116)
at
org.apache.tez.runtime.LogicalIOProcessorRuntimeTask.run(LogicalIOProcessorRuntimeTask.java:324)
at
org.apache.tez.runtime.task.TezTaskRunner$TaskRunnerCallable$1.run(TezTaskRunner.java:180)
at
org.apache.tez.runtime.task.TezTaskRunner$TaskRunnerCallable$1.run(TezTaskRunner.java:172)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1554)
at
org.apache.tez.runtime.task.TezTaskRunner$TaskRunnerCallable.call(TezTaskRunner.java:172)
at
org.apache.tez.runtime.task.TezTaskRunner$TaskRunnerCallable.call(TezTaskRunner.java:167)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)

Reply via email to