Storm does not support rolling downgrade of the Storm service. It is best to stop the topology, update the client version to match the previous version, and resubmit the topology.
Deactivate your currently running topology, using the CLI or Web UI:
CLI:
storm deactivate <your-topology-name>
Web UI:
To see a summary page for your topology, go to the Storm Web UI home page (
http://<storm-ui-server>:8080
) and click on your topology name.Look for a button to activate, deactivate, rebalance, or kill, on the top left side of the screen. Click "deactivate".
In the popup window, enter the number of seconds after which the topology should be deactivated. Press OK.
Make sure that your topology has been deactivated:
CLI:
storm list
Web UI: Go to the Storm Web UI home page. You should see topology status in the list of topologies. Make sure the status column lists "Deactivated".
Kill the deactivated topology, so that you can submit a new topology under the same name:
CLI:
storm kill <your-topology-name>
Web UI:
Go to the Storm Web UI home page and click on your topology name. This should open a summary page for your topology.
Look for a button to activate, deactivate, rebalance, or kill, on the top left side of the screen. Click "kill".
In the popup window, enter the number of seconds after which the topology should be killed. Press OK.
Make sure that your topology has been killed. Note: unlike the deactivate step, which shows the status of your topology, if your topology is killed you will not see an entry for your topology.
CLI:
storm list
Web UI: Go to the Storm Web UI home page. You should see topology status in the list of topologies. Make sure the status column lists "Deactivated".
Switch the component client's version to the previous version.
Rebuild your topology jar with the new dependency. (For more information, see "Packaging Storm Topologies" in the Storm User's Guide.)
Upgrade the component to the previous version.
Resubmit the topology using the previous jar:
storm jar <jar-path> <main class>
Confirm that your topology is active:
CLI:
storm list
Web UI: Go to the Storm Web UI home page. You should see topology status in the list of topologies. Make sure the status column lists "Active".
If the downgrade process fails, follow the steps in "Downgrade your Cluster," starting with "Downgrade components outside of the cluster." Otherwise, continue with the next downgrade step.