aboutsummaryrefslogtreecommitdiffstats
path: root/src/libserver/cfg_utils.c
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2019-05-10 17:40:39 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2019-05-10 17:40:39 +0100
commitb218ec15bdae237f5ec9f23821239c29e2d3757d (patch)
tree8c4ccd4c745c7590497e44cc3b16832b2a4657cb /src/libserver/cfg_utils.c
parentbc8a0fe1d5f55e6ec47200028a027d1843d6306d (diff)
downloadrspamd-b218ec15bdae237f5ec9f23821239c29e2d3757d.tar.gz
rspamd-b218ec15bdae237f5ec9f23821239c29e2d3757d.zip
[Minor] Allow to tune GC related options
Diffstat (limited to 'src/libserver/cfg_utils.c')
-rw-r--r--src/libserver/cfg_utils.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/libserver/cfg_utils.c b/src/libserver/cfg_utils.c
index 308fb654e..265e575a7 100644
--- a/src/libserver/cfg_utils.c
+++ b/src/libserver/cfg_utils.c
@@ -49,6 +49,9 @@
#define DEFAULT_MAX_WORKERS 4
/* Timeout for task processing */
#define DEFAULT_TASK_TIMEOUT 8.0
+#define DEFAULT_LUA_GC_STEP 200
+#define DEFAULT_LUA_GC_PAUSE 200
+#define DEFAULT_GC_MAXITERS 0
struct rspamd_ucl_map_cbdata {
struct rspamd_config *cfg;
@@ -200,6 +203,11 @@ rspamd_config_new (enum rspamd_config_init_flags flags)
cfg->min_word_len = DEFAULT_MIN_WORD;
cfg->max_word_len = DEFAULT_MAX_WORD;
+ /* GC limits */
+ cfg->lua_gc_pause = DEFAULT_LUA_GC_PAUSE;
+ cfg->lua_gc_step = DEFAULT_LUA_GC_STEP;
+ cfg->full_gc_iters = DEFAULT_GC_MAXITERS;
+
if (!(flags & RSPAMD_CONFIG_INIT_SKIP_LUA)) {
cfg->lua_state = rspamd_lua_init (flags & RSPAMD_CONFIG_INIT_WIPE_LUA_MEM);
cfg->own_lua_state = TRUE;