Umeshkumar9414 commented on code in PR #5816:
URL: https://github.com/apache/hbase/pull/5816#discussion_r1561513882


##########
hbase-server/src/main/java/org/apache/hadoop/hbase/master/procedure/ServerRemoteProcedure.java:
##########
@@ -137,6 +140,10 @@ synchronized void remoteOperationDone(MasterProcedureEnv 
env, Throwable error) {
         getProcId());
       return;
     }
+    //below persistence is added so that if report goes to last active master, 
it throws exception
+    state = 
MasterProcedureProtos.ServerRemoteProcedureState.SERVER_REMOTE_PROCEDURE_REPORT_SUCCEED;
+    
env.getMasterServices().getMasterProcedureExecutor().getStore().update(this);
+
     complete(env, error);

Review Comment:
   If I have to call the `complete` method in `execute` methods, I have to 
store the Error as `complete` methods are using that to take the decision. 
   
   Another solution can be I play with the state. According to the error in 
`remoteOperationDone` method, I can change the state and then take all the 
decisions in `complete` method based on the state. But I don't think this would 
be possible without introducing some state specific to some parent procedure 
like SnapshotVerifyProcedure. 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@hbase.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to