Hi Stack,
I think the required should be in the 'Getting Started' section.
What to do about the other degrees is a little harder.
We could break up hbase-default by degree putting the rarely changed into an
hbase-arcane.xml?
We could drop options that are never changed or that look useless (if you
really need to change them, you can find them in the src): e.g.
hbase.master.meta.thread.rescanfrequency, hbase.regionserver.info.port.auto,
hbase.regionserver.msginterval, etc.
We could make hbase-client-default.xml and hbase-server-default.xml or
partition in some other way that made sense.
(I believe you can xinclude or some equivalient files for hadoop
Configuration)
I would not drop any but them them all listed, but with the additional
notes as to how common they are.
This raises another question I wanted to ask. Wouldn't make sense to print
out unknown settings as a WARN at startup?
That'd be nice but we probably ain't that disciplined and perhaps you want
to pollute your config. with "unknowns"? (e.g. you are a subclass of hbase
as are THBase and ITHBase?). I suppose we could read in the
hbase-default.xml and any config. not present there would be flagged? What
about hadoop configs? Read in the hadoop hdfs|common|etc|-xml and flag any
not present there?
Yes, simply load the matching "-default.xml" and diff them. Should leave
only user defined settings, which most people do not use. I do in one
cluster where I define a hostname and use that as a variable in all
places that need to specify an explicit host. Those would be washed out
but that is fine.
If others think this is useful I would have a look at it. But only if
more people are interested.
Lars