Class SplitWALManager


@Private public class SplitWALManager extends Object
Create SplitWALProcedure for each WAL which need to split. Manage the workers for each SplitWALProcedure. Total number of workers is (number of online servers) * (HBASE_SPLIT_WAL_MAX_SPLITTER). Helps assign and release workers for split tasks. Provide helper method to delete split WAL file and directory. The user can get the SplitWALProcedures via splitWALs(crashedServer, splitMeta) can get the files that need to split via getWALsToSplit(crashedServer, splitMeta) can delete the splitting WAL and directory via deleteSplitWAL(wal) and deleteSplitWAL(crashedServer) can check if splitting WALs of a crashed server is success via isSplitWALFinished(walPath) can acquire and release a worker for splitting WAL via acquireSplitWALWorker(procedure) and releaseSplitWALWorker(worker, scheduler) This class is to replace the zk-based WAL splitting related code, MasterWalManager, SplitLogManager, ZKSplitLog and ZKSplitLogManagerCoordination can be removed after we switch to procedure-based WAL splitting.
See Also: