redis/src
Eduardo Semprebon 3a1d14259d
Allow configuring signaled shutdown flags (#10594)
The SHUTDOWN command has various flags to change it's default behavior,
but in some cases establishing a connection to redis is complicated and it's easier
for the management software to use signals. however, so far the signals could only
trigger the default shutdown behavior.
Here we introduce the option to control shutdown arguments for SIGTERM and SIGINT.

New config options:
`shutdown-on-sigint [nosave | save] [now] [force]` 
`shutdown-on-sigterm [nosave | save] [now] [force]`

Implementation:
Support MULTI_ARG_CONFIG on createEnumConfig to support multiple enums to be applied as bit flags.

Co-authored-by: Oran Agra <oran@redislabs.com>
2022-04-26 14:34:04 +03:00
..
commands Fix several document error and function comments (#10580) 2022-04-13 21:18:37 +03:00
modules use $^ instead of $< for linker in module makefile (#10530) 2022-04-05 17:08:27 +03:00
.gitignore
Makefile Build commands.c in Makefile (#10039) 2022-01-06 17:59:37 +02:00
acl.c Add new RM_Call flags for script mode, no writes, and error replies. (#10372) 2022-03-22 14:13:28 +02:00
adlist.c Free value if dup succeed but listAddNodeTail failed. (#8901) 2021-05-03 13:39:07 +03:00
adlist.h Speedup: unblock clients on keys in O(1). 2020-04-08 12:55:57 +02:00
ae.c Add event loop support to the module API (#10001) 2022-01-18 13:10:07 +02:00
ae.h Add event loop support to the module API (#10001) 2022-01-18 13:10:07 +02:00
ae_epoll.c Fail fast when systemic error occurs in poll (#8749) 2021-04-26 15:52:06 +03:00
ae_evport.c Fix cluster bus extensions backwards compatibility (#10206) 2022-01-30 19:43:37 +02:00
ae_kqueue.c Fix the timing of read and write events under kqueue (#9416) 2021-09-02 11:07:51 +03:00
ae_select.c Fail fast when systemic error occurs in poll (#8749) 2021-04-26 15:52:06 +03:00
anet.c Add socket-mark-id support for marking sockets. (#10349) 2022-04-20 09:29:37 +03:00
anet.h Add socket-mark-id support for marking sockets. (#10349) 2022-04-20 09:29:37 +03:00
aof.c Fixes around AOF failed rewrite rate limiting (#10582) 2022-04-19 12:06:39 +03:00
asciilogo.h Changes http to https in texts (#8495) 2021-03-10 19:11:16 +02:00
atomicvar.h Several (mostly Solaris-related) cleanups (#8171) 2020-12-13 17:09:54 +02:00
bio.c Delete unused 'time' fields from struct bio_job (#9622) 2021-10-10 08:17:54 +03:00
bio.h Delete some unimplemented prototype. (#8882) 2021-04-29 08:25:10 +03:00
bitops.c Fix typos and limit unknown command error message (#10634) 2022-04-25 17:59:39 +03:00
blocked.c optimize(remove) usage of client's pending_querybuf (#10413) 2022-03-25 10:45:40 +08:00
call_reply.c Add new RM_Call flags for script mode, no writes, and error replies. (#10372) 2022-03-22 14:13:28 +02:00
call_reply.h Add new RM_Call flags for script mode, no writes, and error replies. (#10372) 2022-03-22 14:13:28 +02:00
childinfo.c Implement anetPipe() to combine creating pipe and setting flags (#9511) 2021-10-06 16:08:13 +03:00
cli_common.c Fix error/warning on Arm due to unsigned char. (#10572) 2022-04-12 18:55:11 +03:00
cli_common.h redis-cli: Better --json Unicode support and --quoted-json (#10286) 2022-03-05 21:25:52 +02:00
cluster.c Add RM_PublishMessageShard (#10543) 2022-04-17 15:43:22 +03:00
cluster.h Add RM_PublishMessageShard (#10543) 2022-04-17 15:43:22 +03:00
commands.c Fix several document error and function comments (#10580) 2022-04-13 21:18:37 +03:00
config.c Allow configuring signaled shutdown flags (#10594) 2022-04-26 14:34:04 +03:00
config.h Add socket-mark-id support for marking sockets. (#10349) 2022-04-20 09:29:37 +03:00
connection.c Reduce system calls of write for client->reply by introducing writev (#9934) 2022-02-22 14:00:37 +02:00
connection.h Reduce system calls of write for client->reply by introducing writev (#9934) 2022-02-22 14:00:37 +02:00
connhelpers.h Fixed some typos, add a spell check ci and others minor fix (#8890) 2021-06-10 15:39:33 +03:00
crc16.c
crc16_slottable.h Added basic support for clusters to redis-benchmark. 2019-03-01 17:53:14 +01:00
crc64.c Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
crc64.h Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
crcspeed.c Fixed some typos, add a spell check ci and others minor fix (#8890) 2021-06-10 15:39:33 +03:00
crcspeed.h Added crcspeed library 2020-04-24 17:11:21 -07:00
db.c Keyspace event for new keys (#10512) 2022-04-13 11:36:38 +03:00
debug.c Set replicas to panic on disk errors, and optionally panic on replication errors (#10504) 2022-04-26 13:25:33 +03:00
debugmacro.h Supplement define guards to prevent multiple inclusion (#10246) 2022-02-06 20:13:34 -08:00
defrag.c fix typos (#10402) 2022-03-09 13:58:23 +02:00
dict.c Fix some nonsense came from LGTM (#9962) 2021-12-19 17:52:23 +02:00
dict.h Fix possible int overflow when hashing an sds. (#9916) 2021-12-13 21:16:25 +02:00
endianconv.c Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
endianconv.h Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
eval.c Fix incorrect error code for eval scripts and fix test error checking (#10575) 2022-04-14 11:18:32 +03:00
evict.c isSafeToPerformEvictions: Remove redundant condition (#10610) 2022-04-24 16:12:00 +03:00
expire.c sub-command support for ACL CAT and COMMAND LIST. redisCommand always stores fullname (#10127) 2022-01-23 10:05:06 +02:00
fmacros.h Fix failed tests on Linux Alpine and add a CI job. (#8532) 2021-02-23 12:57:45 +02:00
function_lua.c Fix incorrect error code for eval scripts and fix test error checking (#10575) 2022-04-14 11:18:32 +03:00
functions.c Functions: Move library meta data to be part of the library payload. (#10500) 2022-04-05 10:27:24 +03:00
functions.h Functions: Move library meta data to be part of the library payload. (#10500) 2022-04-05 10:27:24 +03:00
geo.c Fix some nonsense came from LGTM (#9962) 2021-12-19 17:52:23 +02:00
geo.h
geohash.c Fix mistake / outdated doc comment (#10521) 2022-04-04 15:35:49 +03:00
geohash.h Remove duplicate header file include (#10264) 2022-02-08 16:49:47 +02:00
geohash_helper.c Fix geo search bounding box check causing missing results (#10018) 2022-02-21 08:06:58 +02:00
geohash_helper.h Delete some unimplemented prototype. (#8882) 2021-04-29 08:25:10 +03:00
help.h Fixes commands' syntices (#10534) 2022-04-06 09:33:33 +03:00
hyperloglog.c Sort out the mess around writable replicas and lookupKeyRead/Write (#9572) 2021-11-28 11:26:28 +02:00
intset.c Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
intset.h Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
latency.c sub-command support for ACL CAT and COMMAND LIST. redisCommand always stores fullname (#10127) 2022-01-23 10:05:06 +02:00
latency.h Disable THP if enabled (#7381) 2020-10-27 15:04:18 +02:00
lazyfree.c Redis Function Libraries (#10004) 2022-01-06 13:39:38 +02:00
listpack.c Optimize integer zset scores in listpack (converting to string and back) (#10486) 2022-04-17 17:16:46 +03:00
listpack.h Optimize integer zset scores in listpack (converting to string and back) (#10486) 2022-04-17 17:16:46 +03:00
listpack_malloc.h Optimize listpack for stream usage to avoid repeated reallocs (#6281) 2021-02-16 16:17:38 +02:00
localtime.c fix typos (#10402) 2022-03-09 13:58:23 +02:00
lolwut.c Fixed some typos, add a spell check ci and others minor fix (#8890) 2021-06-10 15:39:33 +03:00
lolwut.h add include guard for lolwut.h 2020-05-05 23:35:08 -04:00
lolwut5.c Fixed some typos, add a spell check ci and others minor fix (#8890) 2021-06-10 15:39:33 +03:00
lolwut6.c Fixed some typos, add a spell check ci and others minor fix (#8890) 2021-06-10 15:39:33 +03:00
lzf.h Change lzf to handle values larger than UINT32_MAX (#9776) 2021-11-16 13:12:25 +02:00
lzfP.h Change lzf to handle values larger than UINT32_MAX (#9776) 2021-11-16 13:12:25 +02:00
lzf_c.c Change lzf to handle values larger than UINT32_MAX (#9776) 2021-11-16 13:12:25 +02:00
lzf_d.c Change lzf to handle values larger than UINT32_MAX (#9776) 2021-11-16 13:12:25 +02:00
memtest.c Add sanitizer support and clean up sanitizer findings (#9601) 2021-11-11 13:51:33 +02:00
mkreleasehdr.sh Update mkreleasehdr.sh 2019-11-19 17:23:47 +08:00
module.c Fix typos and limit unknown command error message (#10634) 2022-04-25 17:59:39 +03:00
monotonic.c Optimization: Use either monotonic or wall-clock to measure command execution time, to regain up to 4% execution time (#10502) 2022-04-20 14:00:30 +03:00
monotonic.h Optimization: Use either monotonic or wall-clock to measure command execution time, to regain up to 4% execution time (#10502) 2022-04-20 14:00:30 +03:00
mt19937-64.c Fix random element selection for large hash tables. (#8133) 2020-12-23 15:52:07 +02:00
mt19937-64.h Fix random element selection for large hash tables. (#8133) 2020-12-23 15:52:07 +02:00
multi.c Sort out the mess around Lua error messages and error stats (#10329) 2022-02-27 13:40:57 +02:00
networking.c Set replicas to panic on disk errors, and optionally panic on replication errors (#10504) 2022-04-26 13:25:33 +03:00
notify.c Add RM_PublishMessageShard (#10543) 2022-04-17 15:43:22 +03:00
object.c Add RM_MallocSizeString, RM_MallocSizeDict (#10542) 2022-04-17 08:31:57 +03:00
pqsort.c Fix null pointer subtraction warning (#10498) 2022-04-04 18:38:18 +03:00
pqsort.h
pubsub.c Add RM_PublishMessageShard (#10543) 2022-04-17 15:43:22 +03:00
quicklist.c Fix quicklist node not being recompressed correctly after inserting a new node before or after it (#10120) 2022-01-16 08:54:40 +02:00
quicklist.h fix an unclear comment and add a comment to 'zi' in 'quicklist.h' (#10633) 2022-04-25 17:47:45 +03:00
rand.c
rand.h
rax.c fix typos (#10402) 2022-03-09 13:58:23 +02:00
rax.h Squash merging 125 typo/grammar/comment/doc PRs (#7773) 2020-09-10 13:43:38 +03:00
rax_malloc.h Cluster: hash slots tracking using a radix tree. 2017-03-27 16:37:22 +02:00
rdb.c Optimize integer zset scores in listpack (converting to string and back) (#10486) 2022-04-17 17:16:46 +03:00
rdb.h Functions: Move library meta data to be part of the library payload. (#10500) 2022-04-05 10:27:24 +03:00
redis-benchmark.c Fix redis-benchmark --cluster with IPv6. (#10393) 2022-03-08 13:10:24 +02:00
redis-check-aof.c Fix path copy error and add more logs. (#10324) 2022-02-22 10:09:34 +02:00
redis-check-rdb.c Functions: Move library meta data to be part of the library payload. (#10500) 2022-04-05 10:27:24 +03:00
redis-cli.c Use exit code 1 on error in redis-cli (#10468) 2022-03-30 21:16:02 +03:00
redis-trib.rb Redis-trib deprecated: it no longer works and it 2018-07-13 10:51:58 +02:00
redisassert.c Add sanitizer support and clean up sanitizer findings (#9601) 2021-11-11 13:51:33 +02:00
redisassert.h Sanitize dump payload: performance optimizations and tuning 2020-12-06 14:54:34 +02:00
redismodule.h Add RM_PublishMessageShard (#10543) 2022-04-17 15:43:22 +03:00
release.c Speedup INFO server section. 2019-10-02 11:30:20 +02:00
replication.c Stop RDB child before flushing and parsing the RDB in Diskless replication too (#10602) 2022-04-20 09:54:55 +03:00
resp_parser.c Unified Lua and modules reply parsing and added RESP3 support to RM_Call (#9202) 2021-08-04 16:28:07 +03:00
resp_parser.h Fix an mistake in comment (#10560) 2022-04-10 09:29:50 +03:00
rio.c Fix when the master connection is disconnected, replication retry read indefinitely (#10032) 2021-12-31 14:08:04 +02:00
rio.h diskless replication rdb transfer uses pipe, and writes to sockets form the parent process. 2019-10-07 21:06:30 +03:00
script.c By default prevent cross slot operations in functions and scripts with # (#10615) 2022-04-26 12:09:21 +03:00
script.h By default prevent cross slot operations in functions and scripts with # (#10615) 2022-04-26 12:09:21 +03:00
script_lua.c Sort out the mess around Lua error messages and error stats (#10329) 2022-02-27 13:40:57 +02:00
script_lua.h Sort out the mess around Lua error messages and error stats (#10329) 2022-02-27 13:40:57 +02:00
sds.c Fix additional AOF filename issues. (#10110) 2022-01-18 12:52:27 +02:00
sds.h Fix additional AOF filename issues. (#10110) 2022-01-18 12:52:27 +02:00
sdsalloc.h Sanitize dump payload: fail RESTORE if memory allocation fails 2020-12-06 14:54:34 +02:00
sentinel.c Add RM_PublishMessageShard (#10543) 2022-04-17 15:43:22 +03:00
server.c Allow configuring signaled shutdown flags (#10594) 2022-04-26 14:34:04 +03:00
server.h Allow configuring signaled shutdown flags (#10594) 2022-04-26 14:34:04 +03:00
setcpuaffinity.c cpu affinity: DragonFlyBSD support (#7956) 2020-10-25 14:14:05 +02:00
setproctitle.c Fix failed tests on Linux Alpine and add a CI job. (#8532) 2021-02-23 12:57:45 +02:00
sha1.c Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
sha1.h Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
sha256.c Add sanitizer support and clean up sanitizer findings (#9601) 2021-11-11 13:51:33 +02:00
sha256.h fix explanation of sha256 (#9220) 2021-07-10 10:04:54 -05:00
siphash.c Add sanitizer support and clean up sanitizer findings (#9601) 2021-11-11 13:51:33 +02:00
slowlog.c slowlog get command supports passing in -1 to get all logs. (#9018) 2021-06-14 16:46:45 +03:00
slowlog.h Auto-generate the command table from JSON files (#9656) 2021-12-15 21:23:15 +02:00
solarisfixes.h
sort.c make sort/ro commands validate external keys access patterns (#10106) (#10340) 2022-03-15 17:14:53 +02:00
sparkline.c Squash merging 125 typo/grammar/comment/doc PRs (#7773) 2020-09-10 13:43:38 +03:00
sparkline.h
stream.h Add stream consumer group lag tracking and reporting (#9127) 2022-02-23 22:34:58 +02:00
syncio.c
t_hash.c Fix typo in function name "harndfieldReplyWithListpack" to "hrandfieldReplyWithListpack" (#10623) 2022-04-24 10:21:04 +03:00
t_list.c sub-command support for ACL CAT and COMMAND LIST. redisCommand always stores fullname (#10127) 2022-01-23 10:05:06 +02:00
t_set.c Sort out the mess around writable replicas and lookupKeyRead/Write (#9572) 2021-11-28 11:26:28 +02:00
t_stream.c Fixes around clients that must be obeyed. Replica report disk errors in PING. (#10603) 2022-04-20 11:11:21 +03:00
t_string.c fix typo in "lcsCommand" doc comment (#10622) 2022-04-24 10:19:46 +03:00
t_zset.c Optimize integer zset scores in listpack (converting to string and back) (#10486) 2022-04-17 17:16:46 +03:00
testhelp.h Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
timeout.c Fixes around clients that must be obeyed. Replica report disk errors in PING. (#10603) 2022-04-20 11:11:21 +03:00
tls.c Reduce system calls of write for client->reply by introducing writev (#9934) 2022-02-22 14:00:37 +02:00
tracking.c ACL V2 - Selectors and key based permissions (#9974) 2022-01-20 13:05:27 -08:00
util.c Fix long long to double implicit conversion warning (#10595) 2022-04-18 08:34:22 +03:00
util.h Optimize integer zset scores in listpack (converting to string and back) (#10486) 2022-04-17 17:16:46 +03:00
valgrind.sup Sanitize dump payload: fuzz tester and fixes for segfaults and leaks it exposed 2020-12-06 14:54:34 +02:00
version.h Add Module API for version and compatibility checks (#7865) 2020-10-11 17:21:58 +03:00
ziplist.c fix typos (#10402) 2022-03-09 13:58:23 +02:00
ziplist.h Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
zipmap.c Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
zipmap.h Add --large-memory flag for REDIS_TEST to enable tests that consume more than 100mb (#9784) 2021-11-16 08:55:10 +02:00
zmalloc.c zmalloc_get_rss openbsd implementation (#10149) 2022-01-19 20:56:12 +02:00
zmalloc.h Added INFO LATENCYSTATS section: latency by percentile distribution/latency by cumulative distribution of latencies (#9462) 2022-01-05 14:01:05 +02:00