ACCUMULO-3124 Document size and number of user-provided properties

Include warnings for both custom "tags" and iterator options


Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/fae7a822
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/fae7a822
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/fae7a822

Branch: refs/heads/master
Commit: fae7a8224e5f259881ca744ce1aaeb062276127a
Parents: 2b48d1c
Author: Josh Elser <els...@apache.org>
Authored: Fri May 1 00:12:22 2015 -0400
Committer: Josh Elser <els...@apache.org>
Committed: Fri May 1 00:12:22 2015 -0400

----------------------------------------------------------------------
 .../org/apache/accumulo/core/conf/config-header.txt         | 9 +++++++++
 docs/src/main/asciidoc/chapters/administration.txt          | 7 +++++++
 2 files changed, 16 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/accumulo/blob/fae7a822/core/src/main/resources/org/apache/accumulo/core/conf/config-header.txt
----------------------------------------------------------------------
diff --git 
a/core/src/main/resources/org/apache/accumulo/core/conf/config-header.txt 
b/core/src/main/resources/org/apache/accumulo/core/conf/config-header.txt
index d278882..be1958f 100644
--- a/core/src/main/resources/org/apache/accumulo/core/conf/config-header.txt
+++ b/core/src/main/resources/org/apache/accumulo/core/conf/config-header.txt
@@ -52,6 +52,15 @@ All properties have a default value in the source code.  
This value has the lowe
 
 While the default value is usually optimal, there are cases where a change can 
increase query and ingest performance.
 
+==== ZooKeeper Property Considerations
+
+Any properties that are stored in ZooKeeper should consider the limitations of 
ZooKeeper itself with respect to the
+number of nodes and the size of the node data. Custom table properties and 
options for Iterators configured on tables
+are two areas in which there aren't any failsafes built into the API that can 
prevent the user from making this mistake.
+
+While these properties have the ability to add some much needed dynamic 
configuration tools, use cases which might fall
+into these warnings should be reconsidered.
+
 === Configuration in the Shell
 
 The `config` command in the shell allows you to view the current system 
configuration.  You can also use the `-t` option to view a table's 
configuration as below:

http://git-wip-us.apache.org/repos/asf/accumulo/blob/fae7a822/docs/src/main/asciidoc/chapters/administration.txt
----------------------------------------------------------------------
diff --git a/docs/src/main/asciidoc/chapters/administration.txt 
b/docs/src/main/asciidoc/chapters/administration.txt
index 520a07c..857d948 100644
--- a/docs/src/main/asciidoc/chapters/administration.txt
+++ b/docs/src/main/asciidoc/chapters/administration.txt
@@ -296,6 +296,13 @@ applications to set application-level metadata about a 
table.  These tags can be
 anything from a table description, administrator notes, date created, etc.
 This is done by naming and setting a property with a prefix +table.custom.*+.
 
+Currently, table properties are stored in ZooKeeper. This means that the number
+and size of custom properties should be restricted on the order of 10's of 
properties
+at most without any properties exceeding 1MB in size. ZooKeeper's performance 
can be
+very sensitive to an excessive number of nodes and the sizes of the nodes. 
Applications
+which leverage the user of custom properties should take these warnings into
+consideration. There is no enforcement of these warnings via the API.
+
 === Initialization
 
 Accumulo must be initialized to create the structures it uses internally to 
locate

Reply via email to