- 20 Aug, 2020 3 commits
-
-
杨博东 authored
After fork, the child process(redis-aof-rewrite) will get the fd opened by the parent process(redis), when redis killed by kill -9, it will not graceful exit(call prepareForShutdown()), so redis-aof-rewrite thread may still alive, the fd(lock) will still be held by redis-aof-rewrite thread, and redis restart will fail to get lock, means fail to start. This issue was causing failures in the cluster tests in github actions. Co-authored-by:
Oran Agra <oran@redislabs.com>
-
Raghav Muddur authored
Correcting the variable to clusterMsgModule.
-
Madelyn Olson authored
-
- 19 Aug, 2020 1 commit
-
-
Wang Yuan authored
-
- 18 Aug, 2020 5 commits
-
-
guybe7 authored
-
Oran Agra authored
Since users often post just the crash log in github issues, the log print that's above it is missing. No reason not to include the size in the panic message itself.
-
Wen Hui authored
Edit auth failed message include user disabled case in hello command
-
Wen Hui authored
It was already defined in the API header and the documentation, but not used by the implementation.
-
Oran Agra authored
65a3307b added rejectCommand which takes an robj reply and passes it through addReplyErrorSafe to addReplyErrorLength. The robj contains newline at it's end, but addReplyErrorSafe converts it to spaces, and passes it to addReplyErrorLength which adds the protocol newlines. The result was that most error replies (like OOM) had extra two trailing spaces in them.
-
- 17 Aug, 2020 2 commits
-
-
Yossi Gottlieb authored
The `REDISMODULE_CLIENTINFO_FLAG_SSL` flag was already a part of the `RedisModuleClientInfo` structure but was not implemented.
-
Yossi Gottlieb authored
Avoid re-configuring (and validating) SSL/TLS configuration on `CONFIG SET` when TLS is not actively enabled for incoming connections, cluster bus or replication. This fixes failures when tests run without `--tls` on binaries that were built with TLS support. An additional benefit is that it's now possible to perform a multi-step configuration process while TLS is disabled. The new configuration will be verified and applied only when TLS is effectively enabled.
-
- 16 Aug, 2020 1 commit
-
-
Oran Agra authored
This resolves an issue with sentinel that was created when hiredis was recently updated. this was due to sds symbol names clashing, since hiredis now includes different implementation of sdsrange than the one in redis. The state of things is that redis-benchamrk and redis-cli include only hiredis sds implementation. redis-cli even operates (calls sdscatlen) on sds that's allocated by hiredis. Sentinel however has both implementations of the sds library in it (now each with it's own unique symbols).
-
- 15 Aug, 2020 3 commits
-
-
michael-grunder authored
-
michael-grunder authored
-
michael-grunder authored
00272d669 Rename sds calls so they don't conflict in Redis. git-subtree-dir: deps/hiredis git-subtree-split: 00272d669b11e96b8311d9bfe167c117f8887dd6
-
- 14 Aug, 2020 1 commit
-
-
Nathan Scott authored
In order to keep the redismodule.h self-contained but still usable with gcc v10 and later, annotate each API function tentative definition with the __common__ attribute. This avoids the 'multiple definition' errors modules will otherwise see for all API functions at link time. Further details at gcc.gnu.org/gcc-10/porting_to.html Turn the existing __attribute__ ((unused)), ((__common__)) and ((print)) annotations into conditional macros for any compilers not accepting this syntax. These macros only expand to API annotations under gcc. Provide a pre- and post- macro for every API function, so that they can be defined differently by the file that includes redismodule.h. Removing REDISMODULE_API_FUNC in the interest of keeping the function declarations readable. Co-authored-by:
Yossi Gottlieb <yossigo@gmail.com> Co-authored-by:
Oran Agra <oran@redislabs.com>
-
- 13 Aug, 2020 1 commit
-
-
caozb authored
Client that issued WAIT last will most likely have the highest replication offset, so imagine a probably common case where all clients are waiting for the same number of replicas. we prefer the loop to start from the last client (one waiting for the highest offset), so that the optimization in the function will call replicationCountAcksByOffset for each client until it found a good one, and stop calling it for the rest of the clients. the way the loop was implemented would mean that in such case it is likely to call replicationCountAcksByOffset for all clients. Note: the change from > to >= is not directly related to the above. Co-authored-by:
曹正斌 <caozb@jiedaibao.com>
-
- 12 Aug, 2020 6 commits
-
-
RemRain authored
-
Yossi Gottlieb authored
Add Linux kernel OOM killer control option. This adds the ability to control the Linux OOM killer oom_score_adj parameter for all Redis processes, depending on the process role (i.e. master, replica, background child). A oom-score-adj global boolean flag control this feature. In addition, specific values can be configured using oom-score-adj-values if additional tuning is required.
-
HarveyLiu authored
and a misspell in rax.c
-
Madelyn Olson authored
-
Madelyn Olson authored
* Replace usage of wrongtypeerr with helper
-
Mota authored
-
- 11 Aug, 2020 17 commits
-
-
Mota authored
Obsoletes the need to run `make` before `make test`.
-
Wagner Francisco Mezaroba authored
Adds --pattern option to cli's --bigkeys, --hotkeys & --scan modes
-
Itamar Haber authored
Fix typos in README.md
-
zhaozhao.zz authored
-
Itamar Haber authored
[Redis-benchmark] Support zset type
-
Muhammad Zahalqa authored
Fix unidentical function declaration in bio.c. lazyfree.c: lazyfreeFreeSlotsMapFromBioThread (#7228)
-
zhaozhao.zz authored
-
zhaozhao.zz authored
-
zhaozhao.zz authored
-
pingfan108 authored
-
YoongHM authored
The two lines allow systemd to start redis.service after the network is online. Only after the network is online that Redis could bind to IP address other than 127.0.0.1 during initial boot up process.
-
Tyson Andre authored
This is a rebased version of #3078 originally by shaharmor with the following patches by TysonAndre made after rebasing to work with the updated C API: 1. Add 2 more unit tests (wrong argument count error message, integer over 64 bits) 2. Use addReplyArrayLen instead of addReplyMultiBulkLen. 3. Undo changes to src/help.h - for the ZMSCORE PR, I heard those should instead be automatically generated from the redis-doc repo if it gets updated Motivations: - Example use case: Client code to efficiently check if each element of a set of 1000 items is a member of a set of 10 million items. (Similar to reasons for working on #7593) - HMGET and ZMSCORE already exist. This may lead to developers deciding to implement functionality that's best suited to a regular set with a data type of sorted set or hash map instead, for the multi-get support. Currently, multi commands or lua scripting to call sismember multiple times would almost definitely be less efficient than a native smismember for the following reasons: - Need to fetch the set from the string every time instead of reusing the C pointer. - Using pipelining or multi-commands would result in more bytes sent and received by the client for the repeated SISMEMBER KEY sections. - Need to specially encode the data and decode it from the client for lua-based solutions. - Proposed solutions using Lua or SADD/SDIFF could trigger writes to memory, which is undesirable on a redis replica server or when commands get replicated to replicas. Co-Authored-By:
Shahar Mor <shahar@peer5.com> Co-Authored-By:
Tyson Andre <tysonandre775@hotmail.com>
-
Yossi Gottlieb authored
-
Rajat Pawar authored
-
Jim Brunner authored
-
杨博东 authored
signalKeyAsReady has some overhead (namely dictFind) so we should only call it when there are clients blocked on the relevant type (BLOCKED_*)
-
Itamar Haber authored
Appears to be handled by server.stream_node_max_bytes in reality.
-