MCPcopy Create free account
hub / github.com/F-Stack/f-stack / initServer

Function initServer

app/redis-6.2.6/src/server.c:3147–3368  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3145}
3146
3147void initServer(void) {
3148 int j;
3149
3150 signal(SIGHUP, SIG_IGN);
3151 signal(SIGPIPE, SIG_IGN);
3152 setupSignalHandlers();
3153 makeThreadKillable();
3154
3155 if (server.syslog_enabled) {
3156 openlog(server.syslog_ident, LOG_PID | LOG_NDELAY | LOG_NOWAIT,
3157 server.syslog_facility);
3158 }
3159
3160 /* Initialization after setting defaults from the config system. */
3161 server.aof_state = server.aof_enabled ? AOF_ON : AOF_OFF;
3162 server.hz = server.config_hz;
3163 server.pid = getpid();
3164 server.in_fork_child = CHILD_TYPE_NONE;
3165 server.main_thread_id = pthread_self();
3166 server.current_client = NULL;
3167 server.errors = raxNew();
3168 server.fixed_time_expire = 0;
3169 server.clients = listCreate();
3170 server.clients_index = raxNew();
3171 server.clients_to_close = listCreate();
3172 server.slaves = listCreate();
3173 server.monitors = listCreate();
3174 server.clients_pending_write = listCreate();
3175 server.clients_pending_read = listCreate();
3176 server.clients_timeout_table = raxNew();
3177 server.replication_allowed = 1;
3178 server.slaveseldb = -1; /* Force to emit the first SELECT command. */
3179 server.unblocked_clients = listCreate();
3180 server.ready_keys = listCreate();
3181 server.clients_waiting_acks = listCreate();
3182 server.get_ack_from_slaves = 0;
3183 server.client_pause_type = 0;
3184 server.paused_clients = listCreate();
3185 server.events_processed_while_blocked = 0;
3186 server.system_memory_size = zmalloc_get_memory_size();
3187 server.blocked_last_cron = 0;
3188 server.blocking_op_nesting = 0;
3189
3190 if ((server.tls_port || server.tls_replication || server.tls_cluster)
3191 && tlsConfigure(&server.tls_ctx_config) == C_ERR) {
3192 serverLog(LL_WARNING, "Failed to configure TLS. Check logs for more info.");
3193 exit(1);
3194 }
3195
3196 createSharedObjects();
3197 adjustOpenFilesLimit();
3198 const char *clk_msg = monotonicInit();
3199 serverLog(LL_NOTICE, "monotonic clock: %s", clk_msg);
3200 server.el = aeCreateEventLoop(server.maxclients+CONFIG_FDSET_INCR);
3201 if (server.el == NULL) {
3202 serverLog(LL_WARNING,
3203 "Failed creating the event loop. Error message: '%s'",
3204 strerror(errno));

Callers 1

mainFunction · 0.85

Calls 15

setupSignalHandlersFunction · 0.85
makeThreadKillableFunction · 0.85
raxNewFunction · 0.85
listCreateFunction · 0.85
zmalloc_get_memory_sizeFunction · 0.85
tlsConfigureFunction · 0.85
createSharedObjectsFunction · 0.85
adjustOpenFilesLimitFunction · 0.85
monotonicInitFunction · 0.85
aeCreateEventLoopFunction · 0.85
zmallocFunction · 0.85
listenToPortFunction · 0.85

Tested by

no test coverage detected