accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Havanki" <bhava...@clouderagovt.com>
Subject Re: Review Request 22685: ACCUMULO-2615 - refactored server configurations
Date Wed, 02 Jul 2014 15:59:58 GMT

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/22685/
-----------------------------------------------------------

(Updated July 2, 2014, 11:59 a.m.)


Review request for accumulo.


Changes
-------

Integrated Sean's feedback - thanks Sean! Note that some test classes in the prior diff weren't
formatted properly according to our standards, so changes in those files were due to reformatting.


Bugs: ACCUMULO-2615
    https://issues.apache.org/jira/browse/ACCUMULO-2615


Repository: accumulo


Description
-------

What started out as a simplification effort on server configurations ended up with results
that aren't so much simpler but are hopefully more straightforward. Here is a summary of the
more important changes.

* ServerConfiguration is deprecated in favor of the new ServerConfigurationFactory.
* ServerConfigurationFactory caches configurations not just but namespace or table ID, but
also by instance ID.
* ZooConfigurationFactory takes over the creation logic from ZooConfiguration. A ZooConfiguration
instance is no longer a singleton, but an ordinary instance. ZooConfigurationFactory caches
created ones by instance ID.
* NamespaceConfiguration and TableConfiguration each keep a static map of ZooCache instances,
rather than a single static instance. The map is keyed by instance ID and namespace/table
(resp.) ID.
* getParentConfiguration() was added to all appropriate configurations. (I did have an interface
declaring the method but decided it was not useful.)
* The logic for retrieving properties from ZooCache instances is refactored to a new ZooCachePropertyAccessor
object.
* NamespaceConfWatcher and TableConfWatcher include the configurations they watch as fields,
so they no longer need to repeatedly look them up (formerly in ServerConfiguration). As a
consequence, the watchers no longer attempt to handle received WatchedEvents for a different
namespace or table. (This *should* never happen - a warning is logged if it does.)


Diffs (updated)
-----

  server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfWatcher.java 50ab27ee8dcab41d89789ea409f5e554c56163d3

  server/base/src/main/java/org/apache/accumulo/server/conf/NamespaceConfiguration.java ebb098b01798bd4478f7d487909409bd2ca2baf1

  server/base/src/main/java/org/apache/accumulo/server/conf/ServerConfiguration.java 2115f3f28557f1a56b4e117a5ce4e0be920a09d7

  server/base/src/main/java/org/apache/accumulo/server/conf/ServerConfigurationFactory.java
PRE-CREATION 
  server/base/src/main/java/org/apache/accumulo/server/conf/TableConfWatcher.java 3c24ec49aa4895283e6556b02ed3479dda560b6b

  server/base/src/main/java/org/apache/accumulo/server/conf/TableConfiguration.java b538d2ecc16a0c4c0456d491afb5e116ae0000b5

  server/base/src/main/java/org/apache/accumulo/server/conf/TableParentConfiguration.java
34eb781a5b2807e3457a5f6ac501088ac2fc2e7a 
  server/base/src/main/java/org/apache/accumulo/server/conf/ZooCachePropertyAccessor.java
PRE-CREATION 
  server/base/src/main/java/org/apache/accumulo/server/conf/ZooConfiguration.java 696873bb013946c670c9d781cdf43bb0cb143b98

  server/base/src/main/java/org/apache/accumulo/server/conf/ZooConfigurationFactory.java PRE-CREATION

  server/base/src/test/java/org/apache/accumulo/server/conf/NamespaceConfigurationTest.java
PRE-CREATION 
  server/base/src/test/java/org/apache/accumulo/server/conf/ServerConfigurationFactoryTest.java
PRE-CREATION 
  server/base/src/test/java/org/apache/accumulo/server/conf/TableConfigurationTest.java ae73ba69a87bf40de9ec8c3b8f804bb475a810ef

  server/base/src/test/java/org/apache/accumulo/server/conf/ZooCachePropertyAccessorTest.java
PRE-CREATION 
  server/base/src/test/java/org/apache/accumulo/server/conf/ZooConfigurationFactoryTest.java
PRE-CREATION 

Diff: https://reviews.apache.org/r/22685/diff/


Testing
-------

Unit tests pass. Basic exercising on a one-node cluster (continuous ingest) successful. All
integration tests pass (after ACCUMULO-2951 and related).


Thanks,

Bill Havanki


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message