xref: /3.0.3-GA/ep-engine/docs/engine-params.org (revision 118e7bed)
1#+TITLE:     EP Parameters
2#+AUTHOR:    Dustin Sallings
3#+EMAIL:     dustin@spy.net
4#+DATE:      2010-05-05 Wed
5#+DESCRIPTION:
6#+LANGUAGE:  en
7#+OPTIONS:   H:3 num:t toc:t \n:nil @:t ::t |:t ^:nil -:t f:t *:t <:t
8#+OPTIONS:   TeX:t LaTeX:nil skip:nil d:nil todo:t pri:nil tags:not-in-toc
9#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
10#+EXPORT_SELECT_TAGS: export
11#+EXPORT_EXCLUDE_TAGS: noexport
12
13* Configuring the Engine
14
15Engine parameters may be specified using the =-e= option to
16memcached.  These parameters control various aspects of the behavior
17of the engine.
18
19For example, if you would like to store your database in =/data/base=
20and prevent it from having objects larger than 1MB, you would run
21memcached like this:
22
23: memcached -E ep.so -e 'dbfile=/data/base;max_item_size=1048576'
24
25* Parameters for the EP Engine
26
27| key                         | type   | descr                                      |
28|-----------------------------+--------+--------------------------------------------|
29| config_file                 | string | Path to additional parameters.             |
30| dbname                      | string | Path to on-disk storage.                   |
31| ht_locks                    | int    | Number of locks per hash table.            |
32| ht_size                     | int    | Number of buckets per hash table.          |
33| max_item_size               | int    | Maximum number of bytes allowed for        |
34|                             |        | an item.                                   |
35| max_size                    | int    | Max cumulative item size in bytes.         |
36| max_threads                 | int    | Override default number of global threads. |
37| max_num_readers             | int    | Override default number of reader threads. |
38| max_num_writers             | int    | Override default number of writer threads. |
39| max_num_auxio               | int    | Override default number of aux io threads. |
40| max_num_nonio               | int    | Override default number of non io threads. |
41| mem_high_wat                | int    | Automatically evict when exceeding         |
42|                             |        | this size.                                 |
43| mem_low_wat                 | int    | Low water mark to aim for when evicting.   |
44| couch_response_timeout      | int    | The maximum time to wait for couch to      |
45|                             |        | respond to a persistence request before    |
46|                             |        | resetting the connection (milliseconds)    |
47| tap_backlog_limit           | int    | Max number of items allowed in a           |
48|                             |        | tap backfill                               |
49| tap_noop_interval           | int    | Number of seconds between a noop is sent   |
50|                             |        | on an idle connection                      |
51| tap_keepalive               | int    | Seconds to hold open named tap connections |
52| tap_bg_max_pending          | int    | Maximum number of pending bg fetch         |
53|                             |        | operations                                 |
54|                             |        | a tap queue may issue (before it must wait |
55|                             |        | for responses to appear.                   |
56| tap_backoff_period          | float  | Number of seconds the tap connection       |
57|                             |        | should back off after receiving ETMPFAIL   |
58| vb0                         | bool   | If true, start with an active vbucket 0    |
59| waitforwarmup               | bool   | Whether to block server start during       |
60|                             |        | warmup.                                    |
61| warmup                      | bool   | Whether to load existing data at startup.  |
62| exp_pager_stime             | int    | Sleep time for the pager that purges       |
63|                             |        | expired objects from memory and disk       |
64| failpartialwarmup           | bool   | If false, continue running after failing   |
65|                             |        | to load some records.                      |
66| max_vbuckets                | int    | Maximum number of vbuckets expected (1024) |
67| concurrentDB                | bool   | True (default) if concurrent DB reads are  |
68|                             |        | permitted where possible.                  |
69| chk_remover_stime           | int    | Interval for the checkpoint remover that   |
70|                             |        | purges closed unreferenced checkpoints.    |
71| chk_max_items               | int    | Number of max items allowed in a           |
72|                             |        | checkpoint                                 |
73| chk_period                  | int    | Time bound (in sec.) on a checkpoint       |
74| enable_chk_merge            | bool   | True if merging closed checkpoints is      |
75|                             |        | supported.                                 |
76| max_checkpoints             | int    | Number of max checkpoints allowed per      |
77|                             |        | vbucket                                    |
78| item_num_based_new_chk      | bool   | Enable a new checkpoint creation if the    |
79|                             |        | number of items in a checkpoint is greater |
80|                             |        | than the max number allowed                |
81|                             |        | along with normal get/set operations.      |
82| tap_backfill_resident       | float  | Resident item threshold for only memory    |
83|                             |        | backfill to be kicked off                  |
84| keep_closed_chks            | bool   | True if we want to keep closed checkpoints |
85|                             |        | in memory if the current memory usage is   |
86|                             |        | below high water mark                      |
87| bf_resident_threshold       | float  | Resident item threshold for only memory    |
88|                             |        | backfill to be kicked off                  |
89| getl_default_timeout        | int    | The default timeout for a getl lock in (s) |
90| getl_max_timeout            | int    | The maximum timeout for a getl lock in (s) |
91| backfill_mem_threshold      | float  | Memory threshold on the current bucket     |
92|                             |        | quota before backfill task is made to back |
93|                             |        | off                                        |
94| mutation_mem_threshold      | float  | Memory threshold on the current bucket     |
95|                             |        | quota for accepting a new mutation         |
96| tap_throttle_queue_cap      | int    | The maximum size of the disk write queue   |
97|                             |        | to throttle down tap-based replication. -1 |
98|                             |        | means don't throttle.                      |
99| tap_throttle_threshold      | float  | Percentage of memory in use before we      |
100|                             |        | throttle tap streams                       |
101| tap_throttle_cap_pcnt       | int    | Percentage of total items in write queue   |
102|                             |        | to throttle tap input. 0 means use fixed   |
103|                             |        | throttle queue cap.                        |
104| flushall_enabled            | bool   | True if we enable flush_all command; The   |
105|                             |        | default value is False.                    |
106| data_traffic_enabled        | bool   | True if we want to enable data traffic     |
107|                             |        | immediately after warmup completion        |
108| access_scanner_enabled      | bool   | True if access scanner task is enabled     |
109| alog_sleep_time             | int    | Interval of access scanner task in (min)   |
110| alog_task_time              | int    | Hour (0~23) in GMT time at which access    |
111|                             |        | scanner will be scheduled to run.          |
112| pager_active_vb_pcnt        | int    | Percentage of active vbucket items among   |
113|                             |        | all evicted items by item pager.           |
114| warmup_min_memory_threshold | int    | Memory threshold (%) during warmup to      |
115|                             |        | enable traffic.                            |
116| warmup_min_items_threshold  | int    | Item num threshold (%) during warmup to    |
117|                             |        | enable traffic.                            |
118| conflict_resolution_type    | string | Specifies the type of xdcr conflict        |
119|                             |        | resolution to use                          |
120| item_eviction_policy        | string | Item eviction policy used by the item      |
121|                             |        | pager (value_only or full_eviction)        |
122