Bill Havanki created ACCUMULO-2615:
--------------------------------------
Summary: Simplify server configuration caching and ZK watchers
Key: ACCUMULO-2615
URL: https://issues.apache.org/jira/browse/ACCUMULO-2615
Project: Accumulo
Issue Type: Improvement
Reporter: Bill Havanki
Fix For: 1.6.1
The mechanism used for caching server-related configuration objects and
processing ZK events could do with some simplification. For example:
* {{NamespaceConfWatcher}} and {{TableConfWatcher}} objects guess at what they
are supposed to be watching by looking for namespace/table IDs in ZK events;
they do not save the IDs they pertain to.
* The watcher objects obtain their corresponding configuration objects by
reaching through the {{ServerConfiguration}} cache, instead of just having a
reference field.
* The watcher objects set log4j logging levels for both ZK and
o.a.hadoop.io.compress to WARN, which prohibits debugging when needed. That
should be done in log4j properties/XML instead.
* Possible bug: {{NamespaceConfWatcher}} expires table configuration observers,
not namespace configuration observers.
* There is high duplication between the static and instance methods of
{{ServerConfiguration}}. The class serves as both a cache container and a
factory. Moreover, despite its name, it isn't actually a configuration object.
I may be missing some subtleties of why things are as they are, so please fill
me in as needed.
--
This message was sent by Atlassian JIRA
(v6.2#6252)