- 09 Jan, 2019 4 commits
- 01 Aug, 2018 6 commits
-
-
antirez authored
When the element new score is the same of prev/next node, the lexicographical order kicks in, so we can safely update the node in place only when the new score is strictly between the adjacent nodes but never equal to one of them. Technically speaking we could do extra checks to make sure that even if the score is the same as one of the adjacent nodes, we can still update on place, but this rarely happens, so probably not a good deal to make it more complex. Related to #5179.
-
antirez authored
-
antirez authored
-
antirez authored
-
antirez authored
-
antirez authored
-
- 03 Jul, 2018 1 commit
-
-
Jack Drogon authored
-
- 05 Jun, 2018 1 commit
-
-
antirez authored
-
- 31 May, 2018 1 commit
-
-
zhaozhao.zz authored
-
- 22 May, 2018 1 commit
-
-
zhaozhao.zz authored
-
- 11 May, 2018 2 commits
-
-
antirez authored
Usually blocking operations make a lot of sense with multiple keys so that we can listen to multiple queues (or whatever the app models) with a single connection. However in the synchronous case it is more useful to be able to ask for N elements. This is a change that I also wanted to perform soon or later in the blocking list variant, but here it is more natural since there is no reply type difference.
-
antirez authored
This commit also adds a top comment about a subtle behavior of mixing blocking operations of different types in the same key.
-
- 29 Apr, 2018 1 commit
-
-
Itamar Haber authored
An implementation of the [Ze POP Redis Module](https://github.com/itamarhaber/zpop) as core Redis commands. Fixes #1861.
-
- 06 Mar, 2018 1 commit
-
-
Guy Benoish authored
-
- 08 Dec, 2017 1 commit
-
-
zhaozhao.zz authored
-
- 20 Feb, 2017 1 commit
-
-
antirez authored
This change attempts to switch to an hash function which mitigates the effects of the HashDoS attack (denial of service attack trying to force data structures to worst case behavior) while at the same time providing Redis with an hash function that does not expect the input data to be word aligned, a condition no longer true now that sds.c strings have a varialbe length header. Note that it is possible sometimes that even using an hash function for which collisions cannot be generated without knowing the seed, special implementation details or the exposure of the seed in an indirect way (for example the ability to add elements to a Set and check the return in which Redis returns them with SMEMBERS) may make the attacker's life simpler in the process of trying to guess the correct seed, however the next step would be to switch to a log(N) data structure when too many items in a single bucket are detected: this seems like an overkill in the case of Redis. SPEED REGRESION TESTS: In order to verify that switching from MurmurHash to SipHash had no impact on speed, a set of benchmarks involving fast insertion of 5 million of keys were performed. The result shows Redis with SipHash in high pipelining conditions to be about 4% slower compared to using the previous hash function. However this could partially be related to the fact that the current implementation does not attempt to hash whole words at a time but reads single bytes, in order to have an output which is endian-netural and at the same time working on systems where unaligned memory accesses are a problem. Further X86 specific optimizations should be tested, the function may easily get at the same level of MurMurHash2 if a few optimizations are performed.
-
- 02 Dec, 2016 1 commit
-
-
Itamar Haber authored
Fixes https://github.com/antirez/redis/issues/3639
-
- 14 Sep, 2016 1 commit
-
-
antirez authored
Optimizations suggested and originally implemented by @oranagra. Re-applied by @antirez using the modified API.
-
- 12 Sep, 2016 1 commit
-
-
oranagra authored
(Change cherry-picked and modified by @antirez from a larger commit provided by @oranagra in PR #3223).
-
- 20 Jun, 2016 1 commit
-
-
Yossi Gottlieb authored
-
- 10 May, 2016 3 commits
- 09 May, 2016 1 commit
-
-
oranagra authored
-
- 18 Apr, 2016 1 commit
-
-
Damian Janowski authored
-
- 15 Apr, 2016 2 commits
- 14 Apr, 2016 2 commits
- 18 Feb, 2016 1 commit
-
-
antirez authored
Related to issue #3019.
-
- 01 Oct, 2015 1 commit
-
-
antirez authored
-
- 27 Jul, 2015 1 commit
-
-
antirez authored
-
- 26 Jul, 2015 4 commits