[
https://issues.apache.org/jira/browse/MAPREDUCE-4455?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13417628#comment-13417628
]
Jason Lowe commented on MAPREDUCE-4455:
---------------------------------------
Output from the test:
{noformat}
2012-07-18 19:30:15,528 INFO [main] rmapp.TestRMAppTransitions
(TestRMAppTransitions.java:testAppSubmittedKill(363)) - --- START:
testAppSubmittedKill---
2012-07-18 19:30:15,768 INFO [main] resourcetracker.InlineDispatcher
(InlineDispatcher.java:dispatch(38)) - Dispatching the event
org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptEvent.EventType:
START
2012-07-18 19:30:15,768 INFO [main] rmapp.RMAppImpl
(RMAppImpl.java:handle(499)) - application_1342639815540_0001 State change from
NEW to SUBMITTED
2012-07-18 19:30:15,769 INFO [main] rmapp.RMAppImpl
(RMAppImpl.java:handle(499)) - application_1342639815540_0001 State change from
SUBMITTED to ACCEPTED
2012-07-18 19:30:15,769 INFO [main] resourcetracker.InlineDispatcher
(InlineDispatcher.java:dispatch(38)) - Dispatching the event
org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptEvent.EventType:
KILL
2012-07-18 19:30:15,770 INFO [main] resourcetracker.InlineDispatcher
(InlineDispatcher.java:dispatch(38)) - Dispatching the event
org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppFailedAttemptEvent.EventType:
ATTEMPT_KILLED
2012-07-18 19:30:15,773 ERROR [main] rmapp.RMAppImpl
(RMAppImpl.java:handle(494)) - Can't handle this event at current state
org.apache.hadoop.yarn.state.InvalidStateTransitonException: Invalid event:
ATTEMPT_KILLED at ACCEPTED
at
org.apache.hadoop.yarn.state.StateMachineFactory.doTransition(StateMachineFactory.java:301)
at
org.apache.hadoop.yarn.state.StateMachineFactory.access$300(StateMachineFactory.java:43)
at
org.apache.hadoop.yarn.state.StateMachineFactory$InternalStateMachine.doTransition(StateMachineFactory.java:443)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppImpl.handle(RMAppImpl.java:492)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppImpl.handle(RMAppImpl.java:70)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.TestRMAppTransitions$TestApplicationEventDispatcher.handle(TestRMAppTransitions.java:103)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.TestRMAppTransitions$TestApplicationEventDispatcher.handle(TestRMAppTransitions.java:89)
at
org.apache.hadoop.yarn.server.resourcemanager.resourcetracker.InlineDispatcher.dispatch(InlineDispatcher.java:43)
at
org.apache.hadoop.yarn.server.resourcemanager.resourcetracker.InlineDispatcher$TestEventHandler.handle(InlineDispatcher.java:33)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptImpl$BaseFinalTransition.transition(RMAppAttemptImpl.java:701)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptImpl$BaseFinalTransition.transition(RMAppAttemptImpl.java:651)
at
org.apache.hadoop.yarn.state.StateMachineFactory$SingleInternalArc.doTransition(StateMachineFactory.java:357)
at
org.apache.hadoop.yarn.state.StateMachineFactory.doTransition(StateMachineFactory.java:298)
at
org.apache.hadoop.yarn.state.StateMachineFactory.access$300(StateMachineFactory.java:43)
at
org.apache.hadoop.yarn.state.StateMachineFactory$InternalStateMachine.doTransition(StateMachineFactory.java:443)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptImpl.handle(RMAppAttemptImpl.java:485)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptImpl.handle(RMAppAttemptImpl.java:80)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.TestRMAppTransitions$TestApplicationAttemptEventDispatcher.handle(TestRMAppTransitions.java:79)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.TestRMAppTransitions$TestApplicationAttemptEventDispatcher.handle(TestRMAppTransitions.java:65)
at
org.apache.hadoop.yarn.server.resourcemanager.resourcetracker.InlineDispatcher.dispatch(InlineDispatcher.java:43)
at
org.apache.hadoop.yarn.server.resourcemanager.resourcetracker.InlineDispatcher$TestEventHandler.handle(InlineDispatcher.java:33)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppImpl$KillAppAndAttemptTransition.transition(RMAppImpl.java:563)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppImpl$KillAppAndAttemptTransition.transition(RMAppImpl.java:559)
at
org.apache.hadoop.yarn.state.StateMachineFactory$SingleInternalArc.doTransition(StateMachineFactory.java:357)
at
org.apache.hadoop.yarn.state.StateMachineFactory.doTransition(StateMachineFactory.java:298)
at
org.apache.hadoop.yarn.state.StateMachineFactory.access$300(StateMachineFactory.java:43)
at
org.apache.hadoop.yarn.state.StateMachineFactory$InternalStateMachine.doTransition(StateMachineFactory.java:443)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppImpl.handle(RMAppImpl.java:492)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.RMAppImpl.handle(RMAppImpl.java:70)
at
org.apache.hadoop.yarn.server.resourcemanager.rmapp.TestRMAppTransitions.testAppSubmittedKill(TestRMAppTransitions.java:369)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
at
org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:228)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:134)
at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at
org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at
org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:103)
at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:74)
{noformat}
It would be nice if the state machine transition tests would fail on any
invalid state transition encountered during the tests so these can be caught
more proactively in the future.
> RMAppImpl state machine does not handle event ATTEMPT_KILLED at ACCEPTED
> ------------------------------------------------------------------------
>
> Key: MAPREDUCE-4455
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-4455
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Components: mrv2, resourcemanager
> Reporter: Jason Lowe
> Priority: Minor
>
> TestRMAppTransitions#testAppSubmittedKilled causes an invalid event exception
> but the test doesn't catch the error since the final app state is still
> killed. Killed for the wrong reason, but the final state is the same.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira