[
https://issues.apache.org/jira/browse/HBASE-20700?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16506235#comment-16506235
]
stack commented on HBASE-20700:
-------------------------------
Looking at patch....
I worry the below check of ONLINE. Is it too specific?
971 if (serverNode.isInState(ServerState.SPLITTING,
ServerState.OFFLINE)) { 972 if
(!serverNode.isInState(ServerState.ONLINE)) {
We can see I suppose. Would be good if we could get away with it.
I'm wary of calls to this method below settting server state inside
setServerState because it will create the server node if it doesn't exist (It
may not exist because it has been processed by SCP). If we call the below after
SCP is done w/ it, the server comes back to life. You sure we will not do this?
ServerStateNode serverNode = getOrCreateServer(serverName);
What is the lifecycle for a server node now? ONLINE => SPLITTING => OFFLINE is
what it used to be. It can still do this? But it can also go ONLINE =>
META_SPLITTING => META_SPLITTING_DONE => SPLITTING => OFFLINE? We might want to
not this somewhere. Not obvious.
Oh... this is interesting.... adding the synchronized....
public synchronized void remoteCallFailed(final MasterProcedureEnv env,
... Up to this we've been synchronizing on the objects whose state we change.
What you thinking by adding the synchronize? I can't see anything wrong w/
it.....
If MoveRegionProcedure gets scheduled before RecoverMetaProcedure, what happens
now?
No need of evolving if private
23 @InterfaceAudience.Private
24 @InterfaceStability.Evolving
s/MetaProcedureInterface/MetaProcedure/
getMetaOperationType is not used? .... but makes sense I suppose. You are
following pattern.
Otherwise, nice cleanup and appreciate the doc -- especially the edit by
another.
> Move meta region when server crash can cause the procedure to be stuck
> ----------------------------------------------------------------------
>
> Key: HBASE-20700
> URL: https://issues.apache.org/jira/browse/HBASE-20700
> Project: HBase
> Issue Type: Sub-task
> Components: master, proc-v2, Region Assignment
> Reporter: Duo Zhang
> Assignee: Duo Zhang
> Priority: Critical
> Fix For: 3.0.0, 2.1.0, 2.0.1
>
> Attachments: HBASE-20700-UT.patch, HBASE-20700-v1.patch,
> HBASE-20700.patch
>
>
> As said in HBASE-20682.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)