8286 Commits

Author SHA1 Message Date
Oran Agra
48d14e5aa7 slave corrupts replication stream when module blocked client uses large reply (or POSTPONED_ARRAY)
when redis appends the blocked client reply list to the real client, it didn't
bother to check if it is in fact the master client. so a slave executing that
module command will send replies to the master, causing the master to send the
slave error responses, which will mess up the replication offset
(slave will advance it's replication offset, and the master does not)
2019-03-24 14:17:37 +02:00
Yossi Gottlieb
a631f66710 Add runtest-moduleapi with commandfilter coverage. 2019-03-24 12:03:03 +02:00
Yossi Gottlieb
2d4635b483 fix: missing initialization. 2019-03-24 12:00:33 +02:00
Salvatore Sanfilippo
d415aa89c0 Merge pull request #5944 from yossigo/command-filtering
Command Filtering API
2019-03-22 17:43:49 +01:00
Salvatore Sanfilippo
641359787c Merge pull request #3830 from oranagra/diskless_capa_pr
several bugfixes to diskless replication
2019-03-22 17:41:40 +01:00
Salvatore Sanfilippo
e19f00f8b2 Merge pull request #5945 from dvirsky/miss_notification
Added keyspace miss notifications support
2019-03-22 17:41:00 +01:00
Dvir Volk
1a24f23a50 Renamed event name from "miss" to "keymiss" 2019-03-21 20:33:11 +02:00
Oran Agra
eb40ac6c8e diskless fork kept streaming RDB to a disconnected slave 2019-03-21 20:24:52 +02:00
Yossi Gottlieb
898677d59e CommandFilter API: REDISMODULE_CMDFILTER_NOSELF.
Add a flag to automatically protect filters from being called
recursively by their own module.
2019-03-21 19:53:12 +02:00
Yossi Gottlieb
b8568a98fd CommandFilter API: fix UnregisterCommandFilter. 2019-03-21 19:45:41 +02:00
antirez
7e191d3ea3 More sensible name for function: restartAOFAfterSYNC().
Related to #3829.
2019-03-21 17:21:29 +01:00
antirez
4c49e7ad6f Mostly aesthetic changes to restartAOF().
See #3829.
2019-03-21 17:18:24 +01:00
Salvatore Sanfilippo
1bb8c1ef5a Merge pull request #3829 from oranagra/restart_aof_pr
bugfix to restartAOF, exit will never happen
2019-03-21 17:15:55 +01:00
Yossi Gottlieb
c675d44488 CommandFilter API: Add unregister option.
A filter handle is returned and can be used to unregister a filter.  In
the future it can also be used to further configure or manipulate the
filter.

Filters are now automatically unregistered when a module unloads.
2019-03-21 14:44:49 +02:00
Salvatore Sanfilippo
695c946ff6 Merge pull request #5390 from oranagra/lookup_key_write
change SORT and SPOP to use lookupKeyWrite rather than lookupKeyRead
2019-03-21 13:39:38 +01:00
antirez
8b58fbafae Alter coding style in #4696 to conform to Redis code base. 2019-03-21 12:18:55 +01:00
Salvatore Sanfilippo
3398266608 Merge pull request #4696 from oranagra/zrealloc_fix
Fix zrealloc to behave similarly to je_realloc when size is 0
2019-03-21 12:18:04 +01:00
Salvatore Sanfilippo
f87b8c9b52 Merge pull request #5243 from oranagra/sigterm_log
Add log when server dies of SIGTERM during loading
2019-03-21 11:54:09 +01:00
Salvatore Sanfilippo
7cc98ba80a Merge pull request #5391 from oranagra/touch_flags
getKeysFromCommand for TOUCH only extracted the first key.
2019-03-21 11:53:27 +01:00
Salvatore Sanfilippo
8c09b17d01 Merge pull request #3650 from yossigo/key_name_from_module_io
Add RedisModule_GetKeyNameFromIO()
2019-03-21 11:49:25 +01:00
Dvir Volk
51a54dfde3 remove extra linebreak 2019-03-21 12:48:37 +02:00
Dvir Volk
ca2eadaaac Added missing REDISMODULE_NOTIFY_KEY_MISS flag to REDISMODULE_NOTIFY_ALL 2019-03-21 12:47:51 +02:00
Dvir Volk
50befc42ad added special flag for keyspace miss notifications 2019-03-21 11:47:14 +02:00
Oran Agra
544b9b0826 diskless replication - notify slave when rdb transfer failed
in diskless replication - master was not notifing the slave that rdb transfer
terminated on error, and lets slave wait for replication timeout
2019-03-20 17:46:19 +02:00
oranagra
4355e29749 bugfix to restartAOF, exit will never happen since retry will get negative.
also reduce an excess sleep
2019-03-20 17:20:07 +02:00
Oran Agra
9b2a42636f change SORT and SPOP to use lookupKeyWrite rather than lookupKeyRead
like in SUNIONSTORE etc, commands that perform writes are expected to open
all keys, even input keys, with lookupKeyWrite
2019-03-20 17:06:22 +02:00
Oran Agra
61501773c9 getKeysFromCommand for TOUCH only extracted the first key.
also, airty for COMMAND command was wrong.
2019-03-20 17:00:39 +02:00
Yossi Gottlieb
1da0d9b04c CommandFilter API: Extend documentation. 2019-03-19 19:48:47 +02:00
Dvir Volk
278c7a6b6d Added keyspace miss notifications support 2019-03-19 13:11:37 +02:00
Yossi Gottlieb
06a6d70ab5 CommandFilter API: hellofilter and tests. 2019-03-18 23:07:28 +02:00
Yossi Gottlieb
5bd8aae664 CommandFilter API: Support Lua and RM_call() flows. 2019-03-18 23:06:38 +02:00
Yossi Gottlieb
fdacd1b0b5 CommandFilter API: More cleanup. 2019-03-18 23:05:52 +02:00
Yossi Gottlieb
95881cec60 Add command filter Module API tests. 2019-03-18 19:34:52 +02:00
Yossi Gottlieb
bc47c987d6 Add command filtering argument handling API. 2019-03-18 18:36:46 +02:00
antirez
a40a075ada MANIFESTO: simplicity and lock-in. 2019-03-18 15:49:52 +01:00
antirez
a3b442eb5d MANIFESTO v2. 2019-03-18 15:38:43 +01:00
Yossi Gottlieb
bb6e8ba682 Initial command filter experiment. 2019-03-18 13:50:34 +02:00
antirez
340d03b64b replicaofCommand() refactoring: stay into 80 cols. 2019-03-18 11:34:40 +01:00
antirez
71d9f4e596 redis-check-aof: fix potential overflow.
Bug signaled by @vattezhang in PR #5940 but fixed differently.
2019-03-18 11:16:23 +01:00
antirez
218091d2e4 HyperLogLog: fix comment in hllCount(). 2019-03-16 09:15:57 +01:00
antirez
961aa74ff1 HyperLogLog: handle wrong offset in the base case. 2019-03-15 17:16:06 +01:00
antirez
ca291b0951 HyperLogLog: speedup fuzz test. 2019-03-15 17:13:19 +01:00
antirez
3765dfdcf7 HyperLogLog: enlarge reghisto variable for safety. 2019-03-15 17:10:16 +01:00
antirez
a47cd50a0d HyperLogLog: dense/sparse repr parsing fuzz test. 2019-03-15 13:52:29 +01:00
John Sully
7f6aaa6f65 Fix hyperloglog corruption 2019-03-15 13:13:01 +01:00
Yossi Gottlieb
dd405d4026 Add RedisModule_GetKeyNameFromIO(). 2019-03-15 10:23:27 +02:00
antirez
5199f1dc58 Fix ZPOP return type when COUNT=0. Related to #5799. 2019-03-14 17:51:20 +01:00
antirez
e8568bb341 Fix objectSetLRUOrLFU() when LFU underflows. 2019-03-14 17:06:59 +01:00
antirez
9c504573f1 Improve comments after merging #5834. 2019-03-14 12:47:36 +01:00
Salvatore Sanfilippo
06339c7f54 Merge pull request #5834 from guybe7/trim_module_sds
Trim SDS free space of retained module strings
2019-03-14 12:41:31 +01:00