[
https://issues.apache.org/jira/browse/STORM-3764?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Bipin Prasad updated STORM-3764:
--------------------------------
Summary: Nimbus has internal scheduling errors when backtracking (was:
While backtracking only remove the ackers that were skipped)
> Nimbus has internal scheduling errors when backtracking
> -------------------------------------------------------
>
> Key: STORM-3764
> URL: https://issues.apache.org/jira/browse/STORM-3764
> Project: Apache Storm
> Issue Type: Improvement
> Components: storm-server
> Reporter: Bipin Prasad
> Assignee: Bipin Prasad
> Priority: Major
>
> While backtracking in scheduling code, Ackers are skipped. However at the end
> of this step all ackers on the workerslot are removed. This removal should be
> limited to only the Ackers that were skipped in
> SchedulingSearcherState.backtrack(). Otherwise, the next immediate
> backtrack() call can result in an NPE:
> {code}
> 2021-03-30 15:27:03.212 o.a.s.s.r.ResourceAwareScheduler timer [ERROR]
> mx3_test-5-1614799784 Internal Error - Exception thrown when scheduling.
> Please check logs for details java.util.concurrent.ExecutionException:
> java.lang.NullPointerException
> at java.util.concurrent.FutureTask.report(FutureTask.java:122)
> ~[?:1.8.0_262]
> at java.util.concurrent.FutureTask.get(FutureTask.java:206) ~[?:1.8.0_262]
> at
> org.apache.storm.scheduler.resource.ResourceAwareScheduler.scheduleTopology(ResourceAwareScheduler.java:191)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.scheduler.resource.ResourceAwareScheduler.schedule(ResourceAwareScheduler.java:132)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.scheduler.blacklist.BlacklistScheduler.schedule(BlacklistScheduler.java:131)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.daemon.nimbus.Nimbus.computeNewSchedulerAssignments(Nimbus.java:2314)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.daemon.nimbus.Nimbus.lambda$lockingMkAssignments$44(Nimbus.java:2493)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.daemon.nimbus.Nimbus.executeWithLock(Nimbus.java:4549)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.daemon.nimbus.Nimbus.lockingMkAssignments(Nimbus.java:2491)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at org.apache.storm.daemon.nimbus.Nimbus.mkAssignments(Nimbus.java:2478)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at org.apache.storm.daemon.nimbus.Nimbus.mkAssignments(Nimbus.java:2415)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.daemon.nimbus.Nimbus.lambda$launchServer$17(Nimbus.java:1420)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at org.apache.storm.StormTimer$1.run(StormTimer.java:110)
> [storm-client-2.3.0.y.jar:2.3.0.y]
> at org.apache.storm.StormTimer$StormTimerTask.run(StormTimer.java:226)
> [storm-client-2.3.0.y.jar:2.3.0.y]
> Caused by: java.lang.NullPointerException
> at
> org.apache.storm.scheduler.resource.strategies.scheduling.SchedulingSearcherState.backtrack(SchedulingSearcherState.java:292)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy.scheduleExecutorsOnNodes(BaseResourceAwareStrategy.java:559)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy.schedule(BaseResourceAwareStrategy.java:172)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at
> org.apache.storm.scheduler.resource.ResourceAwareScheduler.lambda$scheduleTopology$1(ResourceAwareScheduler.java:189)
> ~[storm-server-2.3.0.y.jar:2.3.0.y]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_262]
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> ~[?:1.8.0_262]
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> ~[?:1.8.0_262]
> at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_262]
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)