ruanhui created HBASE-26974:
-------------------------------

             Summary: Introduce a LogRollProcedure
                 Key: HBASE-26974
                 URL: https://issues.apache.org/jira/browse/HBASE-26974
             Project: HBase
          Issue Type: Improvement
          Components: backup&restore, proc-v2
            Reporter: ruanhui
            Assignee: ruanhui
             Fix For: 3.0.0-alpha-3


The current log-rolling for all regionservers is based in ZK. Here is an 
attempt to reimplement it with procedure v2.

Here are some requirements about the implementation.
The procedure can be introduced as a new feature. It should remain fully 
compatible with previous implementations. Also, this feature can be disabled by 
the configuration. Currently we only use the logroll procedure when taking a 
backup job, so I think all code logic should be implemented in the hbase-backup 
module as much as possible(I'm not sure if this is the right way to do it. If 
you have any suggestions, please let me know).


Here are some details about the implementation.
LogRollProcedure
The LogRollProcedure is used to roll WAL for all the regionservers in the 
cluster. It acquires the shared lock of the backup system table.
RSLogRollProcedure
The RSLogRollProcedure is used to schedule a RSLogRollRemoteProcedure for each 
regionserver. When the subprocedure returns, the RSLogRollProcedure will check 
the logrolling result in the backup system table. If failed, The 
RSLogRollProcedure will schedule a new RSLogRollRemoteProcedure to retry.
RSLogRollRemoteProcedure
The RSLogRollRemoteProcedure is used to send the log roll request to the remote 
server.

This is only the first version implementation, any suggestions and feedbacks 
are appreciated.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to