Github user revans2 commented on the issue:
https://github.com/apache/storm/pull/1661
I would be happy to pull that fix back into a separate patch. @ppoulosk
this patch looks fine to me, my only concern would be documenting it a little
more explaining that the state change might not have completed yet, and until
it does we cannot rebalance. Alternatively if you want to pull in my changes,
by replacing sleep with the following I would be OK with that too.
```
(defn wait-for-status [nimbus name status]
(while-timeout 5000
(let [topo-summary (first (filter (fn [topo] (= name (.get_name topo)))
(.get_topologies (.getClusterInfo nimbus))))
topo-status (if topo-summary (.get_status topo-summary)
"NOT-RUNNING")]
(log-message "WAITING FOR "name" TO BE " status " CURRENT "
topo-status)
(not= topo-status status))
(Thread/sleep 100)))
...
(wait-for-status nimbus "t1" "ACTIVE")
```
Either solution is fine with me.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---