7286 Commits

Author SHA1 Message Date
antirez
5c7bda3752 Streams: make macro node limits configurable. 2018-06-07 14:36:13 +02:00
antirez
80f89e0634 Streams: max node limits only checked if non zero. 2018-06-07 14:30:25 +02:00
antirez
89435af570 Streams: use non static macro node limits.
Also add the concept of size/items limit, instead of just having as
limit the number of bytes.
2018-06-07 14:24:49 +02:00
shenlongxing
c6c03ee21f Fix write() errno error 2018-06-06 13:06:42 +02:00
antirez
3406400ae0 Fix streamIteratorRemoveEntry() to update elements count.
Close #4989.
2018-06-06 11:40:22 +02:00
antirez
c8d43b84d8 ZPOP: invert score-ele to match ZRANGE WITHSCORES order. 2018-06-05 17:06:25 +02:00
antirez
d3b425470b Remove XINFO <key> special form.
As observed by Michael Grunder this usage while practical is
inconsistent because for instance it does not work against a key called
HELP. Removed.
2018-06-05 16:34:34 +02:00
antirez
7932b157c2 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2018-06-04 17:30:11 +02:00
antirez
ff7cb41475 XGROUP SETID implemented + consumer groups core fixes.
Now that we have SETID, the inetrnals of consumer groups should be able
to handle the case of the same message delivered multiple times just
as a side effect of calling XREADGROUP. Normally this should never
happen but if the admin manually "XGROUP SETID mykey mygroup 0",
messages will get re-delivered to clients waiting for the ">" special
ID. The consumer groups internals were not able to handle the case of a
message re-delivered in this circumstances that was already assigned to
another owner.
2018-06-04 17:28:03 +02:00
antirez
0f1448f9c3 Rax library updated. 2018-06-04 17:26:16 +02:00
Salvatore Sanfilippo
45ab995a3a Merge pull request #4981 from yossigo/gcc7
Clean gcc 7.x warnings, redis-cli cluster fix.
2018-06-04 17:18:39 +02:00
antirez
226712b467 XGROUP DESTROY implemented. 2018-06-04 12:58:26 +02:00
赵磊
366c45a2ec Fix core dump when using 'command getkeys' with wrong arguments. 2018-06-04 15:14:50 +08:00
Yossi Gottlieb
7c24f28f24 Clean gcc 7.x warnings, redis-cli cluster fix. 2018-06-03 15:54:30 +03:00
michael-grunder
ac6bb9ff05 Return early in XPENDING if sent a nonexistent consumer group. 2018-06-02 18:22:20 -07:00
WuYunlong
f196b77478 Fix DEBUG LOADAOF so that redis-server will not crash unexpectedly
and will not be inconsistent after we call debug loadaof.
Before this commit, there were 2 problems:

1, When appendonly is set to no and there is not a appendonly file,
   redis-server will crash if we call DEBUG LOADAOF.
2, When appendonly is set to no and there is a appendonly file,
   redis-server will hold different data after loading  appendonly
   file.
