1{
2    "params": {
3        "allow_data_loss_during_shutdown": {
4            "default": "false",
5            "dynamic": false,
6            "type": "bool"
7        },
8        "alog_block_size": {
9            "default": "4096",
10            "descr": "Logging block size.",
11            "dynamic": false,
12            "type": "size_t"
13        },
14        "alog_path": {
15            "default": "",
16            "descr": "Path to the access log.",
17            "dynamic": false,
18            "type": "std::string"
19        },
20        "access_scanner_enabled": {
21            "default": "true",
22            "descr": "True if access scanner task is enabled",
23            "type": "bool"
24        },
25        "alog_sleep_time": {
26            "default": "1440",
27            "descr": "Number of minutes between each sweep for the access log",
28            "type": "size_t",
29            "validator": {
30                "range": {
31                    "max": 4320,
32                    "min": 1
33                }
34            }
35        },
36        "alog_task_time": {
37            "default": "10",
38            "descr": "Hour in GMT time when access scanner task is scheduled to run",
39            "type": "size_t",
40            "validator": {
41                "range": {
42                    "max": 23,
43                    "min": 0
44                }
45            }
46        },
47        "backend": {
48            "default": "couchdb",
49            "dynamic": false,
50            "type": "std::string",
51            "validator": {
52                "enum": [
53                    "couchdb"
54                ]
55            }
56        },
57        "backfill_mem_threshold": {
58            "default": "96",
59            "desr": "Percentage of memory that backfill task is allowed to consume",
60            "type": "size_t",
61            "validator": {
62                "range": {
63                    "max": 100,
64                    "min": 0
65                }
66            }
67        },
68        "bg_fetch_delay": {
69            "default": "0",
70            "type": "size_t",
71            "validator": {
72                "range": {
73                    "max": 900,
74                    "min": 0
75                }
76            }
77        },
78        "compaction_exp_mem_threshold": {
79            "default": "85",
80            "desr": "Memory usage threshold after which compaction will not queue expired items for deletion",
81            "type": "size_t",
82            "validator": {
83                "range": {
84                    "max": 100,
85                    "min": 0
86                }
87            }
88        },
89        "chk_max_items": {
90            "default": "500",
91            "type": "size_t"
92        },
93        "chk_period": {
94            "default": "5",
95            "type": "size_t"
96        },
97        "chk_remover_stime": {
98            "default": "5",
99            "type": "size_t"
100        },
101        "compaction_write_queue_cap": {
102            "default": "10000",
103            "desr" : "Disk write queue threshold after which compaction tasks will be made to snooze, if there are already pending compaction tasks",
104            "type" : "size_t"
105        },
106        "config_file": {
107            "default": "",
108            "dynamic": false,
109            "type": "std::string"
110        },
111        "conflict_resolution_type": {
112            "default": "seqno",
113            "dynamic": false,
114            "type": "std::string",
115            "validator": {
116                "enum": [
117                    "seqno"
118                ]
119            }
120        },
121        "couch_bucket": {
122            "default": "default",
123            "dynamic": false,
124            "type": "std::string"
125        },
126        "data_traffic_enabled": {
127            "default": "true",
128            "descr": "True if we want to enable data traffic after warmup is complete",
129            "type": "bool"
130        },
131        "dbname": {
132            "default": "/tmp/test",
133            "descr": "Path to on-disk storage.",
134            "dynamic": false,
135            "type": "std::string"
136        },
137        "enable_chk_merge": {
138            "default": "false",
139            "descr": "True if merging closed checkpoints is enabled",
140            "type": "bool"
141        },
142        "exp_pager_stime": {
143            "default": "3600",
144            "type": "size_t"
145        },
146        "failpartialwarmup": {
147            "default": "true",
148            "type": "bool"
149        },
150        "flushall_enabled": {
151            "default": "false",
152            "descr": "True if memcached flush API is enabled",
153            "type": "bool"
154        },
155        "getl_default_timeout": {
156            "default": "15",
157            "descr": "The default timeout for a getl lock in (s)",
158            "type": "size_t"
159        },
160        "getl_max_timeout": {
161            "default": "30",
162            "descr": "The maximum timeout for a getl lock in (s)",
163            "type": "size_t"
164        },
165        "ht_locks": {
166            "default": "0",
167            "type": "size_t"
168        },
169        "ht_size": {
170            "default": "0",
171            "type": "size_t"
172        },
173        "initfile": {
174            "default": "",
175            "type": "std::string"
176        },
177        "item_eviction_policy": {
178            "default": "value_only",
179            "descr": "Item eviction policy on cache, which is used by the item pager",
180            "type": "std::string",
181            "validator": {
182                "enum": [
183                    "value_only",
184                    "full_eviction"
185                ]
186            }
187        },
188        "item_num_based_new_chk": {
189            "default": "true",
190            "descr": "True if the number of items in the current checkpoint plays a role in a new checkpoint creation",
191            "type": "bool"
192        },
193        "keep_closed_chks": {
194            "default": "false",
195            "descr": "True if we want to keep the closed checkpoints for each vbucket unless the memory usage is above high water mark",
196            "type": "bool"
197        },
198        "max_checkpoints": {
199            "default": "2",
200            "type": "size_t"
201        },
202        "max_failover_entries": {
203            "default": "25",
204            "descr": "maximum number of failover log entries",
205            "type": "size_t"
206        },
207        "max_item_size": {
208            "default": "(20 * 1024 * 1024)",
209            "descr": "Maximum number of bytes allowed for an item",
210            "type": "size_t"
211        },
212        "max_size": {
213            "default": "0",
214            "type": "size_t"
215        },
216        "max_vbuckets": {
217            "default": "1024",
218            "descr": "Maximum number of vbuckets expected",
219            "dynamic": false,
220            "type": "size_t"
221        },
222        "max_threads": {
223            "default": "0",
224            "descr": "Maximum number of threads in global pool",
225            "dynamic": false,
226            "type": "size_t"
227        },
228        "max_num_shards": {
229            "default": "4",
230            "descr": "Maximum number of shards",
231            "dynamic": false,
232            "type": "size_t"
233        },
234        "max_num_workers": {
235            "default": "4",
236            "descr": "Bucket Priority relative to other buckets",
237            "dynamic": false,
238            "type": "size_t",
239            "validator": {
240                "range": {
241                    "max": 8,
242                    "min": 1
243                }
244            }
245        },
246        "max_num_readers": {
247            "default": "0",
248            "descr": "Throttle max number of reader threads",
249            "dynamic": false,
250            "type": "size_t",
251            "validator": {
252                "range": {
253                    "max": 512,
254                    "min": 0
255                }
256            }
257        },
258        "max_num_writers": {
259            "default": "0",
260            "descr": "Throttle max number of writer threads",
261            "dynamic": false,
262            "type": "size_t",
263            "validator": {
264                "range": {
265                    "max": 512,
266                    "min": 0
267                }
268            }
269        },
270        "max_num_auxio": {
271            "default": "0",
272            "descr": "Throttle max number of aux io threads",
273            "dynamic": false,
274            "type": "size_t",
275            "validator": {
276                "range": {
277                    "max": 512,
278                    "min": 0
279                }
280            }
281        },
282        "max_num_nonio": {
283            "default": "0",
284            "descr": "Throttle max number of non io threads",
285            "dynamic": false,
286            "type": "size_t",
287            "validator": {
288                "range": {
289                    "max": 512,
290                    "min": 0
291                }
292            }
293        },
294        "mem_high_wat": {
295            "default": "max",
296            "type": "size_t"
297        },
298        "mem_low_wat": {
299            "default": "max",
300            "type": "size_t"
301        },
302        "mutation_mem_threshold": {
303            "default": "93",
304            "desr": "Percentage of memory that can be used before mutations return tmpOOMs",
305            "type": "size_t",
306            "validator" : {
307                "range" : {
308                    "max": 100,
309                    "min": 0
310                }
311            }
312        },
313        "pager_active_vb_pcnt": {
314            "default": "40",
315            "descr": "Active vbuckets paging percentage",
316            "type": "size_t",
317            "validator": {
318                "range": {
319                    "max": 50,
320                    "min": 0
321                }
322            }
323        },
324        "postInitfile": {
325            "default": "",
326            "type": "std::string"
327        },
328        "tap_ack_grace_period": {
329            "default": "300",
330            "type": "size_t"
331        },
332        "tap_ack_initial_sequence_number": {
333            "default": "1",
334            "type": "size_t"
335        },
336        "tap_ack_interval": {
337            "default": "1000",
338            "type": "size_t"
339        },
340        "tap_ack_window_size": {
341            "default": "10",
342            "type": "size_t"
343        },
344        "tap_backfill_resident": {
345            "default": "0.9",
346            "type": "float"
347        },
348        "tap_backlog_limit": {
349            "default": "5000",
350            "type": "size_t"
351        },
352        "tap_backoff_period": {
353            "default": "5.0",
354            "type": "float"
355        },
356        "tap_bg_max_pending": {
357            "default": "500",
358            "type": "size_t"
359        },
360        "tap_keepalive": {
361            "default": "0",
362            "type": "size_t"
363        },
364        "tap_noop_interval": {
365            "default": "200",
366            "descr": "Number of seconds between a noop is sent on an idle connection",
367            "type": "size_t"
368        },
369        "tap_requeue_sleep_time": {
370            "default": "0.1",
371            "type": "float"
372        },
373        "tap_throttle_cap_pcnt": {
374            "default": "10",
375            "descr": "Percentage of total items in write queue at which we throttle tap input",
376            "type": "size_t",
377            "validator": {
378                "range": {
379                    "max": 100,
380                    "min": 0
381                }
382            }
383        },
384        "tap_throttle_queue_cap": {
385            "default": "-1",
386            "descr": "Max size of a write queue to throttle incoming tap input.",
387            "type": "ssize_t",
388            "validator": {
389                "range": {
390                    "max": 100000000,
391                    "min": -1
392                }
393            }
394        },
395        "tap_throttle_threshold": {
396            "default": "99",
397            "descr": "Percentage of max mem at which we begin NAKing tap input.",
398            "type": "size_t",
399            "validator": {
400                "range": {
401                    "max": 100,
402                    "min": 0
403                }
404            }
405        },
406        "uuid": {
407            "default": "",
408            "descr": "The UUID for the bucket",
409            "dynamic" : false,
410            "type": "std::string"
411        },
412        "dcp_conn_buffer_size": {
413            "default": "10485760",
414            "descr": "Size in bytes of an dcp consumer connection buffer",
415            "dynamic": false,
416            "type": "size_t"
417        },
418        "dcp_enable_flow_control": {
419            "default": "true",
420            "descr": "Whether or not dcp connections should use flow control",
421            "dynamic": false,
422            "type": "bool"
423        },
424        "dcp_enable_noop": {
425            "default": "true",
426            "descr": "Whether or not dcp connections should use no-ops",
427            "dynamic": false,
428            "type": "bool"
429        },
430        "dcp_noop_interval": {
431            "default": "180",
432            "descr": "Number of seconds between a noop",
433            "type": "size_t"
434        },
435        "dcp_max_unacked_bytes": {
436            "default": "524288",
437            "descr": "Amount of processed bytes before an ack is required",
438            "dynamic": false,
439            "type": "size_t"
440        },
441        "vb0": {
442            "default": "false",
443            "type": "bool"
444        },
445        "waitforwarmup": {
446            "default": "false",
447            "type": "bool"
448        },
449        "warmup": {
450            "default": "true",
451            "type": "bool"
452        },
453        "warmup_batch_size": {
454            "default": "1000",
455            "descr": "The size of each batch loaded during warmup.",
456            "dynamic": false,
457            "type": "size_t",
458            "validator": {
459                "range": {
460                    "max": 10000,
461                    "min": 1
462                }
463            }
464        },
465        "warmup_min_memory_threshold": {
466            "default": "100",
467            "descr": "Percentage of max mem warmed up before we enable traffic.",
468            "type": "size_t",
469            "validator": {
470                "range": {
471                    "max": 100,
472                    "min": 0
473                }
474            }
475        },
476        "warmup_min_items_threshold": {
477            "default": "100",
478            "descr": "Percentage of total items warmed up before we enable traffic.",
479            "type": "size_t",
480            "validator": {
481                "range": {
482                    "max": 100,
483                    "min": 0
484                }
485            }
486        }
487    }
488}
489