Details
-
Improvement
-
Status: In Progress
-
Major
-
Resolution: Unresolved
-
2.6.0, 3.0.0
-
None
-
None
Description
In our documentation for enabling backups, we suggest that the user set the following:
<property> <name>hbase.master.logcleaner.plugins</name> <value>org.apache.hadoop.hbase.backup.master.BackupLogCleaner,...</value> </property> <property> <name>hbase.master.hfilecleaner.plugins</name> <value>org.apache.hadoop.hbase.backup.BackupHFileCleaner,...</value> </property>
A naive user will set these and not know what to do about the ",..." part. In doing so, they will unexpectedly be disabling all of the default cleaners we have. For example here are the defaults:
<property> <name>hbase.master.logcleaner.plugins</name> <value>org.apache.hadoop.hbase.master.cleaner.TimeToLiveLogCleaner,org.apache.hadoop.hbase.master.cleaner.TimeToLiveProcedureWALCleaner,org.apache.hadoop.hbase.master.cleaner.TimeToLiveMasterLocalStoreWALCleaner</value> </property> <property> <name>hbase.master.hfilecleaner.plugins</name> <value>org.apache.hadoop.hbase.master.cleaner.TimeToLiveHFileCleaner,org.apache.hadoop.hbase.master.cleaner.TimeToLiveMasterLocalStoreHFileCleaner</value> </property>
So basically disabling support for hbase.master.logcleaner.ttl and hbase.master.hfilecleaner.ttl.
There exists a method BackupManager.decorateMasterConfiguration and BackupManager.decorateRegionServerConfiguration. They are currently javadoc'd as being for tests only, but I think we should call these in HMaster and HRegionServer. Then we can only require the user to set "hbase.backup.enable" and very much simplify our docs here.