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)

Reply via email to