diff options
author | Oran Agra <oran@redislabs.com> | 2019-11-28 11:24:57 +0200 |
---|---|---|
committer | Oran Agra <oran@redislabs.com> | 2019-11-28 11:24:57 +0200 |
commit | 18e72c5cc723c60489b1598de8c3c503ef42c7d0 (patch) | |
tree | 476dcc0c741f7894c50c55640bd29d35b7aacf88 /src/server.c | |
parent | 28beb05aa322e4e72ac6b7b477f38f8c5eab0d57 (diff) | |
download | redis-18e72c5cc723c60489b1598de8c3c503ef42c7d0.tar.gz |
Converting more configs to use generic infra, and moving defaults to config.c
Changes in behavior:
- Change server.stream_node_max_entries from int64_t to long long, so that it can be used by the generic infra
- standard error reply instead of "repl-backlog-size must be 1 or greater" and such
- tls-port and a few TLS booleans were readable (config get) even when USE_OPENSSL was off (now they aren't)
- syslog-enabled, syslog-ident, cluster-enabled, appendfilename, and supervised didn't have a get (now they do)
- pidfile was initialized to NULL in InitServerConfig but had CONFIG_DEFAULT_PID_FILE in rewriteConfig (so the real default was "", but rewrite would cause it to be set), fixed the rewrite.
- TLS config in server.h was uninitialized (if no tls config args were provided)
Adding test for sanity and coverage
Diffstat (limited to 'src/server.c')
-rw-r--r-- | src/server.c | 105 |
1 files changed, 2 insertions, 103 deletions
diff --git a/src/server.c b/src/server.c index 497d093f1..72f136446 100644 --- a/src/server.c +++ b/src/server.c @@ -2274,49 +2274,18 @@ void initServerConfig(void) { server.timezone = getTimeZone(); /* Initialized by tzset(). */ server.configfile = NULL; server.executable = NULL; - server.hz = server.config_hz = CONFIG_DEFAULT_HZ; - server.dynamic_hz = CONFIG_DEFAULT_DYNAMIC_HZ; server.arch_bits = (sizeof(long) == 8) ? 64 : 32; - server.port = CONFIG_DEFAULT_SERVER_PORT; - server.tls_port = CONFIG_DEFAULT_SERVER_TLS_PORT; - server.tcp_backlog = CONFIG_DEFAULT_TCP_BACKLOG; server.bindaddr_count = 0; - server.unixsocket = NULL; server.unixsocketperm = CONFIG_DEFAULT_UNIX_SOCKET_PERM; server.ipfd_count = 0; server.tlsfd_count = 0; server.sofd = -1; - server.protected_mode = CONFIG_DEFAULT_PROTECTED_MODE; - server.gopher_enabled = CONFIG_DEFAULT_GOPHER_ENABLED; - server.dbnum = CONFIG_DEFAULT_DBNUM; - server.verbosity = CONFIG_DEFAULT_VERBOSITY; - server.maxidletime = CONFIG_DEFAULT_CLIENT_TIMEOUT; - server.tcpkeepalive = CONFIG_DEFAULT_TCP_KEEPALIVE; server.active_expire_enabled = 1; - server.active_expire_effort = CONFIG_DEFAULT_ACTIVE_EXPIRE_EFFORT; - server.jemalloc_bg_thread = 1; - server.active_defrag_ignore_bytes = CONFIG_DEFAULT_DEFRAG_IGNORE_BYTES; - server.active_defrag_threshold_lower = CONFIG_DEFAULT_DEFRAG_THRESHOLD_LOWER; - server.active_defrag_threshold_upper = CONFIG_DEFAULT_DEFRAG_THRESHOLD_UPPER; - server.active_defrag_cycle_min = CONFIG_DEFAULT_DEFRAG_CYCLE_MIN; - server.active_defrag_cycle_max = CONFIG_DEFAULT_DEFRAG_CYCLE_MAX; - server.active_defrag_max_scan_fields = CONFIG_DEFAULT_DEFRAG_MAX_SCAN_FIELDS; - server.proto_max_bulk_len = CONFIG_DEFAULT_PROTO_MAX_BULK_LEN; server.client_max_querybuf_len = PROTO_MAX_QUERYBUF_LEN; server.saveparams = NULL; server.loading = 0; server.logfile = zstrdup(CONFIG_DEFAULT_LOGFILE); - server.syslog_enabled = CONFIG_DEFAULT_SYSLOG_ENABLED; - server.syslog_ident = zstrdup(CONFIG_DEFAULT_SYSLOG_IDENT); - server.syslog_facility = LOG_LOCAL0; - server.daemonize = CONFIG_DEFAULT_DAEMONIZE; - server.supervised = 0; - server.supervised_mode = SUPERVISED_NONE; server.aof_state = AOF_OFF; - server.aof_fsync = CONFIG_DEFAULT_AOF_FSYNC; - server.aof_no_fsync_on_rewrite = CONFIG_DEFAULT_AOF_NO_FSYNC_ON_REWRITE; - server.aof_rewrite_perc = AOF_REWRITE_PERC; - server.aof_rewrite_min_size = AOF_REWRITE_MIN_SIZE; server.aof_rewrite_base_size = 0; server.aof_rewrite_scheduled = 0; server.aof_flush_sleep = 0; @@ -2328,63 +2297,18 @@ void initServerConfig(void) { server.aof_fd = -1; server.aof_selected_db = -1; /* Make sure the first time will not match */ server.aof_flush_postponed_start = 0; - server.aof_rewrite_incremental_fsync = CONFIG_DEFAULT_AOF_REWRITE_INCREMENTAL_FSYNC; - server.rdb_save_incremental_fsync = CONFIG_DEFAULT_RDB_SAVE_INCREMENTAL_FSYNC; - server.rdb_key_save_delay = CONFIG_DEFAULT_RDB_KEY_SAVE_DELAY; - server.key_load_delay = CONFIG_DEFAULT_KEY_LOAD_DELAY; - server.aof_load_truncated = CONFIG_DEFAULT_AOF_LOAD_TRUNCATED; - server.aof_use_rdb_preamble = CONFIG_DEFAULT_AOF_USE_RDB_PREAMBLE; server.pidfile = NULL; - server.rdb_filename = zstrdup(CONFIG_DEFAULT_RDB_FILENAME); - server.aof_filename = zstrdup(CONFIG_DEFAULT_AOF_FILENAME); - server.acl_filename = zstrdup(CONFIG_DEFAULT_ACL_FILENAME); - server.rdb_compression = CONFIG_DEFAULT_RDB_COMPRESSION; - server.rdb_checksum = CONFIG_DEFAULT_RDB_CHECKSUM; - server.stop_writes_on_bgsave_err = CONFIG_DEFAULT_STOP_WRITES_ON_BGSAVE_ERROR; - server.activerehashing = CONFIG_DEFAULT_ACTIVE_REHASHING; server.active_defrag_running = 0; server.notify_keyspace_events = 0; - server.maxclients = CONFIG_DEFAULT_MAX_CLIENTS; server.blocked_clients = 0; memset(server.blocked_clients_by_type,0, sizeof(server.blocked_clients_by_type)); - server.maxmemory = CONFIG_DEFAULT_MAXMEMORY; - server.maxmemory_policy = CONFIG_DEFAULT_MAXMEMORY_POLICY; - server.maxmemory_samples = CONFIG_DEFAULT_MAXMEMORY_SAMPLES; - server.lfu_log_factor = CONFIG_DEFAULT_LFU_LOG_FACTOR; - server.lfu_decay_time = CONFIG_DEFAULT_LFU_DECAY_TIME; - server.hash_max_ziplist_entries = OBJ_HASH_MAX_ZIPLIST_ENTRIES; - server.hash_max_ziplist_value = OBJ_HASH_MAX_ZIPLIST_VALUE; - server.list_max_ziplist_size = OBJ_LIST_MAX_ZIPLIST_SIZE; - server.list_compress_depth = OBJ_LIST_COMPRESS_DEPTH; - server.set_max_intset_entries = OBJ_SET_MAX_INTSET_ENTRIES; - server.zset_max_ziplist_entries = OBJ_ZSET_MAX_ZIPLIST_ENTRIES; - server.zset_max_ziplist_value = OBJ_ZSET_MAX_ZIPLIST_VALUE; - server.hll_sparse_max_bytes = CONFIG_DEFAULT_HLL_SPARSE_MAX_BYTES; - server.stream_node_max_bytes = OBJ_STREAM_NODE_MAX_BYTES; - server.stream_node_max_entries = OBJ_STREAM_NODE_MAX_ENTRIES; server.shutdown_asap = 0; - server.cluster_enabled = 0; - server.cluster_node_timeout = CLUSTER_DEFAULT_NODE_TIMEOUT; - server.cluster_migration_barrier = CLUSTER_DEFAULT_MIGRATION_BARRIER; - server.cluster_slave_validity_factor = CLUSTER_DEFAULT_SLAVE_VALIDITY; - server.cluster_require_full_coverage = CLUSTER_DEFAULT_REQUIRE_FULL_COVERAGE; - server.cluster_slave_no_failover = CLUSTER_DEFAULT_SLAVE_NO_FAILOVER; server.cluster_configfile = zstrdup(CONFIG_DEFAULT_CLUSTER_CONFIG_FILE); - server.cluster_announce_ip = CONFIG_DEFAULT_CLUSTER_ANNOUNCE_IP; - server.cluster_announce_port = CONFIG_DEFAULT_CLUSTER_ANNOUNCE_PORT; - server.cluster_announce_bus_port = CONFIG_DEFAULT_CLUSTER_ANNOUNCE_BUS_PORT; server.cluster_module_flags = CLUSTER_MODULE_FLAG_NONE; server.migrate_cached_sockets = dictCreate(&migrateCacheDictType,NULL); server.next_client_id = 1; /* Client IDs, start from 1 .*/ server.loading_process_events_interval_bytes = (1024*1024*2); - server.lazyfree_lazy_eviction = CONFIG_DEFAULT_LAZYFREE_LAZY_EVICTION; - server.lazyfree_lazy_expire = CONFIG_DEFAULT_LAZYFREE_LAZY_EXPIRE; - server.lazyfree_lazy_server_del = CONFIG_DEFAULT_LAZYFREE_LAZY_SERVER_DEL; - server.always_show_logo = CONFIG_DEFAULT_ALWAYS_SHOW_LOGO; - server.lua_time_limit = LUA_SCRIPT_TIME_LIMIT; - server.io_threads_num = CONFIG_DEFAULT_IO_THREADS_NUM; - server.io_threads_do_reads = CONFIG_DEFAULT_IO_THREADS_DO_READS; server.lruclock = getLRUClock(); resetServerSaveParams(); @@ -2405,31 +2329,14 @@ void initServerConfig(void) { server.repl_transfer_fd = -1; server.repl_transfer_s = NULL; server.repl_syncio_timeout = CONFIG_REPL_SYNCIO_TIMEOUT; - server.repl_serve_stale_data = CONFIG_DEFAULT_SLAVE_SERVE_STALE_DATA; - server.repl_slave_ro = CONFIG_DEFAULT_SLAVE_READ_ONLY; - server.repl_slave_ignore_maxmemory = CONFIG_DEFAULT_SLAVE_IGNORE_MAXMEMORY; - server.repl_slave_lazy_flush = CONFIG_DEFAULT_SLAVE_LAZY_FLUSH; server.repl_down_since = 0; /* Never connected, repl is down since EVER. */ - server.repl_disable_tcp_nodelay = CONFIG_DEFAULT_REPL_DISABLE_TCP_NODELAY; - server.repl_diskless_sync = CONFIG_DEFAULT_REPL_DISKLESS_SYNC; - server.repl_diskless_load = CONFIG_DEFAULT_REPL_DISKLESS_LOAD; - server.repl_diskless_sync_delay = CONFIG_DEFAULT_REPL_DISKLESS_SYNC_DELAY; - server.repl_ping_slave_period = CONFIG_DEFAULT_REPL_PING_SLAVE_PERIOD; - server.repl_timeout = CONFIG_DEFAULT_REPL_TIMEOUT; - server.repl_min_slaves_to_write = CONFIG_DEFAULT_MIN_SLAVES_TO_WRITE; - server.repl_min_slaves_max_lag = CONFIG_DEFAULT_MIN_SLAVES_MAX_LAG; - server.slave_priority = CONFIG_DEFAULT_SLAVE_PRIORITY; - server.slave_announce_ip = CONFIG_DEFAULT_SLAVE_ANNOUNCE_IP; - server.slave_announce_port = CONFIG_DEFAULT_SLAVE_ANNOUNCE_PORT; server.master_repl_offset = 0; /* Replication partial resync backlog */ server.repl_backlog = NULL; - server.repl_backlog_size = CONFIG_DEFAULT_REPL_BACKLOG_SIZE; server.repl_backlog_histlen = 0; server.repl_backlog_idx = 0; server.repl_backlog_off = 0; - server.repl_backlog_time_limit = CONFIG_DEFAULT_REPL_BACKLOG_TIME_LIMIT; server.repl_no_slaves_since = time(NULL); /* Client output buffer limits */ @@ -2462,16 +2369,6 @@ void initServerConfig(void) { server.xclaimCommand = lookupCommandByCString("xclaim"); server.xgroupCommand = lookupCommandByCString("xgroup"); - /* Slow log */ - server.slowlog_log_slower_than = CONFIG_DEFAULT_SLOWLOG_LOG_SLOWER_THAN; - server.slowlog_max_len = CONFIG_DEFAULT_SLOWLOG_MAX_LEN; - - /* Latency monitor */ - server.latency_monitor_threshold = CONFIG_DEFAULT_LATENCY_MONITOR_THRESHOLD; - - /* Tracking. */ - server.tracking_table_max_fill = CONFIG_DEFAULT_TRACKING_TABLE_MAX_FILL; - /* Debugging */ server.assert_failed = "<no assertion failed>"; server.assert_file = "<no file>"; @@ -2785,6 +2682,8 @@ void initServer(void) { server.syslog_facility); } + /* Initialization after setting defaults from the config system. */ + server.aof_state = server.aof_enabled ? AOF_ON : AOF_OFF; server.hz = server.config_hz; server.pid = getpid(); server.current_client = NULL; |