dejun.xdj
95b988b6c6
Check if the repeat value is positive in while loop of cliSendCommand().
...
In case that the incoming repeat parameter is negative and causes a
deadless loop.
2018-05-21 12:06:48 +08:00
dejun.xdj
cc7ffdfdf2
Change the type of repeat argument to long for function cliSendCommand.
...
To be in consistent with the original definition.
2018-05-21 12:04:53 +08:00
dejun.xdj
b2762f1ff2
Fix negtive repeat command value issue.
...
If command like "-1 set a b" is sent with redis-cli, it will cause a deadless loop. So some repeat value checking logic is added to avoid this.
2018-05-19 22:50:40 +08:00
dejun.xdj
c2e2314640
Detect and stop saving history for auth command with repeat option.
...
Put the repeat option checking code a little forward to avoid repeat logic.
2018-05-18 11:40:05 +08:00
dejun.xdj
ef931ef93e
Change the warning message a little bit to avoid trademark issuses.
2018-05-18 11:37:31 +08:00
dejun.xdj
b263c7c465
Stop saving auth command in redis-cli history.
2018-05-16 16:18:00 +08:00
dejun.xdj
c082221aef
Add warning message when using password on command line
2018-05-16 16:15:12 +08:00
antirez
e344aa4a6d
Test: fix blocking lists/zsets replication test.
...
By verifying that it was able to find a regression, and fixing it
accordingly.
2018-05-15 17:43:41 +02:00
antirez
8327ccef0e
Test: replication test blocking lists/zsets ops.
2018-05-15 17:33:29 +02:00
antirez
25f017e563
ZPOP: fix replication of blocking ZPOP.
2018-05-15 16:03:56 +02:00
antirez
e87c1f1e6c
ZPOP: fix the tests according to new non-blocking "count" argument.
2018-05-11 18:07:10 +02:00
antirez
56bbab238a
ZPOP: change sync ZPOP to have a count argument instead of N keys.
...
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.
2018-05-11 18:00:32 +02:00
antirez
6efb6c1e06
ZPOP: renaming to have explicit MIN/MAX score idea.
...
This commit also adds a top comment about a subtle behavior of mixing
blocking operations of different types in the same key.
2018-05-11 17:31:53 +02:00
antirez
6b026b70a8
Merge branch 'zpop' of https://github.com/itamarhaber/redis into zpop
2018-05-11 10:40:13 +02:00
antirez
b85aae78df
Fix rdb.c dictionary iterator release in 2 more places.
2018-05-09 12:06:37 +02:00
antirez
cd87b3c71f
Fix rdb.c dictionary iterator release.
...
Some times it was not released on error, sometimes it was released two
times because the error path expected the "di" var to be NULL if the
iterator was already released. Thanks to @oranagra for pinging me about
potential problems of this kind inside rdb.c.
2018-05-09 11:03:27 +02:00
Salvatore Sanfilippo
aaef5f00cc
Merge pull request #4594 from smallstool/bugfix-freeMemoryIfneeded-int-overflow
...
fix int overflow problem in freeMemoryIfNeeded
2018-05-08 17:27:18 +02:00
Itamar Haber
438125b47c
Implements [B]Z[REV]POP and the respective unit tests
...
An implementation of the
[Ze POP Redis Module](https://github.com/itamarhaber/zpop ) as core
Redis commands.
Fixes #1861 .
2018-04-30 02:10:42 +03:00
antirez
e6b0e8d9ec
Streams: XTRIM command added.
2018-04-19 16:25:29 +02:00
antirez
19ae809458
Streams: XADD, handle signaling of write in different ways.
2018-04-19 16:11:43 +02:00
antirez
aba76320d5
Streams: XDEL command.
2018-04-18 13:12:09 +02:00
antirez
9c149bf1f1
Streams: higher level "delete by ID" API for streams.
2018-04-17 17:55:56 +02:00
antirez
24ac2b4c74
Streams: iterator entry deletion abilities.
2018-04-17 17:18:00 +02:00
Salvatore Sanfilippo
7980d87c3c
Merge pull request #4842 from soloestoy/fix-timer-api-wrong-insert
...
Modules Timer API: fix wrong raxInsert() usage
2018-04-13 19:51:46 +02:00
zhaozhao.zz
775adf544c
Modules Timer API: fix wrong raxInsert() usage
2018-04-14 01:20:02 +08:00
antirez
e07af6a2b7
Modules API: Add call to get the blocked client handle from the context.
...
This is useful in the reply and timeout callback, if the module wants to
do some cleanup of the blocked client handle that may be stored around
in the module-private data structures.
2018-04-13 13:48:11 +02:00
antirez
da0e192277
Modules API: moduleGetReplyClient() refactoring.
2018-04-13 13:42:49 +02:00
antirez
404160a271
Modules API: blocked client disconnection callback.
2018-04-12 13:21:48 +02:00
antirez
005c932f22
Modules API: fix timer example.
2018-04-12 13:00:18 +02:00
antirez
4e53624052
Modules API: fix OOM_WARNING flag implementation.
2018-04-11 16:25:54 +02:00
antirez
0afac6939a
Modules API: OOM_WARNING flags.
...
In some modules it may be useful to have an idea about being near to
OOM. Anyway additionally an explicit call to get the fill ratio will be
added in the future.
2018-04-11 16:22:52 +02:00
antirez
de7de53e64
getMaxmemoryState() fixed and improved.
2018-04-11 12:48:26 +02:00
antirez
f97efe0cac
Modules: context flags now include OOM flag.
...
Plus freeMemoryIfNeeded() refactoring to improve legibility.
Please review this commit for sanity.
2018-04-09 17:44:30 +02:00
antirez
6888c1a10d
freeMemoryIfNeeded() lacked a top comment.
2018-04-09 17:20:36 +02:00
antirez
9a0dbbb594
Modules: remove trailing empty spaces.
2018-04-09 17:16:55 +02:00
antirez
eaafea4828
Modules API: experimental APIs version.
...
This way it is possible to use conditional compilation to be compatible
with a larger amount of Redis versions, however note that this breaks
binary compatibiltiy, so the module must be compiled with the
corresponding redismodule.h file depending on the version of Redis
targeted.
2018-04-09 12:17:19 +02:00
antirez
49e098234a
Modules API: blocked client free callback modified to get a context.
...
Note that this was an experimental API that can only be enabled with
REIDSMODULE_EXPERIMENTAL_API, so it is subject to change until its
promoted to stable API. Sorry for the breakage, it is trivial to
resolve btw. This change will not be back ported to Redis 4.0.
2018-04-09 11:54:44 +02:00
antirez
b2868c7b9c
Modules API: RM_GetRandomBytes() / GetRandomHexChars().
2018-04-05 13:24:22 +02:00
antirez
c75582889a
Modules Cluster API: GetClusterSize() added.
2018-04-01 16:36:32 +02:00
antirez
27f9c8108c
Modules Cluster API: GetMyClusterID() added.
2018-04-01 16:20:57 +02:00
antirez
19c42c901b
Modules Timer API: add example of API.
2018-03-31 10:12:34 +02:00
antirez
ee982f4031
Modules Timer API: Wait at least 1 ms per iteration. Convert to ms.
2018-03-31 10:11:30 +02:00
antirez
4c11bc6cf0
Modules Timer API: fix wrong raxRemove() key argument.
2018-03-31 09:58:43 +02:00
antirez
2f7da0fd1a
Modules Timer API: fix infinite loop and export API.
2018-03-31 00:44:46 +02:00
antirez
b85a465c25
Modules Timer API: timer handling implemented.
2018-03-30 22:50:21 +02:00
antirez
561039c125
Modules Timer API: initial implementation.
2018-03-30 20:40:35 +02:00
antirez
192361b562
Modules Cluster API: node API exported, example improved.
2018-03-30 17:00:45 +02:00
antirez
16178b692e
Modules Cluster API: nodes list and info API.
2018-03-30 16:16:47 +02:00
antirez
83ec35770e
Modules Cluster API: node information struct and flags.
2018-03-30 13:16:55 +02:00
antirez
a97df1a6e1
Modules Cluster API: make node IDs pointers constant.
2018-03-30 13:16:07 +02:00