2018-06-02 14:32:16 +08:00
Salvatore Sanfilippo
5418bfb8e8 Merge pull request #4907 from youjiali1995/fix-dictScan
Fix dictScan(): It can't scan all buckets when dict is shrinking.
2018-06-01 16:54:05 +02:00
artix
f5dad061ee Cluster Manager: fixed master_id check in clusterManagerNodeLoadInfo 2018-06-01 16:19:47 +02:00
Salvatore Sanfilippo
252cf5e319 Merge pull request #4971 from soloestoy/bugfix-bzpop
ZPOP: unblock multiple clients in right way
2018-05-31 18:40:53 +02:00
zhaozhao.zz
f0e81aff07 ZPOP: unblock multiple clients in right way 2018-05-31 23:35:47 +08:00
Salvatore Sanfilippo
d4c28bc485 Merge pull request #4945 from GitHubMota/debug_recover
Fix debug crash-and-recover help info.
2018-05-31 17:32:11 +02:00
Salvatore Sanfilippo
927b581838 Merge pull request #4953 from soloestoy/fix-memory-overhead
MEMORY: fix the missing of monitor clients buffers
2018-05-31 17:31:24 +02:00
Salvatore Sanfilippo
75fa316cfd Merge pull request #4964 from remicollet/issue-uint64
include stdint.h for unit64_t definition
2018-05-31 17:20:33 +02:00
antirez
c513733526 Capitalize OBJECT HELP subcommands. 2018-05-31 17:11:46 +02:00
artix
4edb920536 Cluster Manager: fixed infinite loop in rebalance (Issue #4941). 2018-05-31 15:59:16 +02:00
Remi Collet
6c4c2a2432 include stdint.h for unit64_t definition 2018-05-30 15:33:06 +02:00
antirez
71b745b612 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2018-05-29 12:41:07 +02:00
antirez
9e81213746 Don't expire keys while loading RDB from AOF preamble.
The AOF tail of a combined RDB+AOF is based on the premise of applying
the AOF commands to the exact state that there was in the server while
the RDB was persisted. By expiring keys while loading the RDB file, we
change the state, so applying the AOF tail later may change the state.

Test case:

* Time1: SET a 10
* Time2: EXPIREAT a $time5
* Time3: INCR a
* Time4: PERSIT A. Start bgrewiteaof with RDB preamble. The value of a is 11 without expire time.
* Time5: Restart redis from the RDB+AOF: consistency violation.

Thanks to @soloestoy for providing the patch.
Thanks to @trevor211 for the original issue report and the initial fix.

Check issue #4950 for more info.
2018-05-29 12:37:42 +02:00
WuYunlong
09ae1a46d6 Fix rdb save by allowing dumping of expire keys, so that when
we add a new slave, and do a failover, eighter by manual or
not, other local slaves will delete the expired keys properly.
2018-05-29 12:35:15 +02:00
zhaozhao.zz
8840ab4bd7 MEMORY: fix the missing of monitor clients buffers 2018-05-27 16:34:58 +08:00
antirez
63bbacc4ab Streams: fix comments referring to old ID format. 2018-05-25 17:25:19 +02:00
Salvatore Sanfilippo
c2d7c5bbcd Merge pull request #4948 from soloestoy/avoid-warning-stream
avoid warning in t_stream.c
2018-05-25 17:00:46 +02:00
antirez
dd4ac1654b Streams: fix test ID format. 2018-05-25 16:57:08 +02:00
zhaozhao.zz
3b2b5e1d1b avoid warning in t_stream.c 2018-05-25 22:49:49 +08:00
antirez
a17226d419 Backport hiredis issue 525 fix to compile on FreeBSD.
Close #4947.
2018-05-25 16:33:23 +02:00
antirez
1ea37fcf4f Simplify XADD ID syntax error code path,. 2018-05-25 16:29:37 +02:00
Salvatore Sanfilippo
a998d21f71 Merge pull request #4832 from 0xtonyxia/fix-xadd-ID-parse
Bugfix: xadd command ID parse
2018-05-25 16:27:21 +02:00
antirez
8bdaeaa4c1 Avoid warning by explicitly initializing var to NULL. 2018-05-25 16:19:14 +02:00
antirez
a881942e60 Explicitly cast void pointers to char pointers for printf style logging. 2018-05-25 16:15:59 +02:00
Salvatore Sanfilippo
9f2abcd020 Merge pull request #4946 from soloestoy/linux-make-lrt
append -lrt to FINAL_LIBS for linux
2018-05-25 16:12:19 +02:00
zhaozhao.zz
4e8a00e6b0 append -lrt to FINAL_LIBS for linux 2018-05-25 20:16:57 +08:00
antirez
ad984d169b Don't append libjemalloc.a otherwise it will be after -ldl. 2018-05-25 13:36:51 +02:00
Mota
c9a10a9419 Fix debug crash-and-recover help info. 2018-05-25 16:49:23 +08:00
antirez
2fa611607b Merge branch 'unstable' of github.com:/antirez/redis into unstable 2018-05-24 18:21:23 +02:00
antirez
60ead966fb Generate configure for Jemalloc. 2018-05-24 18:21:13 +02:00
antirez
f3db15d2c9 Make active defragmentation tests optional.
They failed when active defrag could not be activated because the
Jemalloc version does not include the additional APIs.
2018-05-24 18:04:21 +02:00
antirez
3e071d1f9a Add --with-version in Jemalloc config script. 2018-05-24 17:50:12 +02:00
antirez
1af1d38775 Specify that Jemalloc configure requires version. 2018-05-24 17:49:36 +02:00
antirez
3c098ab96f Jemalloc upgraded to version 5.0.1. 2018-05-24 17:17:37 +02:00
antirez
6fe1cbaa94 Update documentation about how to upgrade Jemalloc. 2018-05-24 17:16:12 +02:00