summaryrefslogtreecommitdiffstats
path: root/configdefinitions
diff options
context:
space:
mode:
authorJon Marius Venstad <venstad@gmail.com>2021-01-19 23:08:54 +0100
committerJon Marius Venstad <venstad@gmail.com>2021-01-19 23:08:54 +0100
commit769f0e9ddd81585d0365a076f90fb99d0b37913b (patch)
treefeac73085c78f856078e1635fc7daebbf0b81723 /configdefinitions
parent8393371bcece2ddff3e8b185e8e72747ad44c804 (diff)
Add initial_redundancy, active_per_leaf_group and ready_copies to new config
Diffstat (limited to 'configdefinitions')
-rw-r--r--configdefinitions/src/vespa/distribution.def18
-rw-r--r--configdefinitions/src/vespa/stor-distribution.def6
2 files changed, 18 insertions, 6 deletions
diff --git a/configdefinitions/src/vespa/distribution.def b/configdefinitions/src/vespa/distribution.def
index f2027fa4eb7..d0cb4165ac9 100644
--- a/configdefinitions/src/vespa/distribution.def
+++ b/configdefinitions/src/vespa/distribution.def
@@ -5,9 +5,27 @@ namespace=vespa.config.content
## Super config for distribution in each content cluster, keyed by cluster id.
##
+# If this is set to true, the distributor will try to enforce one active copy of
+# buckets per hierarchical leaf group. This lets the top level dispatcher send
+# queries only to the nodes of one group, saving computational effort.
+# If used, hierarchical grouping can not be used for other purposes.
+# Using this option implies that:
+# - ready_copies == redundancy
+# - Only one level of hierarchical grouping may be defined.
+# - That level distributes copies to all defined groups.
+cluster{}.active_per_leaf_group bool default=false
+
+# The number of copies that should be "ready" to be active. Maximum is redundancy.
+cluster{}.ready_copies int default=0
+
# How many copies of a document are stored, across nodes.
cluster{}.redundancy int default=3
+# Initial redundancy allows put-operations to return as completed after
+# a subset of all copies have been stored.
+# A value of 0 disable this, and causes normal redundancy behavior instead.
+cluster{}.initial_redundancy int default=0
+
# Hierarchical grouping divides the nodes into a tree of groups. The index is the
# string representation of a path from the root node in this tree, e.g., "1.2.1".
cluster{}.group[].index string
diff --git a/configdefinitions/src/vespa/stor-distribution.def b/configdefinitions/src/vespa/stor-distribution.def
index c8a9f30be91..518626228c1 100644
--- a/configdefinitions/src/vespa/stor-distribution.def
+++ b/configdefinitions/src/vespa/stor-distribution.def
@@ -10,17 +10,14 @@ redundancy int default=3
## a subset of all copies have been persisted (known as initial persistence
## in BCP terms).
## Set to 0 to disable and use normal redundancy behavior instead.
-## TODO: seems unused
initial_redundancy int default=0
## If set, requires that the primary nodes copy should always be persisted
## before an n-of-m initial persistence operation can complete.
-## TODO: seems unused
ensure_primary_persisted bool default=true
## The number of copies that should be "ready" to be active.
## Maximum is redundancy.
-## TODO: seems unused
ready_copies int default=0
## If this option is set true, the distributor will try to enforce one active copy
@@ -32,7 +29,6 @@ ready_copies int default=0
## - ready_copies == redundancy
## - Only one level of hierarchical grouping defined.
## - That level distributes copies to all defined groups.
-## TODO: seems unused
active_per_leaf_group bool default=false
## Search have some unfortunate properties with some queries, adding a static
@@ -40,7 +36,6 @@ active_per_leaf_group bool default=false
## these cases they use many small groups to be able to scale. In such cases,
## where groups are small, having distributors able to take over when none are
## available in a group is useful.
-## TODO: seems unused, i.e., always true
distributor_auto_ownership_transfer_on_whole_group_down bool default=true
## Hierarchical grouping divides the nodes into a tree of groups. Due to config
@@ -72,5 +67,4 @@ group[].nodes[].retired bool default=false
## MODULO_INDEX with node index in seed
## MODULO_KNUTH with random(node index) in seed
## MODULO_BID using all used bits, except count bits, and random(node index)
-## TODO: seems unused
disk_distribution enum { MODULO, MODULO_INDEX, MODULO_KNUTH, MODULO_BID } default=MODULO_BID