Details
-
Bug
-
Status: Closed
-
Minor
-
Resolution: Not A Problem
-
0.94.6
-
None
-
None
Description
By HBase setting default values in hbase-default.xml, it makes it difficult for a platform to know if a value has been overridden by the client. For example, Phoenix has a default value it would like to use for hbase.client.scanner.caching. I'd like to be able to call config.setIfUnset option to use our default value if a client hasn't already provided their own. Since HBase sets this in hbase-default.xml to 1, I can't differentiate between the client have a value in their hbase-sites.xml as 1 versus the default value we're getting from HBase.
Wouldn't it be better if HBase had constants defined in a Java interface that would be used by HBase as the default value if none other is provided, like this:
config.getInt("hbase.client.scanner.caching", HBaseDefault.CLIENT_SCANNER_CACHING);