xref: /3.0.3-GA/ep-engine/docs/engine-params.org (revision c1015f71)
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| tap_backlog_limit           | int    | Max number of items allowed in a           |
45|                             |        | tap backfill                               |
46| tap_noop_interval           | int    | Number of seconds between a noop is sent   |
47|                             |        | on an idle connection                      |
48| tap_keepalive               | int    | Seconds to hold open named tap connections |
49| tap_bg_max_pending          | int    | Maximum number of pending bg fetch         |
50|                             |        | operations                                 |
51|                             |        | a tap queue may issue (before it must wait |
52|                             |        | for responses to appear.                   |
53| tap_backoff_period          | float  | Number of seconds the tap connection       |
54|                             |        | should back off after receiving ETMPFAIL   |
55| warmup                      | bool   | Whether to load existing data at startup.  |
56| exp_pager_stime             | int    | Sleep time for the pager that purges       |
57|                             |        | expired objects from memory and disk       |
58| failpartialwarmup           | bool   | If false, continue running after failing   |
59|                             |        | to load some records.                      |
60| max_vbuckets                | int    | Maximum number of vbuckets expected (1024) |
61| concurrentDB                | bool   | True (default) if concurrent DB reads are  |
62|                             |        | permitted where possible.                  |
63| chk_remover_stime           | int    | Interval for the checkpoint remover that   |
64|                             |        | purges closed unreferenced checkpoints.    |
65| chk_max_items               | int    | Number of max items allowed in a           |
66|                             |        | checkpoint                                 |
67| chk_period                  | int    | Time bound (in sec.) on a checkpoint       |
68| enable_chk_merge            | bool   | True if merging closed checkpoints is      |
69|                             |        | supported.                                 |
70| max_checkpoints             | int    | Number of max checkpoints allowed per      |
71|                             |        | vbucket                                    |
72| item_num_based_new_chk      | bool   | Enable a new checkpoint creation if the    |
73|                             |        | number of items in a checkpoint is greater |
74|                             |        | than the max number allowed                |
75|                             |        | along with normal get/set operations.      |
76| tap_backfill_resident       | float  | Resident item threshold for only memory    |
77|                             |        | backfill to be kicked off                  |
78| keep_closed_chks            | bool   | True if we want to keep closed checkpoints |
79|                             |        | in memory if the current memory usage is   |
80|                             |        | below high water mark                      |
81| bf_resident_threshold       | float  | Resident item threshold for only memory    |
82|                             |        | backfill to be kicked off                  |
83| getl_default_timeout        | int    | The default timeout for a getl lock in (s) |
84| getl_max_timeout            | int    | The maximum timeout for a getl lock in (s) |
85| backfill_mem_threshold      | float  | Memory threshold on the current bucket     |
86|                             |        | quota before backfill task is made to back |
87|                             |        | off                                        |
88| compaction_exp_mem_threshold| float  | Memory threshold on the current bucket     |
89|                             |        | quota after which compaction will not queue|
90|                             |        | expired items for deletion.                |
91| mutation_mem_threshold      | float  | Memory threshold on the current bucket     |
92|                             |        | quota for accepting a new mutation         |
93| tap_throttle_queue_cap      | int    | The maximum size of the disk write queue   |
94|                             |        | to throttle down tap-based replication. -1 |
95|                             |        | means don't throttle.                      |
96| tap_throttle_threshold      | float  | Percentage of memory in use before we      |
97|                             |        | throttle tap streams                       |
98| tap_throttle_cap_pcnt       | int    | Percentage of total items in write queue   |
99|                             |        | to throttle tap input. 0 means use fixed   |
100|                             |        | throttle queue cap.                        |
101| flushall_enabled            | bool   | True if we enable flush_all command; The   |
102|                             |        | default value is False.                    |
103| data_traffic_enabled        | bool   | True if we want to enable data traffic     |
104|                             |        | immediately after warmup completion        |
105| access_scanner_enabled      | bool   | True if access scanner task is enabled     |
106| alog_sleep_time             | int    | Interval of access scanner task in (min)   |
107| alog_task_time              | int    | Hour (0~23) in GMT time at which access    |
108|                             |        | scanner will be scheduled to run.          |
109| pager_active_vb_pcnt        | int    | Percentage of active vbucket items among   |
110|                             |        | all evicted items by item pager.           |
111| warmup_min_memory_threshold | int    | Memory threshold (%) during warmup to      |
112|                             |        | enable traffic.                            |
113| warmup_min_items_threshold  | int    | Item num threshold (%) during warmup to    |
114|                             |        | enable traffic.                            |
115| conflict_resolution_type    | string | Specifies the type of xdcr conflict        |
116|                             |        | resolution to use                          |
117| item_eviction_policy        | string | Item eviction policy used by the item      |
118|                             |        | pager (value_only or full_eviction)        |
119