5329 Commits

Author SHA1 Message Date
antirez
a039a1bc3c RESP3: remove other pointless shared object. 2019-01-09 17:00:29 +01:00
antirez
ee2564e90e RESP3: remove certain constants to spot places to fix. 2019-01-09 17:00:29 +01:00
antirez
e02ab3c51e RESP3: Scripting RESP3 mode set/map protocol -> Lua conversion. 2019-01-09 17:00:29 +01:00
antirez
b715bb5124 RESP3: Fix API in scripting.c leaving Lua conversions RESP2. 2019-01-09 17:00:29 +01:00
antirez
bc7b1c7b51 RESP3: Use new aggregate reply API in slowlog.c. 2019-01-09 17:00:29 +01:00
antirez
0279914a41 RESP3: Use new aggregate reply API in t_set.c. 2019-01-09 17:00:29 +01:00
antirez
02c2309efc RESP3: Use new aggregate reply API in cluster.c. 2019-01-09 17:00:29 +01:00
antirez
3aebf8ab29 RESP3: Make WITHSCORES reply back with a flat array in RESP2. 2019-01-09 17:00:29 +01:00
antirez
9ed8763002 RESP3: Use new deferred len API in object.c. 2019-01-09 17:00:29 +01:00
antirez
342f336398 RESP3: bring RESP2 compatibility to previous changes. 2019-01-09 17:00:29 +01:00
antirez
76fa77f9d5 RESP3: addReply*Len() support for RESP2 backward comp. 2019-01-09 17:00:29 +01:00
antirez
6fbf149112 RESP3: put RESP version in the client structure. 2019-01-09 17:00:29 +01:00
antirez
7fe7b38743 RESP3: Use new API and types in t_hash.c. 2019-01-09 17:00:29 +01:00
antirez
f5a4f6bdf4 RESP3: Use new deferred len API in dict.c. 2019-01-09 17:00:29 +01:00
antirez
c3d7abb004 RESP3: Use new deferred len API in config.c. 2019-01-09 17:00:29 +01:00
antirez
f10783e9fb RESP3: Use new deferred len API in t_zset.c. 2019-01-09 17:00:29 +01:00
antirez
54ccb4df9e RESP3: Use new deferred len API in t_string.c. 2019-01-09 17:00:29 +01:00
antirez
7c9f682686 RESP3: Use new deferred len API in replication.c. 2019-01-09 17:00:29 +01:00
antirez
33374b02bf RESP3: Use new deferred len API in server.c. 2019-01-09 17:00:29 +01:00
antirez
1c82be419f RESP3: Aggregate deferred lengths functions. 2019-01-09 17:00:29 +01:00
antirez
da3d2db500 RESP3: Double replies and aggregate lengths initial functions. 2019-01-09 17:00:29 +01:00
Salvatore Sanfilippo
1eca7e34c7 Merge pull request #5729 from artix75/cluster_manager_fix_cmd
Cluster Manager del-node: use CLUSTER RESET in place of SHUTDOWN
2019-01-09 10:11:27 +01:00
chenyangyang
fa4e6ba00d Update ae.c
Update comment
2019-01-06 15:01:25 +08:00
artix
39f4a23296 Cluster Manager del-node: use CLUSTER RESET in place of SHUTDOWN
See issue #5687
2018-12-27 17:20:42 +01:00
artix
853b97fd85 Cluster Manager: enable --cluster-replace also for 'fix' command. 2018-12-19 17:29:25 +01:00
artix
1055c6b484 Fixed memory leak in clusterManagerCompareKeysValues. 2018-12-18 18:45:10 +01:00
artix
4ec37c3bd3 Cluster Manager: compare key values after BUSYKEY error (migration).
If a key exists in the target node during a migration (BUSYKEY),
the value of the key on both nodes (source and target) will be compared.
If the key has the same value on both keys, the migration will be
automatically retried with the REPLACE argument in order to override
the target's key.

If the key has different values, the behaviour will depend on such
cases:
- In case of 'fix' command, the migration will stop and the user
  will be warned to manually check the key(s).
- In other cases (ie. reshard), if the user launched the command
  with the --cluster-replace option, the migration will be
  retried with the REPLACE argument, elsewhere the migration will
  stop and the user will be warned.
2018-12-18 17:45:35 +01:00
artix
cc21057890 Cluster Manager: avoid using reply error messages to check slot status.
Slot assignment status is now checked by using CLUSTER SLOTS.
Furthermore, one memory leak has been fixed.
2018-12-12 13:34:43 +01:00
antirez
b166aff1bf freeMemoryIfNeeded() small refactoring.
Related to issue #5686 and PR #5689.
2018-12-12 11:37:15 +01:00
Salvatore Sanfilippo
5daed99b5c Merge pull request #5689 from soloestoy/donot-evict-when-AOF-loading
evict: don't care about mem if loading
2018-12-12 11:29:10 +01:00
antirez
76e5519516 Crashing is too much in addReplyErrorLength().
See #5663.
2018-12-11 17:50:18 +01:00
zhaozhao.zz
19ef3890e9 evict: don't care about mem if loading
When loading data, we call processEventsWhileBlocked
to process events and execute commands.
But if we are loading AOF it's dangerous, because
processCommand would call freeMemoryIfNeeded to evict,
and that will break data consistency, see issue #5686.
2018-12-12 00:25:58 +08:00
antirez
e16d2dfb5f Merge branch 'unstable' of github.com:/antirez/redis into unstable 2018-12-11 13:30:04 +01:00
antirez
7c25def9a0 stringmatchlen() fuzz test added.
Verified to be able to trigger at least #5632. Does not report other
issues.
2018-12-11 13:29:30 +01:00
antirez
c30b9dc868 Fix stringmatchlen() read past buffer bug.
See #5632.
2018-12-11 13:18:52 +01:00
Salvatore Sanfilippo
5106a32402 Merge pull request #5665 from louiszhw/unstable
fix comments fault discription
2018-12-11 13:03:09 +01:00
Salvatore Sanfilippo
0a0dbf6027 Merge pull request #4264 from lsytj0413/unstable
fix a typo: craeted -> created
2018-12-11 13:02:28 +01:00
zhaozhao.zz
3ab14c56f7 fix typo 2018-12-11 19:53:54 +08:00
zhaozhao.zz
e60a8ce2f2 multi: ignore multiState's cmd_flags when loading AOF 2018-12-11 19:47:36 +08:00
antirez
fc4b1319d0 Reject EXEC containing write commands against RO replica.
Thanks to @soloestoy for discovering this issue in #5667.
This is an alternative fix in order to avoid both cycling the clients
and also disconnecting clients just having valid read-only transactions
pending.
2018-12-11 11:39:21 +01:00
artix
440e8164a1 Cluster Manager:
- Multiple owners checking in 'fix'/'check' commands is now
  optional (using --cluster-search-multiple-owners).
- Updated help.
2018-12-10 18:01:18 +01:00
artix
17ff4e873f Cluster Manager:
- FixOpenSlot now correctly updates in-memory cluster configuration.
    - Improved output messages.
2018-12-10 17:43:58 +01:00
artix
c2ea297052 Cluster Manager: 'fix' command now handles open slots with migrating state
in one node and importing state in multiple nodes.
2018-12-10 17:43:58 +01:00
artix
b5d9d24d3b Cluster Manager: setting new slot owner is now handled atomically
in 'fix' command.
2018-12-10 17:43:58 +01:00
artix
0c7a108dc9 Cluster Manager: code cleanup. 2018-12-10 17:43:58 +01:00
artix
8b7107fd32 Cluster Manager: check/fix commands now handle multiple owners even if
all slots are covered and not open.
2018-12-10 17:39:54 +01:00
Salvatore Sanfilippo
c70976ab30 Merge pull request #5626 from soloestoy/remove-useless-code
remove useless tryObjectEncoding in debug assert
2018-12-07 17:09:56 +01:00
Salvatore Sanfilippo
d21f7e44ea Merge pull request #5633 from oranagra/frag_bytes_signed
fix #5580, display fragmentation and rss overhead bytes as signed
2018-12-07 17:09:10 +01:00
antirez
04d2faf7f6 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2018-12-07 17:07:14 +01:00
antirez
50c8580a33 Remove no longer relevant comment in processCommand(). 2018-12-07 17:06:55 +01:00