This jira provides rollback functionality for NameNode and JournalNode in rolling upgrade.
Currently the proposed rollback for rolling upgrade is:
1. Shutdown both NN
2. Start one of the NN using "-rollingUpgrade rollback" option
3. This NN will load the special fsimage right before the upgrade marker, then discard all the editlog segments after the txid of the fsimage
4. The NN will also send RPC requests to all the JNs to discard editlog segments. This call expects response from all the JNs. The NN will keep running if the call succeeds.
5. We start the other NN using bootstrapstandby rather than "-rollingUpgrade rollback